Skip to main content
Glama

YouTube MCP

A Model Context Protocol (MCP) server for YouTube integration.

Prerequisites

Install uv

On Mac:

brew install uv

On Windows:

powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

After installation on Windows, add uv to your PATH:

set Path=C:\Users\nntra\.local\bin;%Path%

Related MCP server: YouTube MCP Server

Claude Desktop Integration

To use this MCP server with Claude Desktop, you need to add it to your Claude Desktop configuration.

  1. Open your Claude Desktop configuration file:

    • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Windows: %APPDATA%\Claude\claude_desktop_config.json

  2. Add the following configuration to your mcpServers section (replace /path/to/your/youtube-mcp with the actual path to this project folder):

{
  "mcpServers": {
    "youtube": {
      "command": "/Users/your-username/.local/bin/uv",
      "args": ["--directory", "/path/to/your/youtube-mcp", "run", "main.py"]
    }
  },
  "globalShortcut": ""
}

Important: Make sure to replace:

  • /path/to/your/youtube-mcp with the actual path to where you cloned/downloaded this project

  • /Users/your-username/.local/bin/uv with the correct path to your uv installation (on Windows this would typically be C:\Users\your-username\.local\bin\uv.exe)

  1. Save the file and restart Claude Desktop

Usage

Once configured, the YouTube MCP server will be available in Claude Desktop and you can use it to interact with YouTube data and functionality.

Development

This project uses uv for dependency management. The dependencies are defined in pyproject.toml and the lockfile is uv.lock.

To run the server locally:

uv run main.py

Available Tools

1 tool
get_youtube_transcript_toolA

Extract English transcript with timestamps from a YouTube video using its URL or video ID.

Args:
    url: YouTube video URL or video ID

Returns:
    The timestamped transcript text
ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the core functionality (extracting transcripts) and output format (timestamped text), but lacks details on error handling, rate limits, authentication needs, or processing constraints. It adds basic context but misses key behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded with the core purpose in the first sentence, followed by clear sections for Args and Returns. Every sentence adds value without redundancy, making it efficient and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (single parameter, no annotations, but with an output schema), the description is mostly complete. It covers purpose, input semantics, and return values, and the output schema handles return details. However, it lacks behavioral context like error cases or limitations, which slightly reduces completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 0%, so the description must compensate. It adds meaning by explaining that the 'url' parameter accepts either a 'YouTube video URL or video ID', clarifying the input format beyond the schema's generic string type. However, it doesn't detail validation rules or examples, leaving some gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Extract'), resource ('English transcript with timestamps from a YouTube video'), and input method ('using its URL or video ID'). It distinguishes itself by specifying the transcript format (English with timestamps) and input options, though there are no sibling tools for explicit differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by stating the input method ('URL or video ID'), but provides no explicit guidance on when to use this tool versus alternatives, prerequisites, or exclusions. Since there are no sibling tools, the lack of comparative guidance is less critical, but it still lacks comprehensive usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.8/5.0
Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The tool has a clear, singular purpose focused on transcript extraction from YouTube videos.

Naming Consistency5/5

The single tool name follows a clear verb_noun pattern (get_youtube_transcript_tool), which would be consistent if there were more tools. There are no naming conflicts or inconsistencies to evaluate.

Tool Count2/5

A single tool is too few for a YouTube MCP server, which suggests a broader domain like video management, search, or analytics. This minimal toolset severely limits functionality and feels incomplete for the implied scope.

Completeness1/5

The toolset is severely incomplete for a YouTube server. It lacks basic operations such as searching videos, retrieving metadata, managing playlists, or handling comments. The single transcript tool covers only a narrow aspect of YouTube's capabilities.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tunde-alao/youtube-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server