TheSports · Capability

TheSports Sports Data

Unified sports data capability for accessing real-time football data including live match tracking, standings, team and player analytics. Used by media platforms, OTT services, and sports analytics applications.

Run with Naftiko SportsFootballReal-TimeAnalyticsMedia

What You Can Do

GET
List competitions — List all available football competitions
/v1/competitions
GET
Get competition details — Get detailed information about a competition
/v1/competitions/{competition_id}
GET
List teams — List football teams
/v1/teams
GET
Get team details — Get detailed team information
/v1/teams/{team_id}
GET
List players — List players filtered by team
/v1/players
GET
Get player details — Get detailed player information and statistics
/v1/players/{player_id}
GET
List matches — List matches for a competition or date
/v1/matches
GET
Get match details — Get detailed match information
/v1/matches/{match_id}
GET
Get match lineup — Get match starting lineup and substitutes
/v1/matches/{match_id}/lineup
GET
Get match statistics — Get detailed match statistics
/v1/matches/{match_id}/statistics
GET
Get standings — Get competition standings and league table
/v1/standings

MCP Tools

list-competitions

List all football competitions and leagues available in the API

read-only
get-competition-details

Get detailed information about a specific football competition

read-only
list-teams

List football teams, optionally filtered by competition

read-only
get-team-details

Get detailed information about a specific football team

read-only
list-players

List football players, optionally filtered by team

read-only
get-player-details

Get detailed player profile and statistics

read-only
list-matches

List football matches for a competition or date

read-only
get-match-details

Get detailed match information including score and events

read-only
get-match-lineup

Get match starting lineup and substitutes for both teams

read-only
get-match-statistics

Get detailed match statistics including possession, shots, and passes

read-only
get-standings

Get competition standings and league table

read-only

APIs Used

thesports-football

Capability Spec

sports-data.yaml Raw ↑
naftiko: "1.0.0-alpha1"

info:
  label: "TheSports Sports Data"
  description: >-
    Unified sports data capability for accessing real-time football data
    including live match tracking, standings, team and player analytics.
    Used by media platforms, OTT services, and sports analytics applications.
  tags:
    - Sports
    - Football
    - Real-Time
    - Analytics
    - Media
  created: "2026-05-03"
  modified: "2026-05-03"

binds:
  - namespace: env
    keys:
      THESPORTS_API_KEY: THESPORTS_API_KEY

capability:
  consumes:
    - import: thesports-football
      location: ./shared/football-api.yaml

  exposes:
    - type: rest
      port: 8080
      namespace: sports-data-api
      description: "Unified REST API for real-time sports data."
      resources:
        - path: /v1/competitions
          name: competitions
          description: Football competitions and leagues
          operations:
            - method: GET
              name: list-competitions
              description: List all available football competitions
              call: "thesports-football.list-competitions"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/competitions/{competition_id}
          name: competition-details
          description: Single competition details
          operations:
            - method: GET
              name: get-competition-details
              description: Get detailed information about a competition
              call: "thesports-football.get-competition-details"
              with:
                competition_id: "rest.competition_id"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/teams
          name: teams
          description: Football teams
          operations:
            - method: GET
              name: list-teams
              description: List football teams
              call: "thesports-football.list-teams"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/teams/{team_id}
          name: team-details
          description: Single team details
          operations:
            - method: GET
              name: get-team-details
              description: Get detailed team information
              call: "thesports-football.get-team-details"
              with:
                team_id: "rest.team_id"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/players
          name: players
          description: Football players
          operations:
            - method: GET
              name: list-players
              description: List players filtered by team
              call: "thesports-football.list-players"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/players/{player_id}
          name: player-details
          description: Single player details
          operations:
            - method: GET
              name: get-player-details
              description: Get detailed player information and statistics
              call: "thesports-football.get-player-details"
              with:
                player_id: "rest.player_id"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/matches
          name: matches
          description: Football match fixtures and results
          operations:
            - method: GET
              name: list-matches
              description: List matches for a competition or date
              call: "thesports-football.list-matches"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/matches/{match_id}
          name: match-details
          description: Single match details
          operations:
            - method: GET
              name: get-match-details
              description: Get detailed match information
              call: "thesports-football.get-match-details"
              with:
                match_id: "rest.match_id"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/matches/{match_id}/lineup
          name: match-lineup
          description: Match lineups
          operations:
            - method: GET
              name: get-match-lineup
              description: Get match starting lineup and substitutes
              call: "thesports-football.get-match-lineup"
              with:
                match_id: "rest.match_id"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/matches/{match_id}/statistics
          name: match-statistics
          description: Match statistics
          operations:
            - method: GET
              name: get-match-statistics
              description: Get detailed match statistics
              call: "thesports-football.get-match-statistics"
              with:
                match_id: "rest.match_id"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/standings
          name: standings
          description: League standings
          operations:
            - method: GET
              name: get-standings
              description: Get competition standings and league table
              call: "thesports-football.get-standings"
              outputParameters:
                - type: object
                  mapping: "$."

    - type: mcp
      port: 9090
      namespace: sports-data-mcp
      transport: http
      description: "MCP server for AI-assisted sports data retrieval and analysis."
      tools:
        - name: list-competitions
          description: List all football competitions and leagues available in the API
          hints:
            readOnly: true
            openWorld: true
          call: "thesports-football.list-competitions"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-competition-details
          description: Get detailed information about a specific football competition
          hints:
            readOnly: true
            openWorld: true
          call: "thesports-football.get-competition-details"
          with:
            competition_id: "tools.competition_id"
          outputParameters:
            - type: object
              mapping: "$."
        - name: list-teams
          description: List football teams, optionally filtered by competition
          hints:
            readOnly: true
            openWorld: true
          call: "thesports-football.list-teams"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-team-details
          description: Get detailed information about a specific football team
          hints:
            readOnly: true
            openWorld: true
          call: "thesports-football.get-team-details"
          with:
            team_id: "tools.team_id"
          outputParameters:
            - type: object
              mapping: "$."
        - name: list-players
          description: List football players, optionally filtered by team
          hints:
            readOnly: true
            openWorld: true
          call: "thesports-football.list-players"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-player-details
          description: Get detailed player profile and statistics
          hints:
            readOnly: true
            openWorld: true
          call: "thesports-football.get-player-details"
          with:
            player_id: "tools.player_id"
          outputParameters:
            - type: object
              mapping: "$."
        - name: list-matches
          description: List football matches for a competition or date
          hints:
            readOnly: true
            openWorld: true
          call: "thesports-football.list-matches"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-match-details
          description: Get detailed match information including score and events
          hints:
            readOnly: true
            openWorld: true
          call: "thesports-football.get-match-details"
          with:
            match_id: "tools.match_id"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-match-lineup
          description: Get match starting lineup and substitutes for both teams
          hints:
            readOnly: true
            openWorld: true
          call: "thesports-football.get-match-lineup"
          with:
            match_id: "tools.match_id"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-match-statistics
          description: Get detailed match statistics including possession, shots, and passes
          hints:
            readOnly: true
            openWorld: true
          call: "thesports-football.get-match-statistics"
          with:
            match_id: "tools.match_id"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-standings
          description: Get competition standings and league table
          hints:
            readOnly: true
            openWorld: true
          call: "thesports-football.get-standings"
          with:
            competition_id: "tools.competition_id"
          outputParameters:
            - type: object
              mapping: "$."