Skip to main content
Glama
sydasif

MCP Video Downloader

by sydasif

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 pytest

Running

# 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.worker

License

MIT

Latest Blog Posts

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