Skip to main content

youtube-summarize

MCP server that fetches YouTube video transcripts and optionally summarizes them.

Demo — summarizing a YouTube video in Claude

Features

  • Fetch transcripts in multiple formats (text, JSON, SRT, WebVTT, pretty-print)
  • Video metadata — title, description, channel, upload date, duration, views, chapters (via yt-dlp)
  • Optional timestamps in plain-text transcripts
  • Summarize videos — returns transcript with the prompt clearly broken out for human review before the LLM acts on it
  • List playlist videos — fast enumeration of any public playlist with optional sorting
  • List available languages for any video's transcripts
  • Flexible URL parsing — accepts full YouTube URLs (youtube.com/watch?v=, youtu.be/, youtube.com/embed/, youtube.com/shorts/) or bare video IDs
  • Multi-language support — request transcripts in specific languages with fallback priority

Tools

get_transcript

Fetch a YouTube video's transcript. By default the response is prefixed with a [METADATA] block (title, channel, published, duration, views, description); pass include_metadata=false for transcript-only output.

Parameter Type Default Description
url string required YouTube video URL or video ID
languages string[] ["en"] Preferred languages in priority order
format string "text" Output format: text, json, pretty, webvtt, srt
preserve_formatting boolean false Keep HTML formatting tags in the transcript
include_timestamps boolean false When true with format="text", prefix each line with [HH:MM:SS]. Ignored for other formats (they already include timestamps).
include_metadata boolean true Prepend a [METADATA] block before the transcript. Pass false for transcript-only output.

summarize_transcript

Fetch a transcript and return it with summarization instructions. The response is structured into clearly-labeled sections ([INSTRUCTIONS], [PROMPT_SOURCE], [VIDEO], [METADATA], [TRANSCRIPT]) so a human can review the prompt before letting the LLM act on it.

Parameter Type Default Description
url string required YouTube video URL or video ID
prompt string (default prompt) Custom summarization instructions
languages string[] ["en"] Preferred languages in priority order
include_timestamps boolean false Prefix each transcript line with [HH:MM:SS].
include_metadata boolean true Include a [VIDEO] block with title, channel, published, duration, views, and description.

get_video_metadata

Fetch metadata (title, description, channel, upload date, duration, views, tags, chapters, etc.) for a YouTube video. Backed by yt-dlp.

Parameter Type Default Description
url string required YouTube video URL or video ID

list_playlist_videos

List the videos in a YouTube playlist (title, ID, channel, duration, views, URL). Per-video metadata is intentionally lean so the call stays fast even for large playlists; call get_video_metadata with a specific video ID for full detail.

Parameter Type Default Description
url string required YouTube playlist URL (with ?list=...) or bare playlist ID
limit integer 500 Maximum videos to return
sort_by string "index" One of: index (playlist order), title, duration, views. upload_date is not supported.
order string "asc" asc or desc

list_transcripts

List available transcript languages for a video.

Parameter Type Default Description
url string required YouTube video URL or video ID

Installation

Quick start (recommended)

uvx youtube-summarize

Claude Desktop

Add to your claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "youtube-summarize": {
      "command": "uvx",
      "args": ["youtube-summarize"]
    }
  }
}

Claude Code

claude mcp add youtube-summarize -- uvx youtube-summarize

Other MCP clients

Run the server over stdio:

uvx youtube-summarize

Prerequisites

  • Python 3.13+
  • uv package manager

Development

# Install dependencies
uv sync

# Launch the MCP inspector (web UI for testing tools)
uv run mcp dev main.py

License

MIT


mcp-name: io.github.zlatkoc/youtube-summarize

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

youtube_summarize-0.4.0.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

youtube_summarize-0.4.0-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file youtube_summarize-0.4.0.tar.gz.

File metadata

  • Download URL: youtube_summarize-0.4.0.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for youtube_summarize-0.4.0.tar.gz
Algorithm Hash digest
SHA256 42024253ca0f49b187cd2c7eb3f64740cdff4506b5ef27d270e0d0eb65879eee
MD5 778d4e6ffe545829219242b552ebab77
BLAKE2b-256 c5e83291388e938a75e34b24fff8674dffeb6a38ef3d87d3788998ce9bb59e3c

See more details on using hashes here.

Provenance

The following attestation bundles were made for youtube_summarize-0.4.0.tar.gz:

Publisher: publish.yml on zlatkoc/youtube-summarize

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file youtube_summarize-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for youtube_summarize-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6469a6b20f8418d2dc9ac2f0e29b08e6a0bb4dda6df67ada06f169d388c896e5
MD5 fdd72554fb422e61e54501e47dbdb287
BLAKE2b-256 2705d9b4ebe98200ceb1b8ccf48a907b6e4b2454aecb897d40de9ad85b0dad4d

See more details on using hashes here.

Provenance

The following attestation bundles were made for youtube_summarize-0.4.0-py3-none-any.whl:

Publisher: publish.yml on zlatkoc/youtube-summarize

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.6.0

2 files

0.5.0

2 files

This release

0.4.0 This release

2 files

0.3.1

2 files

0.3.0

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page