Skip to main content
Glama

YouTube MCP Server

A Model Context Protocol (MCP) server for extracting and processing YouTube video content. This server provides tools for LLMs to directly read video transcripts, analyze metadata, search within videos, fetch top comments, and get channel statistics.

Features

  • Transcript Extraction: Fetch video subtitles/transcripts with timestamps (No API Key Required).

  • Video Summarization: Intelligent transcript chunking for LLM summarization.

  • Transcript Search: Search for specific words or phrases and get exact YouTube timestamp links.

  • Video Metadata: Fetch views, likes, descriptions, duration, and tags (Requires API Key).

  • Top Comments: Fetch the most relevant comments of a video.

  • Channel Info: Get subscriber count, total video count, and channel creation date.

Related MCP server: YouTube Insights MCP Server

Prerequisites

  • Node.js 18 or higher (v22+ recommended)

  • A YouTube Data API v3 Key (Only required for metadata, comments, and channel info)

Installation

# 1. Clone or download the repository
# 2. Install dependencies
npm install

# 3. Build the project
npm run build

Configuration

For tools requiring an API key (video info, comments, channel info), you need to get a free API key from Google Cloud Console.

  1. Copy the example env file:

    cp .env.example .env
  2. Add your YouTube Data API v3 key to the .env file:

    YOUTUBE_API_KEY=YOUR_API_KEY_HERE

Development

# Run in development mode (auto-reload on save)
npm run dev

Adding to Cursor / Claude Desktop

Add the following to your mcp_config.json file:

{
  "mcpServers": {
    "youtube-mcp": {
      "command": "node",
      "args": ["/absolute/path/to/youtube-mcp/dist/index.js"],
      "env": {
        "YOUTUBE_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}

Tools List

Tool Name

Description

Requires API Key

get_transcript

Fetches the full transcript with timestamps

❌ No

summarize_transcript

Splits transcript into smaller timestamped chunks

❌ No

search_in_transcript

Searches the video text and returns timestamp links

❌ No

get_video_info

Fetches views, likes, duration, and description

✅ Yes

get_comments

Fetches top comments

✅ Yes

get_channel_info

Fetches subscriber count and channel statistics

✅ Yes

Available Tools

6 tools
get_channel_infoA

Fetches YouTube channel details: name, subscriber count, total videos, total views, etc. You can provide a channel ID or a video URL. Requires YouTube API key.

Inputs: input (required).

get_commentsA

Fetches the most popular comments of a YouTube video. Requires YouTube API key.

Inputs: videoUrl (required), maxResults.

get_transcriptA

Fetches the transcript (subtitles) of a YouTube video with timestamps. No API key required.

Inputs: videoUrl (required).

get_video_infoA

Fetches metadata for a YouTube video: title, description, duration, views, likes, tags, etc. Requires YouTube API key.

Inputs: videoUrl (required).

search_in_transcriptA

Searches for a word or phrase within a YouTube video transcript. Returns matching segments with timestamps and YouTube URL links. No API key required.

Inputs: query (required), videoUrl (required).

summarize_transcriptA

Splits the YouTube video transcript into chunks and creates timestamped chapters. No API key required.

Inputs: videoUrl (required), chunkSeconds.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.9/5.0

    Scored across 6 tools

    Disambiguation5/5

    Each tool targets a distinct resource or action: raw transcripts, video metadata, transcript summarization, transcript search, comments, and channel info. The three transcript tools are clearly differentiated by their verbs (get, summarize, search).

    Naming Consistency4/5

    Most tools follow a get_* pattern (get_transcript, get_video_info, get_comments, get_channel_info), while summarize_transcript and search_in_transcript use action-specific verbs. This is a minor deviation but still follows a consistent verb_noun structure in snake_case.

    Tool Count5/5

    Six tools is well-scoped for a YouTube MCP server, covering transcript handling (3 tools), video info, comments, and channel info without overloading the surface. Each tool serves a clear purpose.

    Completeness4/5

    The set covers core read-only video analysis workflows: metadata, transcript, comments, and channel details. Minor gaps exist, such as video search or listing videos by channel, but the apparent purpose is well-served.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers