YouTube MCP
Provides integration with YouTube, enabling interaction with YouTube data and functionality.
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 Python tutorial videos from the last month"
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
A Model Context Protocol (MCP) server for YouTube integration.
Prerequisites
Install uv
On Mac:
brew install uvOn Windows:
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"After installation on Windows, add uv to your PATH:
set Path=C:\Users\nntra\.local\bin;%Path%Related MCP server: YouTube MCP Server
Claude Desktop Integration
To use this MCP server with Claude Desktop, you need to add it to your Claude Desktop configuration.
Open your Claude Desktop configuration file:
Mac:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Add the following configuration to your
mcpServerssection (replace/path/to/your/youtube-mcpwith the actual path to this project folder):
{
"mcpServers": {
"youtube": {
"command": "/Users/your-username/.local/bin/uv",
"args": ["--directory", "/path/to/your/youtube-mcp", "run", "main.py"]
}
},
"globalShortcut": ""
}Important: Make sure to replace:
/path/to/your/youtube-mcpwith the actual path to where you cloned/downloaded this project/Users/your-username/.local/bin/uvwith the correct path to your uv installation (on Windows this would typically beC:\Users\your-username\.local\bin\uv.exe)
Save the file and restart Claude Desktop
Usage
Once configured, the YouTube MCP server will be available in Claude Desktop and you can use it to interact with YouTube data and functionality.
Development
This project uses uv for dependency management. The dependencies are defined in pyproject.toml and the lockfile is uv.lock.
To run the server locally:
uv run main.pyAvailable Tools
1 toolget_youtube_transcript_toolA
Extract English transcript with timestamps from a YouTube video using its URL or video ID.
Args:
url: YouTube video URL or video ID
Returns:
The timestamped transcript text
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the core functionality (extracting transcripts) and output format (timestamped text), but lacks details on error handling, rate limits, authentication needs, or processing constraints. It adds basic context but misses key behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded with the core purpose in the first sentence, followed by clear sections for Args and Returns. Every sentence adds value without redundancy, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (single parameter, no annotations, but with an output schema), the description is mostly complete. It covers purpose, input semantics, and return values, and the output schema handles return details. However, it lacks behavioral context like error cases or limitations, which slightly reduces completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, so the description must compensate. It adds meaning by explaining that the 'url' parameter accepts either a 'YouTube video URL or video ID', clarifying the input format beyond the schema's generic string type. However, it doesn't detail validation rules or examples, leaving some gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Extract'), resource ('English transcript with timestamps from a YouTube video'), and input method ('using its URL or video ID'). It distinguishes itself by specifying the transcript format (English with timestamps) and input options, though there are no sibling tools for explicit differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by stating the input method ('URL or video ID'), but provides no explicit guidance on when to use this tool versus alternatives, prerequisites, or exclusions. Since there are no sibling tools, the lack of comparative guidance is less critical, but it still lacks comprehensive usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
With only one tool, there is no possibility of ambiguity or overlap between tools. The tool has a clear, singular purpose focused on transcript extraction from YouTube videos.
The single tool name follows a clear verb_noun pattern (get_youtube_transcript_tool), which would be consistent if there were more tools. There are no naming conflicts or inconsistencies to evaluate.
A single tool is too few for a YouTube MCP server, which suggests a broader domain like video management, search, or analytics. This minimal toolset severely limits functionality and feels incomplete for the implied scope.
The toolset is severely incomplete for a YouTube server. It lacks basic operations such as searching videos, retrieving metadata, managing playlists, or handling comments. The single transcript tool covers only a narrow aspect of YouTube's capabilities.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server for Clipkit — gives AI agents a video toolbox via the Clipkit schema.
An MCP server that gives any LLM or agent clean YouTube transcripts on demand: a single video, a whole channel, or a playlist, plus AI cleanup of auto-generated captions. API-key auth, credit-based, same backend as the public v1 API. Get a free API key with 25 free credits at youtubetranscriptdownload.com/account.
SubDownload exposes YouTube as an MCP-native data source. Connect via OAuth and your AI agent can summarize videos, fetch full transcripts (even for videos with no captions, via AI ASR), search across channels, and save everything into a private knowledge base. Works with Claude, ChatGPT, Cursor, and 40+ MCP clients. Free credits on signup, no card required.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that allows Claude and other AI assistants to interact with the YouTube API, providing tools to search videos/channels and retrieve detailed information about them.571MIT
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that provides Claude with tools to interact with YouTube, built on the mcp-framework.
- AlicenseBqualityBmaintenanceA server that enables interaction with YouTube data through the Model Context Protocol, allowing users to search videos, retrieve detailed information about videos/channels, and fetch comments.1213515MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables AI assistants to access YouTube data in real-time, with capabilities for searching videos, analyzing channels, retrieving video details, and extracting transcripts.12MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- 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/tunde-alao/youtube-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server