About yt-mcp-server
yt-mcp-server is an MCP server with utilities for YouTube URLs, video IDs, and thumbnails. It is intended for MCP clients that need to normalize links or construct video URLs.
Key features
- 01Normalize YouTube URLs
- 02Extract video IDs from URLs
- 03Build video watch URLs
- 04Build thumbnail URLs
- 05Set a playback start time
Use cases
- 01Convert varied YouTube links to canonical URLs
- 02Construct a watch link from a video ID
- 03Retrieve a video's thumbnail URL
MCP support
The MCP server exposes tools for normalizing YouTube URLs and generating watch and thumbnail URLs.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEyt-mcp-server
MCP server with various utility functions for dealing with YouTube data. This server provides tools for working with YouTube URLs, video IDs, and thumbnails.
📖 Resources
Prerequisites
- Python 3.12 or higher
- UV package manager
Setup
1. Install UV
If you haven't installed UV yet, you can install it using:
brew install uv
# alternatively curl -LsSf https://astral.sh/uv/install.sh | sh
2. Installation Methods
Method 1: Install from GitHub (Recommended)
This is the simplest way to install and run the server:
uvx --from git+https://github.com/kdr/yt-mcp-server.git server
Method 2: Local Development Setup
If you want to modify the code locally:
git clone https://github.com/kdr/yt-mcp-server.git
cd yt-mcp-server
uv venv
source .venv/bin/activate # On Unix/macOS
# or
.venv\Scripts\activate # On Windows
uv pip install -e .
3. Configure MCP Client
Add the following configuration to your MCP client settings:
{
"mcpServers": {
"yt-mcp-server": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/kdr/yt-mcp-server.git",
"server"
]
}
}
}
For local development (Method 2), use this configuration instead:
{
"mcpServers": {
"yt-mcp-server": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/PARENT/FOLDER/yt-mcp-server/yt_mcp_server",
"run",
"main.py"
]
}
}
}
Available Tools
The following tools are available to the LLM:
-
get_watch_url: Returns the YouTube watch URL for a given video ID, optionally starting at a specific time- Parameters:
video_id: The YouTube video IDstart_time: (Optional) The start time in seconds
- Parameters:
-
get_thumbnail_url: Returns the thumbnail URL for a given YouTube video ID- Parameters:
video_id: The YouTube video ID
- Parameters:
-
get_normalized_url: Normalizes various YouTube URL formats to the canonical watch URL and extracts the video ID- Parameters:
url: The YouTube URL to normalize
- Parameters:
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.