YouTube tools
Read YouTube channels, videos, comments and transcripts from Claude, ChatGPT or Cursor: each tool's parameters, what it returns and what it costs.
Read public YouTube channels, videos and comments, and the transcripts of videos. To research a topic, search with youtube_search_videos, then read the transcripts of the videos worth watching with youtube_get_transcript. To follow a channel, get it with youtube_get_channel, then its videos with youtube_get_videos.
Each call costs what the data provider charges for it, and each tool below gives its cost. If YouTube has no way to answer a question, there is no tool for it.
For a comparison of YouTube MCP servers, from open-source ones to hosted ones, see the best YouTube MCP servers.
To connect these tools to your agent, see the YouTube MCP page.
| Tool | What it does | Cost |
|---|---|---|
youtube_get_channel | Get a YouTube channel | From 1 credit |
youtube_get_videos | Get a channel's videos | From 1 credit |
youtube_get_video | Get a YouTube video | From 1 credit |
youtube_get_comments | Get a video's comments | From 1 credit |
youtube_search_videos | Search YouTube videos | From 1 credit |
youtube_get_transcript | Get a video's transcript | From 1 credit |
Get a YouTube channel
youtube_get_channelOne YouTube channel: subscribers, total views and when it joined.
Sizing a channel before a sponsorship, checking a handle, reading a channel description.
- Its videos, use
youtube_get_videos. - Videos by topic, use
youtube_search_videos.
One record. The channel's handle, name, bio, verified, followers (the subscriber count), posts_count, views, links (the channel's links), website (the first link that is not a profile on another platform), email (where the channel publishes one) and topics (its keywords), with other profile fields where YouTube fills them. null or empty = the platform does not publish it. kind is channel.
1 credit. Cached 24 hours.
Parameters
| Parameter | Default and notes |
|---|---|
handle | The account's handle, with or without the @. |
It also takes the common parameters max_credits and dry_run.
{
"handle": "@ThePatMcAfeeShow"
}Get a channel's videos
youtube_get_videosThe videos on one YouTube channel, newest or most viewed first.
"what does this channel publish", judging cadence and view counts before a sponsorship.
- One video in full, use
youtube_get_video. - What is said in it, use
youtube_get_transcript.
A list. Each row has videos with author and author_followers, created_at, text (cut at 2000 characters), likes, comments, shares, saves, views, media, duration_s, links, transcript and top_comments[]. null or empty = the platform does not publish it. A listing carries views and length; likes and comments come with youtube_get_video.
1 credit per page. Cached 6 hours.
Parameters
| Parameter | Default and notes |
|---|---|
handle | The account's handle, with or without the @. |
sort | One of latest, popular. Newest first, or most viewed first. Default latest. |
It also takes the common parameters cursor, max_credits and dry_run.
{
"handle": "@ThePatMcAfeeShow",
"sort": "popular"
}Get a YouTube video
youtube_get_videoOne YouTube video with its views, likes, comments and length.
A row is worth the detail, or you have a URL and nothing else.
- What is said in it, use
youtube_get_transcript. - The comments, use
youtube_get_comments.
One record with Each row has the one video, with author and author_followers, created_at, text (cut at 2000 characters), likes, comments, shares, saves, views, media, duration_s, links, transcript and top_comments[]. links are the links in the description, sponsors' and affiliates' included; collaborators are co-creators. null or empty = the platform does not publish it.
1 credit. Cached 6 hours.
Parameters
| Parameter | Default and notes |
|---|---|
url | Required. The full URL of a YouTube video. |
It also takes the common parameters max_credits and dry_run.
{
"url": "https://www.youtube.com/watch?v=5EWaxmWgQMI"
}Get a video's comments
youtube_get_commentsThe comments on one YouTube video, most liked first.
Reading what an audience said, finding the objections under a review or a tutorial.
- The video itself, use
youtube_get_video. - What is said in it, use
youtube_get_transcript.
A list. Each row has one comment each: author, created_at, text (cut at 2000 characters), likes, replies, is_creator (true when the channel itself replied), and parent_id and depth (the reply level) for a reply. created_at is approximate: the platform shows an age such as "3 weeks ago", so it is exact only to that unit.
1 credit per page. Cached 6 hours.
Parameters
| Parameter | Default and notes |
|---|---|
url | Required. The full URL of a YouTube video. |
It also takes the common parameters cursor, max_credits and dry_run.
{
"url": "https://www.youtube.com/watch?v=5EWaxmWgQMI"
}Search YouTube videos
youtube_search_videosYouTube videos matching a keyword, ranked by YouTube's own search.
"what videos cover X", finding review and tutorial coverage of a product or a competitor.
- One channel's own videos, use
youtube_get_videos. - Text pages about X, use
seo_get_serp.
A list, ranked. Each row has videos with author and author_followers, created_at, text (cut at 2000 characters), likes, comments, shares, saves, views, media, duration_s, links, transcript and top_comments[]. null or empty = the platform does not publish it. created_at is approximate: the platform shows an age such as "3 weeks ago", so it is exact only to that unit.
1 credit per page. Cached 6 hours.
Parameters
| Parameter | Default and notes |
|---|---|
query | Required. What to search YouTube for. |
since | One of day, week, month, year, all. How far back to search. Default month. |
sort | One of relevance, latest, popular. Ranking of the results. Default relevance. YouTube has no newest-first search, so latest runs as relevance; narrow with since. |
It also takes the common parameters cursor, max_credits and dry_run.
{
"query": "best crm for agencies",
"since": "year"
}Get a video's transcript
youtube_get_transcriptThe transcript of one YouTube video, as text.
Reading a video instead of watching it, pulling claims, chapters or quotes out of long content.
- The video's numbers, use
youtube_get_video. - The comments, use
youtube_get_comments.
One record with platform, url, language, text (the full transcript, uncut). NoData when the video has no captions.
1 credit. Cached 30 days.
Parameters
| Parameter | Default and notes |
|---|---|
url | Required. The full URL of a YouTube video. |
language | Language code of the transcript to prefer, when the platform has several. |
It also takes the common parameters max_credits and dry_run.
{
"url": "https://www.youtube.com/watch?v=5EWaxmWgQMI"
}