YouTube MCP
Local read-only MCP server for YouTube Data API v3 and YouTube Analytics API, enabling public video searches and OAuth-based private channel reads.
README
YouTube MCP
Local, read-only MCP server for YouTube Data API v3 and YouTube Analytics API.
Guides:
- English: docs/en.md
- 中文教程:docs/zh-cn.md
Features
- Public YouTube Data API lookups with an API key.
- OAuth-based private channel reads for the authenticated user's own channel.
- YouTube Analytics reports for videos and channels.
- Local stdio MCP transport with no hosted service.
Security model
- Runs locally over stdio.
- Uses only read scopes:
https://www.googleapis.com/auth/youtube.readonlyhttps://www.googleapis.com/auth/yt-analytics.readonly
- Keeps Google API keys, OAuth client files, and OAuth tokens out of Git.
- Looks for credentials in
~/.config/youtube-mcp/by default.
Never commit these files:
~/.config/youtube-mcp/api_key.txt~/.config/youtube-mcp/client_secret.json~/.config/youtube-mcp/token.json
Google setup
- Create a Google Cloud project.
- Enable YouTube Data API v3 and YouTube Analytics API.
- Create an OAuth 2.0 Client ID with application type
Desktop app. - Download the client JSON.
- Save it as:
mkdir -p ~/.config/youtube-mcp
cp ~/Downloads/client_secret_*.json ~/.config/youtube-mcp/client_secret.json
chmod 600 ~/.config/youtube-mcp/client_secret.json
API key
For public YouTube Data API v3 calls, save the API key here:
mkdir -p ~/.config/youtube-mcp
printf '%s\n' 'YOUR_YOUTUBE_DATA_API_KEY' > ~/.config/youtube-mcp/api_key.txt
chmod 600 ~/.config/youtube-mcp/api_key.txt
The API key is used by:
youtube_search_videosyoutube_get_videoyoutube_get_channel
OAuth is still required for private or account-scoped tools:
youtube_list_my_videosyoutube_get_video_analyticsyoutube_get_channel_analytics
Run locally
From this directory:
python3 -m venv .venv
. .venv/bin/activate
python -m pip install -e .
PYTHONPATH=src python3 -m youtube_mcp.server
Example MCP config:
{
"mcpServers": {
"youtube": {
"command": "python3",
"args": ["-m", "youtube_mcp.server"],
"env": {
"PYTHONPATH": "/absolute/path/to/youtube-mcp/src"
}
}
}
}
OAuth note
youtube_auth_url returns the Google authorization URL. Open it, approve the read-only scopes, copy the authorization code, then call youtube_auth_exchange_code with that code. The token is saved at:
~/.config/youtube-mcp/token.json
Tools
youtube_auth_statusyoutube_auth_urlyoutube_auth_exchange_codeyoutube_search_videosyoutube_get_videoyoutube_get_channelyoutube_list_my_videosyoutube_get_video_analyticsyoutube_get_channel_analytics
Development
Run the tests with:
PYTHONPATH=src python3 -m unittest discover -s tests
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.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
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.