yt-dlp-mcp  by kevinwatt

Video and audio content integration for AI agents via MCP

Created 1 year ago
257 stars

Top 98.3% on SourcePulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

A Model Context Protocol (MCP) server that bridges video content platforms with AI agents by integrating yt-dlp. It enables AI systems to perform actions like searching YouTube, extracting video metadata, downloading transcripts and subtitles, and downloading video or audio content through natural language commands. The primary benefit is empowering AI agents with rich media interaction capabilities, targeting developers using MCP-compatible AI platforms.

How It Works

The server acts as an intermediary, exposing yt-dlp's extensive video processing functionalities as AI-callable tools. It translates natural language queries from MCP clients into specific yt-dlp commands, handling tasks from metadata retrieval to content downloads. The system emphasizes robustness through TypeScript for type safety and Zod for input validation, ensuring reliable data exchange and preventing LLM context overflow with character limits.

Quick Start & Requirements

  • Prerequisites: yt-dlp must be installed system-wide. Node.js version 18+ is required.
  • Installation: Install globally via npm install -g @kevinwatt/yt-dlp-mcp or run directly using npx -y @kevinwatt/yt-dlp-mcp@latest.
  • Configuration: Integrate with MCP clients (e.g., Dive, Claude, Cursor) by adding a provided JSON configuration snippet that specifies the npx command.
  • Documentation: Links to API Reference, Configuration, Cookie Configuration, Error Handling, and Contributing guides are available.

Highlighted Details

  • Extensive Toolset: Offers tools for YouTube search (paginated, filtered), metadata extraction, subtitle/transcript downloads (VTT, plain text), video downloads (resolution control, trimming), and audio extraction.
  • Flexible Output: Supports JSON for programmatic use and Markdown for human-readable display, including AI-friendly comment thread structures.
  • Privacy & Safety: Features no tracking, direct downloads, Zod schema validation, and character limits to prevent LLM context overflow.
  • Cookie Integration: Supports browser cookie integration for accessing private or age-restricted content, requiring deno for JavaScript challenge solving.

Maintenance & Community

The project appears actively maintained, evidenced by its npm presence and a detailed "Contributing" guide. Key dependencies and inspirations include yt-dlp, Anthropic, and Dive. No specific community channels like Discord or Slack are listed in the README.

Licensing & Compatibility

Licensed under the MIT License, permitting commercial use and integration into closed-source applications without significant restrictions.

Limitations & Caveats

Accessing age-restricted or private content necessitates the installation of deno for JavaScript challenge solving, as YouTube's authenticated API endpoints require this capability. The README does not detail other known limitations or bugs.

Health Check
Last Commit

1 month ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
13 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.