mcp-youtube-transcript
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_youtube_transcriptB | Get the transcript of a YouTube video using the primary extraction method. Args: video_url: YouTube video URL language: Language code (e.g., 'en', 'es'). Defaults to 'en' |
| get_youtube_transcript_ytdlpA | Get the transcript of a YouTube video using yt-dlp (most reliable method). Args: video_url: YouTube video URL language: Language code (e.g., 'en', 'es'). Defaults to 'en' |
| get_plain_text_transcriptA | Extract clean plain text transcript without timestamps, optimized for AI analysis. Args: video_url: YouTube video URL aggressive_dedup: Use aggressive deduplication for cleaner text |
| get_enhanced_video_metadataC | Get comprehensive video metadata using enhanced extraction pipeline. Args: video_url: YouTube video URL |
| get_transcript_quality_analysisC | Get comprehensive quality analysis for a YouTube video transcript. Args: video_url: YouTube video URL |
| list_transcript_resourcesA | List all available transcript resources in the system. This tool provides access to stored transcript files that can be loaded without tokens. |
| load_transcript_resourceC | Load a specific transcript resource by video ID. Args: video_id: YouTube video ID to load transcript for |
| create_mcp_resource_from_transcript_v2A | Create a persistent MCP resource from a YouTube video transcript. This creates a markdown file in resources/transcripts/ that can be accessed with zero token consumption via MCP resources. Args: video_url: YouTube video URL resource_name: Optional custom name for the resource (auto-generated if empty) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| transcript_analysis_workshop | Interactive workshop prompt for comprehensive transcript analysis. |
| study_notes_generator | Generate structured study notes from educational video content. |
| video_research_planner | Plan a research strategy using YouTube videos for learning about a topic. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| get_available_transcripts_resource | List all available transcript resources (CRITICAL for zero-token browsing). |
| get_cached_transcripts_resource | Get information about in-memory cached transcripts. |
| get_quality_report_resource | System-wide quality analytics and processing statistics. |
| get_analysis_history_resource | Usage tracking and analysis history. |
| get_system_status_resource | Health monitoring and system status. |
TDQS
Scored across 8 tools
Multiple tools (get_youtube_transcript, get_youtube_transcript_ytdlp, get_plain_text_transcript) perform nearly identical functions, differing only in extraction method or output format. This creates significant ambiguity for an agent trying to select the right tool.
Most tools follow a get_* prefix, but the presence of list_, load_, create_, and the _v2 suffix breaks the pattern. The names are readable and descriptive, but not uniformly consistent.
8 tools is within the typical well-scoped range for a domain-specific server. However, the three transcript retrieval tools are somewhat redundant and could be consolidated without losing functionality.
The server covers the full transcript workflow: retrieval, plain text extraction, metadata, quality analysis, and resource management. Minor gaps like timestamp filtering or playlist support exist but do not break core usage.