Skip to main content
Glama

yt-analysis-mcp

An MCP server that analyzes YouTube videos using Google's Gemini API. Pass in a YouTube URL to get summaries or ask questions about the video content.

Features

  • Summarize videos - Get brief, medium, or detailed summaries with timestamps

  • Ask questions - Ask specific questions about video content

  • Direct URL support - No video downloading required; Gemini analyzes YouTube URLs directly

Related MCP server: yt-mcp

Installation

git clone https://github.com/yourusername/yt-analysis-mcp.git
cd yt-analysis-mcp
pnpm install
pnpm build

Configuration

Set your Gemini API key:

export GEMINI_API_KEY=your-api-key

Get an API key from Google AI Studio.

Usage

Claude Code

claude mcp add -s user -e GEMINI_API_KEY=your-key yt-analysis -- node /path/to/yt-analysis-mcp/dist/index.js

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "yt-analysis": {
      "command": "node",
      "args": ["/path/to/yt-analysis-mcp/dist/index.js"],
      "env": {
        "GEMINI_API_KEY": "your-key"
      }
    }
  }
}

Tools

summarize_video

Summarize a YouTube video's content.

Parameter

Type

Required

Description

youtube_url

string

Yes

Full YouTube URL

detail_level

string

No

brief, medium (default), or detailed

ask_about_video

Ask a specific question about a YouTube video's content.

Parameter

Type

Required

Description

youtube_url

string

Yes

Full YouTube URL

question

string

Yes

Your question about the video

Supported URL Formats

  • https://www.youtube.com/watch?v=VIDEO_ID

  • https://youtu.be/VIDEO_ID

  • https://youtube.com/shorts/VIDEO_ID

Development

# Run in development mode
pnpm dev

# Run tests
pnpm test

# Build
pnpm build

License

MIT

Available Tools

5 tools
ask_about_videoB

Ask a specific question about a YouTube video's content. Returns an answer based on the video.

Inputs: youtube_url (required), question (required).

extract_framesA

Extract frames from a YouTube video at specific timestamps you provide. Use this when you already know the exact timestamps you want (e.g., from get_video_timestamps or video summary).

Inputs: youtube_url (required), timestamps (required), output_dir, resolution.

extract_screenshotsA

Extract key screenshots from a YouTube video at important moments. Uses AI to identify visually significant timestamps, then extracts frames. Returns both base64 images and optionally saves to disk.

Inputs: youtube_url (required), count, output_dir, focus, +1 more.

get_video_timestampsA

Preview mode: Use AI to identify important moments in a YouTube video and return their timestamps WITHOUT extracting frames. Use this to preview what timestamps would be selected before committing to extraction.

Inputs: youtube_url (required), count, focus.

summarize_videoA

Summarize a YouTube video's content. Returns a text summary based on the specified detail level.

Inputs: youtube_url (required), detail_level.

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    A3.8/5.0

    Scored across 5 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose with no ambiguity: ask_about_video answers questions about content, extract_frames extracts frames at user-provided timestamps, extract_screenshots uses AI to find and extract key frames, get_video_timestamps previews AI-identified timestamps, and summarize_video provides text summaries. The descriptions explicitly differentiate their use cases, such as distinguishing between extract_frames (manual timestamps) and extract_screenshots (AI-selected timestamps).

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern with underscores, using clear action verbs like ask_about, extract, get, and summarize paired with descriptive nouns like video, frames, screenshots, and timestamps. There are no deviations in style or convention, making the set predictable and easy to understand at a glance.

    Tool Count5/5

    With 5 tools, the count is well-scoped for the YouTube analysis domain, covering core workflows like content querying, frame extraction (both manual and AI-driven), timestamp previewing, and summarization. Each tool earns its place without redundancy, and the number is manageable for agents to navigate effectively.

    Completeness4/5

    The tool set provides strong coverage for video analysis, including content understanding, visual extraction, and summarization, with no dead ends. A minor gap exists in lacking direct video metadata retrieval (e.g., title, duration, uploader), but agents can work around this by using existing tools like ask_about_video or summarize_video for such information.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers