YouTube MCP
Manage YouTube videos, create Shorts, and get analytics using the YouTube API.
YouTube MCP Server
A Model Context Protocol (MCP) server implementation for YouTube, enabling AI language models to interact with YouTube content through a standardized interface.
Features
Video Information
- Get video details (title, description, duration, etc.)
- List channel videos
- Get video statistics (views, likes, comments)
- Search videos across YouTube
Transcript Management
- Retrieve video transcripts
- Support for multiple languages
- Get timestamped captions
- Search within transcripts
Channel Management
- Get channel details
- List channel playlists
- Get channel statistics
- Search within channel content
Playlist Management
- List playlist items
- Get playlist details
- Search within playlists
- Get playlist video transcripts
Installation
Quick Setup for Claude Desktop
- Install the package:
npm install -g zubeid-youtube-mcp-server
- Add to your Claude Desktop configuration (
~/Library/Application Support/Claude/claude_desktop_config.json
on macOS or%APPDATA%\Claude\claude_desktop_config.json
on Windows):
{
"mcpServers": {
"zubeid-youtube-mcp-server": {
"command": "zubeid-youtube-mcp-server",
"env": {
"YOUTUBE_API_KEY": "your_youtube_api_key_here"
}
}
}
}
Alternative: Using NPX (No Installation Required)
Add this to your Claude Desktop configuration:
{
"mcpServers": {
"youtube": {
"command": "npx",
"args": ["-y", "zubeid-youtube-mcp-server"],
"env": {
"YOUTUBE_API_KEY": "your_youtube_api_key_here"
}
}
}
}
Installing via Smithery
To install YouTube MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @ZubeidHendricks/youtube --client claude
Configuration
Set the following environment variables:
YOUTUBE_API_KEY
: Your YouTube Data API key (required)YOUTUBE_TRANSCRIPT_LANG
: Default language for transcripts (optional, defaults to 'en')
Using with VS Code
For one-click installation, click one of the install buttons below:
Manual Installation
If you prefer manual installation, first check the install buttons at the top of this section. Otherwise, follow these steps:
Add the following JSON block to your User Settings (JSON) file in VS Code. You can do this by pressing Ctrl + Shift + P
and typing Preferences: Open User Settings (JSON)
.
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "apiKey",
"description": "YouTube API Key",
"password": true
}
],
"servers": {
"youtube": {
"command": "npx",
"args": ["-y", "zubeid-youtube-mcp-server"],
"env": {
"YOUTUBE_API_KEY": "${input:apiKey}"
}
}
}
}
}
Optionally, you can add it to a file called .vscode/mcp.json
in your workspace:
{
"inputs": [
{
"type": "promptString",
"id": "apiKey",
"description": "YouTube API Key",
"password": true
}
],
"servers": {
"youtube": {
"command": "npx",
"args": ["-y", "zubeid-youtube-mcp-server"],
"env": {
"YOUTUBE_API_KEY": "${input:apiKey}"
}
}
}
}
YouTube API Setup
- Go to Google Cloud Console
- Create a new project or select an existing one
- Enable the YouTube Data API v3
- Create API credentials (API key)
- Copy the API key for configuration
Examples
Managing Videos
// Get video details
const video = await youtube.videos.getVideo({
videoId: "video-id"
});
// Get video transcript
const transcript = await youtube.transcripts.getTranscript({
videoId: "video-id",
language: "en"
});
// Search videos
const searchResults = await youtube.videos.searchVideos({
query: "search term",
maxResults: 10
});
Managing Channels
// Get channel details
const channel = await youtube.channels.getChannel({
channelId: "channel-id"
});
// List channel videos
const videos = await youtube.channels.listVideos({
channelId: "channel-id",
maxResults: 50
});
Managing Playlists
// Get playlist items
const playlistItems = await youtube.playlists.getPlaylistItems({
playlistId: "playlist-id",
maxResults: 50
});
// Get playlist details
const playlist = await youtube.playlists.getPlaylist({
playlistId: "playlist-id"
});
Development
# Install dependencies
npm install
# Run tests
npm test
# Build
npm run build
# Lint
npm run lint
Contributing
See CONTRIBUTING.md for information about contributing to this repository.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Related Servers
Code Ocean MCP Server
Search and run capsules, execute pipelines, and manage data assets on the Code Ocean platform.
Pierre Fitness API
A multi-protocol API for accessing fitness data from providers like Strava and Fitbit, featuring AI-powered analysis and enterprise-grade management.
Google Ads
MCP server acting as an interface to the Google Ads, enabling programmatic access to Google Ads data and management features.
Remote MCP Server on Cloudflare
A remote MCP server that runs on Cloudflare Workers and supports OAuth login.
Remote MCP Server
A production-ready MCP server on Cloudflare Workers with GitHub OAuth and Fantasy Premier League integration.
Image Analysis Server
Analyzes images using the GPT-4o-mini model via the OpenAI API.
BNBChain MCP
Interact with BNB Chain and other EVM-compatible networks using natural language and AI assistance.
OpenRouter
Integrate with OpenRouter.ai's diverse ecosystem of AI models. Requires an OpenRouter API key.
Supabase MCP Server
Manage Supabase projects and organizations via the Supabase Management API.
Remote MCP Server (Authless)
An authentication-free, remote MCP server designed for deployment on Cloudflare Workers or local execution via npm.