YouTube Transcript MCP Server
Server Quality Checklist
Latest release: v0.1.0
- Disambiguation5/5
Each tool has a clearly distinct purpose with no overlap: get_available_languages lists languages, get_transcript fetches full transcripts, get_transcript_summary provides statistical summaries, and search_transcript performs text searches. The descriptions reinforce these distinct roles, making tool selection unambiguous for an agent.
Naming Consistency5/5All tool names follow a consistent verb_noun pattern with snake_case (e.g., get_available_languages, get_transcript, get_transcript_summary, search_transcript). The naming is predictable and readable throughout the set, with no deviations in style or convention.
Tool Count5/5With 4 tools, the server is well-scoped for its purpose of YouTube transcript retrieval and analysis. Each tool earns its place by covering distinct aspects of the workflow (language discovery, full transcript fetching, summarization, and searching), avoiding bloat while providing complete functionality.
Completeness5/5The tool set offers complete coverage for the domain of YouTube transcript operations. It includes language discovery, full transcript retrieval, summarization, and searching, with no obvious gaps. Agents can perform all core transcript-related tasks without dead ends or missing operations.
Average 3.5/5 across 4 of 4 tools scored. Lowest: 2.9/5.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 0 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI is passing
This repository is licensed under MIT License.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
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 tool retrieves a list with metadata, but doesn't describe key behaviors such as error handling (e.g., for invalid video IDs), rate limits, authentication needs, or performance characteristics. This leaves significant gaps for an AI agent to understand how the tool operates in practice.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and appropriately sized, with a clear purpose statement followed by Args and Returns sections. Each sentence earns its place by defining the tool's function and parameters. It could be slightly more concise by integrating the parameter explanation into the main text, but overall it's efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (a tool interfacing with external services like YouTube and yt-dlp), lack of annotations, and no output schema, the description is incomplete. It doesn't explain the return value structure (e.g., what metadata fields are included), error conditions, or dependencies. This makes it inadequate for an AI agent to fully understand the tool's behavior and outputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds basic semantics for the single parameter: 'video_id: YouTube video ID or URL.' This clarifies that the input can be either an ID or a full URL, which is useful since the schema has 0% description coverage and only provides a generic title. However, it doesn't elaborate on format constraints (e.g., URL patterns, ID length) or examples, so it only partially compensates for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get list of available transcript languages for a YouTube video using yt-dlp.' It specifies the verb ('Get'), resource ('available transcript languages'), and technology context ('using yt-dlp'), making the function unambiguous. However, it doesn't explicitly differentiate from sibling tools like get_transcript or search_transcript, which prevents 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.
Usage Guidelines2/5Does 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_transcript (which might fetch transcripts) or search_transcript (which might search within transcripts), nor does it specify prerequisites or exclusions. The only implied usage is for obtaining language metadata, but this is too vague for effective tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It mentions that the tool returns a summary with statistics and sample text, which gives some output context, but it lacks details on permissions, rate limits, error handling, or whether it's a read-only operation. For a tool with no annotations, this is insufficient to ensure safe and effective use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and concise, with no wasted words. It front-loads the purpose in the first sentence, followed by clear sections for arguments and returns. Each sentence adds value, making it easy to parse and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (3 parameters, no output schema, no annotations), the description is partially complete. It covers the purpose and parameters adequately but lacks usage guidelines, behavioral details, and output specifics. Without annotations or an output schema, more context on the return format or operational constraints would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does 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% description coverage. It explains that 'video_id' can be a YouTube video ID or URL, 'language_code' is optional, and 'max_length' controls the sample text length. This compensates well for the schema's lack of descriptions, though it doesn't specify format details like valid language codes or length constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get a summary of the transcript including key statistics and sample text.' It specifies the verb ('Get') and resource ('transcript summary'), making the function unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'get_transcript' or 'search_transcript', which likely provide different outputs or functionalities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 such as 'get_transcript' or 'search_transcript', nor does it specify use cases, prerequisites, or exclusions. This leaves the agent without context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
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 what the tool does (search transcripts) and mentions the return format (results with context and timestamps), but doesn't disclose important behavioral traits like error conditions, rate limits, authentication requirements, or what happens with invalid inputs. The description provides basic functional context but lacks operational details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly structured and concise with zero wasted words. It begins with a clear purpose statement, then provides organized parameter explanations in an Args section, and concludes with return value information. Every sentence serves a specific purpose, and the information is front-loaded with the most important details first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters with no schema descriptions and no output schema, the description provides adequate parameter semantics but lacks completeness about behavioral aspects. For a search tool with multiple configuration options and no annotations, the description should ideally mention more about error handling, result format details, or limitations. It covers the basics but leaves gaps in operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does 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 5 parameters in the Args section, adding meaningful context beyond just parameter names. It clarifies that video_id accepts 'YouTube video ID or URL', query is 'Text to search for', language_code is 'Optional language code for transcript', case_sensitive controls 'Whether search should be case sensitive', and context_window specifies 'Seconds of context to include before/after matches'. This provides good semantic understanding of each parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verb ('search') and resource ('YouTube video transcript'), distinguishing it from sibling tools like get_transcript (which retrieves full transcripts) and get_transcript_summary (which provides summaries). The description explicitly mentions searching for specific text within transcripts, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by specifying it searches within YouTube video transcripts, but doesn't explicitly state when to use this tool versus alternatives like get_transcript (for full transcripts) or get_available_languages (for language options). No guidance is provided about prerequisites, limitations, or when-not-to-use scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses key behavioral traits: it fetches transcripts (implying read-only, non-destructive), uses yt-dlp (implementation detail), and returns 'Complete transcript data with metadata'. However, it lacks details on error handling, rate limits, authentication needs, or what 'metadata' includes, leaving gaps for a tool with 5 parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and appropriately sized. It front-loads the core purpose in the first sentence, followed by a clear 'Args' and 'Returns' section with bullet-like formatting. Every sentence adds value without redundancy, making it easy to scan and understand.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters, no annotations, and no output schema, the description does a strong job covering inputs and basic behavior. However, it lacks details on output structure (beyond 'metadata'), error cases, or performance aspects, which could be important for a tool fetching external data. It's mostly complete but has minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate fully. It adds significant meaning beyond the schema by explaining each parameter's purpose and usage: video_id accepts 'ID or URL', language_code uses 'auto-detected' as default, preserve_formatting affects 'timestamp formatting in plain text', and start_time/end_time 'filter transcript'. This effectively documents all 5 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Fetch the transcript') and resource ('for a YouTube video'), using the implementation detail 'using yt-dlp' for additional context. It distinguishes itself from siblings like get_available_languages (lists languages), get_transcript_summary (summarizes), and search_transcript (searches within transcripts).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through parameter descriptions (e.g., 'Optional language code', 'Optional start time'), suggesting when to use certain features, but lacks explicit guidance on when to choose this tool over alternatives like get_transcript_summary or search_transcript. No clear exclusions or prerequisites are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
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/suckerfish/yttranscript_mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server