Youtube Summarize

io.github.zlatkoc由 GitHub 帳號 zlatkoc 發布v0.6.0更新於 Oct 24, 2026

MCP server that fetches YouTube video transcripts and optionally summarizes them

概覽

AI 產生的概覽

一個本機 MCP 伺服器,用來取得 YouTube 影片字幕與中繼資料,並為助理準備可供摘要的字幕內容。

可以做什麼
以文字、JSON、SRT、WebVTT 或美化格式取得影片字幕,可選擇時間戳與中繼資料區塊,並列出影片可用的字幕語言。取得影片中繼資料,例如標題、頻道、上傳日期、長度、觀看數、標籤與章節。列出公開播放清單中的影片,支援排序與結果數量上限。搜尋 YouTube 影片,支援排序、上傳時間與長度篩選,回傳乾淨的排序清單。回傳字幕並附上依標籤分段的摘要提示,方便人工審閱。
適用情境
適合讓助理在不觀看影片的情況下閱讀、引用或摘要 YouTube 內容,或為研究、內容工作蒐集影片、播放清單資訊與搜尋結果。
執行需求
以 Python 套件(youtube-summarize)透過 uvx 在本機以 stdio 執行;需要 Python 3.13+ 與 uv 套件管理工具。需要連線至 YouTube 的網路;未宣告帳號、API 金鑰或環境變數。
安裝前請注意
它會代你取得公開的 YouTube 資料,請求會送往 YouTube,可能受速率限制或被阻擋。摘要輸出是供助理處理的素材,使用結果前請先審閱提示與字幕。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Youtube Summarize,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

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.

ParameterTypeDefaultDescription
urlstringrequiredYouTube video URL or video ID
languagesstring[]["en"]Preferred languages in priority order
formatstring"text"Output format: text, json, pretty, webvtt, srt
preserve_formattingbooleanfalseKeep HTML formatting tags in the transcript
include_timestampsbooleanfalseWhen true with format="text", prefix each line with [HH:MM:SS]. Ignored for other formats (they already include timestamps).
include_metadatabooleantruePrepend 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.

ParameterTypeDefaultDescription
urlstringrequiredYouTube video URL or video ID
promptstring(default prompt)Custom summarization instructions
languagesstring[]["en"]Preferred languages in priority order
include_timestampsbooleanfalsePrefix each transcript line with [HH:MM:SS].
include_metadatabooleantrueInclude 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.

ParameterTypeDefaultDescription
urlstringrequiredYouTube 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.

ParameterTypeDefaultDescription
urlstringrequiredYouTube playlist URL (with ?list=...) or bare playlist ID
limitinteger500Maximum videos to return
sort_bystring"index"One of: index (playlist order), title, duration, views. upload_date is not supported.
orderstring"asc"asc or desc

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.

ParameterTypeDefaultDescription
querystringrequiredSearch terms
limitinteger10Maximum results to return
sort_bystring"relevance"One of: relevance, date (newest first), views, rating
uploadedstring"any"Filter by upload time: any, hour, today, week, month, year
durationstring"any"Filter by length: any, short (<4 min), medium (4–20 min), long (>20 min)

list_transcripts

List available transcript languages for a video.

ParameterTypeDefaultDescription
urlstringrequiredYouTube video URL or video ID

Installation

Quick start (recommended)

bash
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
json
{  "mcpServers": {    "youtube-summarize": {      "command": "uvx",      "args": ["youtube-summarize"]    }  }}

Claude Code

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

Other MCP clients

Run the server over stdio:

bash
uvx youtube-summarize

Prerequisites

  • Python 3.13+
  • uv package manager

Development

bash
# Install dependenciesuv 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

來源:README.md,提交 3477951

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.6.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分