A side-by-side look at the MCP Lrclib and Sonovault MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose MCP Lrclib for art & culture work as a local process; choose Sonovault MCP for art & culture as a local process. You can also run both side by side in one mcpServers block.
search_tracks, get_lyrics, get_track.SONOVAULT_API_KEY.search_tracks, lookup_isrc, get_track.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Art & Culture | Art & Culture |
| Quality signal | 59/100 · Good | 63/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | API key required |
| Pricing | Not declared | Freemium |
| Required env vars | None listed | SONOVAULT_API_KEY |
| Verified owner | Community listing | Community listing |
| GitHub stars | 0 | 0 |
| Directory activity | 2 views 0 installs 0 upvotes | 4 views 0 installs 0 upvotes |
| Tools | 3 | 9 |
| Full listing | View MCP Lrclib | View Sonovault MCP |
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.search_tracksFuzzy search by artist + title. Returns ISRC, genre, label, release date.lookup_isrcExact recording lookup by ISRC.get_trackFetch a track by SonoVault ID.get_work_codesRecording to composition: the ISWC(s) behind a recording.get_recordings_of_workComposition to recordings: every recording of an ISWC.get_platform_linksOne track's ID and deep link on all 7 platforms, from any ID or ISRC.resolve_tracksBulk resolve up to 100 track names, ISRCs, or platform IDs.list_genresThe canonical genre hierarchy.browse_tracksDiscover by label, artist, genre, or year (paid tier).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": {
"mcp-lrclib": {
"command": "npx",
"args": [
"-y",
"mcp-lrclib"
]
}
}
}
{
"mcpServers": {
"rekordcloud-sonovault-mcp": {
"command": "npx",
"args": [
"-y",
"sonovault-mcp"
],
"env": {
"SONOVAULT_API_KEY": "YOUR_SONOVAULT_API_KEY_HERE"
}
}
}
}