YouTube MCP Server
Enables searching for videos, retrieving full transcripts with timestamps, browsing channel information, and performing searches across a creator's entire video library.
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 MCP ServerFind what @AlexHormozi said about lead magnets and provide timestamps."
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 Server
A zero-config MCP server for YouTube. Search videos, get transcripts, browse channels, and search across a creator's entire content. No API keys needed.
Quick Start
uvx yt-mcp-serverOr install with pip:
pip install yt-mcp-serverRelated MCP server: YouTube MCP Server
Setup
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"youtube": {
"command": "uvx",
"args": ["--from", "yt-mcp-server", "youtube-mcp-server"]
}
}
}Claude Code
claude mcp add youtube -- uvx yt-mcp-serverCursor
Add to your Cursor MCP settings:
{
"mcpServers": {
"youtube": {
"command": "uvx",
"args": ["--from", "yt-mcp-server", "youtube-mcp-server"]
}
}
}Tools
Tool | Description |
| Search across ALL videos of a channel — find what any creator said about any topic |
| Search within a single video's transcript |
| Get full transcript with timestamps |
| Search YouTube for videos |
| Get video details — title, description, stats, chapters |
| Get channel info — subscribers, description, video count |
| List videos from a channel, sorted by date or popularity |
| Get video comments sorted by relevance |
Example Prompts
"Find me the best videos on how to scale a B2B SaaS from 0 to $1M ARR"
→ search_videos
"Show me everything @AlexHormozi posted this month"
→ get_channel_videos
"Summarize this interview with Sam Altman: https://youtube.com/watch?v=..."
→ get_transcript
"What exactly did @AlexHormozi say about making offers? Give me the timestamps"
→ search_channel_transcripts — searches all videos, returns exact passages with links
"Compare how @ycombinator and @AlexHormozi think about product-market fit"
→ search_channel_transcripts on both channelsHTTP Transport
Run as a standalone HTTP server:
yt-mcp-server --transport streamable-http --port 8000Requirements
Python 3.10+
yt-dlp (installed automatically)
No API keys or authentication required
Note
Transcript features (get_transcript, search_transcript, search_channel_transcripts) use YouTube's internal API, which may rate-limit after many requests in a short period. Normal usage (a few queries per session) works fine.
Acknowledgments
Built with the assistance of Claude by Anthropic.
License
MIT
Available Tools
8 toolsget_channel_infoB
Get information about a YouTube channel.
Args: channel: Channel URL or @handle (e.g. "@mkbhd" or "https://youtube.com/@mkbhd")
| Name | Required | Description | Default |
|---|---|---|---|
| channel | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions nothing about rate limits, authentication needs, error handling, or what the output contains (though an output schema exists). For a tool with zero annotation coverage, this is a significant gap in transparency, as it doesn't describe any operational traits beyond the basic action.
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 highly concise and well-structured: a clear purpose statement followed by specific parameter details in a formatted 'Args:' section. Every sentence earns its place by providing essential information without redundancy, and it's front-loaded with the core functionality. No wasted words or unnecessary elaboration.
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 low complexity (one parameter) and the presence of an output schema, the description is reasonably complete. It covers the purpose and parameter semantics adequately. However, it lacks behavioral context (e.g., rate limits, errors), which would be beneficial even with an output schema. For a simple lookup tool, this is mostly sufficient 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?
The description adds valuable semantics beyond the input schema, which has 0% coverage. It clarifies that the 'channel' parameter accepts a 'Channel URL or @handle' and provides examples ('@mkbhd' or 'https://youtube.com/@mkbhd'), which the schema alone does not specify. With only one parameter, this effectively compensates for the low schema coverage, making the parameter usage clear.
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 verb ('Get information') and resource ('about a YouTube channel'), making the purpose immediately understandable. It distinguishes this from siblings like 'get_channel_videos' or 'get_video_info' by focusing on channel metadata rather than videos or transcripts. However, it doesn't specify what information is retrieved (e.g., subscriber count, description, uploads), keeping it from a perfect score.
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 is provided on when to use this tool versus alternatives. While the name implies it's for channel data, there's no explicit comparison to siblings like 'search_channel_transcripts' or 'get_channel_videos' to clarify use cases. The description only states what it does, not when it's appropriate, leaving the agent to infer usage from context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_channel_videosB
Get videos from a YouTube channel.
Args: channel: Channel URL or @handle (e.g. "@mkbhd") limit: Maximum number of videos (default 20, max 100) sort: Sort order — "date" (newest first) or "popular" (most viewed)
| Name | Required | Description | Default |
|---|---|---|---|
| channel | Yes | ||
| limit | No | ||
| sort | No | date |
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 full burden for behavioral disclosure. It mentions default values and limits (20 default, 100 max), which is helpful, but doesn't address important behavioral aspects like whether this requires authentication, rate limits, pagination behavior, error conditions, or what format the returned videos will have (though output schema exists).
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 perfectly structured and concise. The first sentence states the core purpose, followed by a clean 'Args:' section that documents each parameter efficiently with examples and constraints. Every sentence earns its place with no wasted words.
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 3 parameters, no annotations, but does have an output schema, the description is moderately complete. It thoroughly documents all input parameters (compensating for 0% schema coverage) and the core functionality. However, for a data retrieval tool with siblings, it lacks usage context and some behavioral details that would help an agent use it effectively.
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 must compensate for all parameter documentation. It successfully explains all three parameters: 'channel' (accepts URL or @handle with example), 'limit' (default and maximum values), and 'sort' (two valid values with explanations). This provides clear semantic meaning beyond the bare schema.
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 action ('Get videos') and resource ('from a YouTube channel'), making the purpose immediately understandable. However, it doesn't explicitly differentiate this tool from sibling tools like 'get_video_info' or 'search_videos', which also deal with YouTube video retrieval in different contexts.
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. With siblings like 'get_video_info' (for specific video details), 'search_videos' (for broader searches), and 'get_channel_info' (for channel metadata), there's no indication of when this channel-specific video listing tool is most appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_commentsB
Get comments from a YouTube video.
Args: video_url: YouTube video URL limit: Maximum number of comments (default 20, max 100)
| Name | Required | Description | Default |
|---|---|---|---|
| video_url | Yes | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the action ('Get comments') but doesn't disclose key traits like whether this is a read-only operation, potential rate limits, authentication needs, error handling, or what the output looks like (though an output schema exists). For a tool with no annotations, this is a significant gap in transparency, as it leaves the agent guessing about operational constraints.
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 appropriately sized and front-loaded, starting with the core purpose followed by parameter details. It uses two sentences efficiently, with no wasted words. The structure is logical, but it could be slightly improved by integrating usage context or behavioral notes, keeping it concise while adding 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's moderate complexity (2 parameters, no annotations, but with an output schema), the description is minimally adequate. It covers the purpose and parameters but lacks behavioral transparency and usage guidelines. The presence of an output schema means the description doesn't need to explain return values, but it should still address when to use the tool and operational aspects. This results in a baseline completeness with clear gaps.
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 description adds meaningful context beyond the input schema, which has 0% description coverage. It explains that 'video_url' is a 'YouTube video URL' and 'limit' is the 'Maximum number of comments' with default and max values. This compensates well for the low schema coverage, providing clear semantics for both parameters. However, it doesn't detail format specifics (e.g., URL structure), so it doesn't achieve a perfect score.
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 tool's purpose: 'Get comments from a YouTube video.' It specifies the verb ('Get') and resource ('comments from a YouTube video'), making it easy to understand. However, it doesn't explicitly differentiate from sibling tools like 'get_video_info' or 'get_transcript', which could also involve video-related data retrieval, so it doesn't reach a score of 5.
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. It doesn't mention sibling tools like 'get_video_info' (which might include comments) or 'search_transcript' (which could involve comment-like text). There's no context on prerequisites, such as needing a valid video URL, beyond what's implied in the parameters. This lack of explicit usage instructions limits its effectiveness for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_transcriptA
Get the full transcript of a YouTube video with timestamps.
Args: video_url: YouTube video URL language: Preferred language code (default "en", tries auto-generated fallback)
| Name | Required | Description | Default |
|---|---|---|---|
| video_url | Yes | ||
| language | No | en |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions language fallback behavior, which is useful, but lacks details on permissions, rate limits, error handling, or output format. For a tool with no annotations, this leaves significant behavioral gaps.
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 front-loaded with the core purpose, followed by clear parameter explanations in a structured format. 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 (2 parameters, no annotations, but has output schema), the description covers the basic purpose and parameters well. The output schema likely handles return values, so the description doesn't need to explain those. However, it lacks usage guidelines and some behavioral details, keeping it from a perfect score.
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%, so the description must compensate. It explains the purpose of both parameters (video_url for the YouTube video, language for preferred language with default 'en' and fallback behavior), adding meaningful context beyond the bare schema. However, it does not specify format constraints for video_url or valid language codes.
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 ('Get the full transcript') and resource ('YouTube video'), distinguishing it from siblings like get_video_info or search_transcript. It specifies the inclusion of timestamps, which is a key feature not implied by the tool name alone.
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 is provided on when to use this tool versus alternatives like search_transcript or search_channel_transcripts. The description does not mention prerequisites, exclusions, or contextual factors that would help an agent choose between these sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_video_infoB
Get detailed information about a YouTube video including title, description, stats, tags, and chapters.
Args: video_url: YouTube video URL (e.g. "https://youtube.com/watch?v=xxx")
| Name | Required | Description | Default |
|---|---|---|---|
| video_url | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states this is a read operation ('Get'), but doesn't mention authentication requirements, rate limits, error conditions, or what happens with invalid URLs. For a tool with no annotation coverage, this leaves significant gaps in understanding its operational behavior.
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 appropriately sized with two sentences: one stating the purpose and returned data, another explaining the parameter. It's front-loaded with the core functionality. The Args section is clear but could be integrated more smoothly. There's minimal waste, though the example URL format adds helpful specificity.
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 (which handles return values), no annotations, and a simple single-parameter input, the description is moderately complete. It covers the basic purpose and parameter meaning but lacks behavioral context (auth, errors, limits) and usage guidance relative to siblings. For a read-only tool with output schema, it meets minimum viability but has clear gaps.
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 schema has no descriptions for parameters), the description provides essential semantic context for the single parameter. It explains that video_url should be a YouTube video URL and gives an example format. This compensates well for the schema's lack of documentation, though it could specify URL validation rules or accepted URL patterns more precisely.
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 tool's purpose with a specific verb ('Get') and resource ('YouTube video'), listing the types of information returned (title, description, stats, tags, chapters). It distinguishes from siblings like get_channel_info or get_transcript by focusing on video metadata rather than channel data or transcript content. However, it doesn't explicitly contrast with search_videos, which might also return video information.
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. It doesn't mention when to choose get_video_info over search_videos for finding video details, or how it differs from get_channel_videos which might also provide video information in a list format. There are no prerequisites, exclusions, or context for usage relative to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_channel_transcriptsA
Search for specific content across all videos of a YouTube channel. This is the power feature: find what a creator said about any topic.
Args: channel: Channel URL or @handle (e.g. "@hormozi") query: Text to search for across all transcripts language: Preferred language code (default "en") max_videos: Maximum number of recent videos to search (default 10, max 50)
| Name | Required | Description | Default |
|---|---|---|---|
| channel | Yes | ||
| query | Yes | ||
| language | No | en | |
| max_videos | No |
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 full burden but lacks critical behavioral details. It mentions 'power feature' and default/max values, but does not disclose rate limits, authentication requirements, error conditions, or what the search returns (though output schema exists). For a search tool with no annotations, this leaves significant gaps in understanding operational constraints.
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 efficiently structured with a clear purpose statement followed by a well-organized Args section. Every sentence adds value: the first establishes scope, the second emphasizes utility, and the parameter explanations are necessary given 0% schema coverage. No wasted words or 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?
Given 4 parameters with 0% schema coverage and an output schema (which handles return values), the description does well by explaining all parameters. However, as a search tool with no annotations, it should ideally mention performance expectations (e.g., search time) or limitations (e.g., transcript availability). The output schema reduces the need for return value explanation, but behavioral context remains light.
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%, so the description must compensate. It successfully explains all 4 parameters: channel (with URL/handle examples), query (text to search), language (preferred code with default), and max_videos (recent videos with default and max). This adds substantial meaning beyond the bare schema, though it could provide more detail on language code formats or channel input validation.
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 ('search for specific content'), resource ('across all videos of a YouTube channel'), and scope ('across all transcripts'), distinguishing it from siblings like search_transcript (single video) or search_videos (metadata). The phrase 'power feature: find what a creator said about any topic' further clarifies the unique value proposition.
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 clear context for when to use this tool ('search for specific content across all videos'), but does not explicitly state when not to use it or name alternatives. Sibling tools like search_transcript (single video) and search_videos (metadata) are implied alternatives, but not directly referenced in the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_transcriptB
Search for specific content within a video's transcript. Returns matching passages with timestamps and direct links.
Args: video_url: YouTube video URL query: Text to search for in the transcript language: Preferred language code (default "en")
| Name | Required | Description | Default |
|---|---|---|---|
| video_url | Yes | ||
| query | Yes | ||
| language | No | en |
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 full burden for behavioral disclosure. It mentions the return format (matching passages with timestamps and direct links) which is helpful, but doesn't cover important aspects like authentication requirements, rate limits, error conditions, or whether this is a read-only operation. The description adds some value but leaves significant gaps.
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 efficiently structured with a clear purpose statement followed by parameter explanations. Every sentence earns its place - the first sentence states what the tool does, the second describes the return format, and the Args section provides necessary parameter context 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?
Given that an output schema exists (so return values are documented elsewhere), the description provides adequate context for a search tool. It covers the core functionality and parameters well. The main gap is the lack of usage guidance relative to sibling tools, but for a tool with output schema and clear parameter documentation, this is reasonably complete.
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 compensates well by explaining all three parameters in the Args section. It clarifies that video_url is a YouTube URL, query is text to search for, and language has a default of 'en'. This adds meaningful context beyond the bare schema.
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 tool searches for content within a video's transcript, specifying the resource (transcript) and verb (search). It distinguishes from siblings like get_transcript (which retrieves full transcripts) and search_channel_transcripts (which searches across multiple videos), but doesn't explicitly mention these distinctions in the description itself.
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 like get_transcript or search_channel_transcripts. It mentions what the tool does but offers no context about appropriate use cases, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_videosB
Search YouTube for videos.
Args: query: Search query (e.g. "how to price a SaaS") limit: Maximum number of results (default 10, max 30)
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions the default and maximum for the 'limit' parameter, which adds some context beyond the input schema. However, it lacks critical behavioral details such as whether this is a read-only operation, how results are sorted, if authentication is required, or any rate limits. For a search tool with no annotations, this leaves significant gaps.
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 highly concise and well-structured. It starts with a clear purpose statement, followed by a bullet-point-like format for parameters with essential details. Every sentence earns its place, with no redundant information, making it easy to scan and understand quickly.
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 (2 parameters), lack of annotations, and presence of an output schema, the description is reasonably complete. It covers the purpose and parameter semantics adequately. Since an output schema exists, the description doesn't need to explain return values. However, it could improve by adding more behavioral context (e.g., sorting, authentication) to fully compensate for the missing annotations.
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 description adds meaningful semantics beyond the input schema, which has 0% schema description coverage. It explains that 'query' is a search query with an example ('how to price a SaaS'), and 'limit' has a default of 10 and maximum of 30. This compensates well for the lack of schema descriptions, providing clear usage context for both parameters.
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 tool's purpose: 'Search YouTube for videos.' This is a specific verb ('Search') and resource ('YouTube videos'), making it immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'search_channel_transcripts' or 'search_transcript', which also search YouTube content but with different scopes.
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. It doesn't mention sibling tools like 'search_channel_transcripts' (for searching within a specific channel's transcripts) or 'search_transcript' (for searching video transcripts), leaving the agent to infer usage context. The only implicit guidance is the tool name and description, which is insufficient for clear differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool has a clearly distinct purpose: get_channel_info, get_channel_videos, get_comments, get_transcript, get_video_info, search_channel_transcripts, search_transcript, and search_videos. There is no overlap in functionality—tools target specific resources (channel, video, comments, transcripts) and actions (get, search), making misselection unlikely.
All tools follow a consistent verb_noun pattern using snake_case: get_channel_info, get_channel_videos, get_comments, get_transcript, get_video_info, search_channel_transcripts, search_transcript, search_videos. The naming is predictable and readable throughout.
With 8 tools, the count is well-scoped for a YouTube server, covering core functionalities like retrieving channel/video info, comments, transcripts, and searching. Each tool earns its place without being overwhelming or insufficient.
The toolset covers key YouTube operations: retrieving info (channel, video, comments, transcripts) and searching (videos, transcripts, channel transcripts). Minor gaps include no update/delete actions (e.g., posting comments or managing playlists), but these are less critical for a read/search-focused server, and agents can work around this.
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
YouTube transcripts, search, channel/playlist listings and upload tracking for AI agents. No signup.
Provide token-optimized, structured YouTube data to enhance your LLM applications. Access efficien…
Search YouTube and read video, channel and transcript data as JSON. No Google Cloud project.
Extract YouTube transcripts, search what was said, and read on-screen frames with cited timestamps.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceA Model Context Protocol server that enables searching YouTube videos, retrieving and storing transcripts, and performing semantic search over video content without using the official YouTube API.29MIT
- 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
- 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
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/Anarcyst/youtube-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server