Musixmatch · Capability

Musixmatch API

The most powerful and legal way to display lyrics on your website or in your application. Musixmatch lyrics API is a robust service that permits you to search and retrieve lyrics in the simplest possible way.

Run with Naftiko MusixmatchAPI

What You Can Do

GET
Get album tracks get — GET /album.tracks.get
/album.tracks.get
GET
Get album get — GET /album.get
/album.get
GET
Get artist related get — GET /artist.related.get
/artist.related.get
GET
Get artist albums get — GET /artist.albums.get
/artist.albums.get
GET
Get artist search — GET /artist.search
/artist.search
GET
Get artist get — GET /artist.get
/artist.get
GET
Get matcher subtitle get — GET /matcher.subtitle.get
/matcher.subtitle.get
GET
Get matcher track get — GET /matcher.track.get
/matcher.track.get
GET
Get matcher lyrics get — GET /matcher.lyrics.get
/matcher.lyrics.get
GET
Get track snippet get — GET /track.snippet.get
/track.snippet.get
GET
Get track lyrics get — GET /track.lyrics.get
/track.lyrics.get
GET
Get track subtitle get — GET /track.subtitle.get
/track.subtitle.get
GET
Get track get — GET /track.get
/track.get
GET
Get track search — GET /track.search
/track.search
GET
Get chart tracks get — GET /chart.tracks.get
/chart.tracks.get
GET
Get chart artists get — GET /chart.artists.get
/chart.artists.get

MCP Tools

get-album-tracks-get

GET /album.tracks.get

read-only idempotent
get-album-get

GET /album.get

read-only idempotent
get-artist-related-get

GET /artist.related.get

read-only idempotent
get-artist-albums-get

GET /artist.albums.get

read-only idempotent
get-artist-search

GET /artist.search

read-only idempotent
get-artist-get

GET /artist.get

read-only idempotent
get-matcher-subtitle-get

GET /matcher.subtitle.get

read-only idempotent
get-matcher-track-get

GET /matcher.track.get

read-only idempotent
get-matcher-lyrics-get

GET /matcher.lyrics.get

read-only idempotent
get-track-snippet-get

GET /track.snippet.get

read-only idempotent
get-track-lyrics-get

GET /track.lyrics.get

read-only idempotent
get-track-subtitle-get

GET /track.subtitle.get

read-only idempotent
get-track-get

GET /track.get

read-only idempotent
get-track-search

GET /track.search

read-only idempotent
get-chart-tracks-get

GET /chart.tracks.get

read-only idempotent
get-chart-artists-get

GET /chart.artists.get

read-only idempotent

Capability Spec

