Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Spotify MCP

NPM · @NOVALUX12/SPOTIFY-MCP · SCANNED SEP 21

The most complete Spotify MCP: playback, library, playlists, search, podcasts and audiobooks.

0 this week 53 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 34 of 108 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency100
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to NovaLux12/spotify-mcp-server). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 12 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability0
  • Schema quality not yet verified: the captured schema was too large for us to store in full, so we will not judge it on a partial copy.Unverified
Stability & Change Management0
  • Stability not yet verified: the captured schema was too large for us to store in full, and comparing a partial copy would report our own trimming as a change.Unverified
Tool Coverage0
  • Tool coverage not yet verified: the captured tool definitions were too large for us to store in full, so we will not judge them on a partial copy.Unverified
Tool Safety0
  • Tool safety not yet verified: the captured tool definitions were too large for us to store in full, and the trim removes the very descriptions this category reads.Unverified
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass

Unverified: 4 categories

Categories scored 0 because our sandbox run of this package has not given us the schema these checks need to read. That is a gap on our side rather than a finding about the package, and we only credit what we can confirm, so the score stands at 0 until the capture succeeds. We are working through the fleet, so this normally clears without any action from you. How we score packages →

Install

How do I install the Spotify MCP server?

Spotify MCP runs locally as an npm package, launched with npx -y @novalux12/spotify-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · @novalux12/spotify-mcp

