mcpField
Y
ytranscript-mcp

ytranscript-mcp

Local
github.com/nnnoelMedia & Design0Updated 5w ago

About ytranscript-mcp

ytranscript-mcp provides YouTube transcripts to AI tools, including for videos without captions through AI speech-to-text. It supports original-language output, selected caption languages, timestamps, and response-length limits.

Key features

  1. 01Fetch transcripts from YouTube videos
  2. 02Transcribe videos without captions
  3. 03Choose a caption language
  4. 04Return plain text or timestamps
  5. 05Limit transcript length

Use cases

  1. 01Summarize a YouTube video
  2. 02Find statements and their timestamps
  3. 03Get transcripts from videos without captions

MCP support

Exposes the `get_transcript` tool through MCP, accepting a YouTube URL or video ID and optional language, format, and character limit. It uses the yTranscript API and requires a `YTRANSCRIPT_API_KEY`.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"nnnoel-ytranscript": {
"command": "npx",
"args": [
"-y",
"ytranscript-mcp"
],
"env": {
"YTRANSCRIPT_API_KEY": "<YTRANSCRIPT_API_KEY>"
}
}
}
}
Run commandnpx -y ytranscript-mcp
Environment variables to set
YTRANSCRIPT_API_KEYSecretAPI key from https://ytranscript.com/developers (free plan available)

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmytranscript-mcp0.1.0

Tools

1

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
langstringNoLanguage code of the caption track to fetch, e.g. 'en' or 'es'. Omit to get the video's original language.
videostringYesYouTube video URL or 11-character video ID
formatenumNo'text' (default): one block of plain text. 'timestamped': one line per segment with [m:ss] times.text | timestamped
max_charactersintegerNoTruncate the transcript to about this many characters. Useful for very long videos.

Details

From the project README

ytranscript-mcp

An MCP server that gives Claude, Cursor, VS Code, and other AI tools the transcript of any YouTube video.

  • Works from anywhere. Runs fine on AWS, Lambda, Vercel, n8n Cloud, and other cloud hosts. There are no proxies to buy and no IP bans to work around. YouTube blocks most cloud IPs for transcript requests; the yTranscript API handles that for you.
  • Handles videos without captions. If a video has no captions, it's transcribed with AI speech-to-text.
  • Returns the language actually spoken by default, including on auto-dubbed videos. Pass lang to pick a specific caption track.
  • Keeps long videos manageable. Choose plain text or timestamped lines, and cap the length so a two-hour video doesn't flood the model's context.

Setup

  1. Get a free API key at ytranscript.com/developers. The free plan includes 50 units a month, no card required.
  2. Add the server to your client using one of the configs below.
Claude Code
claude mcp add ytranscript -e YTRANSCRIPT_API_KEY=yk_live_your_key -- npx -y ytranscript-mcp
Claude Desktop

Add this to claude_desktop_config.json. Open it from Settings → Developer → Edit Config.

{
  "mcpServers": {
    "ytranscript": {
      "command": "npx",
      "args": ["-y", "ytranscript-mcp"],
      "env": { "YTRANSCRIPT_API_KEY": "yk_live_your_key" }
    }
  }
}
Cursor

Add this to ~/.cursor/mcp.json, or to .cursor/mcp.json in a project:

{
  "mcpServers": {
    "ytranscript": {
      "command": "npx",
      "args": ["-y", "ytranscript-mcp"],
      "env": { "YTRANSCRIPT_API_KEY": "yk_live_your_key" }
    }
  }
}
VS Code

Add this to .vscode/mcp.json:

{
  "servers": {
    "ytranscript": {
      "command": "npx",
      "args": ["-y", "ytranscript-mcp"],
      "env": { "YTRANSCRIPT_API_KEY": "yk_live_your_key" }
    }
  }
}

Any other MCP client that runs stdio servers works the same way: run npx -y ytranscript-mcp with YTRANSCRIPT_API_KEY set.

Tool: get_transcript

ArgumentRequiredDescription
videoyesA YouTube URL (watch, youtu.be, shorts, embed) or an 11-character video ID
langnoLanguage code of the caption track to fetch, such as en or es. Omit it to get the video's original language
formatnotext (default) returns plain text. timestamped returns one line per segment with [m:ss] times
max_charactersnoCut the transcript at about this many characters. The response says how much was left out

Things to ask your assistant:

  • "Summarize this video: https://youtu.be/..."
  • "What does the speaker say about pricing, and at what timestamps?"
  • "Pull the transcript of this Spanish video and translate it to English."

Every response ends with the units used and your monthly total, so you can keep an eye on your quota.

Pricing

A transcript from captions costs 1 unit. A video without captions, transcribed with AI, costs 15 units. Failed requests are free.

PlanPriceUnits per month
Free$050
Starter$9/mo1,000
Developer$29/mo10,000
Scale$79/mo50,000

See ytranscript.com/developers for details.

Related

  • ytranscript-api is the JavaScript/TypeScript client this server is built on.

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.