Skip to content

YouTube MCP: Video, Channel and Comment Data for Claude, ChatGPT and Cursor

A YouTube MCP server lets your AI agent read public videos, channels, captions and comments right in the chat. Connect Scrape.ly's hosted server to Claude, ChatGPT or Cursor without a YouTube Data API key or quota, and see the exact tool calls, real output and costs.

Published
Reading time
9 min read
Pixel-art robot with an orange >_ on its terminal head carries a cable from a monitor showing the red YouTube logo above a video thumbnail and its title into a server rack labelled MCP
In this article
  1. Two kinds of YouTube MCP server
  2. How to connect the Scrape.ly MCP server
  3. The YouTube scrapers your agent can use
  4. What the agent does: the four tool calls
  5. A real run: NASA's five newest videos
  6. A real run: comments, and what happens when they're off
  7. Prompts that work well
  8. What your agent can and can't get from YouTube
  9. Spending control for agents
  10. FAQ
  11. Is there an MCP for YouTube?
  12. What is the YouTube MCP server URL?
  13. Can Claude watch YouTube videos?
  14. Can I get YouTube transcripts with MCP?
  15. Do I need a YouTube Data API key?
  16. Is there a free YouTube MCP server?

A YouTube MCP server is a Model Context Protocol server that gives an AI agent such as Claude, ChatGPT or Cursor tools for YouTube data: video titles, views and likes, channel stats, caption tracks and comments. The best YouTube MCP setup for research is the hosted Scrape.ly MCP server, because your agent runs ready-made YouTube scrapers in the cloud against public pages, for any channel, with no YouTube Data API key, no Google Cloud project and no daily quota to plan around.

This guide covers the setup for each client, the two YouTube Actors your agent uses, the tool calls it makes, and what came back from real runs: NASA's five newest videos in 6.7 seconds for two cents, a comments request that taught the agent something about NASA, and five top comments from a NASA JPL video.

Two kinds of YouTube MCP server

Most of page one for "youtube mcp" is servers that wrap the official YouTube Data API. The top result on 26 October 2026, ZubeidHendricks/youtube-mcp-server, exposes 10 tools for videos, transcripts, channels and playlists, and needs a YouTube Data API key in YOUTUBE_API_KEY. It accepts up to three keys, and its README explains why: "When a request fails because a key has exhausted its quota, the server retries the same request with the next configured key."

That quota is the catch. Google's YouTube Data API overview says you need a Google Account, a Cloud project and an API key, and that a project's default allocation is "100 search.list calls" per day, plus 10,000 units a day for the other endpoints. An agent comparing ten creators burns through that in an afternoon.

