A Hosted MCP Server for
YouTube Transcripts

Paste one URL and your API key into Claude, Cursor or VS Code. Your assistant can then pull the transcript for any video, and search across every channel you have VidProxy watching. Nothing to install, and it runs on the free plan.

Eight tools your assistant can call

VidProxy speaks the Model Context Protocol at https://vidproxy.pro/mcp over Streamable HTTP, protocol version 2025-03-26. Point any MCP client at it and eight tools show up in the assistant's tool list.

Five of them read: fetch a transcript, list what your channels posted recently, search your history by keyword, list your channels, check your plan usage. Three write: add a channel, pause one, delete one. The write tools respect the same plan limits as the dashboard, because they run the same code behind it.

Worth knowing: questions about channels you already monitor are answered from stored history, so they are instant and cost nothing. A credit is only spent when the assistant has to go and fetch a transcript VidProxy has never seen.

Two minutes, one config block

The server runs on our side, so setup is a URL and a key rather than a package and a runtime.

1

Copy your API key

It is in Dashboard → Settings. MCP uses the same key as the REST API, so if you already have one working there, you are done with this step. New accounts need to hit Rotate once — keys are hashed at rest, so we cannot show you the original.

2

Add the server to your client

Drop the block below into your MCP client config. Claude Desktop reads ~/.config/claude/claude_desktop_config.json; Cursor keeps it under Settings → MCP. Restart the client and the VidProxy tools appear.

3

Ask it something

Try "what did my channels post in the last 24 hours?" — that is get_recent_videos, and it costs nothing. Transcripts come back as full text, so the assistant can summarise or quote from them directly.

{
  "mcpServers": {
    "vidproxy": {
      "url": "https://vidproxy.pro/mcp",
      "headers": {
        "Authorization": "Bearer tr_live_xxxxxxxxxxxx"
      }
    }
  }
}

What each tool does, and what it costs

Only get_transcript spends anything. Everything that reads your own monitored history is free on every plan, so an assistant can look around your account as much as it likes without touching your credits.

ToolWhat it doesCost
get_transcript Full transcript for any YouTube video, by ID or URL. The video does not have to be one you monitor 1 credit per successful fetch
get_recent_videos Everything your monitored channels published inside a time window (since: "24h", "7d"), transcripts attached Free
search_videos Keyword search across your subscription history. Matches titles and the transcript text itself Free
list_channels Your monitored channels with their latest video. Each row carries the subscription_id the write tools take Free
get_account_status Plan, channels and webhooks used against their limits, credits left and when they reset, rate limit, poll interval Free
add_channel Start monitoring a channel by @handle, URL or UC… ID. Ask for one you already monitor and you get the existing subscription back, not a duplicate. Counts against your plan's channel limit Free
set_channel_active Pause or resume a channel. Paused channels are skipped by the poller but keep every stored video and transcript. A paused channel still holds its slot against the channel limit Free
remove_channel Permanently deletes a channel and every video, transcript and delivery record under it. Off unless you enable destructive tools for the key — see below Free
remove_channel is off by default. Until the account owner enables destructive tools for a key in Dashboard → Settings, the tool is stripped out of the tool list, so your assistant is never told it exists. With the flag on it still needs an explicit confirm. Rotating a key switches the flag back off, which is the right way round — you rotate because the old key might be compromised.

The reason for a dashboard toggle rather than just a confirmation prompt: transcripts are written by the channel owner, not by you. A video whose captions carry instructions aimed at your assistant is a real thing, and the confirm flag is something the model decides to set. A toggle in your account is the part of that gate no text your assistant reads can flip. Deletion cascades and we keep no per-account backup, so it is worth the extra click.

There are free open-source alternatives. Here is when they win.

Search npm or GitHub for a YouTube transcript MCP server and you will find several good ones — kimtaeyoon83/mcp-server-youtube-transcript, jkawamoto/mcp-youtube-transcript, and projects from hancengiz and ergut among them. They install in a minute, they cost nothing, and for grabbing the transcript of a video someone just sent you, they do the job. If that is your whole use case, use one of those. We would rather say so than pretend otherwise.

What they have in common is where they stop.

They fetch from your IP

A local server asks YouTube for captions from wherever it happens to be running, and YouTube blocks addresses it does not like — data-centre ranges especially. Nothing in the package can do anything about that. VidProxy fetches through a residential proxy, with two more tiers behind it if that one fails. Getting past those blocks is what the service was built for.

They only look things up

Every one of them takes a video and returns its transcript. None of them watch a channel, so none can answer "what did these twelve channels publish this week" or "which of my channels mentioned pricing changes". VidProxy keeps that history for you, and search_videos runs over the transcript text, not just titles.

They install per machine

A local server means Node or Python on that box, a config entry on that box, and doing it again on your laptop, your desktop and anywhere else. It also rules out Claude on your phone and Claude on the web, which cannot run a local process at all. VidProxy is one URL and one key, the same everywhere.

Capability Open-source transcript MCP servers VidProxy MCP
Getting a transcript
Transcript by video ID or URL Core feature get_transcript
Survives a YouTube IP block Your address, your problem Residential proxy, plus two fallback tiers
Price per transcript Free, unmetered 1 credit 10/mo free, 2,500 on Pro
Working across channels
Monitors channels for new uploads Polled, with stored history
"What did my channels post this week?" get_recent_videos, free
Full-text search over past transcripts search_videos, free
Assistant can add or pause channels Same plan limits as the dashboard
Running it
Install per machine Node or Python on every box Nothing to install
Works on Claude mobile and web Local process only Remote server over HTTP
You control the code Fork it, patch it, audit it Hosted service
Destructive actions gated outside the model n/a Nothing to destroy Per-key toggle you set in the dashboard

Things worth asking once it is connected

Each of these maps to one or two tool calls. The assistant works out which.

The morning catch-up

"Summarise everything my channels posted in the last 24 hours, grouped by topic." One get_recent_videos call, transcripts included, no credits spent.

Finding the quote you half-remember

"Search my channels for anything mentioning interest rates this month and give me the exact wording." search_videos reads the transcript body, so it finds things no title contains.

A video someone sent you

"Pull the transcript for this link and tell me if it says anything about the pricing change." get_transcript takes the bare URL and spends one credit.

Tidying the watchlist

"Which channels haven't posted in 60 days? Pause those." list_channels then set_channel_active. Paused channels keep their stored transcripts.

Checking the meter

"How many transcript credits do I have left, and when do they reset?" get_account_status answers without spending one, which is the point of it being free.

Adding a channel mid-conversation

"Start monitoring @Bloomberg, tag it finance." add_channel takes a handle, a URL or a UC… ID, and hands back the existing subscription if you already had it.

Common questions

Do I need a paid plan to use the MCP server?
No. MCP is on every plan, free included. A free account monitors 1 channel and gets 10 on-demand transcript credits a month, which is enough to find out whether this fits how you work. The tools that read your own monitored history cost nothing on any plan.
Does it work with Claude mobile and Claude on the web?
Yes. It is a remote server over Streamable HTTP at https://vidproxy.pro/mcp, not a local process, so any client that accepts a remote MCP URL reaches it — Claude Desktop, Claude mobile and web, Cursor, VS Code. Same URL, same key, no per-machine setup.
Is the MCP key different from my REST API key?
It is the same key, from Dashboard → Settings. Rate limiting is shared too: MCP and REST draw from one bucket keyed on the API key, 60 requests a minute on free and Starter and 300 on Pro and Agency. Keys are stored hashed, so a brand-new account has to hit Rotate once to see a usable one.
What happens if I ask it to add a channel I already monitor?
You get the existing subscription back rather than a second copy of it. add_channel treats @Bloomberg, youtube.com/@Bloomberg and the bare UC… ID as the same channel, and a unique constraint in the database catches anything the matching misses. Two subscriptions to one channel would mean every new video delivered twice, so this one is worth being strict about.
Can the assistant set up webhooks for me?
No, and that is deliberate. A webhook is an outbound POST from our servers to an address someone chose, so it stays behind your logged-in session in the dashboard rather than behind an API key. MCP clients read with get_recent_videos anyway, so there is little reason to hand that surface to a tool call.
Should I use this or one of the free open-source servers?
If you want to paste a link and read a transcript, install a free one. They work. Come here when the local fetch starts failing on YouTube's blocks, when you want questions answered across a set of channels rather than one video, or when you need the same tools on your phone as on your laptop.

Connect VidProxy to your assistant

Free tier includes the full MCP server, 1 monitored channel and 10 transcript credits a month.

No credit card · Free tier forever