What are the runtime requirements?
Python 3.13 or later and the `uv` package manager.
@zlatkoc
Basic information
MCP server that fetches YouTube video transcripts and optionally summarizes them. Supports multiple output formats (text, JSON, SRT, WebVTT), language selection, and returns transcripts with summarization instructions for the LLM client.
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"youtube-summarize": {
"command": "uvx",
"args": [
"youtube-summarize"
]
}
}
}Fetch a YouTube video's transcript. Args: url: YouTube video URL or video ID languages: Preferred languages in priority order (e.g. ["en", "de"]). Defaults to English. format: Output format — one of: text, json, pretty, webvtt, srt preserve_formatting: Keep HTML formatting tags in the transcript text include_timestamps: When True with format="text", prefix each line with [HH:MM:SS]. Ignored for json/srt/webvtt/pretty (those formats already include timestamps). include_metadata: When True (default), prepend a [METADATA] block (title, channel, published, duration, views, description) before the transcript. Pass False for transcript-only output.
Fetch a YouTube video's transcript and return it with summarization instructions. The LLM client should use the returned instructions and transcript to produce a summary. The output is structured into clearly-labeled sections so a human can review the prompt before letting the LLM act on it. Args: url: YouTube video URL or video ID prompt: Custom summarization instructions. If omitted, a default summary prompt is used. languages: Preferred languages in priority order (e.g. ["en", "de"]). Defaults to English. include_timestamps: When True, prefix each transcript line with [HH:MM:SS]. include_metadata: When True (default), include a [VIDEO] block with title, channel, published date, duration, views, and description.
Fetch metadata (title, description, channel, upload date, duration, views, chapters, etc.) for a YouTube video. Args: url: YouTube video URL or video ID
List the videos in a YouTube playlist (titles, IDs, channels, durations, views). Per-video metadata is intentionally lean so the call stays fast even for big playlists. For full metadata on a specific video, call get_video_metadata with that video's ID. Args: url: YouTube playlist URL (with ?list=...) or bare playlist ID limit: Maximum videos to return (default 500). Pass a smaller value to truncate. sort_by: Sort key — "index" (playlist order, default), "title", "duration", "views". "upload_date" is not supported in this fast-mode tool. order: "asc" (default) or "desc".
Search YouTube for videos and return a clean ranked result list. Unlike the YouTube website, results contain only actual videos — no ads, recommendation shelves, or personalization. Relevance ordering still comes from YouTube's backend. Pair with get_transcript or summarize_transcript on a result's ID or URL. Args: query: Search terms limit: Maximum results to return (default 10) sort_by: Result order — "relevance" (default), "date" (newest first), "views", "rating" uploaded: Filter by upload time — "any" (default), "hour", "today", "week", "month", "year" duration: Filter by length — "any" (default), "short" (<4 min), "medium" (4-20 min), "long" (>20 min)
List available transcript languages for a YouTube video. Args: url: YouTube video URL or video ID
youtube-summarize is an MCP server that fetches YouTube video transcripts and optionally summarizes them for LLM clients like Claude. It provides tools to retrieve transcripts in multiple formats and to return transcripts with customized summarization instructions.
Install and run with uvx youtube-summarize (requires Python 3.13+ and the uv package manager). For Claude Desktop, add the server configuration to claude_desktop_config.json. For Claude Code, run claude mcp add youtube-summarize -- uvx youtube-summarize. The server exposes three tools: get_transcript, summarize_transcript, and list_transcripts.
Python 3.13 or later and the `uv` package manager.
Run `uvx youtube-summarize` in your terminal.
Yes, use the `get_transcript` tool. It returns the transcript in your chosen format.
`text`, `json`, `pretty`, `webvtt`, and `srt`.
Add the following to your `claude_desktop_config.json`: ```json { "mcpServers": { "youtube-summarize": { "command": "uvx", "args": ["youtube-summarize"] } } } ```

Build and run AI product photography workflows from your AI assistant: on-model shots, catalog images, prints and edits, with results returned in chat.

Make AI videos, images, voiceovers and full AI Video Story episodes from Claude, ChatGPT, Cursor or any MCP client, then post them to TikTok, YouTube and Instagram. Veo, Kling, Seedance and more, on your own aicut accoun

Generate on brand product videos from Claude Code (or any assistant) in one line. Lamina turns a brief + your brand kit into finished product photos, video reels, and campaign banners - no prompt engineering; brand guard

Drive Veltake Studio from any AI agent: create film and ad projects, have the Studio agent build scenes on the canvas, price and start renders, export edited cuts, and make single images, video, speech and music in one c

Generate images, video, audio and short films with 140+ AI models from any MCP client. PixelDojo picks the right model (Flux, Seedream, Seedance, Veo, Kling, WAN, Nano Banana, GPT Image), renders it and returns download
Comments