home / mcp / youtube mcp server
Provides a YouTube subtitle downloader MCP server that fetches transcripts by video ID or URL and supplies timed subtitles to MCP clients.
Configuration
View docs{
"mcpServers": {
"adhikasp-mcp-youtube": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/adhikasp/mcp-youtube",
"mcp-youtube"
]
}
}
}You can run a dedicated YouTube subtitle MCP server that lets you download transcripts from YouTube videos and provide them to MCP clients with precise timestamps. This makes it easy to attach timed subtitles to your prompts and downstream LLM workflows.
To connect this YouTube MCP server with your client, specify a local MCP server entry that runs the server via the MCP runtime. You can reference remote YouTube transcripts by video ID or full YouTube URLs, with timestamps preserved for precise alignment.
"mcpServers": {
"youtube": {
"command": "uvx",
"args": ["--from", "git+https://github.com/adhikasp/mcp-youtube", "mcp-youtube"]
},
}- Timed transcripts pulled from YouTube, suitable for feeding into an LLM workflow. - Works with both video IDs and full YouTube URLs. - Subtitles are delivered with timestamps so you can align them to prompts or context windows.
Prerequisites: You need Python installed and the MCP runtime tool available (uvx). You also need network access to fetch dependencies if needed and to run the server.
# Step 1: Clone the server repository
git clone https://github.com/adhikasp/mcp-youtube
cd mcp-youtube
# Step 2: Create and activate a virtual environment
uv venv
source .venv/bin/activate # On Unix/MacOS
# or .venv\Scripts\activate # On Windows
# Step 3: Install dependencies
uv sync
# Step 4: Start the server
python -m youtube_mcpThe server is MIT licensed and designed to integrate with any MCP-compatible client. If you plan to run this in production, ensure you manage access to the server and monitor usage for quota and latency considerations.
MIT
Downloads transcripts from YouTube videos, including timestamps, by video ID or URL, to be consumed by MCP clients.
Accepts both YouTube video IDs and full URLs when fetching transcripts.
Preserves and provides precise timestamps for each subtitle line to support time-aligned prompts.