The yt-dlp-mcp tool acts as a bridge between AI assistants and the vast world of online video content. It allows AI agents to interact directly with platforms like YouTube, TikTok, and Facebook to perform tasks that would normally require manual browsing. Using simple natural language commands, a user can ask their AI to find specific tutorials, summarize the contents of a video via its transcript, or even download audio for a podcast—all without ever leaving the chat interface. Beyond simple downloads, this server provides robust discovery and extraction features that make video content more accessible to machines. It can search for videos with precise pagination, pull detailed metadata like view counts and upload dates, and generate clean, human-readable text transcripts from available subtitles. For those needing specific media, it supports high-quality audio extraction and video downloads at various resolutions, including the ability to trim specific segments from a longer clip. For developers and engineers, this MCP is specifically optimized for the constraints of Large Language Models. It utilizes Zod schema validation to ensure input safety and implements automatic character limits to prevent context window overflow, which is a common challenge when handling long transcripts or large metadata sets. By offering data in both structured JSON for programmatic tasks and Markdown for human-readable display, the server becomes a highly versatile component for building sophisticated, video-aware AI applications that are both safe and efficient.
Category: Design, Media & Creative
Tags: media-download, metadata, transcription, video, youtube
yt-dlp installed on your system. Manual Installation You can install the package globally using npm: bash npm install -g @kevinwatt/yt-dlp-mcpjson { "mcpServers": { "yt-dlp": { "command": "npx", "args": ["-y", "@kevinwatt/yt-dlp-mcp"] } } } Optional Environment Variables You can customize the server behavior by setting these environment variables: * YTDLP_DOWNLOADS_DIR: Path to downloads (default: ~/Downloads) * YTDLP_DEFAULT_RESOLUTION: Default video quality (default: 720p) * YTDLP_DEFAULT_SUBTITLE_LANG: Default language (default: en) * YTDLP_CHARACTER_LIMIT: Limit for LLM safety (default: 25000) * YTDLP_MAX_TRANSCRIPT_LENGTH: Max length for transcripts (default: 50000)ytdlp_ to avoid naming conflicts. * ytdlp_search: Search YouTube with pagination. * Parameters: query, maxResults, offset, response_format (JSON or Markdown). * ytdlp_list_subtitles: List all available subtitle languages for a video. * Parameters: url. * ytdlp_download_subtitles: Download subtitles in VTT format. * Parameters: url, language (optional). * ytdlp_get_transcript: Generate a clean plain text transcript. * Parameters: url, language (optional). * ytdlp_download_video: Download video to the Downloads folder. * Parameters: url, resolution (480p, 720p, 1080p, best), startTime, endTime. * ytdlp_download_audio: Extract and download audio only (M4A/MP3). * Parameters: url. * ytdlp_get_metadata: Extract comprehensive video metadata in JSON. * Parameters: url, fields (optional array). * ytdlp_get_metadata_summary: Get a human-readable metadata summary. * Parameters: url.ytdlp_download_video tool, users can specify exact start and end times, allowing the AI to download only the necessary clip in the desired resolution. Example: "I need the segment from 12:45 to 13:15 of this YouTube video [URL]. Download it in 1080p so I can include it in my presentation."Part of MCP Servers
First install the yt-dlp CLI tool via winget, brew, or pip. Then configure your MCP client to execute the server package using npx with @kevinwatt/yt-dlp-mcp@latest, or install it globally using npm install -g @kevinwatt/yt-dlp-mcp.
The server provides tools to search YouTube videos, extract metadata, retrieve video comments in flat or threaded formats, list and download subtitles, generate plain text transcripts, download video clips with timestamp trimming, and extract audio files directly to your machine.
It functions with any MCP-compliant client including Claude Desktop, Claude Code, Cursor, Dive, VS Code with Copilot, Windsurf, Cline, Warp, and JetBrains AI Assistant by using the provided npx command configuration.
Yes, yt-dlp-mcp is open source software released under the MIT license. You can view the code, report issues, and follow development on its public GitHub repository.
By default, videos and audio files are saved directly to your local user Downloads directory. You can override this location by setting the YTDLP_DOWNLOADS_DIR environment variable in your MCP client configuration.