Skip to main content
Glama
EthanDM

youtube-mcp

by EthanDM

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
YT_DLP_PATHNoPath to yt-dlp executable, if not on PATH.
YOUTUBE_API_KEYYesA restricted YouTube Data API key.
YOUTUBE_CLIENT_IDNoGoogle OAuth desktop client ID.
YOUTUBE_SMOKE_URLNoURL for smoke test (default public video if not set).
YOUTUBE_REDIRECT_URINoLoopback redirect URI configured in Google OAuth client.http://127.0.0.1:8787/callback
YOUTUBE_CLIENT_SECRETNoGoogle OAuth client secret (optional).
YOUTUBE_SMOKE_COMMENTS_URLNoURL for comments smoke test.
YOUTUBE_SMOKE_TRANSCRIPT_URLNoURL for transcript smoke test.
YOUTUBE_SMOKE_OWNED_PLAYLIST_URLNoPrivate test playlist URL for ownership smoke check.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
youtube_get_authenticated_channelA

Gets the YouTube channel attached to the local OAuth session.

youtube_list_owned_playlistsA

Gets one explicit page of playlists owned by the authenticated channel.

youtube_get_owned_playlist_itemsA

Gets one explicit item page from a playlist owned by the authenticated channel.

youtube_create_playlistB

Creates a playlist owned by the authenticated channel. New playlists default to private.

youtube_update_playlistB

Updates metadata on a playlist owned by the authenticated channel.

youtube_add_playlist_videoC

Adds a public video to a playlist owned by the authenticated channel.

youtube_remove_playlist_itemA

Removes one exact item from an owned playlist. Requires confirm: true.

youtube_reorder_playlist_itemA

Moves one exact item in an owned playlist. Requires confirm: true.

youtube_get_videoA

Gets normalized public metadata for a YouTube video URL.

youtube_search_videosA

Searches one explicit page of public YouTube videos and returns normalized metadata.

youtube_get_playlist_itemsA

Gets one explicit page of a public YouTube playlist, including item IDs and positions.

youtube_list_transcript_languagesB

Lists creator and automatic caption tracks exposed for a YouTube video.

youtube_get_transcriptB

Gets one explicit page of timestamped creator or automatic YouTube caption segments.

youtube_get_channelA

Gets normalized public metadata for a YouTube channel URL using /channel/CHANNEL_ID or /@handle.

youtube_get_channel_videosB

Gets one explicit page of recent public uploads from a YouTube channel URL.

youtube_find_commentsA

Finds literal terms across an explicit bounded number of comment pages. Results always describe retrieved pages only, never every comment on the video.

youtube_get_commentsC

Gets one explicit page of public YouTube comment threads. matchTerms only filters the retrieved page, not every comment on the video.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/EthanDM/youtube-mcp'

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