YouTube Transcript MCP Server

YouTube Transcript MCP Server

Enables Claude AI to extract transcripts from YouTube videos with zero setup required. Works on all platforms including mobile, supports multiple languages, and handles all YouTube URL formats through a cloud-hosted service.

Category
访问服务器

README

<div align="center"> <img src="assets/logo.png" alt="YouTube Transcript MCP Logo" width="200"/>

YouTube Transcript Remote MCP Server

The first remote Model Context Protocol (MCP) server that enables Claude AI to extract transcripts from YouTube videos. This server offers zero-setup access for users on any platform including mobile devices. </div>

Deploy to Cloudflare Workers

🌟 Features

  • Zero Local Setup: No installation required - works directly from the cloud
  • Universal Access: Works on desktop, mobile, and web versions of Claude
  • Smart Caching: Efficient caching system using Cloudflare KV for fast responses
  • Multi-language Support: Extract transcripts in different languages
  • Error Handling: Robust error handling with user-friendly messages
  • Analytics: Built-in request tracking and usage analytics
  • URL Flexibility: Handles all YouTube URL formats (youtube.com, youtu.be, m.youtube.com, etc.)

🚀 Quick Start

Option 1: Use Our Hosted Server (Recommended)

The easiest way to get started - just add our public server to your Claude Desktop:

For Claude Desktop Users

  1. Open Claude Desktop Settings

    • Click on "Claude" in the menu bar → "Settings"
    • Navigate to "Developer" tab
    • Click "Edit Config"
  2. Add the MCP Server Configuration

    Add this to your claude_desktop_config.json:

    {
      "mcpServers": {
        "youtube-transcript": {
          "command": "npx",
          "args": [
            "mcp-remote",
            "https://youtube-transcript-mcp.ergut.workers.dev/sse"
          ]
        }
      }
    }
    
  3. Restart Claude Desktop

    After saving the config file, restart Claude Desktop to load the server.

  4. Verify Installation

    Look for the tools icon (🔧) in the chat interface. You should see the get_transcript tool available.

Option 2: Deploy Your Own

Want to run your own instance? Deploy to Cloudflare Workers in one click:

Deploy to Cloudflare Workers

Or manually:

git clone https://github.com/ergut/youtube-transcript-mcp
cd youtube-transcript-mcp
npm install
npm run deploy

For Other MCP Clients

The server supports the standard MCP protocol and can be used with any compatible client:

  • Public Server URL: https://youtube-transcript-mcp.ergut.workers.dev/sse
  • Transport: Server-Sent Events (SSE) or HTTP
  • Authentication: None required (public server)

📖 Usage Examples

Basic Transcript Extraction

Extract the transcript from this YouTube video: https://www.youtube.com/watch?v=dQw4w9WgXcQ

Multi-language Support

Can you get the transcript of this video in Turkish: https://youtu.be/VIDEO_ID
Extract the Spanish transcript from: https://www.youtube.com/watch?v=VIDEO_ID

Supported URL Formats

The server automatically handles all YouTube URL formats:

  • https://www.youtube.com/watch?v=VIDEO_ID
  • https://youtu.be/VIDEO_ID
  • https://m.youtube.com/watch?v=VIDEO_ID
  • https://www.youtube.com/live/VIDEO_ID
  • https://www.youtube.com/embed/VIDEO_ID
  • https://www.youtube.com/shorts/VIDEO_ID
  • International domains (youtube.co.uk, youtube.de, etc.)

All tracking parameters (like ?si=, &t=, etc.) are automatically removed.

🛠 Available Tools

get_transcript

Extracts the transcript from a YouTube video URL.

Parameters:

  • url (required): YouTube video URL in any format
  • language (optional): Language code for the transcript (e.g., 'en', 'es', 'fr'). Defaults to 'en'.

Example Usage:

{
  "name": "get_transcript",
  "arguments": {
    "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
    "language": "en"
  }
}

🔧 Advanced Configuration

Debug Logging

To enable detailed logging for troubleshooting:

{
  "mcpServers": {
    "youtube-transcript": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://youtube-transcript-mcp.ergut.workers.dev/sse",
        "--debug"
      ]
    }
  }
}

Debug logs will be created in ~/.mcp-auth/{server_hash}_debug.log.

HTTP Transport Only

To force HTTP transport instead of SSE:

{
  "mcpServers": {
    "youtube-transcript": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://youtube-transcript-mcp.ergut.workers.dev/mcp",
        "--transport",
        "http-only"
      ]
    }
  }
}

📊 Server Information

  • Hosting: Cloudflare Workers
  • Caching: Cloudflare KV with 7-day cache for successful transcripts
  • Rate Limiting: Built-in retry logic with exponential backoff
  • Uptime: 99.9%+ availability through Cloudflare's global network
  • Response Time: Typically <3 seconds for cached content, <10 seconds for new requests

🚨 Error Handling

The server provides clear error messages for common issues:

  • "Invalid YouTube URL provided": The URL format is not recognized
  • "No transcript available for this video": Video has no captions/transcript
  • "Video not found or private": Video is private, deleted, or doesn't exist
  • "Service temporarily busy, try again in a few minutes": Rate limiting from YouTube
  • "Transcripts are disabled for this video": Creator has disabled captions

🌍 Language Support

The server supports any language that YouTube provides transcripts for. Common language codes:

  • en - English (default)
  • tr - Turkish
  • es - Spanish
  • fr - French
  • de - German
  • it - Italian
  • pt - Portuguese
  • ja - Japanese
  • ko - Korean
  • zh - Chinese

🔒 Privacy & Security

  • No Authentication Required: Public server for ease of use
  • No Data Storage: Transcripts are cached temporarily for performance only
  • No Personal Information: Only YouTube video IDs and transcripts are processed
  • HTTPS Only: All communications are encrypted
  • CORS Enabled: Supports web-based MCP clients

🚀 API Endpoints

For developers who want to integrate directly:

HTTP POST /mcp

Standard MCP JSON-RPC endpoint for direct integration.

Server-Sent Events /sse

MCP SSE transport endpoint for real-time communication.

Info /

Server information and status endpoint.

Example Direct API Call:

curl -X POST https://youtube-transcript-mcp.ergut.workers.dev/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "get_transcript",
      "arguments": {
        "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
        "language": "en"
      }
    }
  }'

🐛 Troubleshooting

Common Issues

  1. "Connection Error" in Claude Desktop

    • Ensure you have the latest Claude Desktop version
    • Check that mcp-remote is properly configured
    • Try adding --debug flag to see detailed logs
  2. "Could not attach to MCP server"

    • Verify your internet connection
    • Check the server URL is correct
    • Restart Claude Desktop after config changes
  3. No transcript returned

    • Verify the YouTube URL is valid and accessible
    • Check if the video has captions enabled
    • Try a different language code if available

Getting Help

  • Check logs: Look in ~/.mcp-auth/ for debug logs
  • Test direct connection: Use npx -p mcp-remote@latest mcp-remote-client https://youtube-transcript-mcp.ergut.workers.dev/sse
  • Verify server status: Visit https://youtube-transcript-mcp.ergut.workers.dev/
  • Open an issue: GitHub Issues

🤝 Contributing

This is an open-source project. Contributions are welcome!

  • Report Issues: Found a bug? Please open an issue
  • Feature Requests: Have ideas for improvements? Let us know!
  • Code Contributions: PRs welcome for enhancements

Development Setup

git clone https://github.com/ergut/youtube-transcript-mcp
cd youtube-transcript-mcp
npm install
npm run dev

📜 License

This project is open source and available under the MIT License.

🙏 Acknowledgments


Ready to supercharge Claude with YouTube transcript extraction? Add this server to your Claude Desktop configuration and start extracting transcripts from any YouTube video instantly! 🎉

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选