Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Setlistify

БесплатноНе проверен

An MCP server that fetches real setlists from setlist.fm and creates Spotify playlists from them, supporting fuzzy matching and various modes like latest show o

GitHubEmbed

Описание

An MCP server that fetches real setlists from setlist.fm and creates Spotify playlists from them, supporting fuzzy matching and various modes like latest show or best-of from recent shows.

README

setlistify logo

setlistify

"Make me a Spotify playlist from Radiohead's last show" → done.

An MCP server that connects setlist.fm and Spotify. Tell Claude which artist and show you want — it fetches the real setlist, matches every track on Spotify, and creates the playlist.

Works with Claude Code and Claude Desktop.


Example

You:    Create a playlist from Metallica's most recent show.

Claude: Created "Metallica — Live Setlist (09-01-2024)"
        Setlist from Estadi Olímpic Lluís Companys, Barcelona — 09-01-2024.
        21/22 tracks matched.
        → https://open.spotify.com/playlist/...
You:    Which songs does The National always play live vs. their rarities?

Claude: Always played (last 10 shows): Bloodbuzz Ohio, Terrible Love, Mr. November
        Rarities (played once): Sorrow, Available, Green Gloves
        Never played live: 34 studio tracks

What it does

  • Fetches real setlists from setlist.fm for any artist
  • Searches Spotify for each track with fuzzy matching for live variants
  • Creates a Spotify playlist and returns the URL
  • mode="latest" — most recent show
  • mode="best-of" — aggregates last N shows, ranks by play frequency
  • Diffs live setlists against full studio discography (always played / never played / rarities)

Tools

get_setlists(artist, year?, city?, limit?)

Browse recent setlists before creating a playlist.

create_playlist_from_setlist(artist, year?, venue?, city?, mode?)

Create a Spotify playlist from a setlist. Returns playlist URL, matched/unmatched track counts.

diff_setlist_vs_discography(artist)

Compare last 10 setlists against full Spotify discography.


Installation

Prerequisites

1. Clone and install

git clone https://github.com/emarkou/setlistify.git
cd setlistify
python3.11 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

2. Configure credentials

cp .env.example .env

Edit .env:

SETLISTFM_API_KEY=your_setlistfm_key
SPOTIFY_CLIENT_ID=your_spotify_client_id
SPOTIFY_CLIENT_SECRET=your_spotify_client_secret
SPOTIFY_REDIRECT_URI=http://localhost:8888/callback

setlist.fm: Register at https://www.setlist.fm/settings/api, copy the API key.

Spotify:

  1. Go to https://developer.spotify.com/dashboard
  2. Create an app → select Web API
  3. Add http://localhost:8888/callback as a Redirect URI
  4. Copy Client ID and Client Secret

3. Register with Claude Code

claude mcp add setlistify \
  /path/to/setlistify/.venv/bin/python \
  -- /path/to/setlistify/server.py

Or add to ~/.claude/mcp.json:

{
  "mcpServers": {
    "setlistify": {
      "command": "/path/to/setlistify/.venv/bin/python",
      "args": ["/path/to/setlistify/server.py"]
    }
  }
}

4. Register with Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "setlistify": {
      "command": "/path/to/setlistify/.venv/bin/python",
      "args": ["/path/to/setlistify/server.py"],
      "env": {
        "SETLISTFM_API_KEY": "your_key",
        "SPOTIFY_CLIENT_ID": "your_client_id",
        "SPOTIFY_CLIENT_SECRET": "your_client_secret",
        "SPOTIFY_REDIRECT_URI": "http://localhost:8888/callback"
      }
    }
  }
}

5. First run — Spotify OAuth

On first use a browser window opens for Spotify authorisation. Log in and allow access. Token is cached locally in .cache and reused automatically.

If auth expires, delete .cache and retry.


Test without Claude

npx @modelcontextprotocol/inspector \
  /path/to/setlistify/.venv/bin/python \
  /path/to/setlistify/server.py

Opens a browser UI at http://localhost:6274 to call tools interactively.


Project structure

setlistify/
├── server.py       # MCP server and tool definitions
├── setlistfm.py    # setlist.fm API client
├── spotify.py      # Spotify/spotipy wrapper
├── matching.py     # Fuzzy track title matching
├── requirements.txt
├── .env.example
└── LICENSE

License

MIT

from github.com/emarkou/setlistify

Установка Setlistify

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/emarkou/setlistify

FAQ

Setlistify MCP бесплатный?

Да, Setlistify MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Setlistify?

Нет, Setlistify работает без API-ключей и переменных окружения.

Setlistify — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Setlistify в Claude Desktop, Claude Code или Cursor?

Открой Setlistify на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Setlistify with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории media