Skip to main content
Glama

Set playlist cover

set_playlist_image
DestructiveIdempotent

Replace a published Spotify playlist's cover image using a local JPEG file. Requires the playlist to be published first and the image saved on this machine.

Instructions

Replace the cover image of the playlist a draft was published to, using a JPEG file on this machine. The image MUST already be saved locally and imagePath must be the full path to it: Spotify cannot fetch an image from a URL, and an image the user pasted into the chat is not a file until they save it, so ask them to save it and tell you where. JPEG only (a renamed .png is rejected) and roughly 190 KB or smaller. Requires the draft to be published (create_playlist first) and a Spotify login that granted the image-upload permission; if it was granted before this permission existed, status will say to reconnect.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
draftIdYes
imagePathYesFull path to a .jpg file already saved on this machine, e.g. C:\Users\you\Downloads\cover.jpg or /home/you/Downloads/cover.jpg

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.0

TDQS

A4.8/5.0
Behavior5/5

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

Annotations indicate destructiveHint=true and idempotentHint=true, and the description adds critical behavioral details: JPEG only, size limit, local file requirement, and authentication state handling. It also clarifies that a pasted image is not a file, which is valuable beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the main action and constraints, and each sentence provides necessary information. However, it is somewhat dense and could be slightly more structured, but it remains efficient.

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

Completeness5/5

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

Given the complexity of the operation (external API, file handling, authentication nuances) and no output schema, the description covers all necessary details for an agent to invoke correctly: prerequisites, file requirements, and error handling for permissions.

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

Parameters4/5

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

Schema coverage is 50%, with imagePath fully described in the schema. The description adds meaning by emphasizing that imagePath must be a full local path and that the file must be JPEG with size constraints, which are not in the schema. DraftId is not elaborated in the description, but its purpose is clear from context.

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?

States a specific verb (Replace) and resource (cover image of the playlist a draft was published to) with clear scope. It distinguishes itself from siblings like create_playlist by clarifying that the draft must already be published.

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

Usage Guidelines5/5

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

Explicitly states prerequisites ('Requires the draft to be published (create_playlist first)') and the condition to reconnect if permissions were granted before the image-upload permission existed. It also instructs on how to handle a pasted image.

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