$git clone https://github.com/kimtaeyoon83/mcp-server-youtube-transcriptA Model Context Protocol server that enables retrieval of transcripts from YouTube videos. This server provides direct access to video captions and subtitles through a simple interface.
| 1 | [](https://mseep.ai/app/kimtaeyoon83-mcp-server-youtube-transcript) |
| 2 | |
| 3 | # YouTube Transcript Server |
| 4 | [](https://archestra.ai/mcp-catalog/kimtaeyoon83__mcp-server-youtube-transcript) |
| 5 | |
| 6 | [](https://smithery.ai/server/@kimtaeyoon83/mcp-server-youtube-transcript) |
| 7 | |
| 8 | A Model Context Protocol server that enables retrieval of transcripts from YouTube videos. This server provides direct access to video captions and subtitles through a simple interface. |
| 9 | |
| 10 | <a href="https://glama.ai/mcp/servers/z429kk3te7"><img width="380" height="200" src="https://glama.ai/mcp/servers/z429kk3te7/badge" alt="mcp-server-youtube-transcript MCP server" /></a> |
| 11 | |
| 12 | ### Installing via Smithery |
| 13 | |
| 14 | To install YouTube Transcript Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@kimtaeyoon83/mcp-server-youtube-transcript): |
| 15 | |
| 16 | ```bash |
| 17 | npx -y @smithery/cli install @kimtaeyoon83/mcp-server-youtube-transcript --client claude |
| 18 | ``` |
| 19 | |
| 20 | ## Components |
| 21 | |
| 22 | ### Tools |
| 23 | |
| 24 | - **get_transcript** |
| 25 | - Extract transcripts from YouTube videos |
| 26 | - Inputs: |
| 27 | - `url` (string, required): YouTube video URL, Shorts URL, or video ID |
| 28 | - `lang` (string, optional, default: "en"): Language code for transcript (e.g., 'ko', 'en'). Automatically falls back to available languages if requested language is not found. |
| 29 | - `include_timestamps` (boolean, optional, default: false): Include timestamps in output (e.g., '[0:05] text') |
| 30 | - `strip_ads` (boolean, optional, default: true): Filter out sponsorships, ads, and promotional content from transcript based on chapter markers |
| 31 | |
| 32 | - **analyze_video** (optional, requires a TwelveLabs API key) |
| 33 | - Analyze a video with [TwelveLabs](https://twelvelabs.io) Pegasus, a video-understanding model. Unlike `get_transcript`, this reasons over what is *shown* on screen, so it produces useful summaries and answers even for videos with little or no speech (demos, gameplay, b-roll, music videos). |
| 34 | - Inputs: |
| 35 | - `url` (string, required): A publicly reachable **direct video URL** (e.g. an `.mp4`/`.mov`/`.webm` link or a pre-signed URL). TwelveLabs fetches the file server-side, so a YouTube watch page URL will not work — it serves HTML, not a raw video stream. |
| 36 | - `prompt` (string, optional): Instruction or question for the model (e.g. `"Summarize this video in 3 sentences"` or `"What products are shown?"`). Defaults to a general summary. |
| 37 | - `model` (string, optional, default: `"pegasus1.2"`): Pegasus model to use (`"pegasus1.2"` or `"pegasus1.5"`). |
| 38 | - `max_tokens` (number, optional, default: 2048): Maximum response length in tokens. |
| 39 | - Requires the `TWELVELABS_API_KEY` environment variable. The transcript tool works without it; analysis is fully opt-in. Grab a free key at [twelvelabs.io](https://twelvelabs.io) — there's a generous free tier. |
| 40 | |
| 41 | ## Key Features |
| 42 | |
| 43 | - Support for multiple video URL formats (including YouTube Shorts) |
| 44 | - Language-specific transcript retrieval with automatic fallback |
| 45 | - Optional timestamps for referencing specific moments |
| 46 | - Built-in ad/sponsorship filtering (enabled by default) |
| 47 | - Zero external dependencies for transcript fetching |
| 48 | - Detailed metadata in responses |
| 49 | |
| 50 | ## Configuration |
| 51 | |
| 52 | To use with Claude Desktop, add this server configuration: |
| 53 | |
| 54 | ```json |
| 55 | { |
| 56 | "mcpServers": { |
| 57 | "youtube-transcript": { |
| 58 | "command": "npx", |
| 59 | "args": ["-y", "@kimtaeyoon83/mcp-server-youtube-transcript"] |
| 60 | } |
| 61 | } |
| 62 | } |
| 63 | ``` |
| 64 | |
| 65 | To enable the optional `analyze_video` tool, add your TwelveLabs API key: |
| 66 | |
| 67 | ```json |
| 68 | { |
| 69 | "mcpServers": { |
| 70 | "youtube-transcript": { |
| 71 | "command": "npx", |
| 72 | "args": ["-y", "@kimtaeyoon83/mcp-server-youtube-transcript"], |
| 73 | "env": { |
| 74 | "TWELVELABS_API_KEY": "your-twelvelabs-api-key" |
| 75 | } |
| 76 | } |
| 77 | } |
| 78 | } |
| 79 | ``` |
| 80 | |
| 81 | ## Ins |