youtube-mcp
Provides tools for extracting YouTube video transcripts and metadata, including video descriptions, duration, channel information, and available languages.
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-mcpget the transcript for https://www.youtube.com/watch?v=dQw4w9WgXcQ"
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.
kzmshx-youtube-mcp
An MCP server for extracting YouTube video transcripts and metadata.
Configuration
{
"mcpServers": {
"youtube": {
"command": "uvx",
"args": ["kzmshx-youtube-mcp"]
}
}
}Related MCP server: ytt-mcp
Installation (Optional)
If you prefer to install globally:
pip install kzmshx-youtube-mcp
# or
uv tool install kzmshx-youtube-mcpTools
get_transcript
Get transcript text from a YouTube video.
Parameter | Type | Description |
| string | YouTube URL or video ID |
| string | Language code (default: auto) |
| bool | Include timestamps (default: false) |
Example:
// Input
{ "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }
// Output
{
"video_id": "dQw4w9WgXcQ",
"language": "en",
"transcript": "We're no strangers to love\nYou know the rules and so do I..."
}get_video_info
Get metadata from a YouTube video.
Parameter | Type | Description |
| string | YouTube URL or video ID |
Example:
// Input
{ "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }
// Output
{
"id": "dQw4w9WgXcQ",
"title": "Rick Astley - Never Gonna Give You Up",
"description": "...",
"duration": 213,
"channel": "Rick Astley",
"upload_date": "2009-10-25",
"view_count": 1500000000,
"available_languages": ["en", "ja", "es", "fr"]
}License
MIT
Available Tools
2 toolsget_transcriptA
Get transcript text from a YouTube video.
Args: url: YouTube URL or video ID language: Language code (default: auto-detect) with_timestamps: Include timestamps in output
Returns: Dict containing video_id, language, and transcript text
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| language | No | auto | |
| with_timestamps | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, but the description explains the return structure (dict with video_id, language, transcript). It does not disclose potential errors, rate limits, or side effects, but for a simple read operation, basic behavioral context is covered.
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 concise with a clear structure: a one-line purpose, structured Args, and Returns sections. No redundant information; every sentence adds value.
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 has an output schema (implied), the description adequately explains the return format. It covers the main functionality and parameters, though it could detail error handling or edge cases for full 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?
Schema description coverage is 0%, but the description adds clear meaning for all three parameters (url, language, with_timestamps) in the 'Args' section, including defaults and purpose. This compensates for the missing schema descriptions.
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 'Get transcript text from a YouTube video,' specifying the verb and resource. It effectively distinguishes from the sibling tool 'get_video_info', which presumably handles video metadata.
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 provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or scenarios where it should not be used. It only explains parameters without contextual usage advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_video_infoA
Get metadata from a YouTube video.
Args: url: YouTube URL or video ID
Returns: Dict containing video metadata
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only mentions it returns a dict of metadata but does not disclose side effects (e.g., network call) or whether it is read-only. Minimal behavioral disclosure.
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?
Short, front-loaded description with clear Args and Returns sections. Every sentence provides necessary information without redundancy.
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?
Despite low complexity and presence of output schema, the description lacks any usage context or constraints (e.g., authentication, rate limits). Adequate but not fully comprehensive.
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?
With 0% schema description coverage, the description adds value by specifying the 'url' parameter can be a URL or video ID, beyond the schema's type-only definition.
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?
Clearly states 'Get metadata from a YouTube video', specifying the verb and resource. Differentiates from sibling 'get_transcript' which serves a different purpose.
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?
No guidance on when to use this tool versus alternatives like 'get_transcript'. Missing context on appropriate scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
- First observed
get_transcript - First observed
get_video_info
TDQS
Each tool has a clearly distinct purpose: one retrieves transcript text, the other fetches video metadata. There is no overlap or ambiguity.
Both tool names follow a consistent 'get_' prefix with noun (transcript, video_info), forming a predictable verb_noun pattern.
With only 2 tools, the server feels undersized for a YouTube integration. While the tools are focused, the count is on the low end for a typical MCP server.
The server covers only two basic reading operations, missing common YouTube actions like searching, listing comments, or managing playlists. Significant gaps exist for a comprehensive YouTube toolset.
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
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.
MCP server for RiverScript, an AI transcription platform - fetches transcripts shared via a link.
An MCP server that provides tools to discover and retrieve podcast episodes transcripts.
An MCP server that provides congressional transcripts
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that enables users to retrieve YouTube transcripts and perform video or channel searches without requiring Google API keys. It supports transcript chunking and provides tools for detailed video content analysis and channel metadata extraction.5584MIT
- AlicenseBqualityDmaintenanceAn MCP server designed to fetch transcripts for YouTube videos. It enables AI tools to access video text content for tasks like summarization, analysis, and key takeaway extraction.173MIT
- FlicenseBqualityDmaintenanceAn MCP server that extracts transcripts, metadata, and summaries from YouTube videos across various URL formats including Shorts and standard links. It provides comprehensive video data and insights for analysis within MCP-compatible environments.3-
- FlicenseNot gradedqualityDmaintenanceMCP server providing tools to fetch YouTube video transcripts with metadata, supporting direct YouTube transcripts and audio transcription via multiple backends (whisper, AssemblyAI, OpenAI, Gemini).-
Appeared in Searches
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/kzmshx/youtube-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server