mcpField
Y
youtube-summarize

youtube-summarize

本地服务
github.com/zlatkoc媒体与设计613 周前更新

关于 youtube-summarize

用于获取 YouTube 字幕和视频信息的 MCP 服务,也可返回摘要指令。支持多种字幕格式、语言偏好、播放列表浏览和筛选视频搜索。

主要功能

  1. 01以五种格式获取字幕
  2. 02获取视频元数据
  3. 03为字幕添加时间戳
  4. 04返回可审阅的摘要指令
  5. 05浏览播放列表并搜索视频
  6. 06选择字幕语言

适用场景

  1. 01按需读取指定格式的字幕
  2. 02在 LLM 处理前审阅摘要指令
  3. 03按筛选条件查找视频
  4. 04枚举并排序播放列表视频

MCP 相关

向 MCP 客户端提供字幕、元数据、播放列表、视频搜索及字幕语言查询工具。摘要工具会返回指令和字幕内容,供客户端 LLM 处理。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"youtube-summarize": {
"command": "uvx",
"args": [
"youtube-summarize"
]
}
}
}
启动命令uvx youtube-summarize

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiyoutube-summarize0.6.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

youtube-summarize

用于获取 YouTube 视频文字稿并可选择进行总结的 MCP 服务。

演示 — 在 Claude 中总结 YouTube 视频

功能

  • 获取文字稿,支持多种格式(文本、JSON、SRT、WebVTT、美化输出)
  • 视频元数据——标题、描述、频道、上传日期、时长、观看次数、章节(通过 yt-dlp 获取)
  • 纯文本文字稿可选包含时间戳
  • 总结视频——返回文字稿,并将提示词明确分区列出,供人工审核后再由大模型处理
  • 列出播放列表视频——快速枚举任意公开播放列表,并可选择排序方式
  • 搜索视频——提供整洁的排序结果和筛选选项,不含 YouTube 网站上的广告、Shorts 栏目和个性化推荐
  • 列出视频文字稿支持的语言
  • 灵活解析 URL——接受完整的 YouTube URL(youtube.com/watch?v=、youtu.be/、youtube.com/embed/、youtube.com/shorts/)或纯视频 ID
  • 多语言支持——请求特定语言的文字稿,并按优先级回退

工具

get_transcript

获取 YouTube 视频的文字稿。默认情况下,响应会在前面加上 [METADATA] 区块(标题、频道、发布日期、时长、观看次数、描述);设置 include_metadata=false 可仅输出文字稿。

参数类型默认值描述
urlstring必填YouTube 视频 URL 或视频 ID
languagesstring[]["en"]按优先级排列的首选语言
formatstring"text"输出格式:text、json、pretty、webvtt、srt
preserve_formattingbooleanfalse在文字稿中保留 HTML 格式标签
include_timestampsbooleanfalse当 format="text" 时,若设为 true,则在每行前添加 [HH:MM:SS]。其他格式不受影响(它们已包含时间戳)。
include_metadatabooleantrue在文字稿前添加 [METADATA] 区块。设置为 false 可仅输出文字稿。
summarize_transcript

获取文字稿并返回总结说明。响应分为清晰标记的区块([INSTRUCTIONS]、[PROMPT_SOURCE]、[VIDEO]、[METADATA]、[TRANSCRIPT]),便于人工审核提示词后再让大模型处理。

参数类型默认值描述
urlstring必填YouTube 视频 URL 或视频 ID
promptstring(默认提示词)自定义总结说明
languagesstring[]["en"]按优先级排列的首选语言
include_timestampsbooleanfalse在每行文字稿前添加 [HH:MM:SS]。
include_metadatabooleantrue包含 [VIDEO] 区块,其中有标题、频道、发布日期、时长、观看次数和描述。
get_video_metadata

获取 YouTube 视频的元数据(标题、描述、频道、上传日期、时长、观看次数、标签、章节等)。由 yt-dlp 提供支持。

参数类型默认值描述
urlstring必填YouTube 视频 URL 或视频 ID
list_playlist_videos

列出 YouTube 播放列表中的视频(标题、ID、频道、时长、观看次数、URL)。每个视频的元数据有意保持精简,以确保即使播放列表很大,调用也能保持快速;如需完整详情,可使用特定视频 ID 调用 get_video_metadata。

参数类型默认值描述
urlstring必填YouTube 播放列表 URL(带 ?list=...)或纯播放列表 ID
limitinteger500返回视频数量上限
sort_bystring"index"可选值:index(播放列表顺序)、title、duration、views。不支持 upload_date。
orderstring"asc"asc 或 desc
search_videos

在 YouTube 上搜索视频,并返回简洁的排序列表(标题、ID、频道、时长、观看次数、URL)——仅包含实际视频,不含广告、推荐栏或个性化内容。相关性排序仍由 YouTube 后端提供。可将结果的 ID 或 URL 与 get_transcript 或 summarize_transcript 配合使用。

参数类型默认值说明
querystring必填搜索词
limitinteger10返回结果的数量上限
sort_bystring"relevance"可选值:relevance、date(最新优先)、views、rating
uploadedstring"any"按上传时间筛选:any、hour、today、week、month、year
durationstring"any"按时长筛选:any、short(<4 分钟)、medium(4–20 分钟)、long(>20 分钟)
list_transcripts

列出视频可用的字幕语言。

参数类型默认值说明
urlstring必填YouTube 视频 URL 或视频 ID

安装

快速开始(推荐)
uvx youtube-summarize
Claude Desktop

添加到 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
其他 MCP 客户端

通过 stdio 运行服务:

uvx youtube-summarize

前置要求

  • Python 3.13+
  • uv 包管理器

开发

# Install dependencies
uv sync

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

许可证

MIT


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

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。