← 返回
未分类 Key 中文

summarizer

Automatically fetch YouTube video transcripts, generate structured summaries, and send full transcripts to messaging platforms. Detects YouTube URLs and prov...
Automatically fetch YouTube video transcripts, generate structured summaries, and send full transcripts to messaging platforms. Detects YouTube URLs and prov...
kirkraman kirkraman 来源
未分类 clawhub v1.0.0 1 版本 100000 Key: 需要
★ 0
Stars
📥 384
下载
💾 0
安装
1
版本
#ai#latest

概述

YouTube Summarizer Skill

Automatically fetch transcripts from YouTube videos, generate structured summaries, and deliver full transcripts to messaging platforms.

When to Use

Activate this skill when:

  • User shares a YouTube URL (youtube.com/watch, youtu.be, youtube.com/shorts)
  • User asks to summarize or transcribe a YouTube video
  • User requests information about a YouTube video's content

Dependencies

Required: MCP YouTube Transcript server must be installed at:

/root/clawd/mcp-server-youtube-transcript

If not present, install it:

cd /root/clawd
git clone https://github.com/kimtaeyoon83/mcp-server-youtube-transcript.git
cd mcp-server-youtube-transcript
npm install && npm run build

Workflow

1. Detect YouTube URL

Extract video ID from these patterns:

  • https://www.youtube.com/watch?v=VIDEO_ID
  • https://youtu.be/VIDEO_ID
  • https://www.youtube.com/shorts/VIDEO_ID
  • Direct video ID: VIDEO_ID (11 characters)

2. Fetch Transcript

Run this command to get the transcript:

cd /root/clawd/mcp-server-youtube-transcript && node --input-type=module -e "
import { getSubtitles } from './dist/youtube-fetcher.js';
const result = await getSubtitles({ videoID: 'VIDEO_ID', lang: 'en' });
console.log(JSON.stringify(result, null, 2));
" > /tmp/yt-transcript.json

Replace VIDEO_ID with the extracted ID. Read the output from /tmp/yt-transcript.json.

3. Process the Data

Parse the JSON to extract:

  • result.metadata.title - Video title
  • result.metadata.author - Channel name
  • result.metadata.viewCount - Formatted view count
  • result.metadata.publishDate - Publication date
  • result.actualLang - Language used
  • result.lines - Array of transcript segments

Full text: result.lines.map(l => l.text).join(' ')

4. Generate Summary

Call SkillBoss API Hub (/v1/pilot, type chat) to generate a structured summary from the transcript:

import requests, os

SKILLBOSS_API_KEY = os.environ["SKILLBOSS_API_KEY"]

def generate_summary(transcript_text: str, title: str, author: str) -> str:
    r = requests.post(
        "https://api.heybossai.com/v1/pilot",
        headers={
            "Authorization": f"Bearer {SKILLBOSS_API_KEY}",
            "Content-Type": "application/json"
        },
        json={
            "type": "chat",
            "inputs": {
                "messages": [
                    {
                        "role": "system",
                        "content": "You are a video summarization expert. Generate a structured summary with: Main Thesis (1-2 sentences), Key Insights (3-5 bullets), Notable Points (2-4 bullets), and Takeaway (1 actionable sentence)."
                    },
                    {
                        "role": "user",
                        "content": f"Summarize this YouTube video transcript.\n\nTitle: {title}\nChannel: {author}\n\nTranscript:\n{transcript_text}"
                    }
                ]
            },
            "prefer": "balanced"
        },
        timeout=60,
    )
    result = r.json()
    return result["result"]["choices"][0]["message"]["content"]

Format the output using this template:

📹 **Video:** [title]
👤 **Channel:** [author] | 👁️ **Views:** [views] | 📅 **Published:** [date]

**🎯 Main Thesis:**
[1-2 sentence core argument/message]

**💡 Key Insights:**
- [insight 1]
- [insight 2]
- [insight 3]
- [insight 4]
- [insight 5]

**📝 Notable Points:**
- [additional point 1]
- [additional point 2]

**🔑 Takeaway:**
[Practical application or conclusion]

Aim for:

  • Main thesis: 1-2 sentences maximum
  • Key insights: 3-5 bullets, each 1-2 sentences
  • Notable points: 2-4 supporting details
  • Takeaway: Actionable conclusion

5. Save Full Transcript

Save the complete transcript to a timestamped file:

/root/clawd/transcripts/YYYY-MM-DD_VIDEO_ID.txt

Include in the file:

  • Video metadata header
  • Full transcript text
  • URL reference

6. Platform-Specific Delivery

If channel is Telegram:

message --action send --channel telegram --target CHAT_ID \
  --filePath /root/clawd/transcripts/YYYY-MM-DD_VIDEO_ID.txt \
  --caption "📄 YouTube Transcript: [title]"

If channel is other/webchat:

Just reply with the summary (no file attachment).

7. Reply with Summary

Send the structured summary as your response to the user.

Error Handling

If transcript fetch fails:

  • Check if video has captions enabled
  • Try with lang: 'en' fallback if requested language unavailable
  • Inform user that transcript is not available and suggest alternatives:
  • Manual YouTube transcript feature
  • Video may not have captions
  • Try a different video

If MCP server not installed:

  • Provide installation instructions
  • Offer to install it automatically if in appropriate context

If video ID extraction fails:

  • Ask user to provide the full YouTube URL or video ID

Examples

See examples/ directory for sample outputs.

Quality Guidelines

  • Be concise: Summary should be scannable in 30 seconds
  • Be accurate: Don't add information not in the transcript
  • Be structured: Use consistent formatting for easy reading
  • Be contextual: Adjust detail level based on video length
  • Short videos (<5 min): Brief summary
  • Long videos (>30 min): More detailed breakdown

Notes

  • MCP server uses Android client emulation to bypass YouTube's cloud IP blocking
  • Works reliably from VPS/cloud environments where yt-dlp often fails
  • Supports multiple languages with automatic fallback to English
  • Transcript quality depends on YouTube's auto-generated captions or manual captions
  • Summary generation powered by SkillBoss API Hub — auto-routes to the best available LLM via /v1/pilot

版本历史

共 1 个版本

  • v1.0.0 当前
    2026-05-07 07:11 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

knowledge-management

web-tools-guide

user_ec205dbb
MANDATORY before calling web_search, web_fetch, browser, or opencli. Contains required error-handling procedures (web_se
★ 94 📥 169,600
knowledge-management

Obsidian

steipete
操作 Obsidian 仓库(纯 Markdown 笔记)并通过 obsidian-cli 自动化。
★ 450 📥 105,887
design-media

video

kirkraman
使用 SkillBoss API Hub 生成视频(自动路由至 /v1/pilot)
★ 0 📥 960