Releases: NovaLux12/spotify-mcp-server
Releases · NovaLux12/spotify-mcp-server
Release list
v1.30.0
v1.29.0
v1.28.2
v1.28.1 — deps: zod 4.5.1, release-please-action bump
v1.28.1 — Dependency bumps
Merged (NovaLux12):
- #535 — zod 4.4.3 → 4.5.1 (build + 1066 tests green)
- #534 — google-github-actions/release-please-action a017ec → e4dc86 (v4)
Held:
- #538 — typescript 5.9.3 → 7.0.2 + @types/node 22 → 26 — closed: TS 7 Go port fails build (20+ errors: implicit any, missing node types). Needs dedicated TS-7 migration, tracked separately.
Based on v1.28.0 (cfca407). No API changes.
v1.28.0 — pagination, params, discovery, prompts, docs (EPICs 522-526)
v1.28.0 — Big Sweep: 62 issues across 5 EPICs → 0
Merged (squash) — all 100/100 reviewed, NovaLux12 only:
- #539 — EPIC 526 Docs & Skills (9): #470 #475 #484 #490 #495 #498 #501 #519 #441 — README/SPEC 550→551, distribution 157→551, skills grep + 538→551, toolsets header 16/25/24/16, server.json 1.27.1 sync
- #540 — EPIC 525 Prompts (11): #452 #455 #456 #457 #460 #462 #506 #509 #511 #514 #516 — batch_add_to_queue, show_new_episodes, dry_run, since regex, parallel taste summary
- #536 — EPIC 524 Params (17): #458 #461 #465 #499 #502 #492 #503 #508 #510 #515 #517 #520 #504 #448 #449 #453 #500 — MARKET_CODE, response_format 32 tools, coerce, .default(), hints, ENOENT
- #541 — EPIC 522 Discovery (8): #464 #472 #474 #476 #480 #482 #513 #468 — alias not delete (539→539), playbackintel/discovery sets, Also covers 31/See also 28
- #542 — EPIC 523 Pagination (17): #466 #467 #459 #471 #477 #505 #507 #512 #473 #487 #446 #447 #463 #521 #469 #478 #497 — CHUNK_CAPS 50/20/100/40, parallel chunks (Promise.all), fetch_all on catalog list tools (artist_albums, album_tracks, show_episodes)
Monotonic: 538 server.tool + 6 registerTool (551 live) preserved → release 1.28.0. Build 0, tests 1066/1066.
History: origin/main force-synced fbe81c1→6adec1f, #529/#530 superseded by #537/#536, 523 slice (437edeb) ported to full-repo 542.
v1.26.1
v1.26.0
v1.25.0
v1.24.0
1.24.0 (2026-08-27)
Features
- catalog: exhaust2 catalog slice — 19 typed-search, bundle, and stats tools (closes #335, closes #336, closes #337, closes #342, closes #343, closes #344, closes #345, closes #346, closes #347, closes #348, closes #349, closes #350, closes #351, closes #352, closes #353, closes #354, closes #355, closes #356, closes #357) (#435) (986c32a)
- enggating: graceful-403 gating contract for the #329 app-registration-gated surface (closes #428, closes #429) (#431) (1541531)
- misc: add 27 exhaust2 tools (#401-#427) (#433) (f65ba06)
- playback: exhaust2 playback slice — 22 tools (closes #358-#379) (#432) (00e037c)
- playlists: exhaust2 playlists slice — 18 set-algebra, curation, and analytics tools (closes #372, closes #373, closes #374, closes #375, closes #376, closes #377, closes #378, closes #379, closes #380, closes #381, closes #382, closes #383, closes #384, closes #385, closes #386, closes #387, closes #388, closes #389) (#434) (47ef6e0)
- playlists: final three playlists-surface tools — fill-from-search, set-algebra evaluator, cover-from-track (closes #398, closes #399, closes #400) (#437) (68a61e4)
v1.23.0
1.23.0 (2026-08-26)
Features
- auth,config,doctor: auth hardening + scopes/profiles/market/doctor TTL (#246) (9a8b90e)
- auth: configurable OAuth scopes via SPOTIFY_SCOPES and auth (9a8b90e)
- auth: multi-profile token management via SPOTIFY_MCP_PROFILE and (9a8b90e)
- catalog: typed search family + category gaps (#322) (4c0aa1b)
- config: SPOTIFY_MCP_MARKET default-market with arg>env>account> (9a8b90e)
- doctor: report token TTL/expiry ETA, refresh_token presence, token (9a8b90e)
- exhaust-misc: mop-up 10 tools to close 60/60 sweep (search_within_playlist, history stats, audiobook progress + 7 deferred) (#323) (636e247)
- exhaust-remnants: close final 14 gaps to 95/95 (265-267,301-307,311-314) (#324) (f2eee0f)
- library,playlists,smart: library/smart/discovery cluster (#236 #234 #229 #225 #219 #237) (#244) (e81d6f3)
- playback: exhaustive playback/queue/player intel — 15 tools (#320) (a579b64)
- playlists/library/following: exhaustive sweep — 18 tools (#284-#297 + saved-search trio) (#319) (f25eb90), closes #285 #286 #287 #288 #289 #290 #291 #292 #293 #294 #295 #296
- portability: profile portability cluster — fixes + exports + resources (#240 #238 #223 #220 #218) (#245) (33d05e2)
- quota: dry_run + quota disclosure for coverage, duplicates, backup, export (#255) (628ff9f)
Bug Fixes
- auth: callback server binds dual-stack for localhost redirects; (9a8b90e)
- exhaustive portability/analytics/resources/prompts (sweep P0-P2) (#321) (391754a)
- freshness: budget, quota recovery and watermark hold (#243) (2b04285)
- queue,episodes: remove 4 phantom tools, add save_queue_as_playlist, shared ID resolver, music_briefing prompt (#248) (a4bdf73)
- quota: budget, dry_run and quota recovery for showradar + artistwatch (#249 #250) (#254) (34f3665)
- safety: safety/receipts/readonly/undo/backup cluster (#241 #233 #235 #217 #216) (#247) (0f41271)