A side-by-side look at the Last Fm and MCP Lrclib 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 MCP Lrclib 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.search_tracks, get_lyrics, get_track.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Art & Culture | Art & Culture |
| Quality signal | 60/100 · Good | 59/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 | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 1 | 0 |
| Directory activity | 1 views 0 installs 0 upvotes | 3 views 0 installs 0 upvotes |
| Tools | 9 | 3 |
| Full listing | View Last Fm | View MCP Lrclib |
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.search_tracksSearch LRCLIB for tracks by title, artist or album, and get the id needed to fetch lyrics with get_lyrics. Give either 'query' as free text, or 'track_name' and 'artist_name' separately for a narrower search. Results carry metadata only: title, artist, album, duration, and whether plain and time-synced lyrics exist. Use 'duration_seconds' and 'album_name' in the results to tell releases and re-recordings of the same song apart, and 'has_synced_lyrics' to know whether karaoke-style timed lyrics are available before fetching them. LRCLIB indexes tracks by their metadata, so it cannot search for a word appearing inside the lyrics.get_lyricsFetch the lyrics of one track from LRCLIB, given the id returned by search_tracks, or an exact artist and title. Set 'format' to "synced" for karaoke-style lyrics with a timestamp on every line, "plain" for the text alone, or "both". Check 'has_synced_lyrics' in the search results first: not every track has timed lyrics. Lyrics can be long, so the text is truncated by default: check 'truncated' and call again with 'offset' set to 'next_offset' to continue reading. Instrumental tracks come back with status "instrumental" and no text, which is a valid answer, so do not retry them. Always cite 'attribution' when showing lyrics to a user.get_trackLook up one LRCLIB track by its id and return its metadata without the lyrics: title, artist, album, duration, and whether plain and time-synced lyrics exist. Use this to confirm you have the right release or version before calling get_lyrics, or to check whether timed lyrics exist for a track id you already hold.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": {
"mcp-lrclib": {
"command": "npx",
"args": [
"-y",
"mcp-lrclib"
]
}
}
}