Uses Gemini AI to generate concise video summaries and power natural language queries about video content.
Provides tools for YouTube video analysis, including transcript extraction, video summarization, natural language queries about video content, search for videos matching specific queries, and comment retrieval and analysis.
YouTube MCP
A Model Context Protocol (MCP) server for YouTube video analysis, providing tools to get transcripts, summarize content, and query videos using Gemini AI.
Features
📝 Transcript Extraction: Get detailed transcripts from YouTube videos
📊 Video Summarization: Generate concise summaries using Gemini AI
❓ Natural Language Queries: Ask questions about video content
🔍 YouTube Search: Find videos matching specific queries
💬 Comment Analysis: Retrieve and analyze video comments
Related MCP server: YouTube Transcript Extractor MCP
Requirements
Python 3.9+
Google Gemini API key
YouTube Data API key
Running Locally
Installing via Smithery
To install youtube-mcp for Claude Desktop automatically via Smithery:
Option 1: Install directly from smithery
Option 2: Local setup
Clone the repository:
git clone https://github.com/Prajwal-ak-0/youtube-mcp cd youtube-mcpCreate a virtual environment and install dependencies:
python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate pip install -e .Create a
.envfile with your API keys:GEMINI_API_KEY=your_gemini_api_key YOUTUBE_API_KEY=your_youtube_api_keyRun MCP Server
mcp dev main.pyNavigate to Stdio
OR
Go cursor or windsurf configure with this json content:
{ "youtube": { "command": "uv", "args": [ "--directory", "/absolute/path/to/youtube-mcp", "run", "main.py", "--transport", "stdio", "--debug" ] } }
Available Tools
youtube/get-transcript: Get video transcriptyoutube/summarize: Generate a video summaryyoutube/query: Answer questions about a videoyoutube/search: Search for YouTube videosyoutube/get-comments: Retrieve video commentsyoutube/get-likes: Get video like count
Contributing
Contributions welcome! Please feel free to submit a Pull Request.