yt-dlp
Enables video metadata extraction and downloading from platforms like TikTok and YouTube via yt-dlp, including direct MP4 links and local downloads with MP3 conversion.
README
yt-dlp-mcp
Standalone MCP server for extracting metadata and downloading videos (TikTok, YouTube, etc.) via yt-dlp.
Features
- Extract video metadata (title, description, uploader, duration)
- Get direct
.mp4link without downloading - Download videos locally to a
downloadsfolder (now generates both universal MP4 and separate MP3 audio file) - Clear downloads cache to free up disk space
- Support for multiple platforms (TikTok, YouTube, Facebook, Vimeo, etc.)
Installation
# Project initialization (already done)
uv init
# Install dependencies (already done)
uv add "mcp[cli]" yt-dlp
Usage
Start the server
uv run server.py
The server runs in stdio mode and is ready to be used by any MCP client.
Usage with various MCP clients
Cline /cline (VS Code)
Add to your ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json an entry to "mcpServers" element:
the above path is for macos, with cline installed as VS code extension ! you'll have to check for linux ou windows using the cline mcp configuration management interface, it opens the file for you ! with "Configure MCP Servers" Button !
{
"mcpServers": {
"other-mcp-server": { },
"yt-dlp": {
"command": "uv",
"args": ["run", "--directory", "<your_path>/yt-dlp-mcp", "server.py"]
}
}
}
don't use ~ in <your_path>, else cline won't find the file, use true root path !
OpenCode
Add to your ~/.opencode/mcp.json:
{
"servers": {
"yt-dlp": {
"command": "uv",
"args": ["run", "--directory", "<your_path>/yt-dlp-mcp", "server.py"]
}
}
}
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"yt-dlp": {
"command": "uv",
"args": ["run", "--directory", "<your_path>/yt-dlp-mcp", "server.py"]
}
}
}
Zed
Add to your ~/.config/zed/settings.json:
{
"mcp": {
"servers": {
"yt-dlp": {
"command": "uv",
"args": ["run", "--directory", "<your_path>/yt-dlp-mcp", "server.py"]
}
}
}
}
Cursor
Add to your ~/.cursor/mcp.json:
{
"mcpServers": {
"yt-dlp": {
"command": "uv",
"args": ["run", "--directory", "<your_path>/yt-dlp-mcp", "server.py"]
}
}
}
Available Tools
1. extract_video_info
Extracts metadata and direct link from a video. Supports Facebook via lightweight regex and fb-video scraper as fallback.
extract_video_info(url="https://www.tiktok.com/@username/video/123456789")
Parameters:
url(str): The URL of the video to extract
Returns:
title: Video titledescription: Video descriptionuploader: Uploader nameduration: Duration in secondsurl: Direct video link (.mp4)webpage_url: Original page URLthumbnail: Thumbnail URLerror: Error message if extraction failedsource: Scraper source (if using Facebook fallbacks)
2. download_video
Downloads a video and generates both a universal MP4 (H.264/AAC/FastStart) and a separate MP3 audio file to the local downloads folder.
download_video(url="https://www.tiktok.com/@username/video/123456789")
Parameters:
url(str): The URL of the video to download
Returns:
success: Boolean indicating successtitle: Video titlefilename_mp4: Local MP4 filenamefilename_mp3: Local MP3 filenamelocal_path_mp4: Absolute path to the downloaded MP4 filelocal_path_mp3: Absolute path to the downloaded MP3 filemessage: Status messageerror: Error message if download failed
3. clear_downloads
Clears all files from the downloads folder.
clear_downloads()
Returns:
success: Boolean indicating successdeleted_count: Number of files deletederror: Error message if operation failed
Updating dependencies
uv add --upgrade yt-dlp
Requirements
- Python 3.10+
- uv (Python package manager)
- ffmpeg (optional, for video processing)
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.