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
taste_checkpoint_diff ~101

No description provided.

NameTypeReqDescription
fromstring
response_formatstring
tostring

No output schema declared.

No examples provided.

taste_daily_brief ~116

No description provided.

NameTypeReqDescription
datestring
response_formatstring
statsfm_userstringyes

No output schema declared.

No examples provided.

taste_diamond_rotation ~143

No description provided.

NameTypeReqDescription
max_resultsinteger
response_formatstring
statsfm_userstringyes
track_countinteger

No output schema declared.

No examples provided.

taste_era_playlist ~150

No description provided.

NameTypeReqDescription
era_indexinteger
max_resultsinteger
response_formatstring
statsfm_userstringyes
track_countinteger

No output schema declared.

No examples provided.

taste_forgotten_bangers ~156

No description provided.

NameTypeReqDescription
max_resultsinteger
response_formatstring
statsfm_userstringyes
top_limitinteger
track_countinteger

No output schema declared.

No examples provided.

taste_genre_bridge ~171

No description provided.

NameTypeReqDescription
from_genrestring
max_resultsinteger
response_formatstring
statsfm_userstringyes
to_genrestring
track_countinteger

No output schema declared.

No examples provided.

taste_listening_clock ~94

No description provided.

NameTypeReqDescription
response_formatstring
statsfm_userstringyes

No output schema declared.

No examples provided.

taste_novelty_loyalty ~120

No description provided.

NameTypeReqDescription
rangestring
response_formatstring
statsfm_userstringyes

No output schema declared.

No examples provided.

taste_obsession_ladder ~131

No description provided.

NameTypeReqDescription
max_resultsinteger
rangestring
response_formatstring
statsfm_userstringyes

No output schema declared.

No examples provided.

taste_profile ~156

No description provided.

NameTypeReqDescription
max_resultsinteger
rangestring
response_formatstring
statsfm_userstringyes

No output schema declared.

No examples provided.

taste_recommendations ~149

No description provided.

NameTypeReqDescription
max_resultsinteger
response_formatstring
statsfm_userstringyes

No output schema declared.

No examples provided.

taste_revival_queue ~140

No description provided.

NameTypeReqDescription
max_resultsinteger
queue_sizeinteger
response_formatstring
statsfm_userstringyes

No output schema declared.

No examples provided.

taste_shift_report ~84

No description provided.

NameTypeReqDescription
limitinteger
response_formatstring

No output schema declared.

No examples provided.

taste_to_playlist ~182

No description provided.

NameTypeReqDescription
dry_runboolean
max_resultsinteger
response_formatstring
seedstring
statsfm_userstringyes
track_countinteger

No output schema declared.

No examples provided.

taste_weekly_recap ~114

No description provided.

NameTypeReqDescription
daysinteger
response_formatstring
statsfm_userstringyes

No output schema declared.

No examples provided.

title_length_outliers ~121

No description provided.

NameTypeReqDescription
max_resultsinteger
response_formatstring
scan_capinteger

No output schema declared.

No examples provided.

toolset_report ~49

No description provided.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

top_artist_leaderboard ~131

No description provided.

NameTypeReqDescription
limitinteger
max_resultsinteger
response_formatstring

No output schema declared.

No examples provided.

top_artist_ranking_delta ~132

No description provided.

NameTypeReqDescription
base_rangestring
compare_rangestring
limitinteger
response_formatstring

No output schema declared.

No examples provided.

top_artists_by_range ~95

No description provided.

NameTypeReqDescription
limitinteger
response_formatstring
time_rangestring

No output schema declared.

No examples provided.

top_genre_census ~142

No description provided.

NameTypeReqDescription
limitinteger
max_resultsinteger
response_formatstring

No output schema declared.

No examples provided.

top_track_leaderboard ~131

No description provided.

NameTypeReqDescription
limitinteger
max_resultsinteger
response_formatstring

No output schema declared.

No examples provided.

top_track_ranking_delta ~132

No description provided.

NameTypeReqDescription
base_rangestring
compare_rangestring
limitinteger
response_formatstring

No output schema declared.

No examples provided.

track_album_bundle ~142

No description provided.

NameTypeReqDescription
marketstring
response_formatstring
track_idstringyes

No output schema declared.

No examples provided.

track_enrichment_batch ~147

No description provided.

NameTypeReqDescription
fieldsarray
max_resultsinteger
response_formatstring
track_idsarrayyes

No output schema declared.

No examples provided.

track_release_origin ~142

No description provided.

NameTypeReqDescription
artist_idstringyes
max_releasesinteger
response_formatstring
track_namestringyes

No output schema declared.

No examples provided.

track_rotation_report ~138

No description provided.

NameTypeReqDescription
max_itemsinteger
max_resultsinteger
response_formatstring

No output schema declared.

No examples provided.

transfer_playback ~104

No description provided.

NameTypeReqDescription
device_idstringyes
dry_runboolean
playboolean
response_formatstring

No output schema declared.

No examples provided.

transfer_playback_with_state ~135

No description provided.

NameTypeReqDescription
dry_runboolean
playboolean
response_formatstring
target_devicestringyes

No output schema declared.

No examples provided.

undo_last_mutation ~87

No description provided.

NameTypeReqDescription
dry_runboolean
response_formatstring

No output schema declared.

No examples provided.

undo_mutation ~110

No description provided.

NameTypeReqDescription
dry_runboolean
receipt_idstringyes
response_formatstring

No output schema declared.

No examples provided.

undo_preview ~112

No description provided.

NameTypeReqDescription
checkboolean
mutation_idstringyes
response_formatstring

No output schema declared.

No examples provided.

unfollow_artists ~105

No description provided.

NameTypeReqDescription
dry_runboolean
idsarrayyes
response_formatstring

No output schema declared.

No examples provided.

unmute ~119

No description provided.

NameTypeReqDescription
device_idstring
dry_runboolean
response_formatstring

No output schema declared.

No examples provided.

unpin_playlist ~105

No description provided.

NameTypeReqDescription
dry_runboolean
playlist_idstringyes
response_formatstring

No output schema declared.

No examples provided.

unplayable_saved_check ~127

No description provided.

NameTypeReqDescription
max_resultsinteger
response_formatstring
scan_capinteger

No output schema declared.

No examples provided.

unsave_orphan_tracks ~141

No description provided.

NameTypeReqDescription
dry_runboolean
max_removeinteger
response_formatstring
scan_capinteger

No output schema declared.

No examples provided.

unsubscribe_from_show ~151

No description provided.

NameTypeReqDescription
dry_runboolean
response_formatstring
show_idstringyes

No output schema declared.

No examples provided.

update_playlist ~100

No description provided.

NameTypeReqDescription
collaborativeboolean
descriptionstring
dry_runboolean
idstring
namestring
playlist_idstring
publicboolean

No output schema declared.

No examples provided.

upload_playlist_cover ~108

No description provided.

NameTypeReqDescription
dry_runboolean
jpeg_base64stringyes
playlist_idstringyes

No output schema declared.

No examples provided.

uri_kind_stats ~48

No description provided.

NameTypeReqDescription
urisarrayyes

No output schema declared.

No examples provided.

uri_namespace_census ~89

No description provided.

NameTypeReqDescription
response_formatstring
urisarrayyes

No output schema declared.

No examples provided.

uri_shorthand_expand ~94

No description provided.

NameTypeReqDescription
refsarrayyes

No output schema declared.

No examples provided.

uri_to_base62 ~88

No description provided.

NameTypeReqDescription
response_formatstring
uristringyes

No output schema declared.

No examples provided.

validate_spotify_uri ~53

No description provided.

NameTypeReqDescription
uristringyes

No output schema declared.

No examples provided.

verify_receipt ~40

No description provided.

NameTypeReqDescription
receipt_idstringyes

No output schema declared.

No examples provided.

volume_ramp ~216

No description provided.

NameTypeReqDescription
device_idstring
dry_runboolean
end_statestring
minutesinteger
response_formatstring
step_minutesinteger
target_percentintegeryes

No output schema declared.

No examples provided.

volume_report ~84

No description provided.

NameTypeReqDescription
response_formatstring

No output schema declared.

No examples provided.

volume_step ~137

No description provided.

NameTypeReqDescription
device_idstring
dry_runboolean
response_formatstring
stepintegeryes

No output schema declared.

No examples provided.

watch_artists ~84

No description provided.

NameTypeReqDescription
artist_idsarrayyes
namestring
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.