- Home
- MCP servers
- YouTube
YouTube
- python
8
GitHub Stars
python
Language
5 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
You can run a dedicated MCP server that retrieves YouTube video metadata and generates high-quality transcriptions with multilingual support. It uses efficient in-memory processing, intelligent caching, and GPU-accelerated inference when available, making it ideal for AI agents and automation workflows that need fast access to video details and accurate transcripts without downloading entire videos.
How to use
Start the server locally and connect your MCP client to either the HTTP endpoint or the local standard I/O (stdio) interface. The HTTP endpoint exposes a streaming API for requests like metadata lookups and transcriptions. The stdio interface runs as a local process that the MCP client talks to directly.
To fetch video metadata for a YouTube URL, request the get_video_info capability from the MCP endpoint. The service will return a JSON payload with fields such as id, title, description, view_count, duration, uploader, and more. To transcribe or translate a video, request transcribe_video with a YouTube URL and a target language, and you will receive a structured transcription divided into time segments.
Choose the connection method that suits your deployment. You can use the HTTP connection for remote or containerized setups, or use the stdio interface for tight integration on the same host.
How to install
Prerequisites: Python 3.10 or newer and ffmpeg installed on your system.
Clone the project and navigate into the repository directory.
Install dependencies using the recommended MCP runner.
Start the server with the runtime command.
Configuration and usage notes
Configure the server for transcription and metadata extraction. You can customize where transcriptions are cached, which Whisper model to use, sampling rate, VAD settings, and the level of concurrency. These options influence accuracy, latency, and resource usage.
Server endpoints run on Server-Sent Events (SSE) transport. The default local HTTP URL for client connections is http://127.0.0.1:8000/sse.
Two primary tools are exposed by the server: get_video_info for metadata retrieval and transcribe_video for transcription (with optional translation). See the Tools section for details on inputs and outputs.
Other important notes
The server leverages robust extraction with yt-dlp, performs in-memory audio processing, uses Silero for voice activity detection, supports 99 languages for transcription, and can apply translation to the target language. It also caches results to avoid repeating work on the same inputs.
Tools reference
{
"mcpServers": {
"youtube": {
"type": "http",
"name": "youtube",
"url": "http://127.0.0.1:8000/sse",
"args": []
}
}
}
Appendix: Supported languages
The server provides multilingual transcription, with explicit language options including auto-detection and translation targets. For a complete list of supported language codes, refer to the language mapping in the tool configuration.
Security and operations
Run the server in a controlled environment and consider securing the HTTP endpoint if exposed beyond a private network. Manage secrets and API keys through environment variables or your orchestration platform, and monitor resource usage to ensure stable transcription throughput.
Available tools
get_video_info
Retrieves metadata for a given YouTube video and returns a JSON object with fields like id, title, description, view_count, duration, uploader, and more.
transcribe_video
Transcribes a video with optional translation. Accepts a video URL and a language parameter to return segmented transcription data.