media-downloader¶
A CLI / API + MCP server + A2A agent for downloading audio and video from the
internet — built on yt-dlp and the agent-utilities ecosystem.
Official documentation
This site is the canonical reference for media-downloader, maintained alongside
every release.
Overview¶
media-downloader wraps yt-dlp in a typed, deterministic tool surface and exposes
the same capability three ways:
MediaDownloader— a Python class that downloads video or audio (MP3) from YouTube, Rumble, and every other siteyt-dlpsupports, with parallel batch downloads and progress callbacks.- An MCP server (
media-downloader-mcp) — thedownload_mediatool an agent calls, plusdownload_video/download_audioprompts. - A Pydantic-AI agent (
media-downloader-agent) — a conversational A2A server with an optional web UI that drives the MCP tool surface.
Every layer inherits the agent-utilities enterprise foundation: OpenTelemetry tracing, Eunomia policy authorization, and prompt-injection defenses.
Explore the documentation¶
- Installation — pip, source, extras, and the prebuilt Docker image.
- Deployment — run the MCP server, the agent server, Docker Compose, Caddy + Technitium.
- Usage — the MCP tools, the
MediaDownloaderPython API, and the CLI. - Overview — the ecosystem role, enterprise readiness, and architecture.
- Concepts — the
CONCEPT:MDLD-*registry.
Quick start¶
Or download from the command line directly:
pip install media-downloader
media-downloader --links "https://www.youtube.com/watch?v=dQw4w9WgXcQ" --directory ./Downloads
See Installation and Deployment for the full matrix (PyPI extras, Docker image, all transports, reverse proxy, DNS).