Skip to main content
Glama
umsachde

spotify-mcp

by umsachde

get_playlist_tracks

Fetch tracks from a Spotify playlist by ID, with an optional limit. Excludes local files and episodes.

Instructions

Get the tracks in a playlist. Omit limit to fetch the entire playlist.

Local files and episodes (no track id) are skipped. See _track_of for the two payload shapes this has to read.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
playlist_idYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the transparency burden and does meaningful work: it discloses that local files and episodes without a track id are skipped and warns that two payload shapes need to be handled via `_track_of`. It stops short of explaining auth, error, or return details, but the output schema covers return shape and no side-effect hazards remain hidden.

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 three short sentences with no filler: purpose first, limit behavior second, edge-case handling third. Every sentence contributes information an agent needs.

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?

For a two-parameter fetch with an output schema present, the description covers the main invocation choice, the edge cases, and the payload complexity. It is not exhaustive about failure modes or authentication, but those are not necessary for a simple playlist-track lookup.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must compensate for the parameters. It adds real meaning for `limit` ('omit to fetch the entire playlist'), but `playlist_id` is only implied by the tool name and sentence rather than explicitly documented.

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 opens with a specific verb and object: 'Get the tracks in a playlist,' which clearly identifies both the action and the target resource. The tool name and sibling set make its scope obvious, and it is distinct from album, saved-track, and individual-track lookups.

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

Usage Guidelines4/5

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

It gives a concrete behavioral instruction: omit `limit` to fetch the entire playlist, implying limit should be supplied when a partial fetch is desired. It does not explicitly state when a sibling tool should be preferred, but the playlist-scoped context is clear enough for an agent to route correctly.

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