yt-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| YTMUSIC_OAUTH_FILE | No | Absolute path to the OAuth token file (oauth.json) used for authenticated YouTube actions. | |
| YTMUSIC_OAUTH_CLIENT_ID | No | OAuth client ID, used as an alternative to YTMUSIC_OAUTH_CLIENT_FILE. | |
| YTMUSIC_OAUTH_CLIENT_FILE | No | Absolute path to the OAuth client JSON file (oauth-client.json). | |
| YTMUSIC_OAUTH_CLIENT_SECRET | No | OAuth client secret, used as an alternative to YTMUSIC_OAUTH_CLIENT_FILE. |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_songsA | Find songs with IDs, artists, album titles, durations, and links. |
| get_song_radioA | Get YouTube Music's ordered radio recommendations around the first song match. |
| get_multi_seed_radioA | Round-robin two to ten song radios into one deduplicated result. |
| create_private_radio_playlistB | Create a private playlist from a fresh song-radio queue in the connected account. |
| create_private_multi_seed_radio_playlistB | Create one private playlist from a fresh two-to-ten-seed radio mix. |
| resume_private_playlistB | Resume one exact saved track plan; do not invoke concurrently. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
The core actions are mostly distinct: search_songs is clearly separate from the radio and playlist tools. However, get_song_radio vs get_multi_seed_radio and the two create_private_*_playlist tools are easy to confuse without reading the descriptions closely.
All tool names follow a consistent snake_case verb_noun pattern, with descriptive prefixes like search_, get_, create_, and resume_. Even the longer playlist names remain predictable and readable.
Six tools is well-scoped for a YouTube Music radio/playlist helper. Each tool covers a meaningful part of the workflow without unnecessary bloat or duplication.
The core search, radio generation, and private playlist creation flows are covered, but the surface has gaps: there is no way to list, delete, or otherwise manage existing private playlists, and resume_private_playlist implies a saved-track-plan lifecycle that is not fully supported.