Youtube Gemini MCP
Session-based conversational YouTube video analysis MCP server using Gemini 2.5 Pro
Installation
npx youtube-gemini-mcpAsk AI about Youtube Gemini MCP
Powered by Claude Β· Grounded in docs
I know everything about Youtube Gemini MCP. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation

YouTube Gemini MCP Server
A Model Context Protocol (MCP) server that provides conversational YouTube video analysis capabilities using Gemini 2.5 Pro. Analyze videos through multi-turn conversations with advanced visual understanding.
π― What Problems Does This Solve?
Traditional Video Analysis Pain Points
β Transcript-only limitations - Missing visual context and scene understanding
β No conversation memory - Each analysis starts from scratch
β Manual workflows - Complex download/upload processes
Our Solution
β
Full video analysis - Visual, audio, and contextual understanding
β
Session memory - Builds on previous analysis automatically
β
Integrated workflows - YouTube URL to analysis in one step
π Key Capabilities
π Session-Based Video Conversations
Create persistent sessions for multi-turn video analysis:
# Create session
create_video_session(
description="Analyze machine learning lecture",
video_source="https://youtube.com/watch?v=abc123",
source_type="youtube_url"
)
# Continue conversation
analyze_video_in_session(session_id="uuid", prompt="What are the key concepts?")
analyze_video_in_session(session_id="uuid", prompt="Explain the neural networks part")
πΉ Direct YouTube Processing
No downloads required - process YouTube videos directly:
analyze_youtube_video(
youtube_url="https://youtube.com/watch?v=abc123",
prompt="Summarize this video's main points"
)
πΎ Local Video Support
Upload and analyze local video files (48-hour retention):
analyze_local_video(
video_path="/path/to/video.mp4",
prompt="What happens in this video?"
)
π οΈ Installation
Prerequisites
- Python 3.10+
- Google AI API key
- Poetry (recommended) or pip
Setup
# Clone repository
git clone https://github.com/aigentive/youtube-gemini-mcp
cd youtube-gemini-mcp
# Install with Poetry
poetry install
# Or with pip
pip install -e .
# Set environment variable
export GOOGLE_API_KEY="your_google_api_key_here"
π§ Claude Desktop Integration
Quick Setup
- Get Google AI API Key: Visit Google AI Studio to get your free API key
- Add to Claude Desktop: Copy the configuration below to your Claude Desktop settings
Production Configuration
Add to your Claude Desktop MCP configuration (claude_desktop_config.json):
{
"mcpServers": {
"youtube-gemini-mcp": {
"command": "youtube-gemini-mcp",
"env": {
"GOOGLE_API_KEY": "your_google_api_key_here"
}
}
}
}
Development Configuration
For development work, use the Poetry configuration:
{
"mcpServers": {
"youtube-gemini-mcp-dev": {
"command": "poetry",
"args": ["run", "python", "-m", "youtube_gemini_mcp.server"],
"cwd": "/absolute/path/to/youtube-gemini-mcp",
"env": {
"GOOGLE_API_KEY": "your_google_api_key_here",
"LOG_LEVEL": "DEBUG"
}
}
}
}
Configuration Templates
We provide ready-to-use configuration files:
- Development:
mcp-config.poetry.json- For local development - Production:
mcp-config.private.json.example- Copy and customize
π Available Tools
| Tool | Description |
|---|---|
create_video_session | Create new conversational analysis session |
analyze_video_in_session | Analyze video within session context |
analyze_youtube_video | Single-shot YouTube video analysis |
analyze_local_video | Single-shot local video analysis |
get_session_status | Get session information and history |
list_active_sessions | List all active sessions |
close_session | Close session and cleanup resources |
validate_youtube_url | Validate and normalize YouTube URLs |
get_usage_guide | Comprehensive documentation |
get_server_stats | Server health and statistics |
π― Use Cases
Educational Content Analysis
Analyze lectures, tutorials, and educational videos with follow-up questions.
Content Research
Research documentaries, interviews, and informational content systematically.
Video Summarization
Extract key insights and create summaries from long-form content.
Training Material Development
Analyze existing training videos to extract learning objectives and key points.
β‘ Quick Examples
Analyze a YouTube Video
# Direct analysis - perfect for quick insights
analyze_youtube_video(
youtube_url="https://youtube.com/watch?v=dQw4w9WgXcQ",
prompt="What is this video about? Provide a comprehensive summary."
)
Session-Based Analysis
# Create persistent session for multi-turn conversation
session = create_video_session(
description="Learning about machine learning fundamentals",
video_source="https://youtube.com/watch?v=abc123",
session_name="ML Fundamentals Study"
)
# Build understanding through conversation
analyze_video_in_session(
session_id=session["session_id"],
prompt="What are the main topics covered in this lecture?"
)
analyze_video_in_session(
session_id=session["session_id"],
prompt="Focus on the neural networks section - how are they explained?"
)
analyze_video_in_session(
session_id=session["session_id"],
prompt="What practical examples or demonstrations are shown?"
)
analyze_video_in_session(
session_id=session["session_id"],
prompt="Based on our discussion, what are the key takeaways for beginners?"
)
Local Video Analysis
# Upload and analyze private content
analyze_local_video(
video_path="/path/to/your/presentation.mp4",
prompt="Extract the key business metrics and recommendations from this quarterly review"
)
Advanced: Timestamp-Specific Analysis
# Focus on specific video segments
analyze_video_in_session(
session_id="your-session-id",
prompt="Analyze the demonstration shown in this segment",
timestamp_range="5:30-8:45"
)
π Configuration
Environment Variables
Required:
GOOGLE_API_KEY- Get your free API key from Google AI Studio
Optional Configuration:
MCP_MAX_SESSIONS=50 # Maximum concurrent sessions
MCP_SESSION_TIMEOUT=7200 # Session timeout in seconds (2 hours)
GEMINI_MODEL_DEFAULT="gemini-2.5-pro-preview-05-06" # Default Gemini model
MAX_VIDEO_DURATION=7200 # Max video length in seconds
AUTO_CLEANUP_FILES=true # Auto-cleanup uploaded files
LOG_LEVEL=INFO # Logging level (DEBUG, INFO, WARNING, ERROR)
System Requirements
- Python: 3.10+ (3.11+ recommended)
- Memory: 4GB RAM minimum for video processing
- Storage: 500MB for session data and temporary files
- Network: High-speed internet for video processing
Limitations & Constraints
YouTube Videos (Unlimited Sessions)
- β No file size limits - Direct URL processing
- β Unlimited session duration - No 48-hour restriction
- β οΈ 2-hour video limit - Recommended maximum for optimal performance
- β οΈ Public videos only - Private/unlisted may not be accessible
Local Videos (48-Hour Sessions)
- β οΈ 2GB file size limit - Google Files API restriction
- β οΈ 48-hour auto-deletion - Files automatically deleted after 48 hours
- β οΈ 20GB project limit - Total storage quota per Google project
- β No retention extension - Cannot extend file lifespan beyond 48 hours
Performance Guidelines
- Concurrent sessions: Default maximum 50 active sessions
- Session timeout: 2 hours of inactivity before cleanup
- Memory usage: ~100MB per active session
- Response time: 10-30 seconds for typical analysis requests
π§ͺ Testing
# Run tests
poetry run pytest
# With coverage
poetry run pytest --cov=youtube_gemini_mcp
# Type checking
poetry run mypy src/
π License
This project is licensed under the MIT License - see the LICENSE file for details.
π Related Projects
π Documentation
- LLM.md - Comprehensive usage guide for AI systems
- DEVELOPMENT.md - Development setup and architecture
- CONTRIBUTING.md - How to contribute to the project
- PRD.md - Complete product requirements document
π€ Contributing
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
Quick Start for Contributors
- Fork the repository
- Set up development environment:
poetry install - Run tests:
poetry run pytest - Make your changes and add tests
- Submit a pull request
π Support & Community
- π Bug Reports: GitHub Issues
- π‘ Feature Requests: GitHub Issues
- π¬ Discussions: GitHub Discussions
- π Documentation: Check our comprehensive docs above
Getting Help
- Check Documentation: Start with LLM.md for usage questions
- Search Issues: Look for existing solutions in GitHub Issues
- Create Issue: Provide clear details and reproduction steps
- Community: Join discussions for general questions and ideas
