
Youtube Summarize
io.github.zlatkocPublished by GitHub account zlatkocv0.6.0Updated Oct 24, 2026
MCP server that fetches YouTube video transcripts and optionally summarizes them
Overview
A local MCP server that fetches YouTube transcripts and metadata, and prepares transcripts for summarization by the assistant.
- What you can do
- Fetch a video's transcript in text, JSON, SRT, WebVTT or pretty format, with optional timestamps and metadata block, and list available transcript languages for a video. Retrieve video metadata such as title, channel, upload date, duration, views, tags and chapters. List the videos in a public playlist with sorting and a result limit. Search YouTube for videos with sort and upload-time and duration filters, returning a clean ranked list. Return a transcript together with a summarization prompt broken into labeled sections for review.
- When to use it
- Useful when you want an assistant to read, quote or summarize YouTube content without watching it, or to gather video and playlist details and search results for research or content work.
- Requirements
- Runs locally over stdio as a Python package (youtube-summarize) launched with uvx; needs Python 3.13+ and the uv package manager. Network access to YouTube is required; no accounts, API keys or environment variables are declared.
Installation
In SourceWeft
- Open Youtube Summarize in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
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
- Search videos — clean ranked results with sort and filter options, without the ads, Shorts shelves, and personalized recommendations of the YouTube website
- 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.
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.
get_video_metadata
Fetch metadata (title, description, channel, upload date, duration, views, tags, chapters, etc.) for a YouTube video. Backed by yt-dlp.
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.
search_videos
Search YouTube for videos and return a clean ranked list (title, ID, channel, duration, views, URL) — only actual videos, with 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.
list_transcripts
List available transcript languages for a video.
Installation
Quick start (recommended)
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
Claude Code
Other MCP clients
Run the server over stdio:
Prerequisites
- Python 3.13+
- uv package manager
Development
License
MIT
mcp-name: io.github.zlatkoc/youtube-summarize
Source: README.md at commit 3477951
Tools
0Version history
1- v0.6.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts