A year ago, "download this video" was something you did in a separate browser tab. In 2026 that is no longer true. The Model Context Protocol lets assistants like Claude, Cursor, and Perplexity call external tools mid-conversation — and a small number of those tools can fetch a video or audio file for you directly. This guide is an honest map of that landscape: which MCP servers actually do video and audio downloads today, what each one requires, and how to set up the one that fits how you work.
Want the hosted option? TubePull's MCP server is a remote connector — one URL, no local install — listed in the official MCP registry as io.github.miketwalker/tubepull (v1.2.2). The rest of this article puts it in context against the local alternatives so you can choose deliberately.
What MCP is, in one paragraph
MCP is an open standard from Anthropic that defines how an AI assistant discovers and calls external tools. Think of it like a USB port for AI: any service that exposes an MCP endpoint can be plugged into any MCP-compatible client, giving it new abilities — in this case, a download_video tool. You add a server once, and the assistant can call it when your request matches. Two transport styles matter here: local stdio servers, which run as a process on your own machine, and remote HTTP servers, which the client reaches over the internet. That distinction is the single biggest factor in choosing a video-download MCP. For the protocol itself, the TubePull MCP overview links to the full specification.
The shortlist: MCP servers that actually download video (June 2026)
Almost all of this category is local. The overwhelming majority of "video downloader" MCP servers are open-source GitHub or PyPI projects that wrap yt-dlp and run locally over stdio. There is currently exactly one widely-listed hosted, remote option.
kevinwatt/yt-dlp-mcp is the most-used YouTube downloader MCP by search volume. It wraps yt-dlp in a local stdio server and exposes download, metadata, and transcript tools. Setup requires Node.js, a working yt-dlp install, and — for cookie-gated content — extra tooling. It connects to clients that can launch a local process, primarily Claude Desktop and Cursor.
yorickchan/mcp_youtube_dlp is a comparable project providing tools for downloading YouTube video and audio through yt-dlp. Same fundamental shape: a local server you install and run, suited to a machine where you already have a Python or Node toolchain.
anaisbetts/mcp-youtube is narrower — it pulls YouTube subtitles into claude.ai via MCP rather than downloading full media. If captions or transcripts are what you need, it is worth a look, but it is not a general video downloader.
JoseTapiaUex/MCP-download is a Python collection of yt-dlp tools including an MCP server. Like the others, a local install aimed at developers comfortable managing dependencies.
TubePull is the outlier: a hosted, remote streamable-HTTP server. It is the one entry on this list you do not install. Published in the official MCP registry as io.github.miketwalker/tubepull, currently at v1.2.2, with a remote endpoint at https://tubepull.com/mcp.
If you are a developer who already runs yt-dlp and wants maximum control and zero per-use cost, a local server like yt-dlp-mcp is an excellent, free choice. The hosted option exists for a different audience — people who use browser-based assistants, or who simply prefer not to maintain a local toolchain.
TubePull's listing — what the hosted server actually offers
TubePull's registry entry describes it as downloading "YouTube, TikTok, Vimeo, SoundCloud and 6 more platforms." Concretely, download_video and get_video_info support over 10 platforms: YouTube, TikTok, Reddit, Vimeo, SoundCloud, Twitter/X, Dailymotion, Bandcamp, Mixcloud, and Twitch (clips, VODs, and live Stream Archiving). Output is MP4 for video, or MP3/M4A for audio; audio-only platforms always return audio.
Because it is a remote streamable-HTTP server, there is nothing to install — no Node, no Python, no yt-dlp, no FFmpeg. It also works with browser-based clients that cannot launch a local process, which the local stdio servers above cannot reach. TubePull handles the extraction and any platform authentication requirements on its own servers.
On pricing: the free tier allows 3 downloads per day with no account. Pro is $4.99/month. The fee funds the hosted server and the maintenance that keeps the success rate high when platforms ship player changes — the kind of breakage that, with a local yt-dlp setup, you fix yourself by updating the binary. You are paying for someone else to maintain that reliability layer; with a local server, that work is your time instead.
The price does not buy a license for bulk or automated downloading. TubePull's Pro plan is for the interactive downloads you ask your own AI assistant for — not mass downloads, automated scripts, or integrating TubePull into another application. That use case belongs with a local yt-dlp setup. The full policy is in Section 7 of TubePull's Terms.
Setting it up — Claude, Cursor, and Perplexity
The TubePull setup guide at /setup-mcp has the annotated, screenshot-by-screenshot version. Short orientation:
claude.ai (web) and Claude Desktop. In Claude, open Settings → Connectors → Add custom connector → Remote. Name it TubePull, set the URL to https://tubepull.com/mcp, choose Streamable HTTP transport, and leave authentication as None for the free tier. Toggle it on. Claude Desktop can also reach remote HTTP MCP servers; older configurations that only speak stdio can bridge via an mcp-proxy shim, covered in the setup guide.
Cursor. Add TubePull as a remote server pointing at https://tubepull.com/mcp with the streamable-HTTP transport. Once saved, Cursor's agent can call download_video the same way Claude does — useful when pulling a reference clip or audio sample without leaving the editor.
Perplexity. Add the same https://tubepull.com/mcp endpoint in your connector settings. The handshake happens automatically.
Across all three, the pattern is identical: paste a supported URL and ask the assistant to download it. The assistant calls the tool and returns a signed download link. To check a video before spending a download slot, ask for its info first — get_video_info returns title, duration, and available qualities and does not count against your quota.
How TubePull compares — to other MCP servers and to browser tools
| Tool | Type | Install required | Works in browser clients | Cost model |
|---|---|---|---|---|
| TubePull MCP | Hosted remote (HTTP) | None | Yes (Claude web, Perplexity) | Free 3/day; $4.99/mo Pro |
| kevinwatt/yt-dlp-mcp | Local (stdio) | Node + yt-dlp | No (Claude Desktop/Cursor only) | Free (open-source) |
| yorickchan/mcp_youtube_dlp | Local (stdio) | Python + yt-dlp | No | Free (open-source) |
| Browser downloaders (Y2Mate, etc.) | Website | None | N/A (not in-assistant) | Free, usually ad-funded |
| cobalt.tools | Website | None | N/A (not in-assistant) | Free (open-source) |
The local yt-dlp servers are free and powerful but cannot serve browser-based assistants and require a toolchain. The browser downloaders are convenient but live outside your AI conversation. TubePull is the one that runs inside browser-based assistants with no install, at the cost of a quota or a subscription. If you live in Claude Desktop with a dev environment, a local server may suit you better. If you want a video to arrive inside a claude.ai or Perplexity conversation without installing anything, the hosted server is the option that physically can do that. For the broader picture of browser-based tools, see our YouTube downloader comparison.
Getting started
If you want to try the hosted route, the fastest path is the TubePull setup guide: add https://tubepull.com/mcp as a remote connector in your client, toggle it on, and ask your assistant to download a link. The free tier needs no account. For everything the server can do — the full tool list, supported platforms, and pricing — start at the TubePull MCP page.
If you would rather run a local server, kevinwatt/yt-dlp-mcp is the most established open-source starting point.