名称: youtube-summarizer
描述: 自动获取 YouTube 视频字幕,生成结构化摘要,并将完整字幕发送至消息平台。可检测 YouTube 链接,并提供视频元数据、关键见解及可下载的字幕文件。
版本: 1.0.0
作者: abe238
标签: [youtube, 字幕, 摘要, 视频, telegram]
自动获取 YouTube 视频的字幕,生成结构化摘要,并将完整字幕发送至消息平台。
在以下情况激活此技能:
- 用户分享 YouTube 链接(youtube.com/watch、youtu.be、youtube.com/shorts)
- 用户要求总结或转录 YouTube 视频
- 用户请求获取 YouTube 视频的内容信息
必需: MCP YouTube Transcript 服务器必须安装在以下路径:
/root/clawd/mcp-server-youtube-transcript
如果未安装,请执行:
cd /root/clawd
git clone https://github.com/kimtaeyoon83/mcp-server-youtube-transcript.git
cd mcp-server-youtube-transcript
npm install && npm run build
从以下模式中提取视频 ID:
- https://www.youtube.com/watch?v=视频ID
- https://youtu.be/视频ID
- https://www.youtube.com/shorts/视频ID
- 直接提供视频 ID:视频ID(11个字符)
运行以下命令获取字幕:
cd /root/clawd/mcp-server-youtube-transcript && node --input-type=module -e "
import { getSubtitles } from './dist/youtube-fetcher.js';
const result = await getSubtitles({ videoID: '视频ID', lang: 'en' });
console.log(JSON.stringify(result, null, 2));
" > /tmp/yt-transcript.json
将 视频ID 替换为提取出的 ID。从 /tmp/yt-transcript.json 读取输出。
解析 JSON 以提取:
- result.metadata.title - 视频标题
- result.metadata.author - 频道名称
- result.metadata.viewCount - 格式化后的观看次数
- result.metadata.publishDate - 发布日期
- result.actualLang - 使用的语言
- result.lines - 字幕片段数组
完整文本:result.lines.map(l => l.text).join(' ')
使用以下模板创建结构化摘要:
📹 **视频标题:** [标题]
👤 **频道:** [作者] | 👁️ **观看次数:** [观看数] | 📅 **发布日期:** [日期]
**🎯 核心论点:**
[1-2 句话概括核心论点或主旨]
**💡 关键见解:**
- [见解 1]
- [见解 2]
- [见解 3]
- [见解 4]
- [见解 5]
**📝 要点补充:**
- [补充要点 1]
- [补充要点 2]
**🔑 总结与启示:**
[实际应用或结论]
摘要应遵循:
- 核心论点:最多 1-2 句话
- 关键见解:3-5 个要点,每点 1-2 句话
- 要点补充:2-4 个支持性细节
- 总结与启示:可操作的结论
将完整字幕保存至带时间戳的文件:
/root/clawd/transcripts/YYYY-MM-DD_视频ID.txt
文件内容应包括:
- 视频元数据头部信息
- 完整字幕文本
- 视频链接引用
如果渠道是 Telegram:
message --action send --channel telegram --target 聊天ID \
--filePath /root/clawd/transcripts/YYYY-MM-DD_视频ID.txt \
--caption "📄 YouTube 字幕文件:[标题]"
如果渠道是其他平台/网页聊天:
仅回复摘要内容(不附加文件)。
将结构化摘要作为对用户的回复发送。
如果获取字幕失败:
- 检查视频是否启用了字幕
- 如果请求的语言不可用,尝试使用 lang: 'en' 作为备选
- 告知用户字幕不可用,并提供替代方案:
- 手动使用 YouTube 的字幕功能
- 视频可能未提供字幕
- 尝试其他视频
如果 MCP 服务器未安装:
- 提供安装说明
- 在适当情况下,可提供自动安装选项
如果视频 ID 提取失败:
- 请用户提供完整的 YouTube 链接或视频 ID
查看 examples/ 目录中的示例输出。