Built on Python with comprehensive video downloading capabilities, supporting video extraction and processing.
Uses TOML for secure configuration management, allowing customization of download locations, security settings, and yt-dlp options.
Supports downloading videos from YouTube with various quality options, format selection, and metadata extraction.
๐ฌ Video Downloader MCP Server
Give your agents the ability to download videos from 1000+ sites with built-in security. This MCP server provides 7 discrete tools that agents can use to check, analyze, and download videos from nearly any web page. Built on yt-dlp with security validation and fallback analysis.
๐ Features
๐ ๏ธ 7 MCP Tools - Discrete capabilities for checking, analyzing, and downloading videos
๐ Built-in Security - Path validation, location restrictions, and input sanitization
๐ 1000+ Sites Supported - YouTube, Facebook, TikTok, and hundreds more via yt-dlp
๐ Fallback Analysis - Pattern matching when yt-dlp doesn't support a site
๐ Organized Downloads - Configurable secure locations with filename templates
โ๏ธ Agent-Friendly - Clean JSON responses and structured error handling
๐ Quick Start
Installation
Configuration
Add to your MCP client configuration (e.g., Claude Desktop):
First Download
Your agent can now download videos with simple tool calls:
๐ ๏ธ Available Tools
Tool | Purpose | Example Usage |
| Quick URL validation | "Is this video URL supported?" |
| Extract metadata | "What's the video duration and quality?" |
| List quality options | "What download formats are available?" |
| Secure download | "Download this video in 1080p" |
| Show safe locations | "Where can I save downloaded files?" |
| Fallback analysis | "yt-dlp failed, analyze the page" |
| Pattern matching | "Find video URLs in this HTML" |
๐ Security Features
Built-in Protection
Path Traversal Prevention - Blocks
../directory escape attemptsLocation Restrictions - Downloads only to configured safe directories
Extension Validation - Allows only safe file types (video/audio/subtitles)
Template Sanitization - Removes dangerous shell characters
TOML Configuration - No deserialization vulnerabilities
Secure Download Example
Default Security Configuration
๐ฏ Agent Integration Examples
Simple Video Download
Quality-Aware Selection
Chained with Web Search
Unsupported Site Analysis
โ๏ธ Configuration
The server creates ~/.config/video-downloader-mcp/config.toml automatically. Customize as needed:
๐ง LLM Integration Examples
With Claude Code
With ChatGPT + MCP
๐๏ธ MCP Architecture Patterns
This server demonstrates several reusable patterns for building secure, agent-friendly MCP servers:
Tool Declaration Pattern
Security Validation Pattern
Structured Response Pattern
Configuration Management Pattern
Testing
๐ค Contributing
We welcome contributions! Please see our contributing guidelines for details.
Development Setup
๐ Requirements
Python 3.8+
yt-dlp (latest version recommended)
MCP library (
pip install mcp)Additional dependencies:
requests,aiohttp,tomli(Python < 3.11)
๐ Troubleshooting
Common Issues
MCP server not loading:
Downloads failing:
Security validation errors:
Debug Mode
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
yt-dlp - The powerful video extraction engine that makes this possible
Model Context Protocol - Enabling seamless LLM-tool integration
Anthropic - For Claude and the MCP specification
๐ Related Projects
MCP Specification - Official MCP documentation
Claude Code - Claude's code editing environment
yt-dlp - The underlying video extraction library
Give your agents video downloading capabilities across 1000+ platforms. ๐ฌ
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
A Model Context Protocol server that transforms video downloading into a tool-based system for LLM orchestration, allowing users to download videos from 1000+ platforms with intelligent workflows and security features.
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that allows LLMs to interact with web content through standardized tools, currently supporting web scraping functionality.Last updated -1MIT License
- -securityFlicense-qualityA comprehensive Model Context Protocol server that bridges LLMs with self-hosted media services, enabling natural language control of TV shows, movies, downloads, and notifications while maintaining traditional API access.Last updated -
- AsecurityFlicenseAqualityA Model Context Protocol server that enables LLMs to fetch and process web content in multiple formats (HTML, JSON, Markdown, text) with automatic format detection.Last updated -54
- AsecurityAlicenseAqualityA Model Context Protocol server that enables LLMs to retrieve web content and save it to local files for permanent storage and later access.Last updated -11MIT License