Read-only MCP server for a personal YouTube Music library
YouTube Music MCP has 7 tools with complete input schemas and descriptions in Spanish. All tools are READ_ONLY except export_liked_songs (WRITE). Naming follows verb_noun convention (list_, get_, search_, export_). However, descriptions are brief (avg ~80 chars) and lack LLM-optimized guidance on when to use each tool vs. alternatives. Parameter descriptions are present but minimal. Output schemas are not documented, LLMs cannot predict response structure. No error handling guidance, no pagination documentation despite list tools accepting limits. Tool composition is reasonable but lacks chaining hints (e.g., 'get_playlist requires playlist_id from list_library_playlists').
Comprueba si la sesion local esta configurada; verify=True hace una llamada privada minima.
Exporta favoritos a CSV o JSON dentro de Documents/YouTube Music Exports.
Obtiene metadatos y canciones de una playlist por su identificador.
Lista las playlists guardadas en la biblioteca de la cuenta autenticada.
Lista canciones marcadas con Me gusta y permite filtrarlas por texto, artista o album.
Busca en el catalogo por texto, genero y/o artista; el genero se incorpora a la consulta.
Output schemas not documented. LLMs cannot predict response structure or plan downstream tool calls. E.g., does list_liked_songs return {songs: [...]} or {items: [...], total: N}?
Descriptions lack LLM-optimized guidance. No explanation of WHEN to use each tool vs. alternatives (e.g., search_music vs. list_liked_songs). Descriptions are 50 - 65 chars; baseline for A+ is 50 - 200 chars with context.
No pagination or result-limiting guidance in tool descriptions. list_liked_songs and search_music accept 'limit' but do not document max values, default behavior, or whether results are paginated.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | 2026-07-28+ | v2 |
Resume favoritos por artistas, albumes, anos y pistas no disponibles.
No tool chaining hints. get_playlist requires playlist_id, but list_library_playlists does not document that it returns playlist_id. LLMs must infer the connection.
No error handling or recovery guidance. If auth_status fails, what should the LLM do? If export_liked_songs hits a permission error, how does the agent recover?