Youtube MCP Server
@space-cadet
A MCP server for connecting with Youtube. You have to obtain your own youtube API key, since the app is not yet approved by Google and I cannot provide API access. To access your private youtube information using the MCP tools you will have to authorize the app using npx auth.
Overview
What is Youtube MCP Server?
A Model Context Protocol (MCP) server that uses the YouTube Data API to let AI language models interact with YouTube content.
How to use Youtube MCP Server?
Install via Smithery (npx -y @smithery/cli install @icraft2170/youtube-data-mcp-server --client claude) or manually from npm. Set the YOUTUBE_API_KEY environment variable (required) and optionally YOUTUBE_TRANSCRIPT_LANG. Add the server configuration to your MCP client (e.g., Claude Desktop) as shown in the README.
Key features of Youtube MCP Server
- Retrieve detailed video information and statistics.
- Search videos by keywords and get related videos.
- Fetch video transcripts with multi-language support.
- Analyze channel statistics and top videos.
- Manage playlists and search public playlists.
- View trending videos by region and category.
- Access private playlists using OAuth authentication.
Use cases of Youtube MCP Server
- Search for videos and retrieve their metadata programmatically.
- Compare engagement metrics across multiple videos.
- Get transcripts with timestamps for content analysis.
- Analyze channel growth and top‑performing videos.
- Discover trending content in specific regions or categories.
FAQ from Youtube MCP Server
What credentials are required?
You need a YouTube Data API v3 key set as YOUTUBE_API_KEY. For private playlists, OAuth 2.0 credentials (client ID and secret) are also required.
How do I access private playlists?
Configure OAuth credentials in your .env file, then run npm run auth to start the OAuth flow. Once authenticated, use the getMyPlaylists tool.
What are the system requirements?
Node.js 18.0.0 or higher.
Which ports does the server use?
HTTP port 3000 and gRPC port 3001.
How is authentication handled?
Public data requires only an API key. Private content (e.g., personal playlists) requires OAuth 2.0 authentication, which can be started, verified, or revoked via npm scripts.