Single-tool server with decent naming and clear parameter structure, but lacks depth in descriptions and has no output schema documentation. The tool name 'get_transcript' follows verb_noun convention and clearly conveys action. Parameters are typed with descriptions. However, tool description is brief (62 chars), and critically, there is no documented output schema, LLMs cannot predict the structure of returned transcript text or plan downstream operations. No error handling guidance provided. Missing pagination support despite transcript API accepting large video transcripts.
Get transcript for a video ID and format it as readable text.
No documented output schema. Tool returns a plain string, but LLMs cannot determine structure, content format, or how to parse multi-line transcripts for downstream processing.
Tool description is only 62 characters ('Get transcript for a video ID and format it as readable text.'). While not critically short, it lacks context on when to use this tool, what formats are returned, or what to do if transcript not found. Production baseline is 194 chars (median).
No error handling guidance. Tool catches NoTranscriptFound and returns a string message, but this falls into LLM unstructured text parsing. No actionable recovery steps documented (e.g., 'try another language', 'check if video exists').
Parameter 'language' lacks detail on valid values. Description says 'Language code for the transcript' but does not specify format (ISO 639-1 vs 639-3? e.g., 'en', 'en-US'?) or list common options. LLMs may guess invalid codes.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 54 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 48 | - | v1 |
No pagination or result-limiting mechanism. YouTube transcripts can be thousands of lines. Returning entire transcript as single string wastes tokens and may exceed context limits. No mention of max length or truncation in description.