YouTube Data Extractor

A collection of standalone Python scripts that implement Model Context Protocol (MCP) servers for various utility functions. Each server provides specialized tools that can be used by AI assistants or other applications that support the MCP protocol.
  • python

5

GitHub Stars

python

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "daltonnyx-userful-mcps": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "<path/to/repo>/useful-mcps/ytdlp",
        "--",
        "ytdlp_mcp"
      ],
      "env": {
        "MERMAID_CHART_ACCESS_TOKEN": "YOUR_API_TOKEN_HERE"
      }
    }
  }
}

You can extend an AI assistant’s capabilities by running specialized MCP servers that expose tools as standardized JSON messages over stdio. These servers let you extract data from YouTube, manipulate Word documents, render PlantUML and Mermaid diagrams, and convert RSS feeds to Markdown, all through a consistent MCP interface.

How to use

You run each MCP server with your MCP client by starting the server process and pointing your client to the specific server script. Each server exposes a set of tools you can call by name, supplying the required arguments. When you call a tool, you receive a structured response you can process in your AI workflow.

How to install

Prerequisites: Python and the uv runtime for MCP servers.

  1. Clone the collection of MCP servers.

  2. Install uv if you don’t have it.

  3. Run an MCP server using the standard directory-based command pattern shown below.

Configuration and usage examples

You can configure each MCP client to launch the desired server using the provided command structure. The following examples show how to start each server from its designated directory with the uv runner.

YouTube Data Extractor MCP (ytdlp)

"mcpServers": {
  "ytdlp": {
    "name": "youtube", // Optional friendly name for the client
    "command": "uv",
    "args": [
      "run",
      "--directory", "<path/to/repo>/useful-mcps/ytdlp", // Path to the MCP directory containing pyproject.toml
      "--", // Separator before script arguments, if any
      "ytdlp_mcp" // Match the script name defined in pyproject.toml [project.scripts]
    ]
    // 'cwd' is not needed when using --directory
  }
}

Word Document Processor MCP (docx_replace)

"mcpServers": {
  "docx_replace": {
    "name": "docx", // Optional friendly name
    "command": "uv",
    "args": [
      "run",
      "--directory", "<path/to/repo>/useful-mcps/docx_replace", // Path to the MCP directory
      "--",
      "docx_replace_mcp" // Match the script name defined in pyproject.toml
    ]
  }
}

PlantUML Renderer MCP (plantuml)

"mcpServers": {
  "plantuml": {
    "name": "plantuml", // Optional friendly name
    "command": "uv",
    "args": [
      "run",
      "--directory", "<path/to/repo>/useful-mcps/plantuml", // Path to the MCP directory
      "--",
      "plantuml_server" // Match the script name defined in pyproject.toml
    ]
  }
}

(Note: Requires a running PlantUML server accessible, potentially managed via Docker as implemented in the service).

## Mermaid Renderer MCP (mermaid)

"mcpServers": { "mermaid": { "name": "mermaid", // Optional friendly name "command": "uv", "args": [ "run", "--directory", "<path/to/repo>/useful-mcps/mermaid", // Path to the MCP directory "--", "mermaid_mcp" // Match the script name defined in pyproject.toml ], "env": { // Environment variables needed by the MCP "MERMAID_CHART_ACCESS_TOKEN": "YOUR_API_TOKEN_HERE" } } }


_(Note: Requires a Mermaid Chart API access token set as an environment
variable)."

RSS feed to Markdown MCP (rss2md)

"mcpServers": {
  "mermaid": {
    "name": "rss2md", // Optional friendly name
    "command": "uv",
    "args": [
      "run",
      "--directory", "<path/to/repo>/useful-mcps/rss2md", // Path to the MCP directory
      "--",
      "rss2md_mcp" // Match the script name defined in pyproject.toml
    ],
    "env": { // Environment variables needed by the MCP
    }
  }
}

Development notes

The MCP servers are implemented as standalone Python scripts. They expose tools that you can call via JSON messages and respond with structured content. When you run a server, uv handles the virtual environment and dependencies automatically for the first run in its directory.

Troubleshooting

If a server does not start, verify that uv is installed and that you are using the correct directory path and script name as shown in the configuration examples. Ensure you have any required API tokens or environment variables set before launching the server.

Notes

Each server is designed to be run via stdio. Start the servers from their designated directories with the provided commands and point your MCP client to the appropriate tool names when making calls.

Available tools

ytdlp.extract_chapters

Extract chapters from a YouTube video given its URL.

ytdlp.extract_subtitles

Extract subtitles for a YouTube video, with optional chapter targeting.

docx_replace.process_template

Process a Word template by substituting replacement keys and handling content blocks.

docx_replace.get_template_keys

Extract all placeholder keys from a Word template.

docx_replace.convert_to_pdf

Convert a Word document (docx) to PDF.

plantuml_server.render_diagram

Render PlantUML text to a diagram image via a PlantUML server.

mermaid_mcp.render_mermaid_chart

Render a Mermaid chart by creating a document on mermaidchart.com.

rss2md.fetch_rss_to_markdown

Fetch an RSS feed, filter by date, and return a Markdown-formatted list.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational