Skip to main content
Glama

playlist_shuffle

Shuffle a Spotify playlist randomly using the Fisher-Yates algorithm. Optionally provide a seed for reproducible results.

Instructions

Fisher-Yates shuffle a playlist (seeded optional). Quota: 🟢 GET all + PUT/POST.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
seedNo
dry_runNoPreview only: validate inputs and describe exactly what would change without performing it
playlist_idYes
Behavior3/5

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

With no annotations, the description carries the full burden. It adds useful context: Fisher-Yates implies a fair/unbiased permutation, 'seeded optional' implies reproducibility, and 'GET all + PUT/POST' implies the tool reads the full playlist and writes it back. However, it never explicitly states that the shuffle destroys the existing order in place, requires playlist-edit permissions, or is irreversible, which a mutation tool should disclose.

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?

Two tightly packed sentences with no filler. The core action is front-loaded, and the quota/behavior hint is appended efficiently. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with zero annotations, no output schema, and only 33% schema coverage, the description is too sparse. Missing: whether the shuffle replaces the playlist in place, whether it can be undone, permission requirements, what the return value is, and how it relates to the nearly identical sibling playlist_seed_shuffle. An agent cannot safely invoke this without making assumptions.

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 coverage is low at 33% (only dry_run is described). The description partially compensates by clarifying that seeding is optional for the seed parameter, but it adds nothing about the required playlist_id format (URI vs ID) and does not explain what the seed value controls beyond its existence. This is partial compensation for a significant documentation gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (shuffle), resource (playlist), and algorithm (Fisher-Yates), making the core action unambiguous. However, it does not differentiate from the sibling 'playlist_seed_shuffle,' which appears to overlap with the 'seeded optional' capability, leaving the agent to guess which tool to prefer.

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

Usage Guidelines2/5

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

No when-to-use or when-not-to-use guidance is provided. The quota note is operational context, not selection guidance, and with ~300 siblings including playlist_seed_shuffle, playlist_reverse, and playlist_rotate, the description offers no help in choosing this tool over alternatives.

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

Install Server

Other Tools

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/NovaLux12/spotify-mcp-server'

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