Text-to-Speech Content Generation is a productivity workflow that chains ElevenLabs + Notion to automate a common task. Notion pages tagged as 'podcast' are automatically converted to audio files via ElevenLabs and saved back as attachments. Once configured, it saves ~5 hours/week per content creator, plus eliminating $500-1500/episode voiceover costs and runs through Claude Code, Cursor, Windsurf or any MCP-compatible AI agent.
Notion pages tagged as 'podcast' are automatically converted to audio files via ElevenLabs and saved back as attachments.
Execute this recipe in your browser — no local install, no Claude Code. Streams results live.
Notion is where written content lives; ElevenLabs turns that content into studio-quality audio without a recording setup. Tagging a page triggers the entire pipeline automatically, making it trivial to produce podcast episodes or audio briefings from existing written work.
Copy text from Notion, paste into TTS tool, download file, rename it, manually attach it back, update the page status.
Tag a Notion page as 'podcast'. Audio file appears as an attachment automatically in minutes.
Concrete ROI — not marketing fluff.
Time saved
~5 hours/week per content creator, plus eliminating $500-1500/episode voiceover costs
This prompt is the workflow. Paste into Claude Code, Cursor, or Windsurf.
You are a text-to-speech agent. Triggered manually when a Notion page is tagged 'podcast'.
Given a Notion page ID:
1. Call notion.notion-fetch(page_id) to get the plain-text block content (skip images, embeds, toggles)
2. Strip markdown, normalize paragraphs, prepend title as intro
3. Call elevenlabs.text_to_speech(text=content, voice_id=${VOICE_ID}, model="eleven_turbo_v2", output_format="mp3_44100_128")
4. Upload the resulting mp3 to your storage (S3 or Notion attachments) — get a public URL
5. Call notion.notion-update-page(page_id, properties={"Audio URL": url, "Status": "Audio ready", "Duration": mp3_duration_seconds})
Handle pages > 5000 chars by chunking into paragraphs and concatenating mp3s via ffmpeg.How this workflow fires and what env vars you need.
Run in Claude Code when a Notion page is tagged 'podcast' (or wire to Notion webhook with a Zapier proxy)
Install everything — MCPs, prompt, env template — in a single call.
$ mcpizy recipe install elevenlabs-notion-tts ✓ Installs all 2 MCP servers ✓ Writes prompt to ~/.mcpizy/prompts/elevenlabs-notion-tts.md ✓ Generates .env.example in current directory ✓ Ready to paste into Claude Code
Requires mcpizy CLI v1.1+ — install via npm i -g mcpizy.
$ mcpizy install elevenlabs && mcpizy install notionText-to-Speech Content Generation is a productivity automation that uses ElevenLabs + Notion together via the Model Context Protocol. Notion pages tagged as 'podcast' are automatically converted to audio files via ElevenLabs and saved back as attachments.
Setup takes around 10 min setup, audio in minutes per page. You install the required MCP servers with `mcpizy install elevenlabs && mcpizy install notion`, connect your accounts, and the workflow is ready to run.
Once running, this workflow saves ~5 hours/week per content creator, plus eliminating $500-1500/episode voiceover costs. The concrete business value: Unlocks podcast as a distribution channel without hiring a voice talent or recording studio; Extends accessibility compliance (WCAG, ADA) to all docs — reduces legal risk + opens enterprise deals requiring it.
You need 2 MCP servers: ElevenLabs (mcpizy install elevenlabs), Notion (mcpizy install notion). All are installable in one command via the MCPizy CLI and configured in your `.claude.json` or `.cursor/mcp.json`.
Yes. The workflow runs with any MCP-compatible AI agent — Claude Code, Claude Desktop, Cursor, Windsurf, VS Code with Copilot, and custom agents built on the MCP SDK. The MCP servers are identical across clients; only the config file path (`.claude.json` vs `.cursor/mcp.json`) changes.
Install the required MCPs from the marketplace and automate this in 10 min setup.
$ mcpizy install elevenlabs && mcpizy install notion
Free to install. Connect your accounts and this workflow runs itself.