SetlistMCP
setlist-mcp
Ein MCP-Server, mit dem Claude Setlists von setlist.fm für Konzerte finden kann, die du besucht hast.
Frag: „Ich habe The Cure im August 1992 in Wellington gesehen – was haben sie gespielt?" und Claude löst den Künstler auf, durchsucht setlist.fm und liest die Songs in Reihenfolge vor.
Funktionen
find_setlists— Suche nach Künstler, Stadt und Datum. Gibt eine kompakte Liste passender Gigs mit ihren Setlist-IDs, Veranstaltungsorten und Songanzahlen zurück.get_setlist— Eine Setlist vollständig abrufen: jeden Song in Reihenfolge, gruppiert in Sets und Zugaben, mit Hinweisen zu Covern und Gastauftritten.Nachsichtig bei Daten. Die Suche deckt das Jahr um das angegebene Datum ab und ordnet die Ergebnisse nach Nähe, sodass ein falsch erinnerter Tag den Gig trotzdem findet.
Nachsichtig bei Künstlernamen. Namen werden über MusicBrainz aufgelöst, sodass kleinere Tippfehler meistens funktionieren. Mehrdeutige Namen kommen mit Alternativen zurück.
Vorsichtig mit Ratenlimits. Anfragen werden serialisiert und zeitlich gestaffelt, 429s werden mit Backoff wiederholt, und Antworten werden gecacht. Suchanfragen dauern absichtlich ein paar Sekunden.
Related MCP server: Last.fm MCP Server
Installation
git clone git@github.com:adrianparker/setlist-mcp.git
cd setlist-mcp
npm install
cp .env.example .envBearbeite dann .env und setze SETLISTFM_API_KEY. Fordere einen Schlüssel unter setlist.fm's API-Einstellungen an – es ist kostenlos und erfordert ein setlist.fm-Konto.
MUSICBRAINZ_CONTACT auf deine E-Mail-Adresse zu setzen, ist guter Stil: MusicBrainz bittet darum, dass Clients einen Kontakt im User-Agent angeben, und drosselt anonym wirkende Clients stärker.
Registrierung bei Claude Code
claude mcp add setlist-mcp --scope user -- node /full/path/to/setlist-mcp/src/index.jsOder füge es zu einem Projekt-.mcp.json hinzu:
{
"mcpServers": {
"setlist-mcp": {
"command": "node",
"args": ["/full/path/to/setlist-mcp/src/index.js"]
}
}
}Keine Geheimnisse gehen in die Client-Konfiguration – der Server liest .env aus seinem eigenen Verzeichnis, funktioniert also unabhängig vom Verzeichnis, aus dem der Client ihn startet.
Starte Claude Code neu und prüfe dann mit /mcp, ob die Verbindung steht.
Verwendung
Sobald registriert, frag einfach in normalem Englisch:
Ich habe Villainy im März 2026 in Tauranga gesehen, wie war die Setlist?
Claude wird find_setlists aufrufen, den passenden Gig auswählen und dann get_setlist aufrufen.
Um den Server direkt ohne Client zu prüfen:
npx @modelcontextprotocol/inspector node src/index.jsKonfiguration
Variable | Standard | Zweck |
| — | Erforderlich. Dein setlist.fm-API-Schlüssel. |
| Repo-URL | Kontaktdetails, die an MusicBrainz im User-Agent gesendet werden. |
|
| Welche |
|
| Mindestabstand zwischen setlist.fm-Anfragen. |
|
| Pro-Prozess-Anfragebudget für setlist.fm. |
|
| Mindestabstand zwischen MusicBrainz-Anfragen. |
|
| Timeout pro Anfrage. |
Ratenlimit
setlist.fm veröffentlicht seine Ratenlimits nicht. Community-Berichte beziffern die Standard-Stufe auf etwa 2 Anfragen pro Sekunde und 1440 pro Tag, daher liegen die Standardwerte hier – eine Anfrage alle 1,1 Sekunden – bequem im langsameren Bereich davon. Anfragen werden über eine Warteschlange serialisiert, sodass gleichzeitige Tool-Aufrufe warten, anstatt zu platzen. Eine 429 verlangsamt die gesamte Warteschlange und respektiert Retry-After, wenn der Server einen sendet.
Das Tageslimit ist kein echtes Tageskontingent. Es wird im Speicher gehalten und setzt sich zurück, sobald der MCP-Client den Server neu startet. Behandle es als Schutzschalter gegen eine Endlosschleife, nicht als Einhaltung. Das Mindestintervall ist das, was deinen Schlüssel tatsächlich schützt: Bei 1,1 s pro Anfrage würde das Erreichen von 1440 Anfragen 26 Minuten ununterbrochenes Abfragen dauern.
Antworten werden im Speicher gecacht – Künstler für 24 Stunden, Suchanfragen für 1 Stunde, Setlist-Details für 6 Stunden – sodass wiederholte Fragen zu demselben Gig nichts kosten.
Entwicklung
Tests ausführen
npm test
npm run test:watchKein Test berührt die echten APIs: test/setup.js installiert ein global.fetch, das wirft, und Tests stubben es explizit.
Abdeckung
npm run coverageLint
npm run lintEin Hinweis zu setlist.fm
Die setlist.fm-API ist nur für nicht-kommerzielle Nutzung kostenlos – siehe ihre API-Bedingungen. Beide Tools geben die setlist.fm-URL für jedes Ergebnis zurück, damit darauf verlinkt werden kann.
Setlist-Daten werden von den Nutzern von setlist.fm beigetragen. Gigs können fehlen, unvollständig sein oder das falsche Datum haben.
Lizenz
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables users to search for events, performers, and venues through the SeatGeek API. Provides event recommendations, detailed venue seating information, and performer discovery capabilities for ticketed entertainment events.43MIT
- FlicenseBqualityDmaintenanceEnables interaction with Last.fm music data including searching for artists, albums, and tracks, accessing user listening history, and managing music preferences. Supports both read-only operations and authenticated write operations like scrobbling and loving tracks.345
- FlicenseNot gradedqualityDmaintenanceEnables interaction with Spotify's music catalog through natural language conversations. Search for tracks and artists, get recommendations, explore playlists, and browse artist discographies using the Spotify Web API.
- AlicenseAqualityDmaintenanceEnables AI assistants to query the MusicBrainz music database for artists, albums, recordings, and labels. It provides tools for advanced searches, detailed metadata retrieval, and accessing cover art information.1710GPL 3.0
Related MCP Connectors
setlist.fm: concert setlists by artist/venue/date. Free key required.
Live-concert discovery: 44,000+ upcoming concerts worldwide by city, artist, genre or festival.
Search MusicBrainz artists, releases, works, labels; resolve ISRC/ISWC/barcode; fetch cover art.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/adrianparker/SetlistMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server