Skip to main content
Glama

playlist_pair_check

Compare two Spotify playlists to reveal size, overlap, Jaccard similarity, and tracks missing from each side, helping decide whether to merge or split them.

Instructions

Pairwise relationship report for two playlists: sizes, overlap, Jaccard similarity, and sampled candidates from each side that the other lacks (for merging or splitting decisions). Read-only. Quota: 🟢 4 GETs.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
max_resultsNoMax items to return (default: SPOTIFY_MCP_MAX_ITEMS env or 50)
playlist_a_idYesFirst playlist, as ID or spotify:playlist: URI
playlist_b_idYesSecond playlist, as ID or spotify:playlist: URI
response_formatNo'concise' = human prose, 'detailed' = more fields in prose, 'json' = raw API objectconcise

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.26.1

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden and discloses two meaningful traits: 'Read-only' (no mutation side effects) and 'Quota: 🟢 4 GETs' (cost/rate awareness). The word 'sampled' also signals candidates are a non-exhaustive subset, a genuine behavioral nuance. Edge-case behavior (invalid/private playlists) is not covered, but the safety and cost profile is.

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 dense sentences front-load the purpose and output metrics, then append safety and quota facts with zero filler. Every clause ('Read-only', 'Quota: 🟢 4 GETs', 'for merging or splitting decisions') earns its place.

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 moderate-complexity analysis tool with fully documented parameters, the description covers purpose, output content, decision context, safety, and cost. With no output schema, the listed report contents plus the response_format enum compensate reasonably. Minor gaps remain (behavior on invalid/private playlists, determinism of sampling), but nothing blocks correct invocation.

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 100% — all four parameters (playlist_a_id, playlist_b_id, max_results, response_format) carry descriptions covering URI formats, bounds, defaults, and enums. The tool description adds no parameter-level detail beyond the schema, so the baseline of 3 applies.

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 deliverable — a 'pairwise relationship report' for two playlists — and enumerates concrete metrics (sizes, overlap, Jaccard similarity, sampled missing candidates) plus the decision context (merging/splitting). This differentiates it from sibling actions like playlist_union, diff_playlists, or playlist_overlap_matrix, which are matrix/action-oriented rather than pairwise decision-support reports.

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?

'For merging or splitting decisions' plus 'Read-only' gives an agent clear context for when to invoke this: the analysis step before a merge/split mutation. It doesn't explicitly name alternatives or state when-not-to-use conditions, so it stops short of the explicit-exclusion bar.

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

Deploy Server

Other Tools