Agent skill · idanbeck

spotify-skill

Read Spotify liked songs, playlists, top tracks and recently played, and export them as a DJ crate for Beatport matching. Use when Idan asks what he saved or liked on Spotify, wants to see or dump a playlist, or wants to turn earmarked tracks into a buy list. Read-only - it never modifies playlists or controls playback.

What it needs

About 4k tokens when loaded.

What this skill does

Spotify (read-only library + crate export) Pull liked songs, playlists, and top tracks out of Spotify, and export them in the shared crate format that beatport-skill matches against. Read-only by design. The requested scopes cover reading the library only — no playlist-modify, no playback control. Don't add write scopes without asking. The one thing to know: no BPM or key Spotify permanently disabled audio-features, audio-analysis, recommendations, related-artists, and 30-second previews for any app created after 2024-11-27. A new app gets 403 on those endpoints — this is policy, not a bug, and no amount of scope fixes it. So a crate exported here has bpm: null and key: null by design. BPM and key come from Beatport during beatportskill.py match. If Idan asks for the BPM of something he liked, that is the path — don't go looking for a Spotify endpoint that will serve it. What Spotify does still give, and what makes this whole workflow work: ISRC, on track.externalids.isrc. That is an exact identifier, and matching a crate to Beatport by ISRC is exact rather than fuzzy. Always prefer a Spotify-sourced crate over a YouTube one. Setup Two ways in. (b) needs no app at all — use it if the developer dashboard refuses to create one, which it does fairly often with a generic "Something went wrong". (a) CSV import — the one that works right now Spotify froze new developer-app creation in Dec 2025 and it is still frozen. The dashboard shows a Create app button that fails with a generic "Something went wrong, we were not able to create your app", or says outright "New integrations are currently on hold". Nothing about the form is wrong and retrying will not help. Route around it with an existing exporter — those authorize against apps registered long before the freeze, so they still work: 1. <https://exportify.net> (open source, browser-only, read-only) - log in, export the playlist or Liked Songs to CSV. 2. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills idanbeck/spotify-skill

View the source on GitHub

Browse the @skills marketplace