by tubeagentkit
YouTube transcript Agent Skill for Claude Code, Cursor, Codex and OpenClaw: fetch YouTube video transcripts, search videos, browse channels and playlists.
# Add to your Claude Code skills
git clone https://github.com/tubeagentkit/youtube-transcript-skillsGuides for using ai agents skills like youtube-transcript-skills.
See how youtube-transcript-skills compares with popular alternatives.
youtube-transcript-skills is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by tubeagentkit. YouTube transcript Agent Skill for Claude Code, Cursor, Codex and OpenClaw: fetch YouTube video transcripts, search videos, browse channels and playlists. It has 80 GitHub stars.
youtube-transcript-skills's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/tubeagentkit/youtube-transcript-skills" and add it to your Claude Code skills directory (see the Installation section above).
youtube-transcript-skills is primarily written in Shell. It is open-source under tubeagentkit on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh youtube-transcript-skills against similar tools.
No comments yet. Be the first to share your thoughts!
โ ๏ธ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
See comparison
Get YouTube transcripts, search videos, browse channels, and pull playlists โ from any AI agent, with no dashboard visit required to get started.
An Agent Skill that teaches Claude, Cursor, Antigravity, Windsurf, and any other Agent Skills-compatible tool how to fetch YouTube transcripts, search YouTube (videos or channels), resolve channel handles, browse a channel's full upload history, search inside a channel, and pull playlist contents โ all through the getyoutubetranscript.com public API.
Works with Claude Code, Cursor, Antigravity, Windsurf, Cline, Codex, and 70+ other agent runtimes via skills.sh, and via ClawHub for OpenClaw/ClawdBot/Moltbot.
Metered API: 1 credit per successful request ยท 100 free credits on signup, no card ยท then from $5/month for 1,000 credits ยท Your agent can set it up for you
npx skills add tubeagentkit/youtube-transcript-skills --skill youtube-transcript
ClawHub (OpenClaw/ClawdBot/Moltbot):
npx clawhub@latest install tubeagentkit/youtube-transcript
Manual (git clone):
git clone https://github.com/tubeagentkit/youtube-transcript-skills.git
cp -r youtube-transcript-skills/skills/youtube-transcript ~/.claude/skills/
Not a developer? Paste this into Claude, Cursor, or any AI agent that supports Agent Skills:
Install the youtube-transcript skill from this GitHub repo: https://github.com/tubeagentkit/youtube-transcript-skills I want to get YouTube transcripts, search YouTube, and browse channels from you directly. Set everything up for me, including getting an API key.The agent handles the rest โ including signing you up for a free API key by email, no browser or dashboard visit needed.
Just install and ask. No config, no code โ talk to your agent in plain English.
| Task | Example Prompt |
|---|---|
| Get a transcript | "Summarize this video: [URL]" |
| Find where something is said | "At what point does this video talk about pricing? Link the moment." |
| Search YouTube | "Find videos about machine learning" |
| Find a channel | "Search YouTube for MKBHD's channel" |
| Browse a channel | "What has @veritasium posted recently?" |
| Get a channel's full upload history | "List every video @TED has ever uploaded" |
| Search inside a channel | "Search MKBHD's channel for iPhone reviews" |
| Get playlist contents | "List all videos in this playlist: [URL]" |
| Research a topic | "Find and summarize the top 5 videos about quantum computing" |
| Bulk transcripts | "Get transcripts for every video in this playlist" |
Ask your agent for a transcript with no key configured, and it will:
getyoutubetranscript.com, which creates the account (or signs you in) and emails you a 6-digit code.~/.config/getyoutubetranscript/api_key (readable only by you). The key is never printed in the chat.Can't get the code (no access to that inbox, or it never arrives)? Sign up at getyoutubetranscript.com/dashboard and paste the key to your agent instead.
The key file is the only thing the skill writes. It only touches your shell profile if you ask it to and say yes to the exact line it will add (scripts/save_key.sh --profile). See skills/youtube-transcript/SKILL.md for the exact flow, including the two API calls involved (POST /api/v1/signup, POST /api/v1/signup/verify).
All of these are documented in SKILL.md and wrapped by a bundled script in scripts/. Base URL: https://getyoutubetranscript.com/api/v1.
| Endpoint | Cost | What it does |
|---|---|---|
GET /transcript |
1 credit | Full transcript + title/author/thumbnail for one video, with caption_type (manual/auto) and the language actually returned; add timestamps=true for per-line segments |
GET /transcript/languages |
Free | The caption languages a video offers (manual or auto-generated) and which one a default request returns |
POST /batch + GET /batch |
1 credit per successful video | Up to 100 videos in one call; poll for results (failed videos are never charged) |
GET /search |
1 credit/page | Search YouTube for videos or channels, paginated |
GET /resolve |
Free | Resolve a channel handle/URL/ID to its canonical channel ID |
GET /channel/latest |
Free | Channel metadata + its home tab's "Latest Videos" |
GET /channel/videos |
1 credit/page | Every video a channel has ever uploaded, fully paginated |
GET /channel/search |
1 credit/page | Search within one channel's videos, fully paginated |
GET /playlist |
1 credit/page | Every video in a playlist, fully paginated |
GET /credits |
Free | Remaining credit balance, plan, and rate limit for this key |
| Plan | Price | Credits | Rate Limit |
|---|---|---|---|
| Free | $0 | 100 credits on signup | 60 req/min |
| Monthly | $5/month | 1,000 credits/month | 200 req/min |
| Annual | $4.50/mo ($54/yr) | 1,000 credits/month | 300 req/min |
resolve and channel/latest are always free, regardless of plan.| Symptom | Likely cause | Fix |
|---|---|---|
401 MISSING_API_KEY / INVALID_API_KEY |
No key sent, or it's wrong/revoked | Confirm YOUTUBE_TRANSCRIPT_API_KEY is actually set in your agent's environment, and that it starts with sk_live_ |
402 PAYMENT_REQUIRED |
Out of credits | Top up or upgrade at the dashboard โ don't retry the same call |
404 VIDEO_UNAVAILABLE / TRANSCRIPT_NOT_FOUND / TRANSCRIPT_DISABLED |
Video doesn't exist, is private, or has no captions | Confirm the video plays and shows captions in a real browser first |
404 LANGUAGE_NOT_AVAILABLE |
The video doesn't have a transcript in the language you asked for | Omit language to get whatever's available, or try a different one |
429 RATE_LIMITED |
Too many requests for your plan tier | Back off โ don't hammer it in a retry loop |
503 UPSTREAM_UNAVAILABLE / UPSTREAM_TIMEOUT |
Transient upstream hiccup | Safe to retry once after a short delay |
Two more things worth knowing:
GET /transcript returns the full spoken text as one string. Add timestamps=true to also get data.segments (start, duration, text per caption line, in seconds). Same credit cost, larger response, so your agent only asks for it when you want timestamps, quotes or chapters.Do I need a Google YouTube Data API key? No. This replaces the need for a Google Cloud project, API key, and quota management entirely โ signup here is free and instant.
Which endpoint should I use for a whole channel's videos?
channel/latest if you just want recent uploads (free). channel/videos if you want the complete upload history, paginated.
Can I search inside just one channel, not all of YouTube?
Yes โ channel/search does exactly that, with the same pagination convention as everything else here.
Is there an MCP server version of this too? Yes โ see tubeagentkit/youtube-mcp for direct integration with Claude, ChatGPT, Cursor, and any other MCP-compatible client, including full OAuth 2.1 sign-in (no API key needed at all).
Building an app instead of an agent skill? The exact same backend is a plain JSON REST API โ see SKILL.md for the full endpoint reference, or the dashboard to get a key directly.
getyoutubetranscript.com is an independent product and is not affiliated with or endorsed by YouTube or Google.
Issues and PRs welcome.
Other ways to use the GetYouTubeTranscript API: