Lineupify vs Spotify MCP
A side-by-side look at the Lineupify and Spotify MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Lineupify for developer tools work as a local process; choose Spotify MCP for developer tools as a local process. You can also run both side by side in one mcpServers block.
Which MCP server should you choose?
Choose Lineupify when
- You need dedicated capabilities in the Developer Tools domain.
- You prefer a local stdio subprocess transport.
- You want tools like
status, setup, connect.
Choose Spotify MCP when
- You need dedicated capabilities in the Developer Tools domain.
- You prefer a local stdio subprocess transport.
- You have the keys it needs:
SPOTIFY_CLIENT_ID. - You want tools like
search, get_saved_tracks, get_saved_albums.
Feature & specification comparison
Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Developer Tools | Developer Tools |
| Quality signal | 56/100 · Good | 63/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | Not declared |
| Pricing | Not declared | Not declared |
| Required env vars | None listed | SPOTIFY_CLIENT_ID |
| Verified owner | Community listing | Community listing |
| GitHub stars | 1 | 1 |
| Directory activity | 0 views 0 installs 0 upvotes | 3 views 0 installs 0 upvotes |
| Tools | 21 | 131 |
| Full listing | View Lineupify | View Spotify MCP |
Tools & capabilities
Lineupify tools 21
statusCall first. Shows connection state (and as whom), setup steps if needed, token expiry, defaults, drafts in progress, cache size, data directory and any read-only mode.setupSaves the Spotify Client ID (and optionally a Last.fm key or a fixed redirect port) to `config.json`.connectStarts the Spotify login: opens the browser and returns the URL immediately. Pass `clientId` to save the app's Client ID in the same call. Refused while a draft is building.disconnectForgets the Spotify login; with `purge: true` (plus `confirm: true`, after you agreed in the conversation) deletes the whole `~/.lineupify` folder. Refuses if that folder holds files Lineupify did not create. Tells you where to remove the app's access on Spotify's side.parse_lineupTurns raw poster text into a clean artist list with tiers, days and stages; drops dates, stage names and "tickets" lines.create_draftBuilds a draft from artists and/or seeds (genre, similar artist, chart, country, playlist, your taste, a blend). Returns within ~15 s; larger builds continue in the background.get_draftShows a draft: `summary` (default), `tracks` (paged, with stable ids, year and tempo), `artists`, or `unresolved`. Waits for progress while building. Also resumes an interrupted build.edit_draftApplies one or more edits atomically. Ops: `remove_tracks`, `add_track`, `exclude_artist`, `set_artist_track_count`, `set_artist_source`, `move`, `shuffle`, `reorder`, `set_meta`, `filter`, `undo`.search_tracksSearches Spotify, or Deezer for a Deezer draft, for a track to add manually; supports `track:` / `artist:` filters.create_playlistPublishes a ready draft as a new playlist and returns its URL. Requires the draft to have been shown to the user or `confirm: true`.update_playlistReplaces the tracks and details of the playlist a draft was published to. Refuses if the playlist changed inside Spotify unless `force: true`.compare_tasteMarks each artist in a draft as known (in your top or followed artists) or new to you.- +9 more on the listing page
Spotify MCP tools 131
searchSearch Spotify's catalog for tracks, artists, albums, playlists, shows, episodes, or audiobooks. Pass `types` as an array (e.g. `["artist"]`) to search a single kind — no track/album fallback noise. Decision guide: search (general, ≤10/type), search_deep (paginated fetch_all up to 50/type), search_fresh (tag:new last 2 weeks), search_by_isrc (exact ISRC), whats_new (personal radar from follows).get_saved_tracksGet tracks saved in the user's Liked Songs. Set fetch_all=true to retrieve the entire collection. Output is capped by max_results (default: SPOTIFY_MCP_MAX_ITEMS).get_saved_albumsGet albums saved in the user's library. Set fetch_all=true to retrieve the entire collection. Output is capped by max_results (default: SPOTIFY_MCP_MAX_ITEMS).get_saved_showsGet podcast shows saved in the user's library. Set fetch_all=true to retrieve the entire collection. Output is capped by max_results (default: SPOTIFY_MCP_MAX_ITEMS).get_saved_episodesGet podcast episodes saved in the user's library. Set fetch_all=true to retrieve the entire collection. Output is capped by max_results (default: SPOTIFY_MCP_MAX_ITEMS).save_to_libraryPreferred. Accepts the widest URI mix (track, album, episode, show, audiobook, user, playlist) in one request. Save one or more items to the user's library via Spotify's unified library endpoint. Max 40. PREVIEWS BY DEFAULT — pass dry_run=false to commit.remove_from_libraryPreferred. Accepts the widest URI mix (track, album, episode, show, audiobook, user, playlist) in one request. Remove one or more items from the user's library via Spotify's unified library endpoint. Max 40. PREVIEWS BY DEFAULT — pass dry_run=false to commit. Removals of 10+ items additionally require elicitation confirmation (or SPOTIFY_MCP_CONFIRM=never for automation).get_saved_countsLibrary size snapshot: counts for tracks/albums/shows/episodes/audiobooks/playlists via limit=1 reads — no item paging. The total covers library saves only: playlists are owned and followed collections, so their count is reported alongside the library rows and excluded from the total. A collection that could not be read (rate limited, gated, or erroring) is reported as unreadable with its reason and left out of the total — it is never reported as 0. One attempt per collection: a rate limit is surfaced, not retried. Quota: 6 GETs.search_saved_albumsSearch saved albums (client-side filter over bounded walk). Quota: GET /me/albums paged.search_saved_showsSearch saved podcast shows (bounded walk + client-side filter). Quota: GET /me/shows paged.search_saved_episodesSearch saved episodes (bounded walk + client-side filter). Quota: GET /me/episodes paged.search_saved_audiobooksSearch saved audiobooks (bounded walk + client-side filter). Quota: GET /me/audiobooks paged.- +119 more on the listing page
Ready-to-paste client configs
Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
Lineupify
{
"mcpServers": {
"lineupify": {
"command": "npx",
"args": [
"-y",
"lineupify-mcp"
]
}
}
}
Spotify MCP
{
"mcpServers": {
"spotify-mcp": {
"command": "npx",
"args": [
"-y",
"@novalux12/spotify-mcp@latest"
],
"env": {
"SPOTIFY_CLIENT_ID": "YOUR_SPOTIFY_CLIENT_ID_HERE"
}
}
}
}
Frequently asked questions
Lineupify is categorized under Developer Tools and uses a local stdio subprocess. Spotify MCP belongs to Developer Tools and uses a local stdio subprocess. Pick Lineupify for developer tools work and Spotify MCP for developer tools.
Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.
Lineupify has no declared pricing — check the project's own site. Spotify MCP has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.
Yes. MCP clients support multiple servers: add lineupify and spotify-mcp as separate keys in the same mcpServers object, and your assistant will call tools from either one.
On AllMCPs, Lineupify has a quality signal of 56/100 (Good) with 0 views, 0 installs and 1 GitHub stars. Spotify MCP has 63/100 (Good) with 3 views, 0 installs and 1 GitHub stars.