youtube-mcp
Fast, minimal YouTube 'watch' engine for AI agents that extracts clean transcripts, searches, and slices any YouTube video without requiring an API key.
README
Youtube MCP
Fast, minimal, and reliable YouTube MCP for AI agents.

Install
Claude Code
claude mcp add youtube -- uvx youtube-watch-mcp
Before publish (local dev): point
uvxat the checkout instead:claude mcp add youtube -- uvx --from /path/to/youtube-mcp youtube-watch-mcp
Claude Desktop / Codex / other MCP clients
Add to the client's MCP config:
{
"mcpServers": {
"youtube": {
"command": "uvx",
"args": ["youtube-watch-mcp"]
}
}
}
CLI only
uvx --from youtube-watch-mcp youtube-watch-mcp-cli info "https://youtu.be/VIDEO_ID"
That's it. uvx pulls youtube-watch-mcp, yt-dlp, and dependencies into an isolated environment automatically. Nothing to install globally.
Optional:
ffmpegon PATH is required only for--asr(speech-to-text on caption-less videos). Core transcript extraction needs nothing.
Optional API key
A YouTube Data API key is not needed to read videos. Add one only to enable cross-YouTube search:
claude mcp add youtube -e YOUTUBE_API_KEY=your_key -- uvx youtube-watch-mcp
Transcript extraction never uses the key (YouTube only allows caption download for video owners).
Tools
| Tool | Returns | Purpose |
|---|---|---|
get_info(url) |
title, duration, chapters, has_captions | Cheap probe before fetching. |
get_transcript(url, asr=False) |
file path + word count + preview | Clean transcript to disk. Returns path, not full text. |
search_transcript(url, query) |
timestamped snippets | Grep a long video without loading it all. |
get_segment(url, start, end) |
text slice | Read one time range. |
Design principle: pull, don't dump. Transcripts write to a local cache file; tools return a path and a short preview. The agent reads or searches on demand — long videos never flood the context.
/get_info $url
/get_transcript $url
/search_transcript $url
/get_segment $url
Architecture
Adapters (thin): cli.py mcp_server.py skill
│ call
Core (all logic): fetch → clean → chunk → cache
│ uses
Backends: youtube-transcript-api · yt-dlp · faster-whisper
Fetch fallback chain:
youtube-transcript-api— fastest, no downloadyt-dlpauto-captionsyt-dlpmanual captions--asr: audio → localfaster-whisper
On yt-dlp failure the engine self-updates yt-dlp and retries once — most breakage is a stale yt-dlp.
Caching: results are keyed by video ID under ~/.cache/youtube-mcp/<id>/. Repeat calls are instant.
Cleaning: auto-captions are de-duplicated (rolling-caption overlap removed), stripped of timestamps and [Music] noise, and whitespace-collapsed before the agent ever sees them.
Requirements
- Python 3.11+ (managed automatically by
uvx) ffmpeg— optional, only for--asr
Docs
- FAQ — keyless? no-caption videos?
--fromgotcha? long-video handling? - Architecture — core/adapter split, fetch chain, the cleaning moat, cache.
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.