MCP server that fetches YouTube video transcripts and optionally summarizes them. - Fetch transcripts in multiple formats (text, JSON, SRT, WebVTT, pretty-print) - Summarize videos — returns transcript with instructions for the LLM to produce a summary - List available languages for any video's transcripts - Flexible URL parsing — accepts full YouTube URLs (youtube.com/watch?v=, youtu.be/, youtube
Add this skill
npx mdskills install zlatkoc/youtube-summarizeWell-documented MCP server with clear tool descriptions and comprehensive setup instructions
1# youtube-summarize23MCP server that fetches YouTube video transcripts and optionally summarizes them.4567## Features89- **Fetch transcripts** in multiple formats (text, JSON, SRT, WebVTT, pretty-print)10- **Summarize videos** — returns transcript with instructions for the LLM to produce a summary11- **List available languages** for any video's transcripts12- **Flexible URL parsing** — accepts full YouTube URLs (`youtube.com/watch?v=`, `youtu.be/`, `youtube.com/embed/`, `youtube.com/shorts/`) or bare video IDs13- **Multi-language support** — request transcripts in specific languages with fallback priority1415## Tools1617### `get_transcript`1819Fetch a YouTube video's transcript.2021| Parameter | Type | Default | Description |22|-----------|------|---------|-------------|23| `url` | string | *required* | YouTube video URL or video ID |24| `languages` | string[] | `["en"]` | Preferred languages in priority order |25| `format` | string | `"text"` | Output format: `text`, `json`, `pretty`, `webvtt`, `srt` |26| `preserve_formatting` | boolean | `false` | Keep HTML formatting tags in the transcript |2728### `summarize_transcript`2930Fetch a transcript and return it with summarization instructions for the LLM client.3132| Parameter | Type | Default | Description |33|-----------|------|---------|-------------|34| `url` | string | *required* | YouTube video URL or video ID |35| `prompt` | string | *(default prompt)* | Custom summarization instructions |36| `languages` | string[] | `["en"]` | Preferred languages in priority order |3738### `list_transcripts`3940List available transcript languages for a video.4142| Parameter | Type | Default | Description |43|-----------|------|---------|-------------|44| `url` | string | *required* | YouTube video URL or video ID |4546## Installation4748### Quick start (recommended)4950```bash51uvx youtube-summarize52```5354### Claude Desktop5556Add to your `claude_desktop_config.json`:5758- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`59- Windows: `%APPDATA%\Claude\claude_desktop_config.json`6061```json62{63 "mcpServers": {64 "youtube-summarize": {65 "command": "uvx",66 "args": ["youtube-summarize"]67 }68 }69}70```7172### Claude Code7374```bash75claude mcp add youtube-summarize -- uvx youtube-summarize76```7778### Other MCP clients7980Run the server over stdio:8182```bash83uvx youtube-summarize84```8586## Prerequisites8788- Python 3.13+89- [uv](https://docs.astral.sh/uv/) package manager9091## Development9293```bash94# Install dependencies95uv sync9697# Launch the MCP inspector (web UI for testing tools)98uv run mcp dev main.py99```100101## License102103MIT104105---106107mcp-name: io.github.zlatkoc/youtube-summarize108
Full transparency — inspect the skill content before installing.