naftiko: 1.0.0-alpha2 info: label: MusicBrainz Web Service v2 — Instruments description: 'MusicBrainz Web Service v2 — Instruments. 2 operations. Lead operation: Lookup Instrument By MBID. Self-contained Naftiko capability covering one MusicBrainz business surface.' tags: - MusicBrainz - Instruments created: '2026-05-29' modified: '2026-05-29' binds: - namespace: env keys: MUSICBRAINZ_USER_AGENT: MUSICBRAINZ_USER_AGENT capability: consumes: - type: http namespace: musicbrainz-instruments baseUri: https://musicbrainz.org/ws/2 description: MusicBrainz Web Service v2 — Instruments business capability. Self-contained, no shared references. resources: - name: instrument-mbid path: /instrument/{mbid} operations: - name: lookupInstrument method: GET description: Lookup Instrument By MBID outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: mbid in: path type: string required: true - name: inc in: query type: string - name: fmt in: query type: string - name: instrument path: /instrument operations: - name: browseOrSearchInstruments method: GET description: Browse Or Search Instruments outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: query in: query type: string - name: limit in: query type: integer - name: offset in: query type: integer - name: inc in: query type: string - name: fmt in: query type: string headers: User-Agent: '{{env.MUSICBRAINZ_USER_AGENT}}' Accept: application/json exposes: - type: rest namespace: musicbrainz-instruments-rest port: 8080 description: REST adapter for MusicBrainz Web Service v2 — Instruments. One Spectral-compliant resource per consumed operation, prefixed with /ws/2. resources: - path: /ws/2/instrument/{mbid} name: instrument-mbid description: REST surface for instrument-mbid. operations: - method: GET name: lookupInstrument description: Lookup Instrument By MBID call: musicbrainz-instruments.lookupInstrument outputParameters: - type: object mapping: $. with: mbid: rest.mbid inc: rest.inc fmt: rest.fmt - path: /ws/2/instrument name: instrument description: REST surface for instrument. operations: - method: GET name: browseOrSearchInstruments description: Browse Or Search Instruments call: musicbrainz-instruments.browseOrSearchInstruments outputParameters: - type: object mapping: $. with: query: rest.query limit: rest.limit offset: rest.offset inc: rest.inc fmt: rest.fmt - type: mcp namespace: musicbrainz-instruments-mcp port: 9090 transport: http description: MCP adapter for MusicBrainz Web Service v2 — Instruments. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: lookup-instrument description: Lookup Instrument By MBID hints: readOnly: true destructive: false idempotent: true call: musicbrainz-instruments.lookupInstrument outputParameters: - type: object mapping: $. with: mbid: tools.mbid inc: tools.inc fmt: tools.fmt - name: browse-or-search-instruments description: Browse Or Search Instruments hints: readOnly: true destructive: false idempotent: true call: musicbrainz-instruments.browseOrSearchInstruments outputParameters: - type: object mapping: $. with: query: tools.query limit: tools.limit offset: tools.offset inc: tools.inc fmt: tools.fmt