by kevinwatt
Easily download videos or convert YouTube to MP3/MP4 with our YouTube downloader for quick content analysis using yt-dlp
β 222
GitHub stars
Downloads videos, audio, and subtitles from YouTube and other platforms using yt-dlp, enabling content analysis and processing through AI agents.
YouTube Downloader is a community-built MCP server published by kevinwatt that provides AI assistants with tools and capabilities via the Model Context Protocol. Easily download videos or convert YouTube to MP3/MP4 with our YouTube downloader for quick content analysis using yt-dlp It is categorized under file systems, other.
You can install YouTube Downloader in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
MIT
YouTube Downloader is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
Read, analyze, and understand files in your project
Example
Summarize README, analyze code structure, find TODO comments across codebase
Navigate large codebases 5x faster, understand projects quickly
Create, move, rename, and organize files based on natural language instructions
Example
Organize downloads by file type, rename files following convention, batch process images
Save hours on manual file organization
Search files for patterns, extract data, find information across directories
Example
Find all config files with API keys, extract emails from documents, search logs for errors
Find information instantly instead of manual grep/find
Share your MCP server with the developer community
I recommend YouTube Downloader for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.
According to our notes, YouTube Downloader benefits from clear Model Context Protocol framing β fewer ambiguous βAI pluginβ claims.
YouTube Downloader has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.
Strong directory entry: YouTube Downloader surfaces stars and publisher context so we could sanity-check maintenance before adopting.
YouTube Downloader has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.
According to our notes, YouTube Downloader benefits from clear Model Context Protocol framing β fewer ambiguous βAI pluginβ claims.
I recommend YouTube Downloader for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.
Strong directory entry: YouTube Downloader surfaces stars and publisher context so we could sanity-check maintenance before adopting.
I recommend YouTube Downloader for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.
According to our notes, YouTube Downloader benefits from clear Model Context Protocol framing β fewer ambiguous βAI pluginβ claims.
showing 1-10 of 62
A powerful MCP server that brings video platform capabilities to your AI agents
Integrate yt-dlp with Claude, Dive, and other MCP-compatible AI systems. Download videos, extract metadata, get transcripts, and more β all through natural language.
Features β’ Installation β’ Tools β’ Usage β’ Documentation
</div>Install yt-dlp on your system:
<table> <tr> <th>Platform</th> <th>Command</th> </tr> <tr> <td>πͺ <strong>Windows</strong></td> <td><code>winget install yt-dlp</code></td> </tr> <tr> <td>π <strong>macOS</strong></td> <td><code>brew install yt-dlp</code></td> </tr> <tr> <td>π§ <strong>Linux</strong></td> <td><code>pip install yt-dlp</code></td> </tr> </table>Add the following config to your MCP client:
{
"mcpServers": {
"yt-dlp": {
"command": "npx",
"args": ["-y", "@kevinwatt/yt-dlp-mcp@latest"]
}
}
}
Use the Claude Code CLI to add the yt-dlp MCP server (guide):
claude mcp add yt-dlp npx @kevinwatt/yt-dlp-mcp@latest
</details>
<details>
<summary><strong>Claude Desktop</strong></summary>
Add to your claude_desktop_config.json:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json~/.config/Claude/claude_desktop_config.json{
"mcpServers": {
"yt-dlp": {
"command": "npx",
"args": ["-y", "@kevinwatt/yt-dlp-mcp@latest"]
}
}
}
</details>
<details>
<summary><strong>Cursor</strong></summary>
Go to Cursor Settings -> MCP -> New MCP Server. Use the config provided above.
Install via the VS Code CLI:
code --add-mcp '{"name":"yt-dlp","command":"npx","args":["-y","@kevinwatt/yt-dlp-mcp@latest"]}'
Or follow the MCP install guide with the standard config from above.
</details> <details> <summary><strong>Windsurf</strong></summary>Follow the configure MCP guide using the standard config from above.
</details> <details> <summary><strong>Cline</strong></summary>Follow Cline MCP configuration guide and use the config provided above.
</details> <details> <summary><strong>Warp</strong></summary>Go to Settings | AI | Manage MCP Servers -> + Add to add an MCP Server. Use the config provided above.
Go to Settings | Tools | AI Assistant | Model Context Protocol (MCP) -> Add. Use the config provided above.
npm install -g @kevinwatt/yt-dlp-mcp
All tools are prefixed with ytdlp_ to avoid naming conflicts with other MCP servers.
Search YouTube with pagination and date filtering support
query, maxResults, offset, response_format, uploadDateFilterhour, today, week, month, year (optional)List all available subtitle languages for a video
urlDownload subtitles in VTT format with timestamps
url, language (optional)Generate clean plain text transcript
url, language (optional)Download video to Downloads folder
url, resolution, startTime, endTimeExtract and download audio only
urlExtract comprehensive video metadata in JSON
url, fields (optional array)Get human-readable metadata summary
url"Search for Python programming tutorials"
"Find the top 20 machine learning videos"
"Search for 'react hooks tutorial' and show results 10-20"
"Search for JavaScript courses in JSON format"
"Get metadata for https://youtube.com/watch?v=..."
"Show me the title, channel, and view count for this video"
"Extract just the duration and upload date"
"Give me a quick summary of this video's info"
"List available subtitles for https://youtube.com/watch?v=..."
"Download English subtitles from this video"
"Get a clean transcript of this video in Spanish"
"Download Chinese (zh-Hant) transcript"
"Download this video in 1080p: https://youtube.com/watch?v=..."
"Download audio from this YouTube video"
"Download this video from 1:30 to 2:45"
"Save this Facebook video to my Downloads"
# Downloads directory (default: ~/Downloads)
YTDLP_DOWNLOADS_DIR=/path/to/downloads
# Default resolution (default: 720p)
YTDLP_DEFAULT_RESOLUTION=1080p
# Default subtitle language (default: en)
YTDLP_DEFAULT_SUBTITLE_LANG=en
# Character limit (default: 25000)
YTDLP_CHARACTER_LIMIT=25000
# Max transcript length (default: 50000)
YTDLP_MAX_TRANSCRIPT_LENGTH=50000
To access private videos, age-restricted content, or avoid rate limits, configure cookies:
β οΈ Important: Cookie authentication requires a JavaScript runtime (deno) to be installed. When using cookies, YouTube uses authenticated API endpoints that require JavaScript challenge solving. Without deno, downloads will fail with "n challenge solving failed" error.
Install deno: https://docs.deno.com/runtime/getting_started/installation/
# Extract cookies from browser (recommended)
YTDLP_COOKIES_FROM_BROWSER=chrome
# Or use a cookie file
YTDLP_COOKIES_FILE=/path/to/cookies.txt
MCP Configuration with cookies:
{
"mcpServers": {
"yt-dlp": {
"command": "npx",
"args": ["-y", "@kevinwatt/yt-dlp-mcp@latest"],
"env": {
"YTDLP_COOKIES_FROM_BROWSER": "chrome"
}
---
Generate boilerplate files, apply templates, create project structures
Example
Create React component with tests and styles, generate OpenAPI spec, scaffold new project
Eliminate repetitive file creation work
Prerequisites
Time Estimate
10-20 minutes including configuration
Steps
Troubleshooting
β Do
β Don't
π‘ Pro Tips
Architecture
MCP server provides file I/O operations (read, write, search, metadata) as tools Claude can invoke with natural language instructions.
Protocols
Compatibility
β Use when
Use for code analysis, file organization, content search, template generation, and automating repetitive file operations. Best for local development workflows.
β Avoid when
Avoid for system-critical files, sensitive credentials, production environments, or when file integrity is paramount. Don't use on files you can't afford to lose.