musixmatch-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Musixmatch API
  description: The most powerful and legal way to display lyrics on your website or in your application. Musixmatch lyrics
    API is a robust service that permits you to search and retrieve lyrics in the simplest possible way.
  tags:
  - Musixmatch
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: musixmatch
    baseUri: https://api.musixmatch.com/ws/1.1
    description: Musixmatch API HTTP API.
    authentication:
      type: apikey
      in: query
      name: apikey
      value: '{{MUSIXMATCH_TOKEN}}'
    resources:
    - name: album-tracks-get
      path: /album.tracks.get
      operations:
      - name: get-album-tracks-get
        method: GET
        description: GET /album.tracks.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: album_id
          in: query
          type: string
          required: true
          description: The musiXmatch album id
        - name: f_has_lyrics
          in: query
          type: string
          description: When set, filter only contents with lyrics
        - name: page
          in: query
          type: number
          description: Define the page number for paginated results
        - name: page_size
          in: query
          type: number
          description: Define the page size for paginated results.Range is 1 to 100.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: album-get
      path: /album.get
      operations:
      - name: get-album-get
        method: GET
        description: GET /album.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: album_id
          in: query
          type: string
          required: true
          description: The musiXmatch album id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: artist-related-get
      path: /artist.related.get
      operations:
      - name: get-artist-related-get
        method: GET
        description: GET /artist.related.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: artist_id
          in: query
          type: string
          required: true
          description: The musiXmatch artist id
        - name: page_size
          in: query
          type: number
          description: Define the page size for paginated results.Range is 1 to 100.
        - name: page
          in: query
          type: number
          description: Define the page number for paginated results
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: artist-albums-get
      path: /artist.albums.get
      operations:
      - name: get-artist-albums-get
        method: GET
        description: GET /artist.albums.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: artist_id
          in: query
          type: string
          required: true
          description: The musiXmatch artist id
        - name: s_release_date
          in: query
          type: string
          description: Sort by release date (asc|desc)
        - name: g_album_name
          in: query
          type: string
          description: Group by Album Name
        - name: page_size
          in: query
          type: number
          description: Define the page size for paginated results.Range is 1 to 100.
        - name: page
          in: query
          type: number
          description: Define the page number for paginated results
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: artist-search
      path: /artist.search
      operations:
      - name: get-artist-search
        method: GET
        description: GET /artist.search
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: q_artist
          in: query
          type: string
          description: The song artist
        - name: f_artist_id
          in: query
          type: number
          description: When set, filter by this artist id
        - name: page
          in: query
          type: number
          description: Define the page number for paginated results
        - name: page_size
          in: query
          type: number
          description: Define the page size for paginated results.Range is 1 to 100.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: artist-get
      path: /artist.get
      operations:
      - name: get-artist-get
        method: GET
        description: GET /artist.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: artist_id
          in: query
          type: string
          required: true
          description: The musiXmatch artist id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: matcher-subtitle-get
      path: /matcher.subtitle.get
      operations:
      - name: get-matcher-subtitle-get
        method: GET
        description: GET /matcher.subtitle.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: q_track
          in: query
          type: string
          description: The song title
        - name: q_artist
          in: query
          type: string
          description: The song artist
        - name: f_subtitle_length
          in: query
          type: number
          description: Filter by subtitle length in seconds
        - name: f_subtitle_length_max_deviation
          in: query
          type: number
          description: Max deviation for a subtitle length in seconds
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: matcher-track-get
      path: /matcher.track.get
      operations:
      - name: get-matcher-track-get
        method: GET
        description: GET /matcher.track.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: q_artist
          in: query
          type: string
          description: The song artist
        - name: q_track
          in: query
          type: string
          description: The song title
        - name: f_has_lyrics
          in: query
          type: number
          description: When set, filter only contents with lyrics
        - name: f_has_subtitle
          in: query
          type: number
          description: When set, filter only contents with subtitles
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: matcher-lyrics-get
      path: /matcher.lyrics.get
      operations:
      - name: get-matcher-lyrics-get
        method: GET
        description: GET /matcher.lyrics.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: q_track
          in: query
          type: string
          description: The song title
        - name: q_artist
          in: query
          type: string
          description: The song artist
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: track-snippet-get
      path: /track.snippet.get
      operations:
      - name: get-track-snippet-get
        method: GET
        description: GET /track.snippet.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: track_id
          in: query
          type: string
          required: true
          description: The musiXmatch track id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: track-lyrics-get
      path: /track.lyrics.get
      operations:
      - name: get-track-lyrics-get
        method: GET
        description: GET /track.lyrics.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: track_id
          in: query
          type: string
          required: true
          description: The musiXmatch track id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: track-subtitle-get
      path: /track.subtitle.get
      operations:
      - name: get-track-subtitle-get
        method: GET
        description: GET /track.subtitle.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: track_id
          in: query
          type: string
          required: true
          description: The musiXmatch track id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: track-get
      path: /track.get
      operations:
      - name: get-track-get
        method: GET
        description: GET /track.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: track_id
          in: query
          type: string
          required: true
          description: The musiXmatch track id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: track-search
      path: /track.search
      operations:
      - name: get-track-search
        method: GET
        description: GET /track.search
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: q_track
          in: query
          type: string
          description: The song title
        - name: q_artist
          in: query
          type: string
          description: The song artist
        - name: q_lyrics
          in: query
          type: string
          description: Any word in the lyrics
        - name: f_artist_id
          in: query
          type: number
          description: When set, filter by this artist id
        - name: f_music_genre_id
          in: query
          type: number
          description: When set, filter by this music category id
        - name: f_lyrics_language
          in: query
          type: number
          description: Filter by the lyrics language (en,it,..)
        - name: f_has_lyrics
          in: query
          type: number
          description: When set, filter only contents with lyrics
        - name: s_artist_rating
          in: query
          type: string
          description: Sort by our popularity index for artists (asc|desc)
        - name: s_track_rating
          in: query
          type: string
          description: Sort by our popularity index for tracks (asc|desc)
        - name: quorum_factor
          in: query
          type: number
          description: Search only a part of the given query string.Allowed range is (0.1 0.9)
        - name: page_size
          in: query
          type: number
          description: Define the page size for paginated results.Range is 1 to 100.
        - name: page
          in: query
          type: number
          description: Define the page number for paginated results
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: chart-tracks-get
      path: /chart.tracks.get
      operations:
      - name: get-chart-tracks-get
        method: GET
        description: GET /chart.tracks.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: page
          in: query
          type: number
          description: Define the page number for paginated results
        - name: page_size
          in: query
          type: number
          description: Define the page size for paginated results.Range is 1 to 100.
        - name: country
          in: query
          type: string
          description: A valid ISO 3166 country code
        - name: f_has_lyrics
          in: query
          type: string
          description: When set, filter only contents with lyrics
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: chart-artists-get
      path: /chart.artists.get
      operations:
      - name: get-chart-artists-get
        method: GET
        description: GET /chart.artists.get
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'output format: json, jsonp, xml.'
        - name: callback
          in: query
          type: string
          description: jsonp callback
        - name: page
          in: query
          type: number
          description: Define the page number for paginated results
        - name: page_size
          in: query
          type: number
          description: Define the page size for paginated results.Range is 1 to 100.
        - name: country
          in: query
          type: string
          description: A valid ISO 3166 country code
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: musixmatch-rest
    description: REST adapter for Musixmatch API.
    resources:
    - path: /album.tracks.get
      name: get-album-tracks-get
      operations:
      - method: GET
        name: get-album-tracks-get
        description: GET /album.tracks.get
        call: musixmatch.get-album-tracks-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /album.get
      name: get-album-get
      operations:
      - method: GET
        name: get-album-get
        description: GET /album.get
        call: musixmatch.get-album-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /artist.related.get
      name: get-artist-related-get
      operations:
      - method: GET
        name: get-artist-related-get
        description: GET /artist.related.get
        call: musixmatch.get-artist-related-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /artist.albums.get
      name: get-artist-albums-get
      operations:
      - method: GET
        name: get-artist-albums-get
        description: GET /artist.albums.get
        call: musixmatch.get-artist-albums-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /artist.search
      name: get-artist-search
      operations:
      - method: GET
        name: get-artist-search
        description: GET /artist.search
        call: musixmatch.get-artist-search
        outputParameters:
        - type: object
          mapping: $.
    - path: /artist.get
      name: get-artist-get
      operations:
      - method: GET
        name: get-artist-get
        description: GET /artist.get
        call: musixmatch.get-artist-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /matcher.subtitle.get
      name: get-matcher-subtitle-get
      operations:
      - method: GET
        name: get-matcher-subtitle-get
        description: GET /matcher.subtitle.get
        call: musixmatch.get-matcher-subtitle-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /matcher.track.get
      name: get-matcher-track-get
      operations:
      - method: GET
        name: get-matcher-track-get
        description: GET /matcher.track.get
        call: musixmatch.get-matcher-track-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /matcher.lyrics.get
      name: get-matcher-lyrics-get
      operations:
      - method: GET
        name: get-matcher-lyrics-get
        description: GET /matcher.lyrics.get
        call: musixmatch.get-matcher-lyrics-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /track.snippet.get
      name: get-track-snippet-get
      operations:
      - method: GET
        name: get-track-snippet-get
        description: GET /track.snippet.get
        call: musixmatch.get-track-snippet-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /track.lyrics.get
      name: get-track-lyrics-get
      operations:
      - method: GET
        name: get-track-lyrics-get
        description: GET /track.lyrics.get
        call: musixmatch.get-track-lyrics-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /track.subtitle.get
      name: get-track-subtitle-get
      operations:
      - method: GET
        name: get-track-subtitle-get
        description: GET /track.subtitle.get
        call: musixmatch.get-track-subtitle-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /track.get
      name: get-track-get
      operations:
      - method: GET
        name: get-track-get
        description: GET /track.get
        call: musixmatch.get-track-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /track.search
      name: get-track-search
      operations:
      - method: GET
        name: get-track-search
        description: GET /track.search
        call: musixmatch.get-track-search
        outputParameters:
        - type: object
          mapping: $.
    - path: /chart.tracks.get
      name: get-chart-tracks-get
      operations:
      - method: GET
        name: get-chart-tracks-get
        description: GET /chart.tracks.get
        call: musixmatch.get-chart-tracks-get
        outputParameters:
        - type: object
          mapping: $.
    - path: /chart.artists.get
      name: get-chart-artists-get
      operations:
      - method: GET
        name: get-chart-artists-get
        description: GET /chart.artists.get
        call: musixmatch.get-chart-artists-get
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: musixmatch-mcp
    transport: http
    description: MCP adapter for Musixmatch API for AI agent use.
    tools:
    - name: get-album-tracks-get
      description: GET /album.tracks.get
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-album-tracks-get
      with:
        format: tools.format
        callback: tools.callback
        album_id: tools.album_id
        f_has_lyrics: tools.f_has_lyrics
        page: tools.page
        page_size: tools.page_size
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: album_id
        type: string
        description: The musiXmatch album id
        required: true
      - name: f_has_lyrics
        type: string
        description: When set, filter only contents with lyrics
      - name: page
        type: number
        description: Define the page number for paginated results
      - name: page_size
        type: number
        description: Define the page size for paginated results.Range is 1 to 100.
      outputParameters:
      - type: object
        mapping: $.
    - name: get-album-get
      description: GET /album.get
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-album-get
      with:
        format: tools.format
        callback: tools.callback
        album_id: tools.album_id
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: album_id
        type: string
        description: The musiXmatch album id
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: get-artist-related-get
      description: GET /artist.related.get
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-artist-related-get
      with:
        format: tools.format
        callback: tools.callback
        artist_id: tools.artist_id
        page_size: tools.page_size
        page: tools.page
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: artist_id
        type: string
        description: The musiXmatch artist id
        required: true
      - name: page_size
        type: number
        description: Define the page size for paginated results.Range is 1 to 100.
      - name: page
        type: number
        description: Define the page number for paginated results
      outputParameters:
      - type: object
        mapping: $.
    - name: get-artist-albums-get
      description: GET /artist.albums.get
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-artist-albums-get
      with:
        format: tools.format
        callback: tools.callback
        artist_id: tools.artist_id
        s_release_date: tools.s_release_date
        g_album_name: tools.g_album_name
        page_size: tools.page_size
        page: tools.page
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: artist_id
        type: string
        description: The musiXmatch artist id
        required: true
      - name: s_release_date
        type: string
        description: Sort by release date (asc|desc)
      - name: g_album_name
        type: string
        description: Group by Album Name
      - name: page_size
        type: number
        description: Define the page size for paginated results.Range is 1 to 100.
      - name: page
        type: number
        description: Define the page number for paginated results
      outputParameters:
      - type: object
        mapping: $.
    - name: get-artist-search
      description: GET /artist.search
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-artist-search
      with:
        format: tools.format
        callback: tools.callback
        q_artist: tools.q_artist
        f_artist_id: tools.f_artist_id
        page: tools.page
        page_size: tools.page_size
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: q_artist
        type: string
        description: The song artist
      - name: f_artist_id
        type: number
        description: When set, filter by this artist id
      - name: page
        type: number
        description: Define the page number for paginated results
      - name: page_size
        type: number
        description: Define the page size for paginated results.Range is 1 to 100.
      outputParameters:
      - type: object
        mapping: $.
    - name: get-artist-get
      description: GET /artist.get
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-artist-get
      with:
        format: tools.format
        callback: tools.callback
        artist_id: tools.artist_id
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: artist_id
        type: string
        description: The musiXmatch artist id
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: get-matcher-subtitle-get
      description: GET /matcher.subtitle.get
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-matcher-subtitle-get
      with:
        format: tools.format
        callback: tools.callback
        q_track: tools.q_track
        q_artist: tools.q_artist
        f_subtitle_length: tools.f_subtitle_length
        f_subtitle_length_max_deviation: tools.f_subtitle_length_max_deviation
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: q_track
        type: string
        description: The song title
      - name: q_artist
        type: string
        description: The song artist
      - name: f_subtitle_length
        type: number
        description: Filter by subtitle length in seconds
      - name: f_subtitle_length_max_deviation
        type: number
        description: Max deviation for a subtitle length in seconds
      outputParameters:
      - type: object
        mapping: $.
    - name: get-matcher-track-get
      description: GET /matcher.track.get
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-matcher-track-get
      with:
        format: tools.format
        callback: tools.callback
        q_artist: tools.q_artist
        q_track: tools.q_track
        f_has_lyrics: tools.f_has_lyrics
        f_has_subtitle: tools.f_has_subtitle
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: q_artist
        type: string
        description: The song artist
      - name: q_track
        type: string
        description: The song title
      - name: f_has_lyrics
        type: number
        description: When set, filter only contents with lyrics
      - name: f_has_subtitle
        type: number
        description: When set, filter only contents with subtitles
      outputParameters:
      - type: object
        mapping: $.
    - name: get-matcher-lyrics-get
      description: GET /matcher.lyrics.get
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-matcher-lyrics-get
      with:
        format: tools.format
        callback: tools.callback
        q_track: tools.q_track
        q_artist: tools.q_artist
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: q_track
        type: string
        description: The song title
      - name: q_artist
        type: string
        description: The song artist
      outputParameters:
      - type: object
        mapping: $.
    - name: get-track-snippet-get
      description: GET /track.snippet.get
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-track-snippet-get
      with:
        format: tools.format
        callback: tools.callback
        track_id: tools.track_id
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: track_id
        type: string
        description: The musiXmatch track id
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: get-track-lyrics-get
      description: GET /track.lyrics.get
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-track-lyrics-get
      with:
        format: tools.format
        callback: tools.callback
        track_id: tools.track_id
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: track_id
        type: string
        description: The musiXmatch track id
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: get-track-subtitle-get
      description: GET /track.subtitle.get
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-track-subtitle-get
      with:
        format: tools.format
        callback: tools.callback
        track_id: tools.track_id
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: track_id
        type: string
        description: The musiXmatch track id
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: get-track-get
      description: GET /track.get
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: musixmatch.get-track-get
      with:
        format: tools.format
        callback: tools.callback
        track_id: tools.track_id
      inputParameters:
      - name: format
        type: string
        description: 'output format: json, jsonp, xml.'
      - name: callback
        type: string
        description: jsonp callback
      - name: track_id
        type: string
        description: The musiXmatch track id
        required: true
      outputParame

# --- truncated at 32 KB (36 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/musixmatch/refs/heads/main/capabilities/musixmatch-capability.yaml