# add to Claude Code
claude mcp add novalux12-spotify-mcp-server -- npx -y @novalux12/spotify-mcp
// .cursor/mcp.json
{
  "mcpServers": {
    "novalux12-spotify-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@novalux12/spotify-mcp"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "novalux12-spotify-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@novalux12/spotify-mcp"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add novalux12-spotify-mcp-server -- npx -y @novalux12/spotify-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "novalux12-spotify-mcp-server": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@novalux12/spotify-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add novalux12-spotify-mcp-server --command npx --arg -y --arg @novalux12/spotify-mcp
# ~/.hermes/config.yaml
mcp_servers:
  novalux12-spotify-mcp-server:
    command: "npx"
    args: ["-y", "@novalux12/spotify-mcp"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "novalux12-spotify-mcp-server": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@novalux12/spotify-mcp"
      ]
    }
  }
}
# add to Vellum
assistant mcp add novalux12-spotify-mcp-server -t stdio -c npx -a -y @novalux12/spotify-mcp
// mcp.json
{
  "mcpServers": {
    "novalux12-spotify-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@novalux12/spotify-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 15 Sept 26 0
    • Package version: 1.22.0 → 1.30.0 functional
  • 14 Sept 26 0
    • Package version: 1.22.0 → 1.30.0 functional
  • 12 Sept 26 0
    • Package version: 1.22.0 → 1.30.0 functional
  • 10 Sept 26 0
    • Package version: 1.22.0 → 1.30.0 functional
  • 9 Sept 26 0
    • Stability: Stability not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. security
    • Tool safety: Tool safety not yet verified: we do not have a sandbox capture of the tool definitions this version of the package serves yet. security
    • Capabilities: pass → unverified functional
    • Schema quality: Schema quality not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. functional
    • Tool coverage: Tool coverage not yet verified: we do not have a sandbox capture of the tool definitions this version of the package serves yet. functional
    • Package version: 1.29.0 → 1.30.0 functional
  • 8 Sept 26 0
    • Package version: 1.22.0 → 1.29.0 functional
  • 6 Sept 26 +15
    • Malware scan: unverified → pass security
  • 5 Sept 26 −15
    • Malware scan: pass → unverified security
    • Package version: 1.22.0 → 1.29.0 functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 21 Sept 2026 · Analysed npm/@novalux12/spotify-mcp@1.30.0

Provenance Verified

A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.

Result Verified
Ecosystem npm
Reason Verified
Discovered via Registry attestation endpoint
Source repo NovaLux12/spotify-mcp-server
Certificate issuer https://token.actions.githubusercontent.com
Certificate SAN https://github.com/NovaLux12/spotify-mcp-server/.github/workflows/publish.yml@refs/tags/v1.30.0
Rekor log index 2763213934
Predicate type https://slsa.dev/provenance/v1
Subject digest sha512:db15d1663e98ac21cd7a8b559ef0b5f7f96ed2d21be5a6edeb74a863365ad417622fb13e5678b9e2b73adffcbbbcc94e67d6eafe8c18fdc451987eb01

Background: How many MCP packages publish verified provenance →

Dependencies 108 packages
Packages resolved 108
Stale 34
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 608 exposed · ~86,553 tokens partial

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
playlist_snapshot_detail ~154

No description provided.

NameTypeReqDescription
backup_filestringyes
max_resultsinteger
playlist_namestringyes
response_formatstring

No output schema declared.

No examples provided.

playlist_sort ~162

No description provided.

NameTypeReqDescription
dry_runboolean
max_resultsinteger
playlist_idstringyes
response_formatstring
sort_bystring

No output schema declared.

No examples provided.

playlist_staleness_report ~165

No description provided.

NameTypeReqDescription
limitinteger
max_resultsinteger
per_playlist_capinteger
response_formatstring
sortstring

No output schema declared.

No examples provided.

playlist_staleness_score ~207

No description provided.

NameTypeReqDescription
dry_runboolean
marketstring
max_resultsinteger
playlist_idstringyes
response_formatstring
threshold_daysinteger

No output schema declared.

No examples provided.

playlist_strip_episodes ~147

No description provided.

NameTypeReqDescription
dry_runboolean
playlist_idstringyes
response_formatstring
stripstring

No output schema declared.

No examples provided.

playlist_subtract ~72

No description provided.

NameTypeReqDescription
base_playlist_idstringyes
dry_runboolean
subtract_playlist_idsarrayyes

No output schema declared.

No examples provided.

playlist_swap_positions ~197

No description provided.

NameTypeReqDescription
dry_runboolean
max_resultsinteger
playlist_idstringyes
position_aintegeryes
position_bintegeryes
response_formatstring

No output schema declared.

No examples provided.

playlist_symmetric_difference ~109

No description provided.

NameTypeReqDescription
max_resultsinteger
playlist_id_astringyes
playlist_id_bstringyes
response_formatstring

No output schema declared.

No examples provided.

playlist_table_of_contents ~139

No description provided.

NameTypeReqDescription
max_resultsinteger
playlist_idstringyes
response_formatstring

No output schema declared.

No examples provided.

playlist_template_apply ~164

No description provided.

NameTypeReqDescription
descriptionstring
dry_runboolean
limitinteger
namestring
publicboolean
response_formatstring
templatestringyes

No output schema declared.

No examples provided.

playlist_to_library ~125

No description provided.

NameTypeReqDescription
dedupeboolean
dry_runboolean
playlist_idstringyes
response_formatstring

No output schema declared.

No examples provided.

playlist_trim ~79

No description provided.

NameTypeReqDescription
dry_runboolean
keepintegeryes
keep_whichstring
playlist_idstringyes

No output schema declared.

No examples provided.

playlist_trim_to_duration ~242

No description provided.

NameTypeReqDescription
dry_runboolean
keep_whichstring
max_resultsinteger
playlist_idstringyes
response_formatstring
target_minutesnumberyes
tolerance_secinteger

No output schema declared.

No examples provided.

playlist_union ~97

No description provided.

NameTypeReqDescription
dedupeboolean
dry_runboolean
source_playlist_idsarrayyes
target_namestring
target_playlist_idstring

No output schema declared.

No examples provided.

playlist_union_preview ~132

No description provided.

NameTypeReqDescription
max_resultsinteger
playlist_idsarrayyes
response_formatstring

No output schema declared.

No examples provided.

predict_next_tracks ~87

No description provided.

NameTypeReqDescription
countinteger
response_formatstring

No output schema declared.

No examples provided.

prune_old_snapshots ~207

No description provided.

NameTypeReqDescription
dry_runboolean
keep_lastinteger
older_than_daysinteger
playliststring
response_formatstring

No output schema declared.

No examples provided.

publisher_portfolio ~127

No description provided.

NameTypeReqDescription
eps_per_showinteger
max_resultsinteger
response_formatstring

No output schema declared.

No examples provided.

queue_duplicate_check ~66

No description provided.

NameTypeReqDescription
response_formatstring

No output schema declared.

No examples provided.

queue_next ~142

No description provided.

NameTypeReqDescription
device_idstring
dry_runboolean
response_formatstring
uristringyes

No output schema declared.

No examples provided.

queue_next_episode ~175

No description provided.

NameTypeReqDescription
device_idstring
dry_runboolean
episodes_backinteger
response_formatstring
show_idstringyes

No output schema declared.

No examples provided.

queue_playlist ~208

No description provided.

NameTypeReqDescription
device_idstring
dry_runboolean
limitinteger
modestring
response_formatstring
source_uristringyes

No output schema declared.

No examples provided.

queue_profile ~87

No description provided.

NameTypeReqDescription
response_formatstring

No output schema declared.

No examples provided.

queue_prune_plan ~116

No description provided.

NameTypeReqDescription
drop_episodesboolean
response_formatstring

No output schema declared.

No examples provided.

queue_replace_via_playlist ~217

No description provided.

NameTypeReqDescription
device_idstring
drop_dupesboolean
dry_runboolean
keep_artistsarray
playlist_namestring
response_formatstring

No output schema declared.

No examples provided.

queue_runtime_report ~69

No description provided.

NameTypeReqDescription
response_formatstring

No output schema declared.

No examples provided.

quick_save_now ~169

No description provided.

NameTypeReqDescription
dry_runboolean
marketstring
recentinteger
response_formatstring

No output schema declared.

No examples provided.

quota_probe ~123

No description provided.

NameTypeReqDescription
probe_setstring
response_formatstring

No output schema declared.

No examples provided.

read_playlist_snapshot ~154

No description provided.

NameTypeReqDescription
max_resultsinteger
response_formatstring
snapshotstringyes

No output schema declared.

No examples provided.

receipt_lookup ~120

No description provided.

NameTypeReqDescription
idstring
response_formatstring
sincestring
uristring

No output schema declared.

No examples provided.

record_feedback ~160

No description provided.

NameTypeReqDescription
actionstring
notestring
ratingstring
response_formatstring
subjectstring
subject_typestring

No output schema declared.

No examples provided.

refresh_smart_playlist ~116

No description provided.

NameTypeReqDescription
dry_runboolean
namestringyes
playlist_idstring
response_formatstring

No output schema declared.

No examples provided.

remove_duplicate_playlist_items ~172

No description provided.

NameTypeReqDescription
dry_runboolean
include_relinkedboolean
playlist_idstringyes

No output schema declared.

No examples provided.

remove_from_library ~132

No description provided.

NameTypeReqDescription
dry_runboolean
response_formatstring
urisarrayyes

No output schema declared.

No examples provided.

remove_from_library_by_playlist ~114

No description provided.

NameTypeReqDescription
dry_runboolean
playlist_idstringyes
response_formatstring

No output schema declared.

No examples provided.

remove_from_playlist ~102

No description provided.

NameTypeReqDescription
dry_runboolean
playlist_idstringyes
snapshot_idstring
urisarrayyes

No output schema declared.

No examples provided.

remove_playlist_range ~197

No description provided.

NameTypeReqDescription
dry_runboolean
endinteger
playlist_idstringyes
response_formatstring
startinteger

No output schema declared.

No examples provided.

remove_saved_episode ~144

No description provided.

NameTypeReqDescription
dry_runboolean
episode_idsarrayyes
response_formatstring

No output schema declared.

No examples provided.

remove_saved_items ~148

No description provided.

NameTypeReqDescription
dry_runboolean
response_formatstring
urisarrayyes

No output schema declared.

No examples provided.

remove_saved_shows ~150

No description provided.

NameTypeReqDescription
dry_runboolean
response_formatstring
show_idsarrayyes

No output schema declared.

No examples provided.

remove_unavailable_playlist_items ~126

No description provided.

NameTypeReqDescription
dry_runboolean
max_resultsinteger
playlist_idstringyes
response_formatstring

No output schema declared.

No examples provided.

rename_device ~76

No description provided.

NameTypeReqDescription
device_idstringyes
new_namestringyes
response_formatstring

No output schema declared.

No examples provided.

reorder_playlist_items ~169

No description provided.

NameTypeReqDescription
dry_runboolean
insert_beforeintegeryes
playlist_idstringyes
range_lengthinteger
range_startintegeryes

No output schema declared.

No examples provided.

repeat_listener_report ~142

No description provided.

NameTypeReqDescription
max_itemsinteger
max_resultsinteger
response_formatstring

No output schema declared.

No examples provided.

repeat_queue_toggle ~127

No description provided.

NameTypeReqDescription
device_idstring
dry_runboolean
enablebooleanyes
response_formatstring
shuffleboolean

No output schema declared.

No examples provided.

replace_playlist_items ~98

No description provided.

NameTypeReqDescription
dry_runboolean
playlist_idstringyes
urisarrayyes

No output schema declared.

No examples provided.

replay_session ~100

No description provided.

NameTypeReqDescription
dry_runboolean
modestring
response_formatstring
session_idstringyes

No output schema declared.

No examples provided.

resolve_artist ~121

No description provided.

NameTypeReqDescription
limitinteger
max_resultsinteger
querystringyes
response_formatstring

No output schema declared.

No examples provided.

restore_library_snapshot ~243

No description provided.

NameTypeReqDescription
backup_pathstringyes
categoriesarray
dry_runboolean
max_resultsinteger
response_formatstring

No output schema declared.

No examples provided.

restore_playback_state ~106

No description provided.

NameTypeReqDescription
device_idstring
dry_runboolean
namestringyes
response_formatstring

No output schema declared.

No examples provided.

Common questions

What is the Spotify MCP server?

Spotify MCP is listed in the public MCP registry as io.github.NovaLux12/spotify-mcp-server. The most complete Spotify MCP: playback, library, playlists, search, podcasts and audiobooks. This page covers its npm package (@novalux12/spotify-mcp).

Is the Spotify MCP server safe to use?

Spotify MCP scores 53 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 21 September 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

Is the Spotify MCP server still maintained?

Spotify MCP is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Spotify MCP server under?

Spotify MCP declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.