This is an MCP server that allows you to directly download transcripts of YouTube videos.
Single tool with complete schema and good descriptions. Tool name 'get_transcript' follows verb_noun pattern. Input schema is well-structured with 4 parameters, all typed and described. Output schema documented with meta and content fields. Descriptions are clear and actionable (tool: 156 chars, params: 60-120 chars avg). Tool annotations present (readOnlyHint, openWorldHint). Main gaps: no error recovery guidance in descriptions, no parameter constraints (enums/patterns), no mention of rate limits or fallback behavior in tool description despite implementation supporting it.
Extract transcript from a YouTube video URL or ID. Automatically falls back to available languages if requested language is not available.
Error handling lacks recovery guidance. McpError responses (InvalidParams, InternalError) do not suggest next steps. E.g., 'Invalid YouTube video ID' should suggest 'Try a full URL like https://youtube.com/watch?v=...' or 'search for the video first'.
Parameter 'lang' lacks enum constraint. Description says 'e.g., ko, en' but does not enumerate valid language codes. LLMs may hallucinate invalid codes like 'english' or 'korean'. Should declare enum or reference a standard (ISO 639-1).
Tool description does not document fallback behavior or mention that ad-stripping is enabled by default. Users/LLMs may not realize ads are being filtered unless they read the parameter description. Should state 'Automatically filters sponsored segments (strip_ads=true by default)' in main description.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 62 | 2025-06-18+ | v2 |
Output schema lacks detail on metadata structure. 'meta' field is described as 'Title | Author | Subs | Views | Date' (pipe-delimited string) but schema shows type: string without specifying format. Should clarify if this is a single concatenated string or if metadata object should be returned separately.
No rate limit or quota guidance. Tool calls external YouTube API which may have rate limits. Description should warn 'Rate limited to X requests per minute' or 'May fail if video has no captions in requested language'.