YouTube Summarizer
Automatically fetch YouTube video transcripts, generate structured summaries, and send full transcripts to messaging platforms. Detects YouTube URLs and provides metadata, key insights, and downloadab
Automatically fetch YouTube video transcripts, generate structured summaries, and send full transcripts to messaging platforms. Detects YouTube URLs and provides metadata, key insights, and downloadab
Real data. Real impact.
Emerging
Developers
Per week
Open source
Skills give you superpowers. Install in 30 seconds.
Automatically fetch transcripts from YouTube videos, generate structured summaries, and deliver full transcripts to messaging platforms.
Activate this skill when:
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
Extract video ID from these patterns:
https://www.youtube.com/watch?v=VIDEO_IDhttps://youtu.be/VIDEO_IDhttps://www.youtube.com/shorts/VIDEO_IDVIDEO_ID (11 characters)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.
Parse the JSON to extract:
result.metadata.title - Video titleresult.metadata.author - Channel nameresult.metadata.viewCount - Formatted view countresult.metadata.publishDate - Publication dateresult.actualLang - Language usedresult.lines - Array of transcript segmentsFull text:
result.lines.map(l => l.text).join(' ')
Create a structured summary 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:
Save the complete transcript to a timestamped file:
/root/clawd/transcripts/YYYY-MM-DD_VIDEO_ID.txt
Include in the file:
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).
Send the structured summary as your response to the user.
If transcript fetch fails:
lang: 'en' fallback if requested language unavailableIf MCP server not installed:
If video ID extraction fails:
See
examples/ directory for sample outputs.
No automatic installation available. Please visit the source repository for installation instructions.
View Installation Instructions1,500+ AI skills, agents & workflows. Install in 30 seconds. Part of the Torly.ai family.
© 2026 Torly.ai. All rights reserved.