TheSports · Capability

TheSports Football API — Matches

TheSports Football API — Matches. 4 operations. Lead operation: Get Match Details. Self-contained Naftiko capability covering one Thesports business surface.

Run with Naftiko ThesportsMatches

What You Can Do

GET
Getmatchdetails — Get Match Details
/v1/football/match/detail
GET
Getmatchlineup — Get Match Lineup
/v1/football/match/lineup
GET
Listmatches — List Matches
/v1/football/match/list
GET
Listrecentmatches — List Recent Matches
/v1/football/match/recent

MCP Tools

get-match-details

Get Match Details

read-only idempotent
get-match-lineup

Get Match Lineup

read-only idempotent
list-matches

List Matches

read-only idempotent
list-recent-matches

List Recent Matches

read-only idempotent

Capability Spec

football-matches.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: TheSports Football API — Matches
  description: 'TheSports Football API — Matches. 4 operations. Lead operation: Get Match Details. Self-contained Naftiko
    capability covering one Thesports business surface.'
  tags:
  - Thesports
  - Matches
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    THESPORTS_API_KEY: THESPORTS_API_KEY
capability:
  consumes:
  - type: http
    namespace: football-matches
    baseUri: https://api.thesports.com/v1
    description: TheSports Football API — Matches business capability. Self-contained, no shared references.
    resources:
    - name: football-match-detail
      path: /football/match/detail
      operations:
      - name: getmatchdetails
        method: GET
        description: Get Match Details
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: user_key
          in: query
          type: string
          description: Your API authentication key.
          required: true
        - name: match_id
          in: query
          type: string
          description: The match ID.
          required: true
    - name: football-match-lineup
      path: /football/match/lineup
      operations:
      - name: getmatchlineup
        method: GET
        description: Get Match Lineup
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: user_key
          in: query
          type: string
          description: Your API authentication key.
          required: true
        - name: match_id
          in: query
          type: string
          description: The match ID.
          required: true
    - name: football-match-list
      path: /football/match/list
      operations:
      - name: listmatches
        method: GET
        description: List Matches
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: user_key
          in: query
          type: string
          description: Your API authentication key.
          required: true
        - name: competition_id
          in: query
          type: string
          description: Filter by competition ID.
        - name: date
          in: query
          type: string
          description: Filter matches by date (YYYY-MM-DD).
        - name: season_id
          in: query
          type: string
          description: Filter by season ID.
    - name: football-match-recent
      path: /football/match/recent
      operations:
      - name: listrecentmatches
        method: GET
        description: List Recent Matches
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: user_key
          in: query
          type: string
          description: Your API authentication key.
          required: true
        - name: competition_id
          in: query
          type: string
          description: Filter by competition ID.
    authentication:
      type: apikey
      key: user_key
      value: '{{env.THESPORTS_API_KEY}}'
      placement: query
  exposes:
  - type: rest
    namespace: football-matches-rest
    port: 8080
    description: REST adapter for TheSports Football API — Matches. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/football/match/detail
      name: football-match-detail
      description: REST surface for football-match-detail.
      operations:
      - method: GET
        name: getmatchdetails
        description: Get Match Details
        call: football-matches.getmatchdetails
        with:
          user_key: rest.user_key
          match_id: rest.match_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/football/match/lineup
      name: football-match-lineup
      description: REST surface for football-match-lineup.
      operations:
      - method: GET
        name: getmatchlineup
        description: Get Match Lineup
        call: football-matches.getmatchlineup
        with:
          user_key: rest.user_key
          match_id: rest.match_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/football/match/list
      name: football-match-list
      description: REST surface for football-match-list.
      operations:
      - method: GET
        name: listmatches
        description: List Matches
        call: football-matches.listmatches
        with:
          user_key: rest.user_key
          competition_id: rest.competition_id
          date: rest.date
          season_id: rest.season_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/football/match/recent
      name: football-match-recent
      description: REST surface for football-match-recent.
      operations:
      - method: GET
        name: listrecentmatches
        description: List Recent Matches
        call: football-matches.listrecentmatches
        with:
          user_key: rest.user_key
          competition_id: rest.competition_id
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: football-matches-mcp
    port: 9090
    transport: http
    description: MCP adapter for TheSports Football API — Matches. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: get-match-details
      description: Get Match Details
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: football-matches.getmatchdetails
      with:
        user_key: tools.user_key
        match_id: tools.match_id
      outputParameters:
      - type: object
        mapping: $.
    - name: get-match-lineup
      description: Get Match Lineup
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: football-matches.getmatchlineup
      with:
        user_key: tools.user_key
        match_id: tools.match_id
      outputParameters:
      - type: object
        mapping: $.
    - name: list-matches
      description: List Matches
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: football-matches.listmatches
      with:
        user_key: tools.user_key
        competition_id: tools.competition_id
        date: tools.date
        season_id: tools.season_id
      outputParameters:
      - type: object
        mapping: $.
    - name: list-recent-matches
      description: List Recent Matches
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: football-matches.listrecentmatches
      with:
        user_key: tools.user_key
        competition_id: tools.competition_id
      outputParameters:
      - type: object
        mapping: $.