YouTube Toolbox
The YouTube Toolbox server provides AI assistants with powerful tools to interact with YouTube data and video content, including:
Search YouTube videos with advanced filtering options (channel, duration, region, etc.)
Get detailed information about videos and channels
Retrieve video comments with sorting options
Extract video transcripts and captions in multiple languages
Find related videos for a given video
Get trending videos by region
Generate summaries of video content based on transcripts
Advanced transcript analysis with filtering, searching, multi-video capabilities, and segmenting options
Leverages Google Cloud Platform services, specifically requiring YouTube Data API v3 credentials for authentication and access to YouTube data.
Provides tools for interacting with YouTube, including video searching, transcript extraction, comment retrieval, related video discovery, trending video lists, channel information retrieval, and transcript analysis with filtering and summarization capabilities.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@YouTube Toolbox search for Python tutorial videos from the last month"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
py-mcp-youtube-toolbox
An MCP server that provides AI assistants with powerful tools to interact with YouTube, including video searching, transcript extraction, comment retrieval, and more.
Overview
py-mcp-youtube-toolbox provides the following YouTube-related functionalities:
Search YouTube videos with advanced filtering options
Get detailed information about videos and channels
Retrieve video comments with sorting options
Extract video transcripts and captions in multiple languages
Find related videos for a given video
Get trending videos by region
Generate summaries of video content based on transcripts
Advanced transcript analysis with filtering, searching, and multi-video capabilities
Related MCP server: YouTube MCP Server
Table of Contents
Prerequisites
Python: Install Python 3.12 or higher
YouTube API Key:
Go to Google Cloud Console
Create a new project or select an existing one
Enable the YouTube Data API v3:
Go to "APIs & Services" > "Library"
Search for and enable "YouTube Data API v3"
Create credentials:
Go to "APIs & Services" > "Credentials"
Click "Create Credentials" > "API key"
Note down your API key
Installation
Git Clone
git clone https://github.com/jikime/py-mcp-youtube-toolbox.git
cd py-mcp-youtube-toolboxConfiguration
Install UV package manager:
curl -LsSf https://astral.sh/uv/install.sh | shCreate and activate virtual environment:
uv venv -p 3.12
source .venv/bin/activate # On MacOS/Linux
# or
.venv\Scripts\activate # On WindowsInstall dependencies:
uv pip install -r requirements.txtEnvironment variables:
cp env.example .env
vi .env
# Update with your YouTube API key
YOUTUBE_API_KEY=your_youtube_api_keyUsing Docker
Build the Docker image:
docker build -t py-mcp-youtube-toolbox .Run the container:
docker run -e YOUTUBE_API_KEY=your_youtube_api_key py-mcp-youtube-toolboxUsing Local
Run the server:
mcp run server.pyRun the MCP Inspector:
mcp dev server.pyConfigure MCP Settings
Add the server configuration to your MCP settings file:
Claude desktop app
To install automatically via Smithery:
npx -y @smithery/cli install @jikime/py-mcp-youtube-toolbox --client claudeTo install manually open
~/Library/Application Support/Claude/claude_desktop_config.json
Add this to the mcpServers object:
{
"mcpServers": {
"YouTube Toolbox": {
"command": "/path/to/bin/uv",
"args": [
"--directory",
"/path/to/py-mcp-youtube-toolbox",
"run",
"server.py"
],
"env": {
"YOUTUBE_API_KEY": "your_youtube_api_key"
}
}
}
}Cursor IDE
open ~/.cursor/mcp.json
Add this to the mcpServers object:
{
"mcpServers": {
"YouTube Toolbox": {
"command": "/path/to/bin/uv",
"args": [
"--directory",
"/path/to/py-mcp-youtube-toolbox",
"run",
"server.py"
],
"env": {
"YOUTUBE_API_KEY": "your_youtube_api_key"
}
}
}
}for Docker
{
"mcpServers": {
"YouTube Toolbox": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e", "YOUTUBE_API_KEY=your_youtube_api_key",
"py-mcp-youtube-toolbox"
]
}
}
}Tools Documentation
Video Tools
search_videos: Search for YouTube videos with advanced filtering options (channel, duration, region, etc.)get_video_details: Get detailed information about a specific YouTube video (title, channel, views, likes, etc.)get_video_comments: Retrieve comments from a YouTube video with sorting optionsget_related_videos: Find videos related to a specific YouTube videoget_trending_videos: Get trending videos on YouTube by region
Channel Tools
get_channel_details: Get detailed information about a YouTube channel (name, subscribers, views, etc.)
Transcript Tools
get_video_transcript: Extract transcripts/captions from YouTube videos in specified languagesget_video_enhanced_transcript: Advanced transcript extraction with filtering, search, and multi-video capabilities
Prompt Tools
transcript_summary: Generate summaries of YouTube video content based on transcripts with customizable options
Resource Tools
youtube://available-youtube-tools: Get a list of all available YouTube toolsyoutube://video/{video_id}: Get detailed information about a specific videoyoutube://channel/{channel_id}: Get information about a specific channelyoutube://transcript/{video_id}?language={language}: Get transcript for a specific video
Development
For local testing, you can use the included client script:
# Example: Search videos
uv run client.py search_videos query="MCP" max_results=5
# Example: Get video details
uv run client.py get_video_details video_id=zRgAEIoZEVQ
# Example: Get channel details
uv run client.py get_channel_details channel_id=UCRpOIr-NJpK9S483ge20Pgw
# Example: Get video comments
uv run client.py get_video_comments video_id=zRgAEIoZEVQ max_results=10 order=time
# Example: Get video transcript
uv run client.py get_video_transcript video_id=zRgAEIoZEVQ language=ko
# Example: Get related videos
uv run client.py get_related_videos video_id=zRgAEIoZEVQ max_results=5
# Example: Get trending videos
uv run client.py get_trending_videos region_code=ko max_results=10
# Example: Advanced transcript extraction
uv run client.py get_video_enhanced_transcript video_ids=zRgAEIoZEVQ language=ko format=timestamped include_metadata=true start_time=100 end_time=200 query=에이전트 case_sensitive=true segment_method=equal segment_count=2
# Example: License
MIT License
Available Tools
8 toolsget_channel_detailsB
Get detailed information about a YouTube channel
Inputs: channel_id (required). Returns: result
get_trending_videosB
Get trending videos on YouTube by region
Inputs: region_code, max_results. Returns: result
get_video_commentsC
Get comments for a YouTube video
Inputs: video_id (required), max_results, order, include_replies, +1 more. Returns: result
get_video_detailsB
Get detailed information about a YouTube video
Inputs: video_id (required). Returns: result
get_video_enhanced_transcriptC
Advanced transcript extraction tool with filtering, search, and multi-video capabilities. Provides rich transcript data for detailed analysis and processing. Features: 1) Extract transcripts from multiple videos; 2) Filter by time ranges; 3) Search within transcripts; 4) Segment transcripts; 5) Format output in different ways; 6) Include video metadata.
Inputs: video_ids (required), language, start_time, end_time, +6 more. Returns: result
get_video_transcriptB
Get transcript/captions for a YouTube video
Inputs: video_id (required), language. Returns: result
search_videosC
Search for YouTube videos with advanced filtering options
Inputs: query (required), max_results, channel_id, order, +6 more. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 8 tools
Most tools have distinct purposes, but there is notable overlap between get_video_transcript and get_video_enhanced_transcript, which could cause confusion as both handle transcripts with the enhanced version being a superset. Other tools like get_video_details and get_channel_details are clearly differentiated, but the transcript duplication weakens clarity.
All tool names follow a consistent snake_case pattern with a verb-noun structure (e.g., get_channel_details, search_videos). The naming is predictable and uniform across all eight tools, making it easy for agents to understand and use them without confusion.
With 8 tools, the count is well within the typical 3-15 range for a focused domain like YouTube data retrieval. It feels slightly thin for comprehensive coverage but reasonable for core functionalities such as fetching videos, channels, comments, and transcripts.
The toolset covers key read operations like getting details, searching, and fetching comments/transcripts, but lacks obvious write or management capabilities (e.g., upload, update, delete) that might be expected in a full YouTube toolbox. This creates notable gaps for agents needing to perform more than retrieval tasks.
Maintenance
Related MCP Connectors
YouTube transcripts, search, channel browsing, and playlists for AI agents via MCP.
An MCP server that integrates with Discord to provide AI-powered features.
An MCP server that gives any LLM or agent clean YouTube transcripts on demand: a single video, a whole channel, or a playlist, plus AI cleanup of auto-generated captions. API-key auth, credit-based, same backend as the public v1 API. Get a free API key with 25 free credits at youtubetranscriptdownload.com/account.
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
Related MCP Servers
- AlicenseAqualityCmaintenanceAn MCP server for intelligent YouTube video analysis that provides token-optimized summaries, sentiment analysis, and entity extraction from transcripts. It enables AI assistants to perform video reporting, channel monitoring, and comprehensive YouTube searches through structured data tools.1053Apache 2.0
- AlicenseAqualityBmaintenanceMCP server that provides YouTube video data to AI agents, supporting search, metadata, comments, and transcripts without an API key.681 npmISC
- AlicenseAqualityDmaintenanceMCP server that lets AI agents search YouTube and fetch transcripts.23MIT
- FlicenseNot gradedqualityDmaintenanceMCP server for YouTube that provides tools to fetch video metadata and transcripts, enabling natural language queries about YouTube videos.2-