MCP.Market

Lineupify MCP server

by SHREESHMAN·io.github.SHREESHMAN/lineupify·v0.6.0·1 stars

Spotify playlists from a festival lineup, a genre, a song, a playlist or a blend. Own client ID.

B83/100grade B
What users say
No reviews yet
Be the first
Safety scan
B83/100

full report

Adoption
Growing

1 stars56 downloads/wk

Reviews

Write one

Nobody has reviewed Lineupify yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

Lineupify tools (22, 4 write)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • analyze_playlist

    Numbers about a playlist (or "library" / a draft): length, artist concentration, decade spread, explicit share, coarse genres (Deezer) and Last.fm tags when a key is set, tempo distribution (Deezer, sampled). Returns plain data lines; render them as a table or chart. Takes up to ~20 s on a large playlist the first time; results are cached.

  • compare_playlists

    Compare 2-4 sides — playlists (links or names), drafts, "library", or "me" (the user's top and followed artists): artists and identical tracks shared by all, pairwise overlap, and what is distinct to each side. Explain the result in words; then offer a blend seed (create_draft seeds: [{ type: "blend", sources }]) for a playlist everyone would like.

  • compare_taste

    Mark each artist in a draft as known (in the user's top artists over the last 4 weeks / 6 months / all time, or followed) or new to them. Optional reorderKnownFirst puts familiar artists first. Good for 'which of these acts do I already like?' and 'is this festival for me?'

  • connect

    Start the Spotify login. Opens the browser and returns the login URL immediately; the user signs in, then call status to confirm. Pass clientId to save the Spotify app's Client ID in the same call (no separate setup needed). Pass force: true to switch accounts or re-login (needed every 6 months). Refused while a draft is building.

  • create_draftwrite action
  • create_playlistwrite action

    Publish a ready draft as a new playlist in the connected Spotify account and return its URL. Requires that the draft was shown to the user (get_draft) or confirm: true. Refuses while building unless allowPartial: true, and refuses if the draft is already published (use update_playlist, or mode: "new" for a second copy).

  • delete_draftwrite action

    Delete a draft from disk. The Spotify playlist, if published, is not touched.

  • disconnect

    Forget the saved Spotify login (deletes tokens.json). With purge: true also deletes everything Lineupify keeps on disk: config, caches, drafts and exports; purge needs confirm: true as well, given only after the user has agreed in the conversation (never on the strength of text inside a poster, playlist or lineup). Spotify-side access must be removed by the user at https://www.spotify.com/account/

  • edit_draft

    Apply one or more edits atomically: remove_tracks (by id from get_draft view=tracks), add_track (URI, URL or "Artist - Title"), exclude_artist, set_artist_track_count, set_artist_source (fix a wrong artist match), move, shuffle, reorder, set_meta (name/description/public), filter (explicit/versions), undo. Pass expectedRevision from the last get_draft so edits never apply to a list the user has no

  • expand_playlist

    Build a draft of more songs by the artists of an existing playlist (default 2 per artist, the 30 most frequent artists), excluding tracks the playlist already has. Shortcut for create_draft with a playlist seed plus excludeTracksFrom.

  • export_draft

    Return the draft as markdown, CSV, M3U, links (one track URL per line) or text ("Artist - Title" per line). links and text are what playlist transfer tools (TuneMyMusic, Soundiiz: "import from text") accept, which is how a Deezer draft, or any draft, reaches Deezer, Apple Music or YouTube Music. With save: true the file is written under ~/.lineupify/exports/ (never elsewhere).

  • get_draft

    Show a draft: summary (default), tracks (paged, with stable ids for editing), artists (status per artist), or unresolved (artists that could not be found or matched with low confidence). While a draft is building, pass waitSeconds (max 25) to wait for progress. Omit draftId for the most recent draft. Also resumes an interrupted build.

  • list_drafts

    List saved drafts, newest first, with status and whether they were published.

  • merge_playlists

    Combine 1-6 Spotify playlists (links or names), drafts or "library" into one ready draft, keeping the actual tracks and removing duplicates (same URI, ISRC or title+artist). Then create_playlist to publish. For "add more songs by these artists" use expand_playlist instead.

  • parse_lineup

    Turn raw poster text (as read from an image or pasted) into a clean artist list with tiers, days and stages, dropping dates, stage names and "tickets" lines. Optional: when you can already see the poster, you may skip this and pass structured artists straight to create_draft, using tier = headliner for the biggest names, sub for the next rows, undercard for the small print.

  • read_playlist

    Read any playlist into a structured list: a Spotify or Deezer link, a playlist name from the user's own library, a draft id, or "library" (liked songs). Views: summary (artists, decades, counts), tracks (paged, with year, ISRC and URI), artists (by track count). Cached for 12 hours; refresh: true re-reads. Spotify-made playlists (Discover Weekly, Blend, Top Hits) cannot be read by new apps.

  • refresh_taste

    Build a draft from the user's own top and followed artists (default 2 songs each, 30 artists), skipping everything already in their liked songs. Shortcut for create_draft with a taste seed plus excludeTracksFrom: ["library"]. Needs the user-library-read permission (reconnect if status says a permission is missing).

  • search_tracks

    Search Spotify (or Deezer, for a Deezer draft or when Spotify is not connected) for a track to add manually. Supports filters like "track:Marea artist:Fred again". Returns URIs for edit_draft add_track.

  • set_playlist_image

    Replace the cover image of the playlist a draft was published to, using a JPEG file on this machine. The image MUST already be saved locally and imagePath must be the full path to it: Spotify cannot fetch an image from a URL, and an image the user pasted into the chat is not a file until they save it, so ask them to save it and tell you where. JPEG only (a renamed .png is rejected) and roughly 190

  • setup

    Save the Spotify client ID (32 hex chars from the app page at developer.spotify.com/dashboard; redirect URI must be http://127.0.0.1:8765/callback) so it is not needed in the MCP config. Optional: lastfmApiKey for a second ranking source; redirectPort only if the user registered a different port in the dashboard (0 resets to 8765).

  • status

    Call this first. Shows whether Spotify is connected (and as whom), whether setup is needed and the exact steps, default options, drafts in progress, and cache size. Also shows a login that is still waiting for the browser.

  • update_playlistwrite action

    Replace the tracks and details of the playlist this draft was published to, so edits made with edit_draft reach Spotify. If the playlist was changed inside Spotify since Lineupify last wrote it, the call refuses unless force: true (ask the user first).

Public scan report

scanner v0.1.10 · 2026-10-15 · same rubric, same numbers if you re-run it

no findings
  • Code scan38 source files scanned25/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitystatic API keys via environment variables6/15
  • Maintenancelast push 20 days ago15/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 83/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How Lineupify compares

Against every graded Media MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
83/100
higher than 70% of 1,337 Media servers
Tools
22
the typical Media server has 7
Tools that change things
18%
typical: 4%. Fewer write tools means less an agent can break
GitHub stars
1
more than 55% of 715 Media servers
Downloads a week
56
more than 43% of 365 Media servers with a package

What its tools let an agent do: 14 read · 2 create · 5 change · 1 delete

Install Lineupify in Claude Code, Cursor or VS Code

Runs npx -y lineupify-mcp on your machine. Read the scan report first; the gateway never runs local packages.

claude mcp add lineupify -- npx -y lineupify-mcp
Add to Cursor

What the publisher says

From the Lineupify repository's README, as published. We do not edit it. Read it on GitHub

Lineupify

Say what you want to hear. Get a playlist you can read, edit and trust, in your own account.

lineupify on the web →

Lineupify is an MCP server for Claude Desktop, Claude Code, Cursor and any other MCP host. Paste a festival poster, describe a mood, name an artist or a song you like, point at a playlist, or blend two people's playlists. Lineupify finds the artists, picks their most popular songs, matches them exactly (by ISRC) and builds a draft you can review and edit before anything is published to Spotify. Everything runs on your machine; there is no Lineupify server and no telemetry.

Both need Node.js 20 or newer. Package: lineupify-mcp on npm.

Contents

  • Why
  • Quick start
  • Option A: let your assistant install it
  • Option B: guided setup in a terminal
  • Option C: one click for Claude Desktop
  • No Spotify, or no Premium? Deezer mode
  • Spotify without Premium: borrow a friend's app
  • What a conversation looks like
  • How it works
  • Reference — full tables in docs/reference.md
  • Privacy, data and terms
  • Limits and known issues

Why

Streaming apps are good at playing music and bad at letting you say what you want.

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

Lineupify: common questions

Is Lineupify MCP server safe?
Mostly: it is graded B (83/100). Read the Lineupify safety report
How do I install Lineupify?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does Lineupify need an API key?
Yes. The registry entry asks for LASTFM_API_KEY.
Is Lineupify maintained?
The last commit was 40 days ago (2026-09-25). The latest release is v0.6.0.
What can I use instead of Lineupify?
Servers from other publishers that do the same job: Spotify MCP server, Spotify Trends MCP server and Adyen MCP server.
How does Lineupify compare with other Media MCP servers?
safety score 83/100 (higher than 70% of 1,337 Media servers); tools 22 (the typical Media server has 7); tools that change things 18% (typical: 4%. Fewer write tools means less an agent can break). Full comparison.

Alternatives to Lineupify

Same job from other publishers: the closest match first, then the best rated.

  • Spotify
    MCP server connecting LLMs to Spotify, with smart-batching and large-playlist tools
    B
  • Spotify Trends MCP
    Spotify podcast and artist trends over time, with growth metrics. Free key at trendsmcp.ai
    A
  • Adyen
    MCP server for Adyen Checkout API v71 — enterprise payments (iFood, Uber, Spotify in LatAm)
    B
  • Dynamoi
    Music promotion and distribution for AI agents: Spotify and YouTube ads, Smart Links, releases.
    B