# Podcasto

> Podcasto turns Telegram channels and news sources into AI-generated, multi-language podcast episodes: script generation plus multi-speaker text-to-speech, scheduled or on-demand, credit-based.

Podcasto ingests a public Telegram channel (or a set of source URLs), drafts a
podcast script with an LLM, and synthesizes it into audio using a choice of
text-to-speech engines. Episodes can be single-speaker (monologue, one host
narrating) or multi-speaker (dialogue, two speakers), in Hebrew, English, and
dozens of other languages. Podcasts can auto-generate on a recurring schedule
or be generated on demand; every generation consumes credits from the owner's
plan.

## How generation works

1. A podcast is configured with a content source (a Telegram channel handle,
   or a set of URLs) and a format (single- or multi-speaker).
2. On generation, Podcasto fetches recent source content, drafts a script,
   and synthesizes audio.
3. An episode moves through pending -> processing stages -> published (or
   failed, which is recoverable). Owners and admins can see in-progress and
   failed episodes on the podcast page; only `published` episodes are public.

## Plan tiers

Credits pay for individual episode generations; the plan sets what a podcast
owner can configure. Credits never unlock a feature the owner's plan does not
already allow.

- **Free**: up to 1 podcast(s), no scheduling (on-demand only), up to 10-minute episodes, automatic voice assignment
- **Basic**: up to 3 podcast(s), auto-schedule every 3+ day(s), up to 15-minute episodes, pick voices from the default TTS engine
- **Pro**: up to 10 podcast(s), auto-schedule every 1+ day(s), up to 25-minute episodes, pick voices from any TTS engine, choice of TTS provider, custom intro/outro

## Limitations

- Content sources are limited to public Telegram channels (and URL lists);
  private/invite-only channels are not supported.
- Generating an episode consumes credits from the owner's balance; the
  standard price depends on the selected TTS engine.
- Only `published` episodes and non-test podcasts are public. Anything
  in-progress, failed, or marked as an internal test podcast is not listed
  here or on the public directory.

## Privacy

Only public, published content is listed on this page and in the podcast
directory. Draft, unpublished, and internal test podcasts/episodes are never
exposed here.

## Key pages

- [Podcast directory](https://app.podcasto.app/podcasts): browse public podcasts
- [Pricing](https://www.podcasto.app/pricing): plan tiers and how credits work
- [Connect your AI assistant](https://www.podcasto.app/mcp): MCP server, tokens and tool reference
- [About](https://www.podcasto.app/about)
- [Contact](https://www.podcasto.app/contact)
- [Sign in](https://app.podcasto.app/auth/login)

## For AI agents

Podcasto exposes a Model Context Protocol (MCP) server at `https://app.podcasto.app/api/mcp`
(Streamable HTTP). Authenticate via OAuth 2.1 discovery, or a personal access
token created at [https://app.podcasto.app/settings/agent-access](https://app.podcasto.app/settings/agent-access)
and sent as `Authorization: Bearer pk_...`.

Tools: get_me, list_my_podcasts, get_podcast, preview_telegram_channel,
create_podcast, update_podcast, pause_podcast, resume_podcast, list_episodes,
get_episode, generate_episode (charges credits, requires `confirm: true`;
optional `draft` mode stops before audio for review), get_episode_script,
update_episode_script, approve_episode_draft, discard_episode_draft,
get_credit_balance.

Connect from Claude Code:

```
claude mcp add --transport http podcasto https://app.podcasto.app/api/mcp --header "Authorization: Bearer pk_..."
```

No account? A second, unauthenticated MCP server at
`https://app.podcasto.app/api/mcp/public` exposes public discovery only: search_podcasts,
list_public_episodes, get_public_episode (which returns a playable audio URL)
and play_episode (the same payload, rendered as an inline player in hosts that
support MCP Apps). No token, no credits, read-only, public podcasts and
published episodes only.

```
claude mcp add --transport http podcasto-public https://app.podcasto.app/api/mcp/public
```

- [Agent skill](https://www.podcasto.app/skills/podcasto-agent/SKILL.md)

## Public podcasts

- [סיגנל בדיקה B](https://app.podcasto.app/podcasts/9c5843e4-2f08-4961-8824-27e7abeeab7b) — פודקאסט בדיקה זמני לטיוטות אחרי PR \#148. יימחק.
- [סיגנל בדיקה סולו](https://app.podcasto.app/podcasts/c6ff44fd-713e-4eaa-85e9-85efb27b04ad) — פודקאסט בדיקה זמני לטיוטות אחרי PR \#148. יימחק.
- [סיגנל בדיקה A](https://app.podcasto.app/podcasts/16961e9e-b383-4a49-badf-de894805f76b) — פודקאסט בדיקה זמני לטיוטות אחרי PR \#148. יימחק.
- [עמית סגל](https://app.podcasto.app/podcasts/e9d98dff-de49-4c8e-bd51-18f0e3c0a86b) (en) — Israeli politics and security, distilled from Amit Segal's Telegram channel (@amitsegal). Each episode turns the channel's recent posts - c…
- [סיגנל](https://app.podcasto.app/podcasts/f95e65da-6992-492c-b906-51d15a4580d5) — פרקים יומיים על הדברים הכי מעניינים שצצים - מסוננים, קצרים, לעניין.
