MusicBrainz · Schema
MusicBrainz Work
Schema for a MusicBrainz Work entity (an abstract musical composition) as returned by the Web Service v2.
MusicMetadataEncyclopediaOpen DataCatalogIdentifiersISRCISWCMBIDDiscIDArtistsReleasesRecordingsWorksLabelsCover ArtOpen-SourceNon-Profit
Properties
| Name | Type | Description |
|---|---|---|
| id | string | |
| title | string | |
| type | stringnull | |
| type-id | stringnull | |
| language | stringnull | Primary lyric language as ISO 639-3. |
| languages | array | All known lyric languages. |
| iswcs | array | International Standard Musical Work Codes. |
| attributes | array | Typed attributes such as catalog numbers, opus numbers, key, etc. |
| disambiguation | string | |
| tags | array | |
| rating | object | |
| relations | array |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://musicbrainz.org/schemas/work",
"title": "MusicBrainz Work",
"description": "Schema for a MusicBrainz Work entity (an abstract musical composition) as returned by the Web Service v2.",
"type": "object",
"properties": {
"id": {"type": "string", "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"},
"title": {"type": "string", "examples": ["Smells Like Teen Spirit"]},
"type": {"type": ["string", "null"], "examples": ["Song", "Symphony", "Opera", "Concerto"]},
"type-id": {"type": ["string", "null"]},
"language": {"type": ["string", "null"], "description": "Primary lyric language as ISO 639-3.", "examples": ["eng"]},
"languages": {"type": "array", "items": {"type": "string"}, "description": "All known lyric languages."},
"iswcs": {"type": "array", "items": {"type": "string"}, "description": "International Standard Musical Work Codes.", "examples": [["T-101.690.320-9"]]},
"attributes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {"type": "string"},
"type-id": {"type": "string"},
"value": {"type": "string"},
"value-id": {"type": ["string", "null"]}
}
},
"description": "Typed attributes such as catalog numbers, opus numbers, key, etc."
},
"disambiguation": {"type": "string"},
"tags": {"type": "array", "items": {"type": "object", "properties": {"name": {"type": "string"}, "count": {"type": "integer"}}}},
"rating": {"type": "object", "properties": {"value": {"type": ["number", "null"]}, "votes-count": {"type": "integer"}}},
"relations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {"type": "string", "examples": ["composer", "lyricist", "arranger", "performance"]},
"type-id": {"type": "string"},
"direction": {"type": "string", "enum": ["forward", "backward"]},
"target-type": {"type": "string"},
"artist": {"type": "object"},
"recording": {"type": "object"}
}
}
}
},
"required": ["id", "title"]
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/musicbrainz-work"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.