MCP Video Downloader
MCP Video Downloader
An MCP (Model Context Protocol) server for downloading videos and audio from various platforms using yt-dlp.
Features
Video and audio downloads with configurable quality
Progress tracking via SQLite database
Worker-based architecture with child process isolation
Security-first design with URL validation and SSRF protection
Batch download support
Cancellation and retry mechanisms
Automatic cleanup of old files
Health checks
Docker support
MCP server with stdio and HTTP transport options
Architecture
The system consists of:
MCP Server: Exposes tools for inspecting URLs, starting downloads, checking status, etc.
Worker: Processes download jobs in isolated child processes
Database: SQLite database for storing job state and progress
Services: Business logic for metadata extraction, downloads, cleanup, etc.
Development
This project follows the Python standards defined in ~/.claude/docs/index.md.
Setup
# Clone the repository
git clone <repository-url>
cd mcp-video-downloader
# Install dependencies
uv sync
# Run tests
uv run pytestRunning
# Run the MCP server (stdio transport)
uv run python -m mcp_video_downloader.mcp.server
# Run the worker
uv run python -m mcp_video_downloader.workerLicense
MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sydasif/mcp-video-downloader'
If you have feedback or need assistance with the MCP directory API, please join our Discord server