The rest of page one connects your own channel (Composio's toolkit lets agents "list your most recent uploaded videos, get subscriber count for your channel") or publishes to it (Blotato calls its server one "that publishes, not scrapes"). Those are tools for an account you own. Research questions are usually about channels you don't own.

Scrape.ly MCP server YouTube Data API servers Account connectors
What you need A Scrape.ly account Google Cloud project and API key Your YouTube account
Daily limit None; you pay per result 100 searches a day by default Depends on the connector
Whose data Any public video, channel, playlist, hashtag or search Public data within quota Mostly your own channel
Comments Yes, with likes, reply counts and creator hearts Depends on the server Depends on the connector
Where it runs Hosted at https://mcp.scrape.ly Usually on your machine Hosted
Cost control Pay per result, a dollar cap per run, scoped keys Quota units The vendor's plan

How to connect the Scrape.ly MCP server

The Scrape.ly MCP server is hosted at https://mcp.scrape.ly, speaks MCP's streamable HTTP transport and signs you in with OAuth or a Scrape.ly API token. Create a free account first; the free plan includes $5 of usage every month, no card needed.

Claude Code. One command, then /mcp inside Claude Code to sign in:

shell
claude mcp add --transport http scrapely https://mcp.scrape.ly

Claude Desktop and claude.ai. Add https://mcp.scrape.ly as a custom connector under Customize → Connectors and sign in with OAuth. Our Claude MCP guide has the click-by-click steps.

Cursor. Add this to ~/.cursor/mcp.json, or leave out headers to sign in with OAuth:

json
{
  "mcpServers": {
    "scrapely": {
      "url": "https://mcp.scrape.ly",
      "headers": { "Authorization": "Bearer YOUR_TOKEN" }
    }
  }
}

ChatGPT, VS Code, Windsurf and others. Use the same URL with OAuth or a Bearer header; the MCP docs list each format.

A YouTube-only server. To give the agent exactly the two YouTube tools, put them in the URL:

Text
https://mcp.scrape.ly?actors=echofield/youtube-scraper,echofield/youtube-comments-scraper

The YouTube scrapers your agent can use

Actor Input What comes back Price per 1,000
YouTube Scraper Search terms, or video, channel, playlist, hashtag and search URLs Title, views, likes, upload date, duration, description, tags, chapters, channel name and subscribers, caption tracks; regular videos, Shorts and streams $3.95 results
YouTube Comments Scraper Video URLs (watch, youtu.be, Shorts, live) Comment text, author, likes, reply count, creator heart, channel-owner flag, the video's title and total comment count $1.44 comments

Both are pay per result with platform usage included, as listed on their Store pages on 26 October 2026. The YouTube Scraper adds $0.00106 per result when you use its date filter; subtitles cost nothing extra. Inputs that give no videos, like a channel that doesn't exist, are listed in the run's output record and never charged.

What the agent does: the four tool calls

  1. search-actors with "youtube" finds the Actors above.
  2. fetch-actor-details returns the input schema, README and price, so the agent knows that a channel goes in startUrls and the cap goes in maxResults.
  3. call-actor starts the run and waits up to 45 seconds. Both runs below finished well inside that.
  4. get-actor-output reads the results, with just the fields the agent asks for.

The rows never land in the call-actor reply, so a 500-video channel export doesn't flood the context window.

A real run: NASA's five newest videos

The prompt: "Use scrapely to get NASA's five newest YouTube videos with views, likes and length, and tell me which one is pulling the most engagement."

The agent sends echofield/youtube-scraper the shape of the Store's channel URL preset, sorted newest first, with a cap:

json
{
  "actor": "echofield/youtube-scraper",
  "input": {
    "startUrls": [{ "url": "https://www.youtube.com/@NASA" }],
    "maxResults": 5,
    "sortVideosBy": "NEWEST"
  },
  "waitSecs": 45,
  "callOptions": { "maxTotalChargeUsd": 0.05 }
}

Our run on 26 October 2026 took 6.7 seconds and ended with "Saved 5 results." The agent read the fields it needed:

json
{
  "runId": "0dc1791386a84a68a",
  "fields": "title,date,duration,viewCount,likes,channelName,numberOfSubscribers,isChannelVerified"
}

What came back (both Moon Base titles start with "NASA" on YouTube; we dropped the prefix to keep the table narrow):

Published Title Length Views Likes Likes per view
2026-10-20 Moon Base: Rovers and Lunar Terrain Vehicles (October 2026 Update) 9:17 897,380 10,850 1.21%
2026-10-14 Planetary Defenders: This Is Not an Exercise 20:15 650,424 11,467 1.76%
2026-09-30 NASA's SpaceX Crew-13 Mission (Official NASA Trailer) 1:02 105,472 1,302 1.23%
2026-09-08 Moon Base: The First Six Months 1:07 527,737 9,090 1.72%
2026-09-04 What It Takes 2:32 328,525 8,300 2.53%

The Moon Base update led on reach with almost 900,000 views in six days, while "What It Takes" had the most engaged audience at 2.53% likes per view. Every row also carried the channel header: NASA is verified, has 15.1 million subscribers, 6,194 videos and 1.13 billion total views, and joined YouTube on June 3, 2008. Each video listed its caption tracks too, an English track plus more than 20 auto-generated languages, which the agent can download by adding "transcriptionAndSubtitle": "ALWAYS_SUBTITLES".

Cost: 5 × $0.00395 = $0.01975 at list price, platform usage included. Our account was billed $0.0158 after its plan's Store discount.

A real run: comments, and what happens when they're off

The follow-up prompt: "Now get the five top comments on the Moon Base update."

The agent sent echofield/youtube-comments-scraper the video URL, "maxComments": 5 and "sortCommentsBy": "TOP_COMMENTS". Six seconds later the run came back with no rows and this status:

Text
No results: none of the 1 video link(s) could be read. 1 video link(s) failed, e.g. https://www.youtube.com/watch?v=Zezt6EsG9WE: This video has comments turned off or has no comments. (see failedInputs in OUTPUT).

NASA had comments turned off on that video. The Actor said so in plain words, listed the URL under failedInputs, and charged nothing: the run cost $0. A good agent reports that back instead of guessing.

For a video with comments on, here's a run we did on 22 October 2026 for the top five comments on NASA JPL's "NASA's SkyFall Mars Helicopters" video, which had 446 comments in total. Commenters are private people, so they're shown as [commenter 1] to [commenter 5]:

Commenter Comment Likes Replies
[commenter 1] Nice JPL! Ingenuity lives on in blueprint! 252 0
[commenter 2] We announcing Space Missions like movie trailers now. Can't say I'm complaining. 238 7
[commenter 3] Ingenuity brothers and sisters are here!! 155 1
[commenter 4] Woah, this is the Space Week as well. 58 0
[commenter 5] Now we need the government to give NASA a bigger budget and we will be set 40 3

That run took 5 seconds. At today's list price, five comments cost 5 × $0.00144 = $0.0072. Our guide on scraping YouTube comments covers sorting, date filters and exports.

Prompts that work well

Name the Actor, the size of the job and a cap, and the agent handles the rest:

  • "Use scrapely to search YouTube for 'home espresso review' uploaded this month, 20 videos, and rank the channels by total views."
  • "Get the 10 most popular videos on the @veritasium channel with echofield/youtube-scraper and list their length and likes per view."
  • "Download the English captions of this video as plain text and summarize the main argument."
  • "Pull the 100 newest comments on this video and group them into questions, complaints and praise."
  • "Do all of this with a maximum charge of $0.25 per run."

The agent turns the last line into callOptions.maxTotalChargeUsd.

What your agent can and can't get from YouTube

These Actors read what YouTube shows any logged-out visitor. That covers most research, and the edges are worth knowing:

  • Captions, not speech-to-text. The YouTube Scraper downloads caption tracks that already exist, manual or auto-generated, in SRT, VTT, XML or plain text. It doesn't transcribe audio itself, so a video with no captions has no transcript.
  • Comment counts and comment text come from different Actors. The YouTube Scraper returns the comment count on a video's page; the bodies come from the Comments Scraper. In our channel run the listing rows didn't carry a comment count, so ask for it from the video URLs when it matters.
  • Top-level comments. The Comments Scraper returns top-level comments with a replyCount; reply threads aren't expanded, and publish times are relative ("2 weeks ago").
  • Comments turned off, age restrictions, missing channels. All three come back as a named reason in failedInputs (NO_COMMENTS, AGE_RESTRICTED, CHANNEL_DOES_NOT_EXIST) and cost nothing.
  • Public data only. Watch time, revenue and the rest of a channel's analytics are visible only to its owner, so they aren't in the output.
  • Commenters are people. Treat comment data as personal data under the GDPR, CCPA and similar laws: collect what the task needs and keep it short-term. This isn't legal advice.

Spending control for agents

  • A dollar cap per run. maxTotalChargeUsd caps everything a run can cost, and the YouTube Actors stop cleanly at the cap.
  • Scoped API keys with daily charge limits. Give an unattended agent its own key under Settings → API keys with only actors:run and runs:read.
  • A prepaid balance. Usage draws from your balance. No surprise invoice.

For a REST endpoint instead of a chat, the YouTube API page has Python, JavaScript and cURL examples, and the YouTube scraping guide walks through every input without an agent. The same server works for other sites: see Google Maps MCP and the best MCP servers for web scraping.

FAQ

Is there an MCP for YouTube?

Yes, several. Most wrap the YouTube Data API and need your own API key and quota; others connect or publish to your own channel. The Scrape.ly MCP server runs YouTube scrapers in the cloud that read any public video, channel or comment section, with no API key.

What is the YouTube MCP server URL?

For Scrape.ly it's https://mcp.scrape.ly, the same for Claude, ChatGPT, Cursor and every other client. Add ?actors=echofield/youtube-scraper,echofield/youtube-comments-scraper to expose only the YouTube tools.

Can Claude watch YouTube videos?

Not the video itself. Through MCP, Claude reads everything around it: title, description, views, likes, chapters, caption tracks and comments. With the captions downloaded, Claude can summarize or quote what was said in the video.

Can I get YouTube transcripts with MCP?

Yes, when the video has captions. Set transcriptionAndSubtitle to ALWAYS_SUBTITLES on the YouTube Scraper and pick a language and format; caption downloads cost no extra event.

Do I need a YouTube Data API key?

No. The Scrape.ly Actors read public YouTube pages, so there's no Google Cloud project, API key or 100-searches-a-day quota. You only need a Scrape.ly account.

Is there a free YouTube MCP server?

The Scrape.ly server costs nothing to connect, and the free plan's $5 of monthly usage covers about 1,265 videos at $3.95 per 1,000. Our five-video NASA run cost under two cents.

  • youtube mcp
  • youtube mcp server
  • mcp
  • ai agents
  • claude
  • chatgpt
  • youtube

About the author

The team behind Scrape.ly

Scrape.ly is the web data platform from TeraShift GmbH in Switzerland, powered by Evomi: ready-made scrapers in the Scrape.ly Store, a cloud runtime, an API with JavaScript and Python SDKs, proxies, a hosted anti-bot browser and an MCP server for AI agents.

//Keep reading\\

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes.

No credit card. No setup calls.