YouTube MCP Server
A Model Context Protocol (MCP) server for interacting with YouTube data. This server provides resources and tools to query YouTube videos, channels, comments, and transcripts through a stdio interface.
Features
- Search for YouTube videos with advanced filtering options
- Get detailed information about specific videos and channels
- Compare statistics across multiple videos
- Discover trending videos by region and category
- Analyze channel performance and video statistics
- Retrieve video comments and transcripts/captions
- Generate video analysis and transcript summaries
Prerequisites
- Node.js (v16+)
- YouTube Data API key
Installation
Installing via Smithery
To install YouTube MCP Server for Claude Desktop automatically via Smithery:
Installing Manually
- Clone this repository:
- Install dependencies:
- Create a
.env
file in the root directory:
Usage
Building and Running
- Build the project:
- Run the server (HTTP transport):The server will listen on port 3000 (or PORT environment variable) and accept MCP requests at
/mcp
endpoint. - Run in development mode:
- Clean build artifacts:
HTTP Transport Migration
Migration Status: ✅ Complete - Successfully migrated from STDIO to Streamable HTTP transport
This server has been updated to use the modern Streamable HTTP transport as required by Smithery hosting platform. The migration includes:
- Modern Protocol: Uses Streamable HTTP transport (protocol version 2025-03-26)
- Express.js Framework: Built on Express.js for robust HTTP handling
- Session Management: Supports stateful operations with proper session tracking
- MCP Endpoint: All requests handled at
/mcp
endpoint - Backwards Compatibility: Maintains full compatibility with all existing tools and resources
- Enhanced Performance: Improved scalability and better error handling
Testing the Migration
Local Testing:
Smithery Integration:
- The server is fully compatible with Smithery's new hosting requirements
- All existing Claude Desktop integrations will continue to work seamlessly
- No changes required for end users
Docker Deployment
The project includes a Dockerfile for containerized deployment:
Important: The container now exposes port 3000 for HTTP-based MCP communication instead of STDIO.
API Reference
Resources
youtube://video/{videoId}
- Get detailed information about a specific videoyoutube://channel/{channelId}
- Get information about a specific channelyoutube://transcript/{videoId}
- Get transcript for a specific video- Optional query parameter:
?language=LANGUAGE_CODE
(e.g.,en
,ko
,ja
)
- Optional query parameter:
Tools
Basic Tools
search-videos
- Search for YouTube videos with advanced filtering optionsget-video-comments
- Get comments for a specific videoget-video-transcript
- Get transcript for a specific video with optional languageenhanced-transcript
- Advanced transcript extraction with filtering, search, and multi-video capabilitiesget-key-moments
- Extract key moments with timestamps from a video transcript for easier navigationget-segmented-transcript
- Divide a video transcript into segments for easier analysis
Statistical Tools
get-video-stats
- Get statistical information for a specific videoget-channel-stats
- Get subscriber count, view count, and other channel statisticscompare-videos
- Compare statistics across multiple videos
Discovery Tools
get-trending-videos
- Retrieve trending videos by region and categoryget-video-categories
- Get available video categories for a specific region
Analysis Tools
analyze-channel-videos
- Analyze performance trends of videos from a specific channel
Prompts
video-analysis
- Generate an analysis of a YouTube videotranscript-summary
- Generate a summary of a video based on its transcript with customizable length and keywords extractionsegment-by-segment-analysis
- Provide detailed breakdown of content by analyzing each segment of the video
Examples
Accessing a Video Transcript
Getting a Transcript in a Specific Language
Using the Statistical Tools
Using the Transcript Summary Prompt
Using the Enhanced Transcript Tool
Using the Enhanced Transcript Analysis Features
Error Handling
The server handles various error conditions, including:
- Invalid API key
- Video or channel not found
- Transcript not available
- Network issues
License
MIT
Acknowledgements
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
모델 컨텍스트 프로토콜을 통해 YouTube 데이터와 상호작용을 가능하게 하는 서버로, 사용자가 비디오를 검색하고, 비디오/채널에 대한 자세한 정보를 가져오고, 댓글을 가져올 수 있도록 합니다.
Related MCP Servers
- AsecurityFlicenseAqualityThis server allows AI language models to interact with YouTube content through a standardized interface, providing features such as video and channel information retrieval, transcript management, and playlist operations.Last updated -7128332
- AsecurityAlicenseAqualityA Model Context Protocol server that enables access to YouTube video content through transcripts, translations, summaries, and subtitle generation in various languages.Last updated -52MIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enables retrieval of transcripts from YouTube videos. This server provides direct access to video transcripts and subtitles through a simple interface, making it ideal for content analysis and processing.Last updated -121326MIT License
- -securityAlicense-qualityA Model Context Protocol server that enables searching YouTube videos, retrieving and storing transcripts, and performing semantic search over video content without using the official YouTube API.Last updated -6MIT License