SuperAPI AI 工具集

youtube-summarize

youtube-summarize 是一个 MCP 服务器,用于获取 YouTube 视频的字幕文本,并可选择对其进行摘要。它支持以多种格式(text、JSON、SRT、WebVTT、pretty-print)和多语言获取字幕,还能获取视频元数据、列出播放列表视频、搜索视频等。该工具可集成到兼容 MCP 的客户端中使用,适合需要对 YouTube 内容进行文本提取和整理的场景。

访问官网

工具介绍

youtube-summarize 是一个 MCP(Model Context Protocol)服务器,主要功能是获取 YouTube 视频字幕,并可选择对字幕进行摘要。它由 zlatkoc 开发,托管于 GitHub。

【用途】 该工具面向需要从 YouTube 视频中提取字幕文本并进一步处理(如摘要)的用户,可用作 MCP 客户端(如 Claude Desktop)的扩展能力。

【主要能力】

  • 以多种格式获取字幕:text、JSON、SRT、WebVTT、pretty-print。
  • 获取视频元数据:标题、描述、频道、上传日期、时长、观看量、章节(通过 yt-dlp)。
  • 可选在纯文本字幕中加入时间戳。
  • 对视频进行摘要:返回字幕,并将提示词清晰拆分出来,供人类在 LLM 处理前审查。
  • 列出播放列表视频:快速枚举任何公开播放列表,支持可选排序。
  • 搜索视频:返回干净的排序结果,支持排序与筛选,无广告、Shorts 货架和个性化推荐。
  • 列出任何视频字幕可用的语言。
  • 灵活的 URL 解析:接受完整 YouTube URL(youtube.com/watch?v=、youtu.be/、youtube.com/embed/、youtube.com/shorts/)或纯视频 ID。
  • 多语言支持:可按指定语言请求字幕,并带有回退优先级。

【工具说明】

  • get_transcript:获取 YouTube 视频字幕。默认响应前缀为 [METADATA] 块(标题、频道、发布日期、时长、观看量、描述);传入 include_metadata=false 可仅输出字幕。
  • summarize_transcript:获取字幕并返回带有摘要指令的响应。响应分为清晰标记的区块([INSTRUCTIONS]、[PROMPT_SOURCE]、[VIDEO]、[METADATA]、[TRANSCRIPT]),便于人类在让 LLM 处理前审查提示词。
  • get_video_metadata:获取 YouTube 视频的元数据(标题、描述、频道、上传日期、时长、观看量、标签、章节等),由 yt-dlp 支持。
  • list_playlist_videos:列出 YouTube 播放列表中的视频(标题、ID、频道、时长、观看量、URL)。单个视频的元数据刻意保持精简,以便即使播放列表很大也能快速调用;如需完整详情,可对特定视频 ID 调用 get_video_metadata。
  • search:搜索 YouTube 视频并返回干净的排序列表(标题、ID、频道、时长、观看量、URL),仅包含实际视频,无广告、推荐货架或个性化。相关性排序仍来自 YouTube 后端。可对结果的 ID 或 URL 配合 get_transcript 或 summarize_transcript 使用。
  • list_transcripts:列出视频可用的字幕语言。

【使用方式】 推荐快速开始:将配置加入 claude_desktop_config.json。 macOS 路径:~/Library/Application Support/Claude/claude_desktop_config.json Windows 路径:%APPDATA%\Claude\claude_desktop_config.json 其他 MCP 客户端:通过 stdio 运行服务器。 使用 uv 包管理器。 MCP 名称:io.github.zlatkoc/youtube-summarize

【适用场景】

  • 需要提取 YouTube 视频字幕文本用于阅读、存档或进一步分析。
  • 需要在 LLM 处理前人工审查摘要提示词。
  • 需要批量获取播放列表视频信息或搜索 YouTube 视频并获取干净结果。

【限制】

  • 摘要功能本身依赖用户接入的 LLM,工具仅返回字幕与提示词结构。
  • 搜索相关性排序由 YouTube 后端决定。
  • 播放列表视频列表的元数据为精简版,完整元数据需单独调用。