build-spotify-playlist

build-spotify-playlist is a skill for Codex from martin-gomola/spotify-mcp. It costs 88 tokens per session (901 once invoked), scanned A, original, MIT.

A playlist tool for creating, extending, arranging, checking, or DJ-ordering playlists in Spotify, a music-streaming service.

In plain words
What is it for?
Use it to discover songs, curate music from your liked tracks, select exact recordings, edit playlists, and arrange songs by mood, activity, tempo, or key.
Why use it?
It helps avoid choosing the wrong recording or making a playlist with a poor progression for the intended activity.

Skill for Codex

Written for Codex: agents/openai.yaml present.

Good fit Use it to discover songs, curate music from your liked tracks, select exact recordings, edit playlists, and arrange songs by mood, activity, tempo, or key.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/martin-gomola/spotify-mcp/build-spotify-playlist
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add martin-gomola/spotify-mcp --skill build-spotify-playlist
Clone the repo
git clone --depth 1 https://github.com/martin-gomola/spotify-mcp

Made for: Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for build-spotify-playlist

README.md
[![agentmods](https://agentmods.dev/badge/skills/martin-gomola/spotify-mcp/build-spotify-playlist/github.svg)](https://agentmods.dev/skills/martin-gomola/spotify-mcp/build-spotify-playlist)
Your own site
<a href="https://agentmods.dev/skills/martin-gomola/spotify-mcp/build-spotify-playlist"><img src="https://agentmods.dev/badge/skills/martin-gomola/spotify-mcp/build-spotify-playlist/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for build-spotify-playlist

Your own site · 80×15
<a href="https://agentmods.dev/skills/martin-gomola/spotify-mcp/build-spotify-playlist"><img src="https://agentmods.dev/badge/skills/martin-gomola/spotify-mcp/build-spotify-playlist.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 88 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 901 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00088 $0.00901
Opus 5 $0.00044 $0.00451
Sonnet 5 $0.00018 $0.00180
Haiku 4.5 $0.00009 $0.00090

Measured 10d ago against content hash e63c1910556e, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

build-spotify-playlist scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/spotify-mcp/skills/build-spotify-playlist/SKILL.md · 64 lines

How it starts

The opening of the file, as written. The whole thing — 64 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Build a Spotify playlist

Use exact Spotify URIs and finish with an observed playlist, not an optimistic success message.

Choose the source

  • For general discovery, draft a varied candidate list and resolve each candidate with spotify_search. Reject mismatched artists, tribute recordings, karaoke, and unintended edits.
  • For taste-based work, call spotify_sample_liked_songs so candidates span newest through oldest saves. Use spotify_saved_tracks only for exact nearby pages or a complete audit.
  • For a deterministic rediscovery shortlist, call spotify_taste_recommendations. State that it is local curation from top, recent, and sampled liked-song signals, not Spotify personalization.
  • For an existing playlist, resolve its exact ID and read every page with spotify_playlist_items.

Build safely

  1. Preserve recording URIs returned by Spotify. Matching title and artist do not make two versions interchangeable.
  2. Shape an intentional arc for the activity; do not globally sort one scalar unless explicitly requested.
  3. Create public by default, matching Spotify's default, unless the user explicitly requires private. When public visibility is accepted, treat it as final: do not retry privacy updates, inspect the plugin request path, search for private-creation workarounds, or block track writes on a visibility warning. Only investigate visibility when private is an explicit requirement. Add at most 100 URIs per write.
  4. For playlist contents and order, treat ambiguous, mismatch, stale, or partial as stop states. Re-read before deciding what happened and never repeat the write automatically. Do not apply this stop rule to accepted public visibility.
  5. Re-read the entire result and compare exact URIs and order. Return the playlist URL, track list, arc, skipped candidates, and verification state.
  6. After a successful final verification, when the client supports MCP Apps, call spotify_render_results exactly once before the textual completion response. Render only the final playlist entity and include kind: playlist; a plain Markdown link is not a substitute when the renderer is available. If rendering itself fails, report that failure and fall back to the canonical Spotify link without retrying the renderer.

Read the full file on GitHub · 64 lines

Files

What ships with it

3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 10d ago First seen · 64 lines · 88 tokens per session scan A e63c1910556e

Subscribe to this mod's changes

build-spotify-playlist is a skill published in the GitHub repository martin-gomola/spotify-mcp (0 stars, last pushed 2d ago), licensed MIT. It adds 88 tokens to every session and 901 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

post-to-xhs

A publishing guide for 小红书, a Chinese social-media platform. It covers posting image-and-text content or a longer formatted article, using supplied content or a webpage.

xpzouying/xiaohongshu-mcp · 96 tokens

screenshot-camera

Capture a screenshot from a Unity Camera and return it as a PNG image for direct LLM inspection. Falls back to Camera.main (then any active camera) when cameraRef is null. Width and height are capped to keep response size manageable.

IvanMurzak/Unity-MCP · 58 tokens

screenshot-game-view

Capture a screenshot of the Unity Editor's Game View by reading its internal render texture directly. Image size matches the current Game View resolution; the tool corrects Y-flip on DirectX / Metal so the output is always upright. Requires an open Game View window.

IvanMurzak/Unity-MCP · 58 tokens

screenshot-scene-view

Capture a screenshot from the Unity Editor Scene View at the requested size. Renders via the Scene View's active camera onto a temporary RenderTexture. Requires an open Scene View.

IvanMurzak/Unity-MCP · 42 tokens

AI Image & Video Generator — GPT Image 2, Seedance, ComfyUI

Generate images and videos from text with multi-provider routing — supports GPT Image 2.0 (near-perfect text rendering), Nanobanana 2, Seedream 5.0, Midjourney V8.1 (unified photorealistic + anime), Flux 2 Klein (cheap drafts), Seedance 2.0 / Veo 3.1 / Grok Video / Agnes Video, and local ComfyUI workflows. Includes…

jau123/MeiGen-AI-Design-MCP · 177 tokens

image-prompting

Use when generating or editing images via blockrunimage — especially with GPT Image 2, Nano Banana, or Grok Imagine for posters, UI mockups, marketing assets, product shots, or anything with on-image text. Turns vague user requests ("make me a cool poster") into structured, text-accurate prompts that actually render…

BlockRunAI/blockrun-mcp · 79 tokens