
YouTube Translate
io.github.brianshin22Published by GitHub account brianshin22v0.2.1Updated Oct 29, 2026
Transcripts, translations, summaries, subtitles, and search for public YouTube videos.
Overview
Hosted MCP server that lets an assistant pull transcripts, translations, subtitles, summaries and in-video search results from public YouTube videos.
- What you can do
- Queue a YouTube video for processing and check its job status
- Fetch a transcript as plain text or timestamped segments
- Translate a transcript into another language
- Generate translated subtitles in SRT or VTT format
- Produce short, medium or long summaries of a video
- Search inside a video for passages with timestamps and positions
- When to use it
- Useful when you want an assistant to work with the spoken content of public YouTube videos: summarizing a talk, translating or subtitling a video, or locating a specific passage without watching it. Long videos may need retries because tool calls time out after about 75 seconds by default.
- Requirements
- A remote endpoint at api.youtubetranslate.com over streamable HTTP, with OAuth account linking (PKCE, short-lived tokens) or an account-owned API key sent as an X-API-Key header. A local stdio install instead needs Python 3.12+ and the YOUTUBE_TRANSLATE_API_KEY environment variable; Docker is optional.
Installation
In SourceWeft
- Open YouTube Translate in the dashboard and add it to a workspace.
- Connect the required credentials. They are stored privately and never shown on public pages.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.brianshin22%2Fyoutube-translate/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.
{
"mcpServers": {
"youtube-translate": {
"type": "http",
"url": "https://api.youtubetranslate.com/mcp"
}
}
}README
YouTube Translate MCP
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:
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
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:
Installing Manually
This package requires Python 3.12 or higher:
Or install from source:
Usage
To run the server:
Docker
You can also run the server using Docker:
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
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:
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):
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.
Directory submissions and launch learnings
See submission/README.md for the ChatGPT review status, Claude preparation, exact findings and fixes, evidence, and remaining steps. The cross-product submission playbook captures reusable requirements and failure modes for future services.
License
MIT
Source: README.md at commit 75ca25b
Tools
0Version history
1- v0.2.1LatestOct 29, 2026
Score
85% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 daysRequired25 pts
- Auth declaredRequired10 pts
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts