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. To install YouTube Transcript Server for Claude Desktop automatically via Smithery: - gettranscript - Extract transcripts from YouTube videos - url (string, required): YouTube video URL, Shorts URL, or video ID - l
Add this skill
npx mdskills install kimtaeyoon83/mcp-server-youtube-transcriptWell-documented transcript extraction with flexible options but over-scoped permissions for read-only task
1[](https://mseep.ai/app/kimtaeyoon83-mcp-server-youtube-transcript)23# YouTube Transcript Server4[](https://archestra.ai/mcp-catalog/kimtaeyoon83__mcp-server-youtube-transcript)56[](https://smithery.ai/server/@kimtaeyoon83/mcp-server-youtube-transcript)78A 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.910<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>1112### Installing via Smithery1314To install YouTube Transcript Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@kimtaeyoon83/mcp-server-youtube-transcript):1516```bash17npx -y @smithery/cli install @kimtaeyoon83/mcp-server-youtube-transcript --client claude18```1920## Components2122### Tools2324- **get_transcript**25 - Extract transcripts from YouTube videos26 - Inputs:27 - `url` (string, required): YouTube video URL, Shorts URL, or video ID28 - `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 markers3132## Key Features3334- Support for multiple video URL formats (including YouTube Shorts)35- Language-specific transcript retrieval with automatic fallback36- Optional timestamps for referencing specific moments37- Built-in ad/sponsorship filtering (enabled by default)38- Zero external dependencies for transcript fetching39- Detailed metadata in responses4041## Configuration4243To use with Claude Desktop, add this server configuration:4445```json46{47 "mcpServers": {48 "youtube-transcript": {49 "command": "npx",50 "args": ["-y", "@kimtaeyoon83/mcp-server-youtube-transcript"]51 }52 }53}54```5556## Install via tool5758[mcp-get](https://github.com/michaellatman/mcp-get) A command-line tool for installing and managing Model Context Protocol (MCP) servers.5960```shell61npx @michaellatman/mcp-get@latest install @kimtaeyoon83/mcp-server-youtube-transcript62```6364## Awesome-mcp-servers65[awesome-mcp-servers](https://github.com/punkpeye/awesome-mcp-servers) A curated list of awesome Model Context Protocol (MCP) servers.6667## Development6869### Prerequisites7071- Node.js 18 or higher72- npm or yarn7374### Setup7576Install dependencies:77```bash78npm install79```8081Build the server:82```bash83npm run build84```8586For development with auto-rebuild:87```bash88npm run watch89```9091### Testing9293```bash94npm test95```9697### Debugging9899Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector for development:100101```bash102npm run inspector103```104105106107## Running evals108109The evals package loads an mcp client that then runs the index.ts file, so there is no need to rebuild between tests. You can load environment variables by prefixing the npx command. Full documentation can be found [here](https://www.mcpevals.io/docs).110111```bash112OPENAI_API_KEY=your-key npx mcp-eval src/evals/evals.ts src/index.ts113```114## Error Handling115116The server implements robust error handling for common scenarios:117- Invalid video URLs or IDs118- Unavailable transcripts119- Language availability issues120- Network errors121122## Usage Examples1231241. Get transcript by video URL:125```typescript126await server.callTool("get_transcript", {127 url: "https://www.youtube.com/watch?v=VIDEO_ID",128 lang: "en"129});130```1311322. Get transcript by video ID:133```typescript134await server.callTool("get_transcript", {135 url: "VIDEO_ID",136 lang: "ko"137});138```1391403. Get transcript from YouTube Shorts:141```typescript142await server.callTool("get_transcript", {143 url: "https://www.youtube.com/shorts/VIDEO_ID"144});145```1461474. Get transcript with timestamps:148```typescript149await server.callTool("get_transcript", {150 url: "VIDEO_ID",151 include_timestamps: true152});153```1541555. Get raw transcript without ad filtering:156```typescript157await server.callTool("get_transcript", {158 url: "VIDEO_ID",159 strip_ads: false160});161```1621636. How to Extract YouTube Subtitles in Claude Desktop App164```165chat: https://youtu.be/ODaHJzOyVCQ?si=aXkJgso96Deri0aB Extract subtitles166```167168## Security Considerations169170The server:171- Validates all input parameters172- Handles YouTube API errors gracefully173- Implements timeouts for transcript retrieval174- Provides detailed error messages for troubleshooting175176## License177178This MCP server is licensed under the MIT License. See the LICENSE file for details.179
Full transparency — inspect the skill content before installing.