mcpbeat Sign in

Musicbrainz MCP Server

answering

Musicbrainz MCP Server is answering right now. Last checked 3 min ago. 431 installs a week from npm. It exposes 10 tools. Last commit 3 Nov 2026.

Search MusicBrainz artists, releases, works, labels; resolve ISRC/ISWC/barcode; fetch cover art.

Installs per day peak 224 · avg 49 · -9% w/w
a month agotoday
Uptime history 91 days of history · worst day 93%
91 days agonow
100.0%
Uptime 24h
92 of 92 checks
10
Tools
read from the server
578 ms
Response time
average over 24h
431
Installs / week
npm and PyPI

What changed 55

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 22 August 2026. No other catalogue keeps this.

3 Nov 7 tool descriptions were rewritten musicbrainz_browse_entities, musicbrainz_get_artist, musicbrainz_get_label and 4 more
3 Nov 3 tools changed the parameters they ask for musicbrainz_browse_entities, musicbrainz_get_recording, musicbrainz_search_entities
3 Nov a tool changed version
23 Oct 6 tools changed the parameters they ask for musicbrainz_browse_entities, musicbrainz_get_cover_art, musicbrainz_get_release and 3 more
23 Oct 5 tool descriptions were rewritten musicbrainz_browse_entities, musicbrainz_get_cover_art, musicbrainz_get_recording and 2 more
23 Oct a tool changed version
13 Oct 8 tools changed the parameters they ask for musicbrainz_browse_entities, musicbrainz_get_artist, musicbrainz_get_cover_art and 5 more
13 Oct 5 tool descriptions were rewritten musicbrainz_browse_entities, musicbrainz_get_artist, musicbrainz_get_recording and 2 more
13 Oct a tool changed version
22 Sep 3 tool descriptions were rewritten musicbrainz_get_cover_art, musicbrainz_get_release_group, musicbrainz_lookup_identifier
and 15 more, back to 22 August 2026

What the code does

We read the source, 4 d ago · tools taken from the live server · rules 995398eba69f

Capabilities

What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.

      const groups = /^T-?(\d{3})\.?(\d{3})\.?(\d{3})[-.]?(\d)$/.exec(
        input.value.replace(/\s/g, '').toUpperCase(),

Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.

This code can reach further than it looks

We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 3 min ago.

run in your terminal
claude mcp add musicbrainz-mcp-server --transport http https://musicbrainz.caseyjhand.com/mcp
Settings → Connectors → Add custom connector, then paste this address
https://musicbrainz.caseyjhand.com/mcp
~/.codex/config.toml
[mcp_servers.musicbrainz-mcp-server]
url = "https://musicbrainz.caseyjhand.com/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "musicbrainz-mcp-server": {
      "url": "https://musicbrainz.caseyjhand.com/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "musicbrainz-mcp-server": {
      "type": "http",
      "url": "https://musicbrainz.caseyjhand.com/mcp"
    }
  }
}

Available tools 10

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

