setlist-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SETLIST_API_KEY | Yes | Your setlist.fm API key (get one at https://www.setlist.fm/settings/api) | |
| SETLIST_ACCEPT_LANGUAGE | No | Optional language for localizing city/country names (en, es, fr, de, pt, tr, it, pl) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| setlist_search_artistsA | Search setlist.fm for artists by name or MusicBrainz ID. Returns matching artists with their MusicBrainz ID (mbid) — use that mbid with setlist_get_artist or setlist_get_artist_setlists. Results include a setlist.fm |
| setlist_get_artistA | Get a setlist.fm artist by their MusicBrainz ID (mbid). Results include a setlist.fm |
| setlist_get_artist_setlistsA | Get an artist's setlists (most recent first) by their MusicBrainz ID (mbid). Paginated via |
| setlist_search_setlistsA | Search setlist.fm for concert setlists. Filter by any combination of artist, venue, city, country, tour, date, or year (provide at least one). Combine filters to disambiguate — artistName + date can span multiple cities, so add cityName/cityId or venueName/venueId to pin the exact show. Omit the artist and pass venueName/venueId + date to list EVERY performer at a venue or festival that day. Every result includes songCount, setCount, and hasSongs, so you can skip empty 'stub' setlists (hasSongs: false) without a second fetch. Results include a setlist.fm |
| setlist_get_setlistA | Get a setlist.fm setlist by its ID, including the full song list and event details. A setlist's songs live in |
| setlist_get_setlist_versionA | Get a specific historical version of a setlist by its version ID. Setlists are wiki-edited; each edit has a version ID returned in a setlist's |
| setlist_search_venuesA | Search setlist.fm for venues by name and/or location. Returns matching venues with their venue ID — use it with setlist_get_venue or setlist_get_venue_setlists. Results include a setlist.fm |
| setlist_get_venueA | Get a setlist.fm venue by its ID. Results include a setlist.fm |
| setlist_get_venue_setlistsA | Get setlists performed at a venue, by venue ID (most recent first). Paginated via |
| setlist_search_citiesA | Search setlist.fm for cities by name and/or location. Returns cities with their geoId — use it as cityId in setlist_search_setlists / setlist_search_venues, or with setlist_get_city. Results include a setlist.fm |
| setlist_get_cityA | Get a city by its geoId. Results include a setlist.fm |
| setlist_search_countriesA | List all countries supported by setlist.fm, with their ISO country codes. Use a code as countryCode in setlist_search_setlists. Results include a setlist.fm |
| setlist_get_userA | Get a setlist.fm user's public profile by their userId (their setlist.fm username). Results include a setlist.fm |
| setlist_get_user_attendedA | Get the concerts a setlist.fm user has marked as attended. Paginated via |
| setlist_get_user_editedA | Get the setlists a setlist.fm user has created or edited. Paginated via |
| setlist_resolve_concertsA | Resolve many concerts to their setlists in ONE call (instead of 2+ per show). Given up to 24 |
| setlist_mark_attendedA | Record on YOUR setlist.fm account that you attended a show — the site's "I was there" marker — by setlist ID. Authenticated via your session (needs SETLIST_SESSION_COOKIE). Idempotent: a no-op if already marked. Without confirm: true it returns a dry-run preview and makes NO change; with confirm: true it toggles attendance and verifies by re-reading your attended list. Results include a setlist.fm |
| setlist_unmark_attendedA | Remove a show from YOUR attended list on setlist.fm, by setlist ID (reverses setlist_mark_attended). Authenticated via your session. Idempotent: a no-op if not currently attended. Without confirm: true it returns a dry-run preview and makes NO change; with confirm: true it removes the attendance and verifies by re-reading. Results include a setlist.fm |
| setlist_id_from_urlA | Parse the setlist ID out of a setlist.fm setlist URL so you can paste a link instead of hunting for the ID. Returns {setlistId} (the trailing hex token before .html), ready to feed into setlist_get_setlist / setlist_mark_attended. Scoped to /setlist/ pages — artist (/setlists/) and venue (/venue/) URLs are rejected. Tolerates http/https, with/without www, trailing slash, query/fragment, and a missing .html. Pure local parsing — no network call. Errors if no ID can be parsed. |
| setlist_healthcheckA | Confirm the API key is configured and works by calling the setlist.fm countries endpoint. Reports {ok, authenticated, country_count} with a plain-English hint distinguishing "no key" vs "bad key" vs "API error". Read-only. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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/chrischall/setlist-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server