AgentX-ai/youtube-dlp-server
3.3
If you are the rightful owner of youtube-dlp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
A Model Context Protocol (MCP) server that enables AI to interact with YouTube videos, extracting video information, subtitles, and top comments without downloading.
Tools
3
Resources
0
Prompts
0
YouTube DLP MCP Server
๐ฌ A Model Context Protocol (MCP) server that lets your AI interact with YouTube videos - extract video information, subtitles, and top comments without downloading.
โจ Features
- ๐น Extract Video Info - Get comprehensive metadata (title, views, likes, description, etc.)
- ๐ Extract Subtitles - Download manual subtitles and auto-generated captions
- ๐ฌ Extract Comments - Get top comments sorted by likes with creator badges
- ๐ Proxy Support - Works with HTTP/HTTPS/SOCKS proxies
- ๐ Fast & Async - Non-blocking operations using asyncio
- ๐ง Easy Integration - Standard MCP protocol for AI assistants
๐ Quick Start
Install with uvx (Recommended)
uvx youtube-dlp-server
Install with pip
pip install youtube-dlp-server
youtube-dlp-server
Install from source
git clone <repository-url>
cd youtube-dlp-server
pip install -e .
python -m youtube_dlp_server
๐ ๏ธ Usage
Available Tools
1. get-video-info
Extract comprehensive video metadata:
{
"name": "get-video-info",
"arguments": {
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
}
}
2. get-video-subtitles
Extract subtitles and captions:
{
"name": "get-video-subtitles",
"arguments": {
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"languages": ["en", "es"],
"include_auto_captions": true
}
}
3. get-top-comments
Get top comments (max 20, default 10):
{
"name": "get-top-comments",
"arguments": {
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"count": 10
}
}
Proxy Configuration
Set the PROXY_URL
environment variable:
# HTTP/HTTPS proxy
export PROXY_URL="http://proxy.example.com:8080"
# SOCKS proxy with auth
export PROXY_URL="socks5://user:pass@127.0.0.1:1080/"
# Run with proxy
youtube-dlp-server
๐งช Testing
With MCP Inspector
npx @modelcontextprotocol/inspector youtube-dlp-server
Manual Testing
python -c "
import asyncio
from youtube_dlp_server.helper import extract_video_info
async def test():
info = await extract_video_info('https://www.youtube.com/watch?v=dQw4w9WgXcQ')
print(f'โ
Video: {info[\"title\"]}')
asyncio.run(test())
"
๐ Requirements
- Python 3.11+
- yt-dlp for YouTube processing
- MCP framework for AI integration
๐ค Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
๐ License
MIT License - see file for details.
๐ Links
- Homepage: GitHub Repository
- Issues: Report Issues
- MCP Documentation: Model Context Protocol
Made with โค๏ธ for the AI community