Media download CLI for fetching video, audio, subtitles, and metadata from YouTube and thousands of supported sites.
$python -m pip install -U --pre "yt-dlp[default]"
Agent Compatibility
JSON Output
Agent Skill
MCP Support
AI Analysis
yt-dlp is a media download CLI for fetching video, audio, subtitles, thumbnails, and metadata from YouTube and thousands of supported sites. It also works as an inspection tool for formats, subtitles, and playlist metadata before you decide what to download.
What It Enables
- Download videos, playlists, livestream captures, or audio-only files from supported sites with explicit format selection, output templates, and post-processing steps.
- Inspect available formats, subtitles, thumbnails, and extractor support without downloading first, then choose the right variant for a scripted workflow.
- Write
.info.jsonmetadata, subtitles, thumbnails, and comments to disk, or load prior info JSON files to replay download steps with preserved metadata.
Agent Fit
- JSON output via
--dump-jsonand--dump-single-json, plus simulate and list modes, makes inspect-decide-download loops straightforward in the shell. - The command surface is mostly flag-driven and non-interactive, but some sites still require cookies, credentials, browser-derived state, or extra runtime components.
- Best fit is media capture and archive automation where an agent needs direct file outputs and metadata, not general browser or content management workflows.
Caveats
- Authenticated or rate-limited sites may require browser cookies, passwords, or provider-specific options, which makes unattended runs environment-dependent.
- Full YouTube support and post-processing often depend on external tools such as
yt-dlp-ejs, a JavaScript runtime, andffmpeg.