Get the FREE Ultimate OpenClaw Setup Guide →

yt-dlp

A Model Context Protocol (MCP) server that bridges Video & Audio content with Large Language Models using yt-dlp.

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio kevinwatt-yt-dlp-mcp npx -y @kevinwatt/yt-dlp-mcp@latest

How to use

The yt-dlp MCP server integrates yt-dlp capabilities into MCP-compatible AI agents, enabling video search, metadata extraction, transcript generation, and video/audio downloads through natural language prompts. Tools are exposed with the ytdlp_ prefix to avoid collisions, covering search, subtitles and transcripts, video and audio downloads, and metadata retrieval. You can query for video lists, fetch available subtitle languages, download subtitles or transcripts, obtain full or filtered metadata, and download video or audio assets, all via MCP-compliant clients such as Claude, Dive, Windsurf, Warp, JetBrains AI Assistant, and more.

How to install

Prerequisites:

  • Node.js >= 18
  • npm or pnpm
  • Optional: yt-dlp installed on the system (as described in prerequisites)

Installation steps:

  1. Install the MCP server package globally so your MCP clients can discover it:
npm install -g @kevinwatt/yt-dlp-mcp
  1. Ensure yt-dlp is installed on your system as described in the README prerequisites (Windows: winget install yt-dlp, macOS: brew install yt-dlp, Linux: pip install yt-dlp).

  2. Run the MCP server (example using npx config from the README):

# Start via npm global install
yt-dlp-mcp
  1. If you prefer using the MCP client config directly, you can also use the recommended config snippet in your MCP client (as shown in the README):
{
  "mcpServers": {
    "yt-dlp": {
      "command": "npx",
      "args": ["-y", "@kevinwatt/yt-dlp-mcp@latest"]
    }
  }
}

Additional notes

Tips:

  • This MCP server exposes tools with the ytdlp_ prefix, such as ytdlp_search_videos, ytdlp_get_video_metadata, ytdlp_download_video, and ytdlp_download_audio.
  • You can customize API usage by passing parameters to each tool (e.g., query, maxResults, url, language, resolution).
  • Ensure yt-dlp is installed and accessible in PATH for best reliability.
  • When using downloads, downloaded files land in your system's default Downloads directory unless the MCP client instructs otherwise.
  • If you run into environment variable issues, check that Node.js can spawn child processes and that PATH includes npm binaries.
  • For large video searches, consider paging via maxResults and offset in the ytdlp_search_videos tool.

Related MCP Servers

Sponsor this space

Reach thousands of developers