musicbrainz-mcp-server
Qué hace este MCP
Searches and retrieves MusicBrainz metadata for artists, recordings, works, releases, labels, identifiers, and associated cover art.
Herramientas
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['target_type', 'link'], 'properties': {'link': {'type': 'object', 'properties': {'area': {'type': 'string', 'description': 'Parent area MBID (artists/labels in this area).'}, 'work': {'type': 'string', 'description': 'Parent work MBID (recordings of this work).'}, 'label': {'type': 'string', 'description': 'Parent label MBID (releases on this label).'}, 'artist': {'type': 'string', 'description': 'Parent artist MBID (e.g. release-groups/recordings/releases by this artist).'}, 'recording': {'type': 'string', 'description': 'Parent recording MBID (releases containing this recording).'}, 'release-group': {'type': 'string', 'description': 'Parent release-group MBID (releases in this group).'}}, 'description': 'Exactly one parent MBID. The valid key depends on target_type (see the description).'}, 'limit': {'type': 'integer', 'default': 25, 'maximum': 100, 'minimum': 1, 'description': 'Page size (1â\x80\x93100).'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Result offset for deep pagination (0-based).'}, 'target_type': {'enum': ['artist', 'release-group', 'release', 'recording', 'work', 'label'], 'type': 'string', 'description': 'The entity type to enumerate (the children).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['targetType', 'linkType', 'linkMbid', 'entities', 'offset', 'totalCount']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'cap': {'type': 'number', 'description': 'The page size that was applied. Absent when not truncated.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['invalid_link', 'entity_not_found'], 'description': 'Machine-readable failure mode. Declared by this tool: `invalid_link`: No link MBID was provided, more than one was provided, or the link MBID is malformed (HTTP 400). `entity_not_found`: The link MBID is well-formed but no such parent entity exists (HTTP 404). Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'shown': {'type': 'number', 'description': 'Number of entities returned in this page. Absent when not truncated.'}, 'notice': {'type': 'string', 'description': 'How to page further when results remain, or guidance when empty.'}, 'offset': {'type': 'number', 'description': 'The offset used for this page.'}, 'entities': {'type': 'array', 'items': {'type': 'object', 'required': ['mbid', 'name'], 'properties': {'date': {'type': 'string', 'description': 'First-release/release date, where applicable. Omitted when absent.'}, 'mbid': {'type': 'string', 'description': 'Entity MBID â\x80\x94 chain to the matching musicbrainz_get_* tool.'}, 'name': {'type': 'string', 'description': 'Entity name (artist/label) or title (release-group/release/recording/work).'}, 'type': {'type': 'string', 'description': 'Entity subtype, where applicable. Omitted when absent.'}, 'length': {'type': 'string', 'description': 'Recording length as m:ss. Omitted when not a recording / unknown.'}, 'country': {'type': 'string', 'description': 'Country code, where applicable. Omitted when absent.'}, 'artistCredit': {'type': 'string', 'description': 'Credited artist string, for release-group/release/recording. Omitted otherwise.'}, 'disambiguation': {'type': 'string', 'description': 'Short qualifier. Omitted when absent.'}}, 'description': 'A lightweight reference to a linked entity.', 'additionalProperties': False}, 'description': 'This page of linked entities, in upstream order.'}, 'linkMbid': {'type': 'string', 'description': 'The parent MBID that was browsed.'}, 'linkType': {'type': 'string', 'description': 'The parent link type used (artist, label, release-group, recording, work, or area).'}, 'truncated': {'type': 'boolean', 'description': 'True when more entities remain beyond this page (offset + shown < totalCount). Absent when the page is complete.'}, 'targetType': {'type': 'string', 'description': 'The entity type that was enumerated.'}, 'totalCount': {'type': 'number', 'description': 'True total number of linked entities upstream (the {type}-count field).'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['mbid'], 'properties': {'mbid': {'type': 'string', 'description': 'Artist MBID (36-character UUID).'}, 'inc_relationships': {'type': 'boolean', 'default': True, 'description': 'Include band-membership / collaboration relationships and external links (url-rels).'}, 'inc_release_groups': {'type': 'boolean', 'default': True, 'description': 'Include the discography (release-groups). Capped at one page; use browse for the full set.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['mbid', 'name', 'aliases', 'tags', 'releaseGroups', 'relationships', 'externalLinks']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'cap': {'type': 'number', 'description': 'The one-page cap that was applied. Absent when not truncated.'}, 'area': {'type': 'string', 'description': 'Associated area name. Omitted when unknown.'}, 'mbid': {'type': 'string', 'description': 'Artist MBID.'}, 'name': {'type': 'string', 'description': 'Artist name.'}, 'tags': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'count'], 'properties': {'name': {'type': 'string', 'description': 'Tag or genre name.'}, 'count': {'type': 'number', 'description': 'Community vote count for this tag.'}}, 'description': 'A folksonomy tag or genre with its vote count.', 'additionalProperties': False}, 'description': 'Community tags/genres with vote counts (may be empty).'}, 'type': {'type': 'string', 'description': 'Artist type (Person, Group, Orchestra, â\x80¦). Omitted when unknown.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['invalid_mbid', 'entity_not_found'], 'description': 'Machine-readable failure mode. Declared by this tool: `invalid_mbid`: The MBID is malformed or the all-zeros sentinel (MusicBrainz returns HTTP 400). `entity_not_found`: The MBID is well-formed but no artist exists with it (MusicBrainz returns HTTP 404). Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'shown': {'type': 'number', 'description': 'Number of release-groups returned. Absent when not truncated.'}, 'gender': {'type': 'string', 'description': 'Gender, for person-type artists. Omitted when unknown/inapplicable.'}, 'notice': {'type': 'string', 'description': 'How to fetch the complete discography when truncated.'}, 'aliases': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Alias name.'}, 'type': {'type': 'string', 'description': 'Alias type (e.g. "Artist name", "Legal name"). Omitted when absent.'}, 'locale': {'type': 'string', 'description': 'BCP-47 locale of the alias. Omitted when absent.'}, 'primary': {'type': 'boolean', 'description': 'Whether this is the primary alias for its locale. Omitted when absent.'}, 'sortName': {'type': 'string', 'description': 'Sortable form of the alias. Omitted when absent.'}}, 'description': 'An alternate name for the entity.', 'additionalProperties': False}, 'description': 'Alternate names (may be empty).'}, 'country': {'type': 'string', 'description': 'ISO country code. Omitted when unknown.'}, 'lifeSpan': {'type': 'object', 'properties': {'end': {'type': 'string', 'description': 'End date. Omitted when unknown.'}, 'begin': {'type': 'string', 'description': 'Start date (YYYY, YYYY-MM, or YYYY-MM-DD). Omitted when unknown.'}, 'ended': {'type': 'boolean', 'description': 'Whether the entity has ended. Omitted when the upstream value is unknown/null.'}}, 'description': 'Birth/death or formation/dissolution span. Omitted when unknown.', 'additionalProperties': False}, 'sortName': {'type': 'string', 'description': 'Sortable name form. Omitted when absent.'}, 'truncated': {'type': 'boolean', 'description': 'True when the discography hit the one-page cap and more release-groups exist. Absent when the full set fit in one page.'}, 'externalLinks': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'resource'], 'properties': {'type': {'type': 'string', 'description': 'Link type (e.g. "wikidata", "discogs", "official homepage", "streaming").'}, 'resource': {'type': 'string', 'description': 'The external URL. Wikidata/Discogs IDs live in the URL path â\x80\x94 chain to those servers.'}}, 'description': 'An external resource link (url-rel). Where cross-service IDs like Wikidata QID are surfaced.', 'additionalProperties': False}, 'description': 'External resource links (url-rels) â\x80\x94 Wikidata, Discogs, official site (may be empty).'}, 'relationships': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'targetType'], 'properties': {'end': {'type': 'string', 'description': 'Relationship end date. Omitted when absent.'}, 'type': {'type': 'string', 'description': 'Relationship role (e.g. "member of band", "producer", "writer", "performance").'}, 'begin': {'type': 'string', 'description': 'Relationship start date. Omitted when absent.'}, 'targetId': {'type': 'string', 'description': 'MBID of the related entity â\x80\x94 chain to the matching get_* tool. Omitted for url targets.'}, 'direction': {'type': 'string', 'description': 'Relationship direction ("forward" | "backward"). Omitted when absent.'}, 'attributes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Role modifiers (e.g. "lead vocals", "assistant", "co"). Omitted when none.'}, 'targetName': {'type': 'string', 'description': 'Name/title of the related entity. Omitted when absent.'}, 'targetType': {'type': 'string', 'description': 'Type of the related entity ("artist" | "work" | "recording" | "label" | "url").'}}, 'description': 'A typed relationship to another entity (band membership, performer, writer, etc.).', 'additionalProperties': False}, 'description': 'Band membership and collaboration relationships (may be empty).'}, 'releaseGroups': {'type': 'array', 'items': {'type': 'object', 'required': ['mbid', 'title'], 'properties': {'mbid': {'type': 'string', 'description': 'Release-group MBID â\x80\x94 chain to musicbrainz_get_release_group.'}, 'title': {'type': 'string', 'description': 'Release-group title.'}, 'primaryType': {'type': 'string', 'description': 'Primary type (Album, Single, EP, â\x80¦). Omitted when absent.'}, 'disambiguation': {'type': 'string', 'description': 'Short qualifier. Omitted when absent.'}, 'secondaryTypes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Secondary types (Live, Compilation, â\x80¦). Omitted when none.'}, 'firstReleaseDate': {'type': 'string', 'description': 'First-release date. Omitted when absent.'}}, 'description': 'A release-group in the artist discography (capped to one page â\x80\x94 use browse for all).', 'additionalProperties': False}, 'description': 'Discography â\x80\x94 release-groups (one page; may be empty or capped).'}, 'disambiguation': {'type': 'string', 'description': 'Short qualifier distinguishing same-named artists. Omitted when absent.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['mbid'], 'properties': {'mbid': {'type': 'string', 'description': 'Release or release-group MBID (36-character UUID).'}, 'entity_type': {'enum': ['release', 'release-group'], 'type': 'string', 'default': 'release', 'description': 'Whether the MBID is a release (default) or a release-group.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['mbid', 'entityType', 'images', 'hasArt']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'mbid': {'type': 'string', 'description': 'The MBID that was queried.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['invalid_mbid', 'entity_not_found'], 'description': 'Machine-readable failure mode. Declared by this tool: `invalid_mbid`: The MBID is malformed or the all-zeros sentinel â\x80\x94 a value MusicBrainz rejects outright (HTTP 400). `entity_not_found`: The MBID is well-formed but no entity of the given entity_type exists with it (the archive returns 404 and the MusicBrainz check of the MBID returns 404). Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'hasArt': {'type': 'boolean', 'description': 'Whether any cover art exists for this entity.'}, 'images': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'front', 'back', 'types', 'imageUrl'], 'properties': {'id': {'type': 'string', 'description': 'Cover Art Archive image ID.'}, 'back': {'type': 'boolean', 'description': 'Whether this is a designated back image.'}, 'front': {'type': 'boolean', 'description': 'Whether this is a designated front image.'}, 'types': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Image types (Front, Back, Booklet, Medium, â\x80¦; may be empty).'}, 'comment': {'type': 'string', 'description': 'Editor comment on the image. Omitted when absent.'}, 'approved': {'type': 'boolean', 'description': 'Whether the image is community-approved. Omitted when unknown.'}, 'imageUrl': {'type': 'string', 'description': 'Full-resolution image URL (linked, not rehosted â\x80\x94 copyright stays with the rights holder).'}, 'thumbnail250': {'type': 'string', 'description': '250px thumbnail URL. Omitted when unavailable.'}, 'thumbnail500': {'type': 'string', 'description': '500px thumbnail URL. Omitted when unavailable.'}, 'thumbnail1200': {'type': 'string', 'description': '1200px thumbnail URL. Omitted when unavailable.'}}, 'description': 'One cover-art image with its full URL and thumbnails.', 'additionalProperties': False}, 'description': 'Cover-art images (empty when the entity has no art).'}, 'notice': {'type': 'string', 'description': 'Present when the entity has no art: states that no images exist, or â\x80\x94 when the MBID could not be checked against MusicBrainz â\x80\x94 that its existence is unconfirmed.'}, 'entityType': {'type': 'string', 'description': 'Whether the MBID was treated as a release or release-group.'}, 'representativeRelease': {'type': 'string', 'description': 'For a release-group query, the release MBID whose art was returned. Omitted for direct release queries.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['mbid'], 'properties': {'mbid': {'type': 'string', 'description': 'Label MBID (36-character UUID).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['mbid', 'name', 'aliases', 'tags', 'externalLinks']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'area': {'type': 'string', 'description': 'Associated area name. Omitted when unknown.'}, 'mbid': {'type': 'string', 'description': 'Label MBID.'}, 'name': {'type': 'string', 'description': 'Label name.'}, 'tags': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'count'], 'properties': {'name': {'type': 'string', 'description': 'Tag or genre name.'}, 'count': {'type': 'number', 'description': 'Community vote count for this tag.'}}, 'description': 'A folksonomy tag or genre with its vote count.', 'additionalProperties': False}, 'description': 'Community tags/genres (may be empty).'}, 'type': {'type': 'string', 'description': 'Label type. Omitted when unknown.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['invalid_mbid', 'entity_not_found'], 'description': 'Machine-readable failure mode. Declared by this tool: `invalid_mbid`: The MBID is malformed or the all-zeros sentinel (MusicBrainz returns HTTP 400). `entity_not_found`: The MBID is well-formed but no label exists with it (MusicBrainz returns HTTP 404). Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'aliases': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Alias name.'}, 'type': {'type': 'string', 'description': 'Alias type (e.g. "Artist name", "Legal name"). Omitted when absent.'}, 'locale': {'type': 'string', 'description': 'BCP-47 locale of the alias. Omitted when absent.'}, 'primary': {'type': 'boolean', 'description': 'Whether this is the primary alias for its locale. Omitted when absent.'}, 'sortName': {'type': 'string', 'description': 'Sortable form of the alias. Omitted when absent.'}}, 'description': 'An alternate name for the entity.', 'additionalProperties': False}, 'description': 'Alternate names (may be empty).'}, 'country': {'type': 'string', 'description': 'ISO country code. Omitted when unknown.'}, 'lifeSpan': {'type': 'object', 'properties': {'end': {'type': 'string', 'description': 'End date. Omitted when unknown.'}, 'begin': {'type': 'string', 'description': 'Start date (YYYY, YYYY-MM, or YYYY-MM-DD). Omitted when unknown.'}, 'ended': {'type': 'boolean', 'description': 'Whether the entity has ended. Omitted when the upstream value is unknown/null.'}}, 'description': 'Founding/dissolution span. Omitted when unknown.', 'additionalProperties': False}, 'sortName': {'type': 'string', 'description': 'Sortable name form. Omitted when absent.'}, 'labelCode': {'type': 'number', 'description': 'Label code (LC number), without the "LC" prefix. Omitted when absent.'}, 'externalLinks': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'resource'], 'properties': {'type': {'type': 'string', 'description': 'Link type (e.g. "wikidata", "discogs", "official homepage", "streaming").'}, 'resource': {'type': 'string', 'description': 'The external URL. Wikidata/Discogs IDs live in the URL path â\x80\x94 chain to those servers.'}}, 'description': 'An external resource link (url-rel). Where cross-service IDs like Wikidata QID are surfaced.', 'additionalProperties': False}, 'description': 'External resource links (url-rels) (may be empty).'}, 'disambiguation': {'type': 'string', 'description': 'Short qualifier. Omitted when absent.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['mbid'], 'properties': {'mbid': {'type': 'string', 'description': 'Recording MBID (36-character UUID).'}, 'inc_relationships': {'type': 'boolean', 'default': True, 'description': 'Include performance/production relationships (performers, producers, engineers) and work-rels.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['mbid', 'title', 'artistCredit', 'artistCreditString', 'isrcs', 'releases', 'relationships', 'externalLinks']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'mbid': {'type': 'string', 'description': 'Recording MBID.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['invalid_mbid', 'entity_not_found'], 'description': 'Machine-readable failure mode. Declared by this tool: `invalid_mbid`: The MBID is malformed or the all-zeros sentinel (MusicBrainz returns HTTP 400). `entity_not_found`: The MBID is well-formed but no recording exists with it (MusicBrainz returns HTTP 404). Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'isrcs': {'type': 'array', 'items': {'type': 'string'}, 'description': 'ISRCs assigned to this recording (may be empty).'}, 'title': {'type': 'string', 'description': 'Recording title.'}, 'length': {'type': 'string', 'description': 'Recording length as m:ss. Omitted when unknown.'}, 'releases': {'type': 'array', 'items': {'type': 'object', 'required': ['mbid', 'title'], 'properties': {'date': {'type': 'string', 'description': 'Release date. Omitted when absent.'}, 'mbid': {'type': 'string', 'description': 'Release MBID â\x80\x94 chain to musicbrainz_get_release.'}, 'title': {'type': 'string', 'description': 'Release title.'}, 'country': {'type': 'string', 'description': 'Release country code. Omitted when absent.'}}, 'description': 'A release this recording appears on.', 'additionalProperties': False}, 'description': 'Releases this recording appears on (may be empty).'}, 'artistCredit': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'artistId', 'artistName'], 'properties': {'name': {'type': 'string', 'description': 'Credited name as it appears on the release (may be an alias).'}, 'artistId': {'type': 'string', 'description': 'MBID of the credited artist â\x80\x94 chain to musicbrainz_get_artist.'}, 'artistName': {'type': 'string', 'description': 'Canonical artist name.'}, 'joinPhrase': {'type': 'string', 'description': 'Text that joins this credit to the next (e.g. " feat. ", " & "). Omitted when empty.'}}, 'description': 'One credited artist within an artist credit.', 'additionalProperties': False}, 'description': 'Credited artists (may be empty).'}, 'externalLinks': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'resource'], 'properties': {'type': {'type': 'string', 'description': 'Link type (e.g. "wikidata", "discogs", "official homepage", "streaming").'}, 'resource': {'type': 'string', 'description': 'The external URL. Wikidata/Discogs IDs live in the URL path â\x80\x94 chain to those servers.'}}, 'description': 'An external resource link (url-rel). Where cross-service IDs like Wikidata QID are surfaced.', 'additionalProperties': False}, 'description': 'External resource links (url-rels) (may be empty).'}, 'relationships': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'targetType'], 'properties': {'end': {'type': 'string', 'description': 'Relationship end date. Omitted when absent.'}, 'type': {'type': 'string', 'description': 'Relationship role (e.g. "member of band", "producer", "writer", "performance").'}, 'begin': {'type': 'string', 'description': 'Relationship start date. Omitted when absent.'}, 'targetId': {'type': 'string', 'description': 'MBID of the related entity â\x80\x94 chain to the matching get_* tool. Omitted for url targets.'}, 'direction': {'type': 'string', 'description': 'Relationship direction ("forward" | "backward"). Omitted when absent.'}, 'attributes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Role modifiers (e.g. "lead vocals", "assistant", "co"). Omitted when none.'}, 'targetName': {'type': 'string', 'description': 'Name/title of the related entity. Omitted when absent.'}, 'targetType': {'type': 'string', 'description': 'Type of the related entity ("artist" | "work" | "recording" | "label" | "url").'}}, 'description': 'A typed relationship to another entity (band membership, performer, writer, etc.).', 'additionalProperties': False}, 'description': 'Performance/production relationships and work-rels (may be empty).'}, 'disambiguation': {'type': 'string', 'description': 'Short qualifier. Omitted when absent.'}, 'firstReleaseDate': {'type': 'string', 'description': 'Earliest release date for this recording. Omitted when absent.'}, 'artistCreditString': {'type': 'string', 'description': 'Display string of the artist credit with join phrases.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['mbid'], 'properties': {'mbid': {'type': 'string', 'description': 'Release MBID (36-character UUID).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['mbid', 'title', 'artistCredit', 'artistCreditString', 'labelInfo', 'media', 'coverArt']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'date': {'type': 'string', 'description': 'Release date. Omitted when absent.'}, 'mbid': {'type': 'string', 'description': 'Release MBID.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['invalid_mbid', 'entity_not_found'], 'description': 'Machine-readable failure mode. Declared by this tool: `invalid_mbid`: The MBID is malformed or the all-zeros sentinel (MusicBrainz returns HTTP 400). `entity_not_found`: The MBID is well-formed but no release exists with it (MusicBrainz returns HTTP 404). Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'media': {'type': 'array', 'items': {'type': 'object', 'required': ['tracks'], 'properties': {'title': {'type': 'string', 'description': 'Medium title, when the disc is named. Omitted when absent.'}, 'format': {'type': 'string', 'description': 'Medium format (CD, Vinyl, Digital Media, â\x80¦). Omitted when unknown.'}, 'tracks': {'type': 'array', 'items': {'type': 'object', 'required': ['title'], 'properties': {'title': {'type': 'string', 'description': 'Track title.'}, 'length': {'type': 'string', 'description': 'Track length as m:ss. Omitted when unknown.'}, 'number': {'type': 'string', 'description': 'Printed track number (may differ from position). Omitted when absent.'}, 'position': {'type': 'number', 'description': 'Track position on the medium. Omitted when absent.'}, 'recordingId': {'type': 'string', 'description': 'Recording MBID â\x80\x94 chain to musicbrainz_get_recording. Omitted when absent.'}}, 'description': 'A track on a medium, linked to its underlying recording.', 'additionalProperties': False}, 'description': 'Tracks on this medium (may be empty).'}, 'position': {'type': 'number', 'description': 'Medium position in the release (disc 1, 2, â\x80¦). Omitted when absent.'}, 'trackCount': {'type': 'number', 'description': 'Number of tracks on the medium. Omitted when absent.'}}, 'description': 'One physical/digital medium (disc) of the release.', 'additionalProperties': False}, 'description': 'Media (discs) with their tracklists (may be empty).'}, 'title': {'type': 'string', 'description': 'Release title.'}, 'script': {'type': 'string', 'description': 'Text-representation script code. Omitted when absent.'}, 'status': {'type': 'string', 'description': 'Release status (Official, Promotion, Bootleg, â\x80¦). Omitted when absent.'}, 'barcode': {'type': 'string', 'description': 'Barcode (UPC/EAN). Omitted when absent; empty string upstream means "known to have none".'}, 'country': {'type': 'string', 'description': 'Release country code. Omitted when absent.'}, 'coverArt': {'type': 'object', 'required': ['exists'], 'properties': {'back': {'type': 'boolean', 'description': 'Whether a designated back image exists. Omitted when unknown.'}, 'count': {'type': 'number', 'description': 'Number of images available. Omitted when unknown.'}, 'front': {'type': 'boolean', 'description': 'Whether a designated front image exists. Omitted when unknown.'}, 'exists': {'type': 'boolean', 'description': 'Whether the Cover Art Archive has any artwork for this entity.'}}, 'description': 'Whether cover art exists (availability stub from WS/2).', 'additionalProperties': False}, 'language': {'type': 'string', 'description': 'Text-representation language code. Omitted when absent.'}, 'labelInfo': {'type': 'array', 'items': {'type': 'object', 'properties': {'labelId': {'type': 'string', 'description': 'Label MBID â\x80\x94 chain to musicbrainz_get_label. Omitted when absent.'}, 'labelName': {'type': 'string', 'description': 'Label name. Omitted when absent.'}, 'catalogNumber': {'type': 'string', 'description': 'Catalog number on this release. Omitted when absent.'}}, 'description': 'Label + catalog-number pairing for the release.', 'additionalProperties': False}, 'description': 'Label / catalog-number pairings (may be empty).'}, 'packaging': {'type': 'string', 'description': 'Packaging type (Jewel Case, Digipak, â\x80¦). Omitted when absent.'}, 'artistCredit': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'artistId', 'artistName'], 'properties': {'name': {'type': 'string', 'description': 'Credited name as it appears on the release (may be an alias).'}, 'artistId': {'type': 'string', 'description': 'MBID of the credited artist â\x80\x94 chain to musicbrainz_get_artist.'}, 'artistName': {'type': 'string', 'description': 'Canonical artist name.'}, 'joinPhrase': {'type': 'string', 'description': 'Text that joins this credit to the next (e.g. " feat. ", " & "). Omitted when empty.'}}, 'description': 'One credited artist within an artist credit.', 'additionalProperties': False}, 'description': 'Credited artists (may be empty).'}, 'disambiguation': {'type': 'string', 'description': 'Short qualifier. Omitted when absent.'}, 'releaseGroupId': {'type': 'string', 'description': 'Parent release-group MBID â\x80\x94 chain to musicbrainz_get_release_group. Omitted when absent.'}, 'artistCreditString': {'type': 'string', 'description': 'Display string of the artist credit with join phrases.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['mbid'], 'properties': {'mbid': {'type': 'string', 'description': 'Release-group MBID (36-character UUID).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['mbid', 'title', 'artistCredit', 'artistCreditString', 'releases', 'tags']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'cap': {'type': 'number', 'description': 'The one-page cap that was applied. Absent when not truncated.'}, 'mbid': {'type': 'string', 'description': 'Release-group MBID.'}, 'tags': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'count'], 'properties': {'name': {'type': 'string', 'description': 'Tag or genre name.'}, 'count': {'type': 'number', 'description': 'Community vote count for this tag.'}}, 'description': 'A folksonomy tag or genre with its vote count.', 'additionalProperties': False}, 'description': 'Community tags/genres (may be empty).'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['invalid_mbid', 'entity_not_found'], 'description': 'Machine-readable failure mode. Declared by this tool: `invalid_mbid`: The MBID is malformed or the all-zeros sentinel (MusicBrainz returns HTTP 400). `entity_not_found`: The MBID is well-formed but no release-group exists with it (MusicBrainz returns HTTP 404). Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'shown': {'type': 'number', 'description': 'Number of releases returned. Absent when not truncated.'}, 'title': {'type': 'string', 'description': 'Release-group title.'}, 'notice': {'type': 'string', 'description': 'Present when the releases list was capped (how to fetch the complete set of editions) and/or when cover-art availability could not be checked (why coverArt is omitted).'}, 'coverArt': {'type': 'object', 'required': ['exists'], 'properties': {'back': {'type': 'boolean', 'description': 'Whether a designated back image exists. Omitted when unknown.'}, 'count': {'type': 'number', 'description': 'Number of images available. Omitted when unknown.'}, 'front': {'type': 'boolean', 'description': 'Whether a designated front image exists. Omitted when unknown.'}, 'exists': {'type': 'boolean', 'description': 'Whether the Cover Art Archive has any artwork for this entity.'}}, 'description': "Cover-art availability from the Cover Art Archive: the images of the release-group's representative release, the same art musicbrainz_get_cover_art returns (exists: false with count 0 when the archive has none). Omitted when the archive lookup could not complete â\x80\x94 the notice says so.", 'additionalProperties': False}, 'releases': {'type': 'array', 'items': {'type': 'object', 'required': ['mbid', 'title'], 'properties': {'date': {'type': 'string', 'description': 'Release date. Omitted when absent.'}, 'mbid': {'type': 'string', 'description': 'Release MBID â\x80\x94 chain to musicbrainz_get_release for the tracklist.'}, 'title': {'type': 'string', 'description': 'Release (edition) title.'}, 'status': {'type': 'string', 'description': 'Release status (Official, Promotion, â\x80¦). Omitted when absent.'}, 'country': {'type': 'string', 'description': 'Release country code. Omitted when absent.'}, 'disambiguation': {'type': 'string', 'description': 'Short qualifier. Omitted when absent.'}}, 'description': 'A release (edition) within the release-group.', 'additionalProperties': False}, 'description': 'Releases (editions) in this group (one page; may be empty or capped â\x80\x94 use browse for all).'}, 'truncated': {'type': 'boolean', 'description': 'True when the releases list hit the one-page cap and more editions exist. Absent when the full set fit in one page.'}, 'primaryType': {'type': 'string', 'description': 'Primary type (Album, Single, EP, Broadcast, Other). Omitted when absent.'}, 'artistCredit': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'artistId', 'artistName'], 'properties': {'name': {'type': 'string', 'description': 'Credited name as it appears on the release (may be an alias).'}, 'artistId': {'type': 'string', 'description': 'MBID of the credited artist â\x80\x94 chain to musicbrainz_get_artist.'}, 'artistName': {'type': 'string', 'description': 'Canonical artist name.'}, 'joinPhrase': {'type': 'string', 'description': 'Text that joins this credit to the next (e.g. " feat. ", " & "). Omitted when empty.'}}, 'description': 'One credited artist within an artist credit.', 'additionalProperties': False}, 'description': 'Credited artists (may be empty).'}, 'disambiguation': {'type': 'string', 'description': 'Short qualifier. Omitted when absent.'}, 'secondaryTypes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Secondary types (Live, Compilation, Soundtrack, â\x80¦). Omitted when none.'}, 'firstReleaseDate': {'type': 'string', 'description': 'Earliest release date across all editions. Omitted when absent.'}, 'artistCreditString': {'type': 'string', 'description': 'Display string of the artist credit with join phrases.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['mbid'], 'properties': {'mbid': {'type': 'string', 'description': 'Work MBID (36-character UUID).'}, 'inc_relationships': {'type': 'boolean', 'default': True, 'description': 'Include writer/composer relationships, recording relationships, and external links.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['mbid', 'title', 'languages', 'iswcs', 'aliases', 'tags', 'relationships', 'externalLinks']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'mbid': {'type': 'string', 'description': 'Work MBID.'}, 'tags': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'count'], 'properties': {'name': {'type': 'string', 'description': 'Tag or genre name.'}, 'count': {'type': 'number', 'description': 'Community vote count for this tag.'}}, 'description': 'A folksonomy tag or genre with its vote count.', 'additionalProperties': False}, 'description': 'Community tags/genres (may be empty).'}, 'type': {'type': 'string', 'description': 'Work type (Song, Symphony, â\x80¦). Omitted when unknown.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['invalid_mbid', 'entity_not_found'], 'description': 'Machine-readable failure mode. Declared by this tool: `invalid_mbid`: The MBID is malformed or the all-zeros sentinel (MusicBrainz returns HTTP 400). `entity_not_found`: The MBID is well-formed but no work exists with it (MusicBrainz returns HTTP 404). Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'iswcs': {'type': 'array', 'items': {'type': 'string'}, 'description': 'ISWCs assigned to this work (may be empty).'}, 'title': {'type': 'string', 'description': 'Work title.'}, 'aliases': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Alias name.'}, 'type': {'type': 'string', 'description': 'Alias type (e.g. "Artist name", "Legal name"). Omitted when absent.'}, 'locale': {'type': 'string', 'description': 'BCP-47 locale of the alias. Omitted when absent.'}, 'primary': {'type': 'boolean', 'description': 'Whether this is the primary alias for its locale. Omitted when absent.'}, 'sortName': {'type': 'string', 'description': 'Sortable form of the alias. Omitted when absent.'}}, 'description': 'An alternate name for the entity.', 'additionalProperties': False}, 'description': 'Alternate titles (may be empty).'}, 'languages': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Lyrics languages (ISO codes; may be empty).'}, 'externalLinks': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'resource'], 'properties': {'type': {'type': 'string', 'description': 'Link type (e.g. "wikidata", "discogs", "official homepage", "streaming").'}, 'resource': {'type': 'string', 'description': 'The external URL. Wikidata/Discogs IDs live in the URL path â\x80\x94 chain to those servers.'}}, 'description': 'An external resource link (url-rel). Where cross-service IDs like Wikidata QID are surfaced.', 'additionalProperties': False}, 'description': 'External resource links (url-rels) (may be empty).'}, 'relationships': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'targetType'], 'properties': {'end': {'type': 'string', 'description': 'Relationship end date. Omitted when absent.'}, 'type': {'type': 'string', 'description': 'Relationship role (e.g. "member of band", "producer", "writer", "performance").'}, 'begin': {'type': 'string', 'description': 'Relationship start date. Omitted when absent.'}, 'targetId': {'type': 'string', 'description': 'MBID of the related entity â\x80\x94 chain to the matching get_* tool. Omitted for url targets.'}, 'direction': {'type': 'string', 'description': 'Relationship direction ("forward" | "backward"). Omitted when absent.'}, 'attributes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Role modifiers (e.g. "lead vocals", "assistant", "co"). Omitted when none.'}, 'targetName': {'type': 'string', 'description': 'Name/title of the related entity. Omitted when absent.'}, 'targetType': {'type': 'string', 'description': 'Type of the related entity ("artist" | "work" | "recording" | "label" | "url").'}}, 'description': 'A typed relationship to another entity (band membership, performer, writer, etc.).', 'additionalProperties': False}, 'description': 'Writer/composer/lyricist relationships and recording-rels â\x80\x94 the complete set (may be empty).'}, 'disambiguation': {'type': 'string', 'description': 'Short qualifier. Omitted when absent.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id_type', 'value'], 'properties': {'value': {'type': 'string', 'minLength': 1, 'description': 'The identifier value. ISRC e.g. "USRC17607839"; ISWC e.g. "T-010.140.236-1"; barcode = the UPC/EAN digits, e.g. "075678164125" (spaces and hyphens are ignored; any other character, including a wildcard, is rejected).'}, 'id_type': {'enum': ['isrc', 'iswc', 'barcode'], 'type': 'string', 'description': 'Which standard identifier: isrc (recording), iswc (work), or barcode (release).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['result']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['identifier_not_found', 'invalid_identifier'], 'description': 'Machine-readable failure mode. Declared by this tool: `identifier_not_found`: The identifier is well-formed but resolves to zero entities. `invalid_identifier`: The ISRC/ISWC is malformed (the dedicated endpoint returns HTTP 400), or the barcode contains anything other than digits once spaces and hyphens are removed. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'result': {'oneOf': [{'type': 'object', 'required': ['kind', 'identifier', 'recordings'], 'properties': {'kind': {'type': 'string', 'const': 'recordings', 'description': 'ISRC resolved to recordings.'}, 'identifier': {'type': 'string', 'description': 'The looked-up identifier value.'}, 'recordings': {'type': 'array', 'items': {'type': 'object', 'required': ['mbid', 'title', 'artistCredit'], 'properties': {'mbid': {'type': 'string', 'description': 'Recording MBID â\x80\x94 chain to musicbrainz_get_recording.'}, 'title': {'type': 'string', 'description': 'Recording title.'}, 'length': {'type': 'string', 'description': 'Recording length as m:ss. Omitted when unknown.'}, 'artistCredit': {'type': 'string', 'description': 'Credited artist string; falls back to "Unknown artist" when none is recorded.'}}, 'description': 'A recording carrying the looked-up ISRC.', 'additionalProperties': False}, 'description': 'Recordings carrying this ISRC.'}}, 'description': 'ISRC result arm: recordings carrying the ISRC.', 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'identifier', 'works'], 'properties': {'kind': {'type': 'string', 'const': 'works', 'description': 'ISWC resolved to works.'}, 'works': {'type': 'array', 'items': {'type': 'object', 'required': ['mbid', 'title'], 'properties': {'mbid': {'type': 'string', 'description': 'Work MBID â\x80\x94 chain to musicbrainz_get_work.'}, 'type': {'type': 'string', 'description': 'Work type. Omitted when absent.'}, 'title': {'type': 'string', 'description': 'Work title.'}}, 'description': 'A work carrying the looked-up ISWC.', 'additionalProperties': False}, 'description': 'Works carrying this ISWC.'}, 'identifier': {'type': 'string', 'description': 'The looked-up identifier value.'}}, 'description': 'ISWC result arm: works carrying the ISWC.', 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'identifier', 'releases'], 'properties': {'kind': {'type': 'string', 'const': 'releases', 'description': 'Barcode resolved to releases.'}, 'releases': {'type': 'array', 'items': {'type': 'object', 'required': ['mbid', 'title', 'artistCredit', 'score'], 'properties': {'date': {'type': 'string', 'description': 'Release date. Omitted when absent.'}, 'mbid': {'type': 'string', 'description': 'Release MBID â\x80\x94 chain to musicbrainz_get_release.'}, 'score': {'type': 'number', 'description': 'Lucene relevance score, 0â\x80\x93100 (barcode is a search filter; exact = 100).'}, 'title': {'type': 'string', 'description': 'Release title.'}, 'country': {'type': 'string', 'description': 'Release country code. Omitted when absent.'}, 'artistCredit': {'type': 'string', 'description': 'Credited artist string.'}}, 'description': 'A release carrying the looked-up barcode.', 'additionalProperties': False}, 'description': 'Releases carrying this barcode (ranked).'}, 'identifier': {'type': 'string', 'description': 'The barcode digits that were searched (spaces and hyphens removed).'}}, 'description': 'Barcode result arm: releases carrying the barcode.', 'additionalProperties': False}], 'description': 'The resolved entities, discriminated by `kind` (recordings | works | releases).'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['entityType', 'query'], 'properties': {'limit': {'type': 'integer', 'default': 25, 'maximum': 100, 'minimum': 1, 'description': 'Maximum results to return (1â\x80\x93100).'}, 'query': {'type': 'string', 'minLength': 1, 'description': 'Lucene query string; must contain non-whitespace text. Plain text matches names/titles; field scoping (e.g. `artist:`, `country:`, `tag:`) is supported. Sent to MusicBrainz exactly as given.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Result offset for pagination (0-based).'}, 'entityType': {'enum': ['artist', 'release-group', 'release', 'recording', 'work', 'label'], 'type': 'string', 'description': 'Which entity type to search.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['entityType', 'results', 'effectiveQuery', 'totalCount']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['blank_query'], 'description': 'Machine-readable failure mode. Declared by this tool: `blank_query`: The query contains only whitespace (it is blank after trimming). Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'notice': {'type': 'string', 'description': 'Guidance when zero results matched â\x80\x94 how to broaden or correct the query.'}, 'results': {'type': 'array', 'items': {'type': 'object', 'required': ['mbid', 'name', 'score'], 'properties': {'date': {'type': 'string', 'description': 'First-release date (release-group) or release date (release). Omitted when absent.'}, 'mbid': {'type': 'string', 'description': 'MusicBrainz identifier (UUID) â\x80\x94 chain into the matching musicbrainz_get_* tool.'}, 'name': {'type': 'string', 'description': 'Entity name (artist/label) or title (release-group/release/recording/work).'}, 'type': {'type': 'string', 'description': 'Entity subtype (artist type, release-group primary type, work type, label type). Omitted when absent.'}, 'isrcs': {'type': 'array', 'items': {'type': 'string'}, 'description': 'ISRCs on a recording result. Omitted when none.'}, 'iswcs': {'type': 'array', 'items': {'type': 'string'}, 'description': 'ISWCs on a work result. Omitted when none.'}, 'score': {'type': 'number', 'description': 'Lucene relevance score, 0â\x80\x93100. 100 = exact match; low scores are weak partial matches.'}, 'length': {'type': 'string', 'description': 'Recording length as m:ss. Omitted when unknown.'}, 'country': {'type': 'string', 'description': 'Country code, for release/artist/label results. Omitted when absent.'}, 'artistCredit': {'type': 'string', 'description': 'Credited artist string, for release-group/release/recording results. Omitted for artist/label/work.'}, 'disambiguation': {'type': 'string', 'description': 'Short qualifier distinguishing same-named entities. Omitted when absent.'}}, 'description': 'A ranked search hit. Type-specific fields appear only for the relevant entity type.', 'additionalProperties': False}, 'description': 'Ranked matches, in MusicBrainz score-descending order.'}, 'entityType': {'type': 'string', 'description': 'The entity type that was searched.'}, 'totalCount': {'type': 'number', 'description': 'Total matches upstream before the limit/offset window.'}, 'effectiveQuery': {'type': 'string', 'description': 'The query string as sent to MusicBrainz.'}}, 'additionalProperties': False}
Cambios recientes en herramientas
Servidores MCP similares
Social Fetch
Retrieves public content and metadata from social networks, music services, Facebook Marketplace, events, profiles, posts, commen…
Heista
Analyzes video advertising, builds brand intelligence profiles, researches markets, and generates advertising scripts and creativ…
VarynForge
Supports SEO research and content planning through niche analysis, competitor and keyword research, opportunity discovery, and wr…
Tmdb
Provides TMDB-based movie, television, and people discovery, metadata, credits, recommendations, videos, and trend-related entert…
AfterLaunch: the agentic growth marketing engine
Runs growth-marketing workflows covering SEO, AI-search visibility, competitor analysis, content planning, distribution channels,…
Setlist Fm
Provides setlist.fm concert research by artist, venue, city, country, and date, including artist records, concert histories, and …
Watchmode
Searches streaming catalogs and availability across regions, services, genres, networks, titles, and release dates.
Vimeo
Searches and retrieves public Vimeo videos, channels, categories, and related metadata.