Skip to main content
Glama
granitebps

YouTube MCP Server

by granitebps

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
HOSTNoHost for HTTP transport. Default is '127.0.0.1'.127.0.0.1
PORTNoPort for HTTP transport. Default is '3000'.3000
TRANSPORTNoTransport mode: 'stdio' for local, 'http' for Streamable HTTP. Default is 'stdio'.stdio

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_video_infoA

Get YouTube video metadata: title, channel, description, duration (text and seconds), views, likes, comment count, upload date, and tags. Unknown values are null. Served by the provider selected with YT_PROVIDER (see get_server_info). Input: YouTube URL or video ID. Errors carry a code (e.g. ACCESS_BLOCKED, VIDEO_UNAVAILABLE, TIMEOUT) in _meta["youtube-mcp/error"] and as a [CODE] text prefix.

get_video_commentsA

Get YouTube video comments with replies. Returns comment text, author, likes, and date. Supports sorting by 'relevance' (top comments) or 'time' (newest). Returns error if comments are disabled. Served by the provider selected with YT_PROVIDER.

get_video_transcriptA

Get YouTube video transcript/captions (manual or auto-generated) with timestamps. Use 'lang' to pick a language code (e.g. 'en', 'id'), or omit it to get the first manual track (else the first auto-generated one); get_transcript_languages lists the codes. Returns both timestamped and plain text versions, paginated with startSegment/nextStartSegment. available=false with reason NO_CAPTIONS or LANGUAGE_UNAVAILABLE when captions are absent; access problems (ACCESS_BLOCKED etc.) are errors.

search_youtubeA

Search YouTube videos by query. Returns up to 50 results with title, channel, views, duration, and URL. Supports filtering by uploadDate (today/week/month/year) and videoDuration (short/medium/long), and sorting by relevance, date, viewCount, or rating. Served by the provider selected with YT_PROVIDER; with the default innertube provider some options are approximated and reported in warnings.

get_transcript_languagesA

List all available caption/transcript languages for a YouTube video. Returns language codes and names for both manual and auto-generated captions. Call this first to discover available languages before fetching a transcript.

get_server_infoA

Report the server version, the active provider (innertube or api) for video info, comments, and search, and which backend serves each tool. Transcript tools always use youtube-transcript-plus.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.1/5.0

Scored across 6 tools

Disambiguation5/5

Each tool targets a clearly distinct resource and action: video metadata, comments, transcript content, language discovery, search, and server info. There is no overlap in purpose, and the transcript/language split is explicitly signposted (call get_transcript_languages first).

Naming Consistency4/5

Most tools follow a get_<resource> pattern (get_video_info, get_video_comments, get_video_transcript, get_server_info), which is highly readable. Minor deviations exist: search_youtube uses a different verb form and get_transcript_languages breaks the get_video_ prefix used by its sibling transcript tool.

Tool Count5/5

Six tools is well-scoped for a read-oriented YouTube data server, with each tool earning its place and no redundant operations. It sits comfortably in the ideal 3-15 range.

Completeness4/5

The surface covers the core read workflows well: video metadata, comments, transcripts, language discovery, and search. Gaps exist around channel-level and playlist operations, but these are workable omissions for a video-centric read-only server.

Maintenance

ActivityMaintained
ResponsivenessNo issues