Skip to content

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 Code
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.

Cursor (.cursor/mcp.json, keep it out of version control)
{
  "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, with serverUrl instead of url.
  • n8n: an MCP Client Tool node on an AI Agent, transport HTTP Streamable, authentication Bearer Auth.
  • Claude Code: run claude mcp list to 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

ToolServerReturns
get_transcript/api/mcpThe transcript as clean plain text, the video ID, a status and the job_id that stores it for your team.
extract_hooks/api/mcp/toolsUp to 10 hooks with start and end time, a title and a summary.
create_mindmap/api/mcp/toolsA Mermaid mindmap of the video.
generate_chapters/api/mcp/toolsYouTube chapters with clock times and titles.
generate_description/api/mcp/toolsA video description with tags and hashtags.
find_moments/api/mcp/toolsShort-clip moments with a hook, a reason and a quote.
analyze_hook/api/mcp/toolsAn analysis of the opening, with rewrite suggestions.
translate_subtitles/api/mcp/toolsSubtitles translated into the languages you choose.
generate_brand_voice_blog/api/mcp/toolsA 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

tools/call
{ "name": "get_transcript", "arguments": { "video_url": "https://www.youtube.com/watch?v=jNQXAC9IVRw" } }
  1. The agent calls get_transcript with a video URL or ID. It gets the transcript as plain text and a job_id.
  2. If status is processing, the video has no captions and its audio is being transcribed. The agent calls again after about 60 seconds.
  3. The agent passes the job_id to generate_chapters, extract_hooks, translate_subtitles or 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

PlanPro, $9/month. A missing, unknown or non-Pro key gets 402 Payment Required.
Rate limit1,000 tool calls per 24 hours per key, shared with the REST API. initialize, tools/list and ping are free.
TransportStateless Streamable HTTP. GET and DELETE on the server URL get 405.
Outputget_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 toUse
Let an agent decide when to fetch a transcriptThis MCP server
Fetch transcripts from your own code or an automationThe REST API
Give one video to ChatGPT or Claude, freeCopy 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 :

AspectOpen-source serversTubeTranscript
Where it runsOn your machine, started with uvx or npxHosted: you add a URL and a key
CostFree, MIT licencePro, $9/month
Videos without captionsCaptions and subtitles only, per their READMEs. One adds an optional video-analysis tool that needs a TwelveLabs key.Falls back to audio transcription
IP blocksThe first README says YouTube blocks cloud and data-centre IPs and shows how to set up your own proxyNo proxy to set up on your side
TimestampsTimed segments are available through MCPget_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

    YouTube Transcript MCP Server | TubeTranscript.io