A side-by-side look at the Last Fm and Setlist MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Last Fm for art & culture work as a local process; choose Setlist MCP for art & culture as a local process. You can also run both side by side in one mcpServers block.
PLATFORM_LASTFM_KEY.artist_info, artist_top_tracks, artist_similar.SETLIST_API_KEY, SETLIST_ACCEPT_LANGUAGE, SETLIST_SESSION_COOKIE, SETLIST_DISABLE_FETCHPROXY.setlist_search_artists, setlist_get_artist, setlist_get_artist_setlists.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Art & Culture | Art & Culture |
| Quality signal | 60/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 | PLATFORM_LASTFM_KEY | SETLIST_API_KEYSETLIST_ACCEPT_LANGUAGESETLIST_SESSION_COOKIESETLIST_DISABLE_FETCHPROXY |
| Verified owner | Community listing | Community listing |
| GitHub stars | 1 | 1 |
| Directory activity | 1 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 9 | 20 |
| Full listing | View Last Fm | View Setlist MCP |
artist_infoFetch Last.fm artist profile by name (or MusicBrainz ID): biography, listener/play counts, similar artists, and genre tags; optionally in a specified language.artist_top_tracksMost-played tracks for an artist.artist_similarSimilar artists.album_infoFetch Last.fm album metadata by artist and album name (or MusicBrainz ID): track listing, listener/play counts, wiki summary, and genre tags.track_infoFetch Last.fm track metadata by artist and track name (or MusicBrainz ID): duration, listener/play counts, genre tags, and wiki summary.track_searchSearch Last.fm for tracks matching a keyword query; returns ranked results with artist, track name, and listener counts.user_top_tracksFetch a SPECIFIC NAMED Last.fm user's most-scrobbled tracks for a given period (overall/7day/1month/3month/6month/12month) — only when the question names a Last.fm username; NEVER for general "popular songs / top music" questions (use chart_top_artists or tag_top_artists for those) and never with a guessed or example username. Returns track names, artists, and play counts.tag_top_artistsFetch the top Last.fm artists for a genre tag (e.g. 'rock', 'electronic'); returns ranked artist names with listener counts.chart_top_artistsThe world's most-popular music right now — global top artists by listener count. PREFER for "recommend popular music", "top songs / top artists this year", "what music is trending", "popular songs 2026" and any general most-popular-music question (for a GENRE use tag_top_artists; for one NAMED user's history use the user_* tools). Keyless, returns ranked artist names with listener and play counts.setlist_search_artistsSearch 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 `url`; when you present this data, cite it as a clickable source link to setlist.fm (their API terms require followable attribution — no nofollow). If a result has no `url`, link to https://www.setlist.fm instead.setlist_get_artistGet a setlist.fm artist by their MusicBrainz ID (mbid). Results include a setlist.fm `url`; when you present this data, cite it as a clickable source link to setlist.fm (their API terms require followable attribution — no nofollow). If a result has no `url`, link to https://www.setlist.fm instead.setlist_get_artist_setlistsGet an artist's setlists (most recent first) by their MusicBrainz ID (mbid). Paginated via `p`. Results include a setlist.fm `url`; when you present this data, cite it as a clickable source link to setlist.fm (their API terms require followable attribution — no nofollow). If a result has no `url`, link to https://www.setlist.fm instead.setlist_search_setlistsSearch 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 `url`; when you present this data, cite it as a clickable source link to setlist.fm (their API terms require followable attribution — no nofollow). If a result has no `url`, link to https://www.setlist.fm instead.setlist_get_setlistGet a setlist.fm setlist by its ID, including the full song list and event details. A setlist's songs live in `sets.set[]`; each set may have an `encore` number (1 = first encore) and a `name` (e.g. an acoustic set or a full album). Each `song` may carry: `tape: true` (pre-recorded intro/outro/interlude — not actually performed), `cover` (the original artist when it is a cover), `with` (a guest performer), and `info` (a note like "acoustic" or "first time live"). Results include a setlist.fm `url`; when you present this data, cite it as a clickable source link to setlist.fm (their API terms require followable attribution — no nofollow). If a result has no `url`, link to https://www.setlist.fm instead.setlist_get_setlist_versionGet 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 `versionId` field. A setlist's songs live in `sets.set[]`; each set may have an `encore` number (1 = first encore) and a `name` (e.g. an acoustic set or a full album). Each `song` may carry: `tape: true` (pre-recorded intro/outro/interlude — not actually performed), `cover` (the original artist when it is a cover), `with` (a guest performer), and `info` (a note like "acoustic" or "first time live"). Results include a setlist.fm `url`; when you present this data, cite it as a clickable source link to setlist.fm (their API terms require followable attribution — no nofollow). If a result has no `url`, link to https://www.setlist.fm instead.setlist_search_venuesSearch 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 `url`; when you present this data, cite it as a clickable source link to setlist.fm (their API terms require followable attribution — no nofollow). If a result has no `url`, link to https://www.setlist.fm instead.setlist_get_venueGet a setlist.fm venue by its ID. Results include a setlist.fm `url`; when you present this data, cite it as a clickable source link to setlist.fm (their API terms require followable attribution — no nofollow). If a result has no `url`, link to https://www.setlist.fm instead.setlist_get_venue_setlistsGet setlists performed at a venue, by venue ID (most recent first). Paginated via `p`. Results include a setlist.fm `url`; when you present this data, cite it as a clickable source link to setlist.fm (their API terms require followable attribution — no nofollow). If a result has no `url`, link to https://www.setlist.fm instead.setlist_search_citiesSearch 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 `url`; when you present this data, cite it as a clickable source link to setlist.fm (their API terms require followable attribution — no nofollow). If a result has no `url`, link to https://www.setlist.fm instead.setlist_get_cityGet a city by its geoId. Results include a setlist.fm `url`; when you present this data, cite it as a clickable source link to setlist.fm (their API terms require followable attribution — no nofollow). If a result has no `url`, link to https://www.setlist.fm instead.setlist_search_countriesList 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 `url`; when you present this data, cite it as a clickable source link to setlist.fm (their API terms require followable attribution — no nofollow). If a result has no `url`, link to https://www.setlist.fm instead.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.
{
"mcpServers": {
"last-fm-2": {
"command": "npx",
"args": [
"-y",
"@pipeworx/mcp-last-fm"
],
"env": {
"PLATFORM_LASTFM_KEY": "YOUR_PLATFORM_LASTFM_KEY_HERE"
}
}
}
}
{
"mcpServers": {
"setlist-mcp": {
"command": "npx",
"args": [
"-y",
"setlist-mcp"
],
"env": {
"SETLIST_API_KEY": "YOUR_SETLIST_API_KEY_HERE",
"SETLIST_ACCEPT_LANGUAGE": "YOUR_SETLIST_ACCEPT_LANGUAGE_HERE",
"SETLIST_SESSION_COOKIE": "YOUR_SETLIST_SESSION_COOKIE_HERE",
"SETLIST_DISABLE_FETCHPROXY": "YOUR_SETLIST_DISABLE_FETCHPROXY_HERE"
}
}
}
}