Youtube Transcript Remote MCP Server

by ergut

785 downloads
Not rated
GitHub

About

First remote YouTube transcript MCP server - enables zero-setup transcript extraction on any device including mobile. While multiple local YouTube transcript servers exist, this is the first cloud-hosted solution that works without installation, making YouTube transcripts accessi

Details

Author
ergut
Downloads
785
Categories
Media

- Zero local setup – works directly from the cloud
- Universal access across desktop, mobile, and web Claude clients
- Smart caching via Cloudflare KV for fast responses
- Multi-language transcript extraction
- Robust error handling with user-friendly messages
- Supports all YouTube URL formats

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Youtube Transcript Remote MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Add the server configuration to your Claude Desktop config file (claude_desktop_config.json) using the npx mcp-remote command with the hosted server URL, or deploy your own instance to Cloudflare Workers. Once configured, use the get_transcript tool in Claude to extract transcripts.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

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

McpServers

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

<div align="center">
YouTube Transcript MCP Logo

# 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.youtube-mcp-server.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.youtube-mcp-server.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.youtube-mcp-server.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.youtube-mcp-server.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.youtube-mcp-server.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.youtube-mcp-server.workers.dev/sse
- Verify server status: Visit https://youtube-transcript-mcp.youtube-mcp-server.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

- Built with the Model Context Protocol by Anthropic
- Hosted on Cloudflare Workers
- Uses the youtube-transcript library
- Inspired by the MCP community and existing local transcript servers

---

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! 🎉

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.