yt-metascribe-mcp-client
v2.3.1
Published
MCP client for YouTube transcript, metadata and comments extraction with automatic chunking support for long videos
Maintainers
Readme
YT MetaScribe MCP Client
An MCP (Model Context Protocol) client for YouTube transcript, metadata and comments extraction — with automatic chunking for long videos and adaptive replies handling for comment threads.
🚀 Installation
For Claude Desktop
- Install via NPX (recommended):
{
"mcpServers": {
"yt-metascribe-mcp": {
"command": "npx",
"args": ["-y", "yt-metascribe-mcp-client"],
"env": {
"YOUTUBE_MCP_API_TOKEN": "your-api-token-here",
"YOUTUBE_MCP_SERVER_URL": "https://your-server-url.com"
}
}
}
}Add this to your Claude Desktop configuration:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\\Claude\\claude_desktop_config.json
- macOS:
Restart Claude Desktop
🛠️ Available Tools
get_youtube_transcript— Extract video transcript with automatic chunking for long videosget_youtube_metadata— Get comprehensive video metadataget_youtube_combined— Get both transcript and metadata in one callget_youtube_comments— Fetch comments for a video with adaptive replies handling. Defaults to 200 comments sorted by relevance (hard cap 1000). Replies strategy adapts automatically to the video's total comment count — small videos get every reply, medium get the first few per thread, very large videos get top-level only to keep LLM context predictable.
🔧 Configuration
Environment Variables
YOUTUBE_MCP_API_TOKEN— Your API token for the YT MetaScribe MCP serverYOUTUBE_MCP_SERVER_URL— Server URL (optional, defaults to public server)
📝 Usage Examples
With Claude Desktop:
- "Get the transcript for this YouTube video: https://youtu.be/VIDEO_ID"
- "What's the metadata for this video: https://www.youtube.com/watch?v=VIDEO_ID"
- "Analyze this YouTube video: https://youtu.be/VIDEO_ID"
- "Fetch the comments for https://youtu.be/VIDEO_ID and summarise the main themes"
- "Show me the newest 100 comments on https://youtu.be/VIDEO_ID" (uses
order=time)
🎯 Features
- Automatic chunking for long videos (1–2+ hours)
- Adaptive comment replies — depth scales to the video's comment volume so LLM context stays predictable
- Compact comment format by default — ~3× less JSON overhead per comment for LLM-friendly responses
- Intelligent streaming with progress updates
- Caching support for improved performance
- Error handling with retry logic
🔗 Links
- GitHub Repository: https://github.com/eviipx/yt-metascribe-mcp-server
- Server Documentation: https://github.com/eviipx/yt-metascribe-mcp-server#readme
- Issues: https://github.com/eviipx/yt-metascribe-mcp-server/issues
📄 License
MIT License
🔄 Changelog
v2.3.1
- 📝 Re-publish so the npm package page reflects the
get_youtube_commentstool shipped in 2.3.0. No code changes vs 2.3.0.
v2.3.0
- ✨ New
get_youtube_commentstool. Fetches comments from a video with adaptive replies handling based on the video's total comment count: small videos get every reply, medium videos get the first few per thread, large videos get top-level only. Default 200 comments, hard cap 1000, sorted by relevance. MCP responses use a compact format to keep LLM context predictable.
v2.2.1
- 🐛 Fix
source="youtube:unknown"in wrapper tags when the tool was called withurlinstead ofvideo_id. The video_id is now extracted from whichever nested field holds it (metadata.video_id,current_chunk.video_id, etc.).
v2.2.0
- 🔒 Prompt-injection mitigation: every tool response is wrapped in
<untrusted_content source="youtube:VIDEO_ID">…</untrusted_content>with a header instructing the model to treat the content as data rather than instructions. Defense against adversarial text embedded in video titles, descriptions, or transcripts.
v2.1.0
- ✨ Clean tool names (removed
_streamedsuffix) - 🚀 Direct server-client mapping (no abstraction)
- 🔧 Automatic chunking built into all transcript tools
- 📦 NPM package publication
v2.0.0
- 🆕 Streaming support for long videos
- 🔄 Automatic chunking with 30-minute segments
- ⚡ Performance optimizations