musicbrainz
musicbrainz_browse_entities
Paginate entities linked to one parent MBID. Accepted parents by target: artist → area, recording, release, release-group, work; label → area, release; release-group → artist, release; release → area, artist, label, recording, release-group, track_artist; recording → artist, release, work; work → artist. track_artist enumerates releases crediting an artist on tracks but not at release level. Artist release-groups and release-group editions embed one upstream page in get_* lookups; use this tool for the complete entity set. Recording browse returns identities, not performance attributes/dates or ordered release tracks: use musicbrainz_get_recording for work relationships and musicbrainz_get_release for tracks. Provide exactly one valid parent link. offset pages to any depth; totalCount is the exact filtered upstream entity total. Optional type/status filters apply only on supported parent pairs; preserve applied filters on continuation. Release rows carry status, other entity subtypes use type; release-groups include secondaryTypes and recordings include firstReleaseDate when available.
musicbrainz_get_artist
Artist profile by MBID: type, country, life span, gender, area with areaId, birth/formation and death/dissolution areas, IPI/ISNI identifiers, aliases, tags/genres, release-groups, band-membership / collaboration relationships, and external links. Chain areaId into musicbrainz_browse_entities link.area. Release-groups embed one upstream page (25); relationships are not capped. For the complete release-group list, call musicbrainz_browse_entities with target_type=release-group and link.artist.
musicbrainz_get_cover_art
Cover Art Archive images for a release or release-group MBID: front/back flags, image types, full-resolution URLs, and 250/500/1200px thumbnail URLs. limit defaults to 25 and clamps above 100; offset defaults to 0. Pages retain archive order, totalCount counts all images, and hasArt describes the full archive even on an empty page. Follow the notice for the next offset. No art is a successful empty result; an unknown MBID fails with entity_not_found after a bounded MusicBrainz check. A release-group resolves to a representative release's art. URLs are linked, never rehosted; image copyright stays with rights holders.
musicbrainz_get_label
Label by MBID: type (Original Production, Reissue, Imprint, …), country, life span, label code (the LC number), area and areaId, IPI/ISNI identifiers, aliases, tags, ownership/imprint/distribution relationships, and external links (url-rels — Wikidata, Discogs, official site). Chain areaId into musicbrainz_browse_entities link.area. A label's releases are a potentially huge linked set (a major label can have tens of thousands), so they are NOT embedded here — enumerate them with musicbrainz_browse_entities (target_type=release, link.label).
musicbrainz_get_recording
Recording (a specific performance, distinct from the abstract work) by MBID: length, artist credits, ISRCs, one upstream page of release appearances with completeness metadata, work relationships, and performer/production credits with attributes and dates. Relationships are not capped. Enumerate releases with musicbrainz_browse_entities (target_type=release, link.recording, offset=0); embedded and browse order may differ. Browse recording by work enumerates recording entities; this tool supplies their work relationship details.
musicbrainz_get_release
One edition by MBID: ordered media with tracks, track-specific artist credits when supplied, lengths and recording MBIDs, label + catalog number, barcode, country, release date, packaging, text representation, external links, and a cover-art availability stub. media_offset (default 0) and media_limit (default 20, no maximum) select whole media after normalization; mediaTotal and trackTotal describe the full release. Follow the notice to retrieve remaining media. The release resource retains the complete raw tracklist. Track lengths are m:ss. For image URLs, call musicbrainz_get_cover_art.
musicbrainz_get_release_group
Release-group ("the album" above specific pressings) by MBID: primary type (Album/Single/EP) and secondary types (Live/Compilation), first-release date, artist credit, the list of releases (editions), tags/genres, external album links, and cover-art availability from the Cover Art Archive (image count and front/back flags for the release-group's representative release — the art musicbrainz_get_cover_art returns; use that tool for the image URLs). The embedded releases list is capped at one page (25); for the complete set of editions, call musicbrainz_browse_entities with target_type=release and link.release-group. For a specific edition's tracklist, take a release MBID from the releases list and call musicbrainz_get_release.
musicbrainz_get_work
Work (a composition, distinct from a recording) by MBID: type, languages, ISWCs, ordered work attributes (rights-society registrations, musical key and other metadata), writers/composers/lyricists, movements, arrangements, aliases, tags, and external links. Attributes remain available when relationships are disabled. Follow work target MBIDs with this tool; direction, orderingKey, and targetDisambiguation distinguish parts and arrangements without reordering relationships. This server returns the first 25 recording relationships with their exact total and actual truncation disclosure, preserving all other relationships. Browse recording entities with musicbrainz_browse_entities (target_type=recording, link.work), then use musicbrainz_get_recording for work relationship attributes and dates; browse alone does not return those details.
musicbrainz_lookup_identifier
Resolve a standard identifier to MusicBrainz entities without a name search — the deterministic path when you already hold an ID. id_type=isrc → recordings (a recording-level code, often shared by several recordings); id_type=iswc → works (a composition-level code); id_type=barcode → releases (UPC/EAN digits; spaces and hyphens are ignored). ISRC and ISWC hit dedicated exact endpoints; barcode is a Lucene search filter so results are ranked (exact match scores 100). The output kind field tells you which entity type came back.
musicbrainz_search_entities
Full-text search across a MusicBrainz entity type (artist, release-group, release, recording, work, label) using a Lucene query string. Returns ranked matches with MBID, name/title, disambiguation, subtype where applicable, release status, release-group secondary types, recording first-release dates, and a 0–100 relevance score (100 = exact). Release rows use status; other entity subtypes use type. Starting point when resolving a name to an MBID — chain the returned MBID into the matching musicbrainz_get_* tool. Results are in MusicBrainz score-descending order. Supports field-scoped Lucene syntax (e.g. `artist:radiohead AND country:GB`). Only the first 500 matches are accessible; narrow the query or use musicbrainz_browse_entities for complete linked sets.

Endpoints

URLTransportStateLatencyChecked
https://musicbrainz.caseyjhand.com/mcp streamable-http answering 618 ms 3 min ago

Alternatives to Musicbrainz MCP Server

same job, measured the same way
Sonovault
by rekordcloud

Search 93M+ tracks, artists, and releases: metadata, BPM, key, ISRC/ISWC, cross-platform IDs for AI.

74 installs/wk local only
Musicbrainz MCP
by mrfentmen

Use this MCP server to MusicBrainz artists, releases, recordings, and open music metadata. Tools...

55 installs/wk local only
Openlibrary MCP Server
by cyanheads

Search books and authors, fetch editions, browse subjects, and resolve cover images.

242 installs/wk 10 tools answering
Coverartarchive MCP
by mrfentmen

Keyless MCP server for the Cover Art Archive: album and single artwork by MusicBrainz ID,...

114 installs/wk local only
Musicbrainz MCP
by chrischall

MusicBrainz MCP — search/browse music metadata, cover art, and submit tags/ratings/collections

349 installs/wk local only
Bitsound
by bitsound

Search the Bitsound music store, manage collection and playlists, edit your releases as an artist.

answering
MusicBrainz MCP by UnClick
by malamutemayhem

Open music metadata: artists, releases, and recordings from MusicBrainz. No API key. By UnClick.

46 installs/wk local only
Discogs
by pipeworx-io

Discogs MCP — music release / artist / label database

331 installs/wk 49 tools answering

Musicbrainz MCP Server — questions

Answers built from our own checks of this server.

What can Musicbrainz MCP Server do?
It exposes 10 tools, read directly from the server on our last check. Among them: musicbrainz_browse_entities, musicbrainz_get_artist, musicbrainz_get_cover_art, musicbrainz_get_label, musicbrainz_get_recording, musicbrainz_get_release and 4 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Musicbrainz MCP Server working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 92 of 92 checks got a reply (100.0%), average response time 578 ms. The bar chart above shows every period we have measured.
How do I connect Musicbrainz MCP Server?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Musicbrainz MCP Server need an API key?
No. Musicbrainz MCP Server completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 10 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Musicbrainz MCP Server?
It answers our handshake in 578 ms on average, which is faster than 19% of all working MCP servers we measure. That is on the slow side — worth knowing if the tool sits inside an interactive loop. The comparison comes from our own checks across the whole registry, every 15 minutes.
How many people use Musicbrainz MCP Server?
The npm package @cyanheads/musicbrainz-mcp-server was installed 431 times in the last week. Week over week that is -9%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Musicbrainz MCP Server open source?
The code is open source: it is published under the Apache-2.0 licence, written in TypeScript, 2 stars on GitHub and 6 open issues. The licence covers the code in the repository, not the hosted service at musicbrainz.caseyjhand.com, which runs on its operator's own terms.