360ā
by globalcaos
youtube ā OpenClaw Skill
youtube is an OpenClaw Skills integration for ai ml workflows. |
Skill Snapshot
| name | youtube |
| description | | OpenClaw Skills integration. |
| owner | globalcaos |
| repository | globalcaos/youtube-ultimate |
| language | Markdown |
| license | MIT |
| topics | |
| security | L1 |
| install | openclaw add @globalcaos/youtube-ultimate |
| last updated | Feb 7, 2026 |
Maintainer

name: youtube description: | The most comprehensive YouTube skill for AI agents. Extract transcripts for FREE (zero API quota!), search with filters, batch video details, read comments, download videos/audio. We analyzed 15+ YouTube tools and built the one that does everything. homepage: https://github.com/openclaw/openclaw/tree/main/skills/youtube metadata: { "openclaw": { "emoji": "šŗ", "requires": { "bins": ["uv"] }, "install": [ { "id": "uv-brew", "kind": "brew", "formula": "uv", "bins": ["uv"], "label": "Install uv (brew)", }, { "id": "ytdlp-brew", "kind": "brew", "formula": "yt-dlp", "bins": ["yt-dlp"], "label": "Install yt-dlp for downloads (optional)", }, ], }, }
YouTube Research Pro
The most comprehensive YouTube skill for AI agents.
We analyzed 15+ YouTube MCP servers and found each does one thing well, but none does everything. So we built the skill we wished existed.
Why This Skill?
| What Others Do | What We Do |
|---|---|
| Transcripts OR search OR downloads | All three, unified |
| Burn API quota on transcripts | FREE transcripts (zero quota) |
| Single video at a time | Batch operations (50 videos) |
| Basic search | Filtered search (date, duration, order) |
| Text output only | JSON export for pipelines |
The Killer Feature: FREE Transcripts
Most tools use the YouTube Data API for transcripts = 100 quota units per request. Daily limit is 10,000 units = only ~100 transcripts/day.
We use youtube-transcript-api ā extracts directly from YouTube's frontend. Zero API quota. Unlimited transcripts.
Quick Reference
| Command | Quota | What it does |
|---|---|---|
transcript VIDEO | FREE | Get video transcript |
transcript-list VIDEO | FREE | List available languages |
download VIDEO | FREE | Download video (yt-dlp) |
download-audio VIDEO | FREE | Extract audio only |
search QUERY | 100 | Search videos |
video ID [ID...] | 1/video | Get details (batch!) |
comments VIDEO | 1 | Get comments + replies |
channel [ID] | 1-3 | Channel statistics |
Setup (One Time)
# 1. Get credentials from Google Cloud Console
# - Create OAuth 2.0 Client ID (Desktop app)
# - Download JSON
# 2. Save credentials
mkdir -p ~/.config/youtube-skill
mv ~/Downloads/client_secret*.json ~/.config/youtube-skill/credentials.json
# 3. Authenticate
uv run {baseDir}/scripts/youtube.py auth
Transcripts (FREE!)
# Plain text transcript
uv run {baseDir}/scripts/youtube.py transcript VIDEO_ID
# With timestamps
uv run {baseDir}/scripts/youtube.py transcript VIDEO_ID --timestamps
# Specific language (falls back to available)
uv run {baseDir}/scripts/youtube.py transcript VIDEO_ID -l es
# List what's available
uv run {baseDir}/scripts/youtube.py transcript-list VIDEO_ID
# JSON output
uv run {baseDir}/scripts/youtube.py transcript VIDEO_ID --json
Works with URLs too:
uv run {baseDir}/scripts/youtube.py transcript "https://youtube.com/watch?v=dQw4w9WgXcQ"
Search
# Basic search
uv run {baseDir}/scripts/youtube.py search "AI news 2026"
# With filters
uv run {baseDir}/scripts/youtube.py search "tutorial" -l 20 --order date
uv run {baseDir}/scripts/youtube.py search "lecture" --duration long
uv run {baseDir}/scripts/youtube.py search "news" --published-after 2026-01-01T00:00:00Z
Video Details (Batch Supported)
# Single video
uv run {baseDir}/scripts/youtube.py video dQw4w9WgXcQ
# Multiple videos at once (up to 50)
uv run {baseDir}/scripts/youtube.py video id1 id2 id3 id4 id5
# JSON output for processing
uv run {baseDir}/scripts/youtube.py video id1 id2 --json
Comments
# Top comments
uv run {baseDir}/scripts/youtube.py comments VIDEO_ID
# With replies
uv run {baseDir}/scripts/youtube.py comments VIDEO_ID --replies
# Recent comments
uv run {baseDir}/scripts/youtube.py comments VIDEO_ID --order time -l 50
Downloads (requires yt-dlp)
# Video (best quality)
uv run {baseDir}/scripts/youtube.py download VIDEO_ID
# Specific resolution
uv run {baseDir}/scripts/youtube.py download VIDEO_ID -r 720p
# With subtitles
uv run {baseDir}/scripts/youtube.py download VIDEO_ID -s en
# Audio only (MP3)
uv run {baseDir}/scripts/youtube.py download-audio VIDEO_ID
# Audio as M4A
uv run {baseDir}/scripts/youtube.py download-audio VIDEO_ID -f m4a
User Data
uv run {baseDir}/scripts/youtube.py subscriptions
uv run {baseDir}/scripts/youtube.py playlists
uv run {baseDir}/scripts/youtube.py playlist-items PLAYLIST_ID
uv run {baseDir}/scripts/youtube.py liked
uv run {baseDir}/scripts/youtube.py channel
Command Aliases
| Full | Alias |
|---|---|
transcript | tr |
search | s |
video | v |
comments | c |
download | dl |
download-audio | dla |
Use Cases
Research: Fetch transcript ā analyze with LLM ā extract insights
Learning: Batch transcripts from playlist ā create study notes
Monitoring: Search recent videos ā extract transcripts ā track trends
Podcasts: Download audio for offline listening
Analysis: Get channel stats ā compare competitors
Multi-Account
uv run {baseDir}/scripts/youtube.py -a work subscriptions
uv run {baseDir}/scripts/youtube.py -a personal liked
Why We Built This
We surveyed the landscape:
- kimtaeyoon83/mcp-server-youtube-transcript (463ā) ā Great transcripts, no search
- kevinwatt/yt-dlp-mcp (211ā) ā Great downloads, no transcripts
- dannySubsense/youtube-mcp-server (9ā) ā Most functions, but uses paid API for transcripts
- kirbah/mcp-youtube (9ā) ā Batch ops, but no free transcripts
None combined free transcripts + search + downloads + batch ops.
Now one does.
šŗ YouTube Research Pro
The most comprehensive YouTube skill for AI agents.
Extract transcripts for FREE, search videos, analyze channels, download content ā all from one unified interface.
Why This Skill?
We analyzed 15+ YouTube MCP servers and found that each one does one thing well, but none does everything. So we built the skill we wished existed.
| What Others Do | What We Do |
|---|---|
| Transcripts OR search OR downloads | All three, unified |
| Burn API quota on transcripts | FREE transcripts (zero quota) |
| Single video at a time | Batch operations (50 videos) |
| Basic search | Filtered search (date, duration, order) |
| Text output only | JSON export for pipelines |
The Killer Feature: FREE Transcripts
Most YouTube tools use the official YouTube Data API for transcripts, which costs 100 quota units per request. With a daily limit of 10,000 units, you can only fetch ~100 transcripts per day.
We use youtube-transcript-api ā a library that extracts transcripts directly from YouTube's frontend, costing zero API quota. Fetch unlimited transcripts, every day.
What Can Your Agent Do With This?
š Research & Analysis
- Search YouTube with filters (date, duration, view count)
- Get video details in batch (up to 50 at once)
- Extract full transcripts for content analysis
- Read comments to gauge audience sentiment
š Content Extraction
- Pull transcripts in any available language
- Get timestamped transcripts for precise references
- Export everything as JSON for further processing
š„ Downloads
- Download videos at any resolution
- Extract audio only (podcasts, music, interviews)
- Grab subtitles as separate files
š Channel Intelligence
- Analyze channel statistics
- Track subscriber counts and view totals
- List and explore playlists
Quick Examples
# Get a video transcript (FREE - no API quota!)
uv run youtube.py transcript dQw4w9WgXcQ
# With timestamps
uv run youtube.py transcript dQw4w9WgXcQ --timestamps
# Search with filters
uv run youtube.py search "machine learning" --duration long --order viewCount
# Batch video details
uv run youtube.py video id1 id2 id3 id4 id5 --json
# Download audio as MP3
uv run youtube.py download-audio VIDEO_ID -f mp3
# Get top comments with replies
uv run youtube.py comments VIDEO_ID --replies
Complete Command Reference
Transcripts (FREE - Zero API Quota)
| Command | Description |
|---|---|
transcript VIDEO | Extract transcript as plain text |
transcript VIDEO --timestamps | Include [MM:SS] timestamps |
transcript VIDEO -l es,en | Prefer Spanish, fall back to English |
transcript VIDEO --json | Output as JSON array |
transcript-list VIDEO | List all available languages |
Search & Discovery
| Command | Description |
|---|---|
search QUERY | Search YouTube videos |
search QUERY -l 20 | Return 20 results (default: 10) |
search QUERY --order date | Sort by upload date |
search QUERY --order viewCount | Sort by popularity |
search QUERY --duration short | Under 4 minutes |
search QUERY --duration long | Over 20 minutes |
search QUERY --published-after 2026-01-01T00:00:00Z | Filter by date |
Video Information
| Command | Description |
|---|---|
video ID | Get video details |
video ID1 ID2 ID3 | Batch mode (up to 50) |
video ID --json | JSON output |
video ID -v | Include full description |
Comments
| Command | Description |
|---|---|
comments VIDEO | Get top comments |
comments VIDEO -l 50 | Get 50 comments |
comments VIDEO --replies | Include reply threads |
comments VIDEO --order time | Sort by newest |
Channel & User Data
| Command | Description |
|---|---|
channel | Your channel info |
channel CHANNEL_ID | Specific channel |
subscriptions | Your subscriptions |
playlists | Your playlists |
playlist-items PLAYLIST_ID | Videos in a playlist |
liked | Your liked videos |
Downloads (requires yt-dlp)
| Command | Description |
|---|---|
download VIDEO | Download best quality |
download VIDEO -r 720p | Specific resolution |
download VIDEO -s en | Include subtitles |
download VIDEO -o ~/Videos | Custom output folder |
download-audio VIDEO | Audio only (MP3) |
download-audio VIDEO -f m4a | Audio as M4A |
API Quota Costs
| Operation | Quota Cost | Notes |
|---|---|---|
| Transcripts | 0 | Uses youtube-transcript-api |
| Downloads | 0 | Uses yt-dlp |
| Search | 100 | Per request |
| Video details | 1 | Per video |
| Comments | 1 | Per request |
| Channel info | 1-3 | Varies |
Daily free quota: 10,000 units
Pro tip: For research tasks, always start with transcripts ā they're free and contain the most information.
Setup
1. Install dependencies
brew install uv yt-dlp # macOS
# or
pip install uv && pip install yt-dlp # other
2. Get YouTube API credentials
- Go to Google Cloud Console
- Create a project (or select existing)
- Enable "YouTube Data API v3"
- Create OAuth 2.0 Client ID (Desktop app)
- Download JSON ā save as
~/.config/youtube-skill/credentials.json
3. Authenticate
uv run youtube.py auth
Command Aliases
For faster typing:
| Full | Alias |
|---|---|
transcript | tr |
transcript-list | trl |
search | s |
video | v |
comments | c |
channel | ch |
subscriptions | subs |
playlists | pl |
playlist-items | pli |
download | dl |
download-audio | dla |
Comparison with Other Tools
| Feature | YouTube Research Pro | kimtaeyoon83 | kevinwatt/yt-dlp | dannySubsense | kirbah |
|---|---|---|---|---|---|
| Free transcripts | ā | ā | ā | ā | ā |
| Search | ā | ā | ā | ā | ā |
| Filtered search | ā | ā | ā | ā | ā |
| Batch operations | ā | ā | ā | ā | ā |
| Comments | ā | ā | ā | ā | ā |
| Downloads | ā | ā | ā | ā | ā |
| Audio extraction | ā | ā | ā | ā | ā |
| JSON output | ā | ā | ā | ā | ā |
| Multi-language | ā | ā | ā | ā | ā |
| URL + ID support | ā | ā | ā | ā | ā |
Result: No other skill covers all these capabilities in one package.
Use Cases
š Research Assistant
"Summarize the key points from this conference talk" ā Fetch transcript, analyze with LLM, extract insights
š Learning Helper
"Create study notes from this lecture series" ā Batch fetch transcripts from playlist, synthesize content
š° News Monitoring
"What are people saying about [topic] this week?" ā Search recent videos, extract transcripts, analyze trends
šµ Music/Podcast
"Download this interview as audio for my commute" ā Extract audio, convert to MP3
š Competitor Analysis
"How is [channel] performing?" ā Get channel stats, analyze recent videos, track growth
License
MIT ā use it, fork it, improve it.
Built by Oscar Serra for the OpenClaw community.
Permissions & Security
Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.
Requirements
- OpenClaw CLI installed and configured.
- Language: Markdown
- License: MIT
- Topics:
FAQ
How do I install youtube?
Run openclaw add @globalcaos/youtube-ultimate in your terminal. This installs youtube into your OpenClaw Skills catalog.
Does this skill run locally or in the cloud?
OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.
Where can I verify the source code?
The source repository is available at https://github.com/openclaw/skills/tree/main/skills/globalcaos/youtube-ultimate. Review commits and README documentation before installing.
