musicbrainz-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MUSICBRAINZ_OAUTH_CLIENT_ID | No | OAuth client ID for write tools | |
| MUSICBRAINZ_OAUTH_CLIENT_SECRET | No | OAuth client secret for write tools | |
| MUSICBRAINZ_OAUTH_REFRESH_TOKEN | No | OAuth refresh token for write tools |
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 |
|---|---|
| musicbrainz_lookupA | Fetch a single MusicBrainz entity (artist, release, recording, release-group, label, work, area, place, event, instrument, series, genre, url) by its MBID. Use |
| musicbrainz_searchA | Search a MusicBrainz entity type with a Lucene query and get back ranked matches with their MBIDs. Plain text matches the entity name; fielded Lucene also works, e.g. |
| musicbrainz_browseA | List all entities of one type directly linked to a given entity — e.g. every release by an artist (entity: "release", linkedBy: "artist", mbid: ), recordings on a release, releases in a collection (a private collection needs OAuth: MUSICBRAINZ_OAUTH_*), or events at a place. This is the complete, paged set for a relationship (unlike search, which ranks fuzzy matches). Use |
| musicbrainz_cover_artA | Fetch Cover Art Archive image metadata for a release or release-group MBID — front/back cover URLs, thumbnails, and image types. Returns the image URLs (you can open or download them); it does not embed the bytes. Errors clearly when no art exists for the MBID. Read-only. Data from MusicBrainz (https://musicbrainz.org), the open music encyclopedia. |
| musicbrainz_resolveA | Turn a musicbrainz.org URL (e.g. https://musicbrainz.org/artist/ or /release-group/) into the underlying entity by extracting its type + MBID and looking it up. Handy when a user pastes a MusicBrainz link. Pass |
| musicbrainz_healthcheckA | Confirm the MusicBrainz API is reachable (and our User-Agent accepted) by looking up a stable entity, and report whether the OAuth write path is configured. Reports {ok, reachable, oauth_configured} with a plain-English hint. Read-only. |
| musicbrainz_submit_tagsA | Apply user tags to a MusicBrainz entity on YOUR account (needs OAuth: MUSICBRAINZ_OAUTH_* with the |
| musicbrainz_submit_ratingA | Set YOUR rating for a MusicBrainz entity (needs OAuth: MUSICBRAINZ_OAUTH_* with the |
| musicbrainz_modify_collectionA | Add or remove entities (releases, artists, recordings, release-groups, works, labels, places, areas, events) in one of YOUR MusicBrainz collections (needs OAuth: MUSICBRAINZ_OAUTH_* with the |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Each tool has a distinct purpose: lookup (single entity by MBID), browse (paged linked entities), search (Lucene ranking), resolve (URL parsing), cover_art, three OAuth writes, and healthcheck. There is mild overlap between lookup and resolve (resolve is essentially URL-extraction + lookup) and between browse and search, but descriptions clearly differentiate ranked-fuzzy vs complete-paged semantics.
All tools use a consistent musicbrainz_ prefix and snake_case, which is highly predictable. The verb portion mixes styles slightly (submit_tags, submit_rating, modify_collection vs noun-ish lookup, browse, search, resolve, healthcheck), but this is readable and largely intuitive.
Nine tools is well-scoped for a MusicBrainz client covering reads, search, resolution, cover art, and the three OAuth write paths. No tool feels redundant or gratuitous, and nothing is obviously missing from the count.
The surface covers the core read lifecycle (search, lookup, browse, resolve, cover art) plus the realistic write operations MusicBrainz allows via OAuth (tags, ratings, collections) and a healthcheck. Minor gaps remain (e.g. no explicit release-group or genre-centric browse helper), but agents can work around them with lookup/browse and inc.