YouTube MCP
Provides tools for searching videos, retrieving video and channel information, listing the authenticated user's videos, and accessing video and channel analytics via the YouTube Data API v3 and YouTube Analytics API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@YouTube MCPsearch for 'lofi hip hop' videos"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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.
Related MCP server: mcp-youtube
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.jsonAPI 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.txtThe 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.serverExample 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.jsonTools
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 testsLicense
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/jameskitfu/youtube-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server