YouTube Transcript MCP Server
TubeTranscript runs a remote MCP server that lets Claude Code, Cursor, Windsurf and n8n agents fetch a YouTube video's transcript with one get_transcript call. It reads the captions first and transcribes the audio when a video has none. It needs a Pro API key ($9/month).
claude mcp add --transport http tubetranscript https://tubetranscript.io/api/mcp \
--header "Authorization: Bearer $TUBETRANSCRIPT_API_KEY"
claude mcp add --transport http tubetranscript-ai https://tubetranscript.io/api/mcp/tools \
--header "Authorization: Bearer $TUBETRANSCRIPT_API_KEY"Pro plan required. To see a transcript first, paste a link on the home page or use Copy for Claude, which needs no account.
Connect your client
There are two servers, /api/mcp for transcripts and /api/mcp/tools for the AI tools. Both take the same Pro key in an Authorization: Bearer header and use Streamable HTTP. The AI tools take the job_id that get_transcript returns, so register both.
{
"mcpServers": {
"tubetranscript": {
"url": "https://tubetranscript.io/api/mcp",
"headers": { "Authorization": "Bearer tt_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }
},
"tubetranscript-ai": {
"url": "https://tubetranscript.io/api/mcp/tools",
"headers": { "Authorization": "Bearer tt_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" }
}
}
}- Windsurf: the same two servers in
~/.codeium/windsurf/mcp_config.json, withserverUrlinstead ofurl. - n8n: an MCP Client Tool node on an AI Agent, transport HTTP Streamable, authentication Bearer Auth.
- Claude Code: run
claude mcp listto confirm both connect, then start a new session so the tools load.
Every step, with the exact fields, is in the MCP setup guide.
What the agent can call
| Tool | Server | Returns |
|---|---|---|
get_transcript | /api/mcp | The transcript as clean plain text, the video ID, a status and the job_id that stores it for your team. |
extract_hooks | /api/mcp/tools | Up to 10 hooks with start and end time, a title and a summary. |
create_mindmap | /api/mcp/tools | A Mermaid mindmap of the video. |
generate_chapters | /api/mcp/tools | YouTube chapters with clock times and titles. |
generate_description | /api/mcp/tools | A video description with tags and hashtags. |
find_moments | /api/mcp/tools | Short-clip moments with a hook, a reason and a quote. |
analyze_hook | /api/mcp/tools | An analysis of the opening, with rewrite suggestions. |
translate_subtitles | /api/mcp/tools | Subtitles translated into the languages you choose. |
generate_brand_voice_blog | /api/mcp/tools | A Markdown blog draft in one of your saved brand voices. |
The AI tools read the transcript of a job you already have and never fetch videos themselves. Calling one again with the same job_id returns the stored result.
A typical agent workflow
{ "name": "get_transcript", "arguments": { "video_url": "https://www.youtube.com/watch?v=jNQXAC9IVRw" } }- The agent calls
get_transcriptwith a video URL or ID. It gets the transcript as plain text and ajob_id. - If
statusisprocessing, the video has no captions and its audio is being transcribed. The agent calls again after about 60 seconds. - The agent passes the
job_idtogenerate_chapters,extract_hooks,translate_subtitlesor any other AI tool.
Repeat calls are safe: your team's existing job for a video is reused, so nothing is transcribed twice.
Videos without captions
When a video has no captions, get_transcript falls back to audio transcription instead of returning an error. On Pro it handles videos up to 2 hours. Private and removed videos, and live streams in progress, still fail. Not using an agent? Get a transcript of a video without captions in the browser.
Limits and authentication
| Plan | Pro, $9/month. A missing, unknown or non-Pro key gets 402 Payment Required. |
|---|---|
| Rate limit | 1,000 tool calls per 24 hours per key, shared with the REST API. initialize, tools/list and ping are free. |
| Transport | Stateless Streamable HTTP. GET and DELETE on the server URL get 405. |
| Output | get_transcript returns plain text without timestamps. For timed chunks, use the REST API. |
Details on keys and limits: security and rate limits.
MCP, REST API or copy and paste?
| You want to | Use |
|---|---|
| Let an agent decide when to fetch a transcript | This MCP server |
| Fetch transcripts from your own code or an automation | The REST API |
| Give one video to ChatGPT or Claude, free | Copy for ChatGPT or Copy for Claude |
Compared with open-source MCP servers
Free open-source servers such as jkawamoto/mcp-youtube-transcript and kimtaeyoon83/mcp-server-youtube-transcript are a good fit when you are happy to run a process on your own machine. Read from their READMEs on :
| Aspect | Open-source servers | TubeTranscript |
|---|---|---|
| Where it runs | On your machine, started with uvx or npx | Hosted: you add a URL and a key |
| Cost | Free, MIT licence | Pro, $9/month |
| Videos without captions | Captions and subtitles only, per their READMEs. One adds an optional video-analysis tool that needs a TwelveLabs key. | Falls back to audio transcription |
| IP blocks | The first README says YouTube blocks cloud and data-centre IPs and shows how to set up your own proxy | No proxy to set up on your side |
| Timestamps | Timed segments are available through MCP | get_transcript returns plain text; timed chunks come from the REST API |
Choose an open-source server if you only need captions, want it free, or want timed segments inside MCP.
FAQ
What is the TubeTranscript MCP server?
Two remote MCP servers that let an AI agent fetch the transcript of a YouTube video and turn it into hooks, chapters, a mindmap, subtitles or a blog draft. You register them once in Claude Code, Cursor, Windsurf or n8n, and the agent calls the tools itself.
How much does it cost?
The MCP servers are part of the Pro plan, $9/month. One Pro API key makes up to 1,000 tool calls per 24 hours, shared with the REST API. See pricing.
Does get_transcript work for videos without captions?
Yes. It reads the captions first. With none, it transcribes the audio and returns status processing; the agent calls it again with the same video after about a minute until the status is completed. Pro covers videos up to 2 hours.
Do I need Pro just to try it?
For the MCP servers, yes: every tool call needs a Pro API key. To see what a transcript looks like first, paste a link on the home page, or use Copy for Claude, which needs no account.
Should I use MCP or the REST API?
Use MCP when an agent decides when to fetch a transcript. Use the REST API when your own code does, for example from a script or an automation. Both use the same Pro key and the same daily limit.
How is this different from the free open-source YouTube transcript MCP servers?
Those run on your machine and are free. This one is hosted, so there is no process or proxy to set up, and it falls back to audio transcription when a video has no captions. It costs Pro, and get_transcript returns plain text; timed segments come from the REST API. See the comparison above.
Which clients are supported?
Any client that speaks Streamable HTTP MCP with a Bearer header. The setup guide documents Claude Code, Cursor, Windsurf and n8n.
Ready to connect your agent? Pro is $9/month.
By Kenji Saito · Updated