youtube
Skill13 starsChanged 52 days agoMITView on GitHub
YouTube transcripts, video and channel search, channel browsing and playlist extraction via the bundled TranscriptAPI MCP server. Use when YouTube is or could be relevant: pasted video, channel or playlist links, video IDs, @handles, requests to summarize, quote, transcribe, translate or fact-check a video, research a topic through video, or browse what a creator has posted. Not for uploads, comments or account management.
36 other projects use a version of this, 2 of them edited.
Adopted by
Most recently taken up by
- DmacMcgreg/psibottheir own version, first seen Nov 8, 2026
- pietz/skillstheir own version, first seen Nov 8, 2026
- tubeagentkit/youtube-mcpedited, first seen Oct 27, 2026
- dcbruck/claude-skillstheir own version, first seen Oct 20, 2026
- manifoldmcp/marketing-skillstheir own version, first seen Oct 17, 2026
- oakreader/oakreadertheir own version, first seen Oct 16, 2026
Used with
Projects with it also use tiktok, linkedin and 2 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
G-HunterAiSkilltiktok
TikTok platform integration. Manage videos, view analytics, and track engagement.
Also in 5 projects that use this
kkoppenhaverSkilllinkedin
Write LinkedIn posts in Keanan's voice. Use when drafting LinkedIn content, creating professional posts, or sharing builder-focused insights. Triggers include requests to "write a LinkedIn post", "draft something for LinkedIn", "help me post on LinkedIn", or any LinkedIn content creation. Generates upbeat, builder-centric content mixing practical how-tos with candid humor.
Also in 3 projects that use this
OpenAISkillemail
Email sending integration guidance — Resend (native Vercel Marketplace) with React Email templates. Covers API setup, transactional emails, domain verification, and template patterns. Use when sending emails from a Vercel-deployed application.
Also in 3 projects that use this
SentrySkillskill-creator
Create new agent skills following the Agent Skills specification. Use when asked to "create a skill", "add a new skill", "write a skill", "make a skill", "build a skill", or scaffold a new skill with SKILL.md. Guides through requirements, writing, registration, and verification.
Also in 4 projects that use this
Other versions36 projects use a version of this.
Word for word · 0
None found.
Edited · 2
- tubeagentkit/youtube-mcp★ 2417% same
- ZeroPointRepo/transcriptapi-plugin★ 214% same
Wrote their own version · 34
- eat-pray-ai/yutu★ 716same name
- sigcli/sigcli★ 293same name
- refly-ai/refly-skills★ 204same name
- hyperfx-ai/marketing-skills★ 112same name
- adityaarsharma/youtube-marketing-skills★ 58same name
- oakreader/oakreader★ 46same name
- ericmjl/skills★ 41same name
- tuan3w/obsidian-vault-agent★ 39same name
- s-choung/Research-Skills★ 36same name
- analystacademy/claude-skills★ 35same name
24 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
The file
We split this skill into the rules it gives an agent
5 rules. 0 are common, 2 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 28 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 47
Use format="json" only when you need to cite or seek to exact timestamps.
- Distinctive: line 62
Search returns metadata only.
- Very specific: line 70
Prefer it over list_channel_videos when recent uploads are enough, and use it freely to check what a creator posted.
- Very specific: line 80
Every item carries members_only, true only when YouTube badges it "Members only", and those items have no viewCountText.
- Distinctive: line 101
Search first, then transcribe only the videos you actually need.
“Common” is measured: kept by at least 6 in 10 of the 28 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
YouTube (TranscriptAPI)
This plugin bundles the hosted transcriptapi MCP server (https://transcriptapi.com/mcp). Its 12 tools are the only data path: never scrape youtube.com and never call the REST API directly from this skill.
Authentication is automatic. The MCP server uses OAuth: the first tool call prompts the user to sign in (or create a free account, 100 credits, no card). There is no API key to configure. If tools fail with an auth error, tell the user to complete the sign-in prompt in their client, or re-enable the transcriptapi MCP server in settings.
When to use
DO use when the user:
- Pastes a YouTube link or 11-character video ID, or asks to summarize, quote, transcribe, translate or fact-check a video →
get_youtube_transcript - Asks what a video says, or wants the spoken content, even without saying "transcript" →
get_youtube_transcript - Wants to know what transcript languages are available before spending a credit →
get_youtube_video_info(free) - Wants view/like counts, publish date, description, duration, tags, or related videos for a video →
get_video_metadata - Wants to find videos, channels, playlists, or movies on a topic →
search_youtube - Wants a channel's profile (subscriber count, description, tabs, etc.) →
get_channel_info - Names a creator, pastes an
@handleor channel URL, or asks what a channel posted recently →get_channel_latest_videos(free) - Wants to search within a channel →
search_channel_videos - Wants a channel's full upload history, Shorts, or live streams →
list_channel_videos - Wants the list of playlists on a channel →
list_channel_playlists - Wants a channel's community posts →
list_channel_posts - Wants a channel's curated Home/podcasts/releases shelves →
get_channel_sections - Pastes a playlist link, or wants every video in a series or course →
list_playlist_videos - Is researching a topic where talks, lectures, tutorials or reviews are good sources →
search_youtube, then transcripts of the best hits
Do NOT use when:
- A YouTube link appears incidentally (an email signature, an unrelated citation)
- The user is discussing YouTube as a platform rather than asking about specific content
- The user wants to upload, comment, or manage an account: this plugin is read-only
Tools (exact MCP surface)
get_youtube_transcript: 1 credit
video_url(string, required): full URL (youtube.com/watch?v=ID), short URL (youtu.be/ID), shorts URL, or a bare 11-character video ID.format(string, default"text"):"text"for markdown,"json"for per-segment objects withstartandduration.include_timestamp(boolean, defaulttrue),send_metadata(boolean, defaulttrue): metadata adds title, author and thumbnail.- Use
format="json"only when you need to cite or seek to exact timestamps;"text"is cheaper to reason over.
get_youtube_video_info: FREE
video_url(string, required): full URL, short URL, or 11-character video ID.- Returns basic metadata (title, author, thumbnail) plus available transcript languages. Call this before
get_youtube_transcriptto pick a language. - For counts, publish date, description, duration, tags, or related videos, use
get_video_metadatainstead.
get_video_metadata: 1 credit
video_url(string, required);include(string array, optional):"details"(duration, category, tags, caption tracks) and/or"related"(related videos).- Rich metadata without needing captions: view/like-count text, publish date, structured description, channel summary, thumbnails.
search_youtube: 1 credit per page
query(string, required on first call),search_type(string, default"video"):"video","channel","playlist", or"movie"(first call only).sort(string, default"relevance"):"relevance"or"views".upload_date(string, optional, videos only):hour,today,week,month,year.duration(string, optional, videos only):short,medium,long.continuation(string, optional): token from a prior call for the next page. Filters apply to the first call only.- Search returns metadata only. Pick the best results, then pull transcripts for those. Don't transcribe everything.
get_channel_info: 1 credit
channel(string, required):@handle, channel URL, orUC…channel ID.- Returns the channel's profile (title, handle, verified flag, counts, description, tags, tabs). Check the returned tabs before calling
get_channel_sectionsorlist_channel_videoswith atab.
get_channel_latest_videos: FREE
channel(string, required):@handle, channel URL, orUC…channel ID. No need to resolve a handle first.- Prefer it over
list_channel_videoswhen recent uploads are enough, and use it freely to check what a creator posted.
search_channel_videos: 1 credit
channel(string, required),query(string, required),continuation(string, optional).- Much better than fetching a whole channel and filtering yourself.
list_channel_videos: 1 credit per page
channel(string, required on first call),tab(string, default"videos"):videos(uploads),shorts, orstreams.sort(string, optional):latest,popular, oroldest. Repeat the sametabANDsortwhen paginating.continuation(string, optional).- Paginated full upload history. Use only when the user genuinely wants the whole catalogue.
- Sorting. Add sort=latest, popular, or oldest to channel/videos to get a channel's videos in the order you want, for example its most-popular uploads first. A sorted page returns about 30 videos (an unsorted page returns about 100), and every page costs the same 1 credit. Sorted results come from YouTube's Videos tab (long-form only); Shorts have their own tab=shorts feed. When paging, send the same sort on each request.
- Every item carries
members_only,trueonly when YouTube badges it "Members only", and those items have noviewCountText.tab: "streams"items carrylengthTextandpublishedTimeText;tab: "shorts"returnsnullfor both.
list_channel_playlists: 1 credit per page
channel(string, required on first call),continuation(string, optional).- Returns a channel's playlists (id, title, URL, video-count text). Pass an id to
list_playlist_videosto get its videos.
list_channel_posts: 1 credit per page
channel(string, required on first call),continuation(string, optional).- Returns community (Posts tab) content. Channels without a community tab return an empty list, not an error.
get_channel_sections: 1 credit
channel(string, required),tab(string, default"featured"):featured(Home),podcasts, orreleases.- Curated, grouped shelves in the channel's own order.
podcasts/releasesreturn empty results on channels that don't have them.
list_playlist_videos: 1 credit per page
playlist(string, required on first call): playlist URL or ID.continuation(string, optional).
Credit hygiene
get_channel_latest_videosis free: reach for it first when checking a channel.- Successful calls cost 1 credit unless a tool states otherwise below. Failed and rate-limited calls do not consume credits.
- Search first, then transcribe only the videos you actually need. Transcribing a page of search results is the most common way to waste credits.
- Paginate with
continuationonly while the user still needs more.
Trademark
TranscriptAPI is an independent service and is not affiliated with, endorsed by, or sponsored by YouTube or Google LLC. "YouTube" is a trademark of Google LLC.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

