home / mcp / youtube mcp server enhanced

YouTube MCP Server Enhanced

MCP server that exposes YouTube data with URLs, transcripts, and channel/playlist management via a standardized interface.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "aranej-youtube-mcp-enhanced": {
      "command": "node",
      "args": [
        "/path/to/youtube-mcp-enhanced/dist/cli.js"
      ],
      "env": {
        "YOUTUBE_API_KEY": "your_youtube_api_key_here",
        "YOUTUBE_TRANSCRIPT_LANG": "en"
      }
    }
  }
}

You set up this MCP server to let language models interact with YouTube content through a standardized interface. It provides easy access to video details, transcripts, channels, playlists, and search results, all with direct YouTube URLs to simplify integration with your applications and prompts.

How to use

You interact with the MCP server through compatible clients. Start the local MCP server as described in the installation steps, then configure your client to point at the local stdio MCP entry. Use the server to retrieve enriched video data, transcripts, and channel information. All video results include direct URLs and a videoId for straightforward linking and embedding. Use prompts and resources to summarize or analyze videos and channels, and leverage the transcript search and timestamped captions to extract precise information from transcripts.

How to install

Prerequisites: you need Node.js installed on your system. Ensure you have npm available to install dependencies and build the project.

1. Clone the repository.

git clone https://github.com/aranej/youtube-mcp-enhanced.git
cd youtube-mcp-enhanced
npm install
npm run build

Additional setup and configuration

Configure your client to run the MCP server. The local setup uses a stdio MCP entry that runs a Node.js CLI, with the YouTube API key provided via environment variables.

Example local run configuration for Claude Desktop or Claude Code CLI (environment variable for the YouTube API key):

{
  "mcpServers": {
    "youtube": {
      "command": "node",
      "args": ["/path/to/youtube-mcp-enhanced/dist/cli.js"],
      "env": {
        "YOUTUBE_API_KEY": "your_youtube_api_key_here"
      }
    }
  },
  "envVars": []
}

Notes on environment and credentials

Set the following environment variables to enable access to YouTube data and control transcript language defaults.

- YOUTUBE_API_KEY: Your YouTube Data API key (required).

Available tools

videos.getVideo

Fetch a single video's details, including title, description, duration, and enhanced fields url and videoId for direct access.

videos.searchVideos

Search videos with a query and receive results that include direct URLs and video IDs.

videos.getPlaylistItems

Retrieve items from a playlist with details and enhanced URL fields.

channels.getChannel

Get channel details such as title and statistics.

channels.listVideos

List videos from a channel with direct URLs and IDs.

transcripts.getTranscript

Retrieve transcripts for a video in a specified language and search within transcripts.