YouTube MCP Server
One remote URL gives Claude, ChatGPT, Cursor, and any other MCP-compatible client real YouTube access - transcripts, search, channels, and playlists - right inside the conversation.
- ✓100 free credits to start, no credit card required
- ✓One API key works for both the MCP server and the REST API
- ✓Checking a channel's latest uploads is always free
- ✓Works with Claude, ChatGPT, Cursor, VS Code, Windsurf, Cline, and Codex
What is MCP?
The Model Context Protocol lets an AI assistant call tools mid-conversation instead of you copy-pasting data in by hand. This server is hosted - point a client at one URL and it discovers the available tools automatically. Nothing to install or run locally.
Connect it in about a minute
Streamable HTTP. Every client below points at the same URL:
https://getyoutubetranscript.com/api/mcpClaude (Web & Desktop)
Settings -> Connectors -> Add custom connector, then paste the URL below. Claude prompts you to sign in and connect - no key to copy.
https://getyoutubetranscript.com/api/mcpChatGPT
Settings -> Connectors -> Advanced -> Developer mode, add a connector with the URL below, then connect and sign in.
https://getyoutubetranscript.com/api/mcpClaude Code
One command, using an API key from your dashboard:
claude mcp add --transport http getyoutubetranscript https://getyoutubetranscript.com/api/mcp \
--header "Authorization: Bearer sk_live_..."Cursor
Add to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (this project only):
{
"mcpServers": {
"getyoutubetranscript": {
"url": "https://getyoutubetranscript.com/api/mcp",
"headers": {
"Authorization": "Bearer sk_live_..."
}
}
}
}VS Code (Copilot)
Add to .vscode/mcp.json. VS Code prompts for the key once via the input below and stores it securely instead of writing it into the file:
{
"inputs": [
{
"type": "promptString",
"id": "gyt-api-key",
"description": "GetYouTubeTranscript API key",
"password": true
}
],
"servers": {
"getyoutubetranscript": {
"type": "http",
"url": "https://getyoutubetranscript.com/api/mcp",
"headers": {
"Authorization": "Bearer ${input:gyt-api-key}"
}
}
}
}Codex CLI
Add to ~/.codex/config.toml, then export the environment variable it references:
[mcp_servers.getyoutubetranscript]
url = "https://getyoutubetranscript.com/api/mcp"
bearer_token_env_var = "GYT_API_KEY"export GYT_API_KEY="sk_live_..."Windsurf & Cline
Same mcpServers JSON shape as Cursor above, in Windsurf's or Cline's own MCP settings file.
Available tools
| Tool | What it does | Cost |
|---|---|---|
get_youtube_transcript | Full transcript plus title, author, thumbnail | 1 credit |
search_youtube | Search videos or channels, paginated | 1 credit |
get_channel_latest_videos | A channel's metadata and recent uploads | Free |
search_channel_videos | Search within one channel | 1 credit |
list_channel_videos | Every video a channel has uploaded | 1 credit |
list_playlist_videos | Every video in a playlist | 1 credit |
get_credits | Remaining credit balance for the key | Free |
Same tools, same credit costs, as the REST API - see the API docs for the equivalent endpoints.
What it looks like in the conversation
I'll check their channel for the newest upload, then pull its transcript.
get_channel_latest_videos(channel: "@3blue1brown")
get_youtube_transcript(video_url: "...")
Pricing
100 free credits to start. Then $5/mo for 1,000 credits ($4.50/mo billed annually). One credit is one successful tool call - failed and rate-limited calls are never charged. Full breakdown, including rate limits per tier, is in the API docs.
Note
MCP server FAQs
Which MCP clients does this work with?
Any client that speaks Streamable HTTP MCP: Claude (web, desktop, Code), ChatGPT, Cursor, VS Code, Windsurf, Cline, and Codex CLI are covered above. If a client supports a remote HTTP MCP server, it will work here too.
Do I need to install or run anything?
No. The server is hosted at getyoutubetranscript.com - a client just needs the URL (and, for non-OAuth clients, an API key). There's no local process, no yt-dlp, no proxy to manage.
How is this different from an open-source MCP server I run myself?
A self-hosted server runs on your machine or your own server and usually needs you to manage YouTube access (cookies, proxies, rate limits) yourself. This one is hosted: sign-up is self-service, requests run through our infrastructure, and you're billed in credits instead of managing scraping infrastructure.
I got a 401 error - what do I do?
For OAuth clients (Claude, ChatGPT), reconnect the connector from its settings page - the connection likely expired or was revoked. For API-key clients (Cursor, VS Code, Claude Code, Codex), check the key is pasted correctly with no extra whitespace and hasn't been revoked from the dashboard.
My assistant answered from memory instead of calling a tool
Models sometimes assume they already know a video's content. Ask explicitly: "use the YouTube MCP tool to fetch the transcript first" - that's usually enough to force the tool call.
What happens if a video has no captions in the language I asked for?
get_youtube_transcript returns a TRANSCRIPT_NOT_FOUND error rather than a wrong-language guess. Try without a language parameter (defaults to English) or check the video actually has captions in that language on YouTube first.
Does this consume my YouTube Data API quota?
No. It doesn't proxy captions.download with your own key, so there's no 10,000-unit daily ceiling to manage - only the per-plan request rate limit.
Can I use the same API key for MCP and the REST API?
Yes - one key, one credit balance, shared across both. Connecting via OAuth (Claude/ChatGPT connectors) instead of a key still draws from the same account balance; we mint a dedicated key behind the scenes that shows up in your dashboard's key list, so you can see or revoke that connection like any other key.