mcpField
Y
Youtube Translate

Youtube Translate

Remote
github.com/brianshin22Media & Design5Updated today
Repository

About Youtube Translate

YouTube Translate is an MCP server for people working with video content. It retrieves transcripts, translations, subtitle files, and summaries for YouTube videos, and can search their content by keywords. MCP clients can also call its hosted remote endpoint.

Key features

  1. 01Retrieve plain or timestamped transcripts
  2. 02Translate transcript text
  3. 03Generate SRT or VTT subtitles
  4. 04Create summaries in different lengths
  5. 05Search passages with timestamps

Use cases

  1. 01Generate subtitles for a video in another language
  2. 02Get an overview of a video and locate relevant passages

MCP support

The server exposes tools for queuing videos, checking processing status, retrieving transcripts and translations, generating subtitles and summaries, and searching. Its hosted endpoint uses streamable HTTP and supports OAuth or account API-key authentication.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://api.youtubetranslate.com/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

Details

From the project README

YouTube Translate MCP

smithery badge

A Model Context Protocol (MCP) server for accessing the YouTube Translate API, allowing you to obtain transcripts, translations, and summaries of YouTube videos.

Features

  • Get transcripts of YouTube videos
  • Translate transcripts to different languages
  • Generate subtitles in SRT or VTT format
  • Create summaries of video content
  • Search for specific content within videos

Hosted remote MCP

Production endpoint: https://api.youtubetranslate.com/mcp using streamable HTTP.

Preferred authentication is OAuth. The server returns a protected-resource discovery challenge, and the API provides public-client registration, S256 PKCE, owner consent, short-lived access tokens, refresh rotation, and revocation. Send Authorization: Bearer <access token> after linking your account.

For legacy clients, send an account-owned user key on every request:

X-API-Key: ut-user-...

For local stdio, YOUTUBE_TRANSLATE_API_KEY remains supported. Every hosted request is authenticated before tool discovery or invocation, and the transport is stateless. No shared administrative credential is used. The account page provides a disconnect action that revokes an assistant's token family.

Tools
  • start_video: queue a YouTube URL and return a job ID.
  • get_video_status: check processing state by job ID or YouTube ID.
  • get_transcript: return text or timestamped segments.
  • get_translation: request and return a translated transcript.
  • get_subtitles: generate and return translated SRT or VTT.
  • get_summary: generate short, medium, or long summaries.
  • search_video: find passages with global positions and timestamps.

High-level tools wait up to TOOL_TIMEOUT_SECONDS (75 by default). Longer videos return a processing message and should be retried by the agent.

Run remotely
uv run youtube-translate-mcp --transport streamable-http --host 0.0.0.0 --port 8000

MCP_ALLOWED_HOSTS must include the public hostname used by the reverse proxy. Requests without X-API-Key are rejected.

ChatGPT and Claude

Use the hosted URL with OAuth where the client supports it. Account-owned API-key headers remain an alternative. The production OAuth flow and MCP invocation have been verified with an outside client, but not through ChatGPT's or Claude's own connection UI. Google account signup still needs this application's configured OIDC client. Public directory review and submission are not complete. Do not promise in-chat purchase: current ChatGPT plugin rules prohibit selling digital credits through the plugin.

Installation

Installing via Smithery

To install youtube-translate-mcp for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @brianshin22/youtube-translate-mcp --client claude
Installing Manually

This package requires Python 3.12 or higher:

# Using uv (recommended)
uv pip install youtube-translate-mcp

# Using pip
pip install youtube-translate-mcp

Or install from source:

# Clone the repository
git clone https://github.com/yourusername/youtube-translate-mcp.git
cd youtube-translate-mcp

# Using uv (recommended)
uv pip install -e .

# Using pip
pip install -e .

Usage

To run the server:

# Using stdio transport (default)
YOUTUBE_TRANSLATE_API_KEY=your_api_key youtube-translate-mcp

# Using SSE transport
YOUTUBE_TRANSLATE_API_KEY=your_api_key youtube-translate-mcp --transport sse --port 8000

Docker

You can also run the server using Docker:

# Build the Docker image
docker build -t youtube-translate-mcp .

# Run with stdio transport
docker run -e YOUTUBE_TRANSLATE_API_KEY=your_api_key youtube-translate-mcp

# Run with SSE transport
docker run -p 8000:8000 -e YOUTUBE_TRANSLATE_API_KEY=your_api_key youtube-translate-mcp --transport sse

Environment Variables

  • YOUTUBE_TRANSLATE_API_KEY: Required. Your API key for accessing the YouTube Translate API.

Deployment with Smithery

This package includes a smithery.yaml file for easy deployment with Smithery.

To deploy, set the YOUTUBE_TRANSLATE_API_KEY configuration parameter to your YouTube Translate API key.

Development

Prerequisites
  • Python 3.12+
  • Docker (optional)
Setup
# Create and activate a virtual environment using uv (recommended)
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install dependencies using uv
uv pip install -e .

# Alternatively, with standard tools
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
pip install -e .
Testing with Claude Desktop

To test with Claude Desktop (macOS/Windows only), you'll need to add your server to the Claude Desktop configuration file located at ~/Library/Application Support/Claude/claude_desktop_config.json.

Method 1: Local Development

Use this method if you want to test your local development version:

{
    "mcpServers": {
        "youtube-translate": {
            "command": "uv",
            "args": [
                "--directory",
                "/ABSOLUTE/PATH/TO/youtube-translate-mcp",
                "run",
                "-m", "youtube_translate_mcp"
            ],
            "env": {
              "YOUTUBE_TRANSLATE_API_KEY": "YOUR_API_KEY"
            }
        }
    }
}

Make sure to replace /ABSOLUTE/PATH/TO/youtube-translate-mcp with the actual path to your project directory.

Method 2: Docker-based Testing

If you prefer to test using Docker (recommended for more reproducible testing):

{
  "mcpServers": {
    "youtube-translate": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "YOUTUBE_TRANSLATE_API_KEY",
        "youtube-translate-mcp"
      ],
      "env": {
        "YOUTUBE_TRANSLATE_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

Replace YOUR_API_KEY with your actual YouTube Translate API key.

For more information on using MCP servers with Claude Desktop, see the MCP documentation.

Debugging
  • The normal MCP Inspector has a built in timeout for MCP tool calls, which is generally too short for these video processing calls (as of March 13, 2025). Better to use Claude Desktop and look at the MCP logs from Claude at ~/Library/Logs/Claude/mcp-server-{asfasf}.log.
  • Can do tail -f {log-file}.log to follow as you interact with Claude.

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.