Search / com.sportstatsapi/sports-data
SportStatsAPI
R0· no sign-inFixtures, live scores, results, tables and match facts for 1,881 competitions in 8 sports.
v1.36.0 · active · website · descriptor JSON · versions
Search / com.sportstatsapi/sports-data
R0· no sign-inFixtures, live scores, results, tables and match facts for 1,881 competitions in 8 sports.
v1.36.0 · active · website · descriptor JSON · versions
{
"mcpServers": {
"sports-data": {
"type": "http",
"url": "https://mcp.sportstatsapi.com/mcp",
"headers": {
"Authorization": "Bearer ${SPORTS_DATA_TOKEN}"
}
}
}
}claude mcp add --transport http sports-data https://mcp.sportstatsapi.com/mcp --header "Authorization: Bearer ${SPORTS_DATA_TOKEN}"[mcp_servers.sports-data]
url = "https://mcp.sportstatsapi.com/mcp"
bearer_token_env_var = "SPORTS_DATA_TOKEN"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"sports-data": {
"type": "remote",
"url": "https://mcp.sportstatsapi.com/mcp",
"enabled": true,
"headers": {
"Authorization": "Bearer {env:SPORTS_DATA_TOKEN}"
}
}
}
}{
"mcpServers": {
"sports-data": {
"type": "http",
"url": "https://mcp.sportstatsapi.com/mcp",
"headers": {
"Authorization": "Bearer ${SPORTS_DATA_TOKEN}"
}
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=sports-data&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLnNwb3J0c3RhdHNhcGkuY29tL21jcCIsImhlYWRlcnMiOnsiQXV0aG9yaXphdGlvbiI6IkJlYXJlciAke1NQT1JUU19EQVRBX1RPS0VOfSJ9fQ%3D%3D"
}{
"servers": {
"sports-data": {
"type": "http",
"url": "https://mcp.sportstatsapi.com/mcp",
"headers": {
"Authorization": "Bearer ${SPORTS_DATA_TOKEN}"
}
}
}
}{
"mcpServers": {
"sports-data": {
"httpUrl": "https://mcp.sportstatsapi.com/mcp",
"headers": {
"Authorization": "Bearer ${SPORTS_DATA_TOKEN}"
}
}
}
}extensions:
"sports-data":
enabled: true
name: "sports-data"
type: streamable_http
uri: "https://mcp.sportstatsapi.com/mcp"
headers:
"Authorization": "Bearer ${SPORTS_DATA_TOKEN}"
timeout: 300
Placeholders to fill from your own secret store: ${SPORTS_DATA_TOKEN}. The registry never accepts secret values.
protocol.modernsupports 2026-07-28 (server/discover)protocol.statelessanswers without a sessionprotocol.transportstreamable HTTPprotocol.list_ttltools/list declares ttlMs 0, so clients re-fetch it on every useauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_length2 tools have descriptions over 1,024 characters, which crowds the contexttools.schemasevery tool has an object input schematools.annotations34 of 34 tools declare readOnlyHint or destructiveHinttools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: get_golf_leaderboard (destructiveHint); get_mma_fighter (destructiveHint); get_team (destructiveHint); …tools.token_costabout 9,406 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes103 tool changes in 30 daysstability.rug_pull7 tools kept their name but changed most of their description in 30 days; review before trusting themdeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageget_snooker_darts_tournamentchangedinput schemaget_snooker_darts_playerchangedinput schemaget_runner_formchangedinput schemaget_raceschangedinput schemaget_race_briefingchangedinput schemaget_racechangedinput schemaget_motorsport_eventchangedinput schemaget_mma_fighterchangedinput schemaget_mma_eventchangedinput schemaget_golf_playerchangedinput schemaShowing the latest 10. Full history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+dns-namespace +website +reachable +uptime-100% +updated-12d-ago -no-repository
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://mcp.sportstatsapi.com/mcp streamable-http | none | yes | 100% | 430 ms | 2026-07-28, 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05 | 2026-10-19 |
find_horsesread-only | Find horses, jockeys and trainers by name, with their ids (for get_runner_form), most recently seen first. |
find_leaguesread-only | Find leagues (competitions) of a sport and their ids, optionally by name or country (also matches official_name, the competition's official or Wikidata name where known). Free. |
find_teamsread-only | Find teams by name, with their ids, country, venue and leagues. |
get_boxing_eventread-only | One boxing event with every bout from the main event down: weight class, world titles at stake (WBA, WBC, IBF, WBO, Ring), fighters, result, method (KO, TKO, UD, SD, MD, RTD, DQ, TD, NC, draw), round, time, rounds scheduled. |
get_boxing_eventsread-only | Boxing events of the last and the current year from Wikipedia: fight cards and world title fights, with date, venue, city, status and the main event's winner (cite the attribution). The current world champions: get_standings with sport boxing. |
get_boxing_fighterread-only | A boxer (fighter_id): birth date, country, height, reach, stance and professional record (Wikipedia/Wikidata), world titles held now, latest bouts; or find boxers by name. |
get_golf_leaderboardread-only | A golf tournament's leaderboard: position (tied), to par, strokes per round, thru and today while live, earnings, missed cut or withdrawn, and per-player stats (birdies, eagles, driving distance and accuracy, greens in regulation, putts); holes=true adds hole-by-hole scores. |
get_golf_playerread-only | A golfer's profile (country, birth date and place, PGA Tour rank) and season results from our leaderboards with events, wins, top 10s, cuts made and earnings (player_id); or find golfers by name. |
get_golf_tournamentsread-only | Golf tournaments of the PGA Tour and LPGA by date: course, location, purse, status and the leader or winner. Leaderboards exist for the PGA Tour only. The season money list: get_standings with sport golf. |
get_h2hread-only | Head-to-head of two teams (soccer by default; any team sport with results: basketball, baseball, hockey, handball, volleyball, American football) over every meeting in our data (all competitions, no friendlies): won, drawn and lost from team_a's side (home_team_* fields = team_a), goals (the sport's score: points, runs, sets won), each side's biggest win, the last 5 meetings, with sentences (lang de, es, it, fr). history_from: our data starts there, so say 'since' that date. Tennis: get_player with vs. Facts only. Insights feature. |
get_league_factsread-only | What finished matches changed, newest first: the match story (comebacks, late winners, red cards), runs started or ended, table places and zones, each also as a sentence (lang de, es, it, fr). Use for 'what happened in this league today'. Facts only. Insights feature. |
get_live_matchesread-only | Matches in play right now, with score and minute or period, and the TV channels showing them where known. |
get_matchread-only | One match: teams, score, status, events (goals, cards...), venue, referee; where known TV channels by country and, after the match, a highlights video link. Soccer adds timeline: the events normalised (minute, extra_minute, team home/away, kind goal, penalty, own_goal, missed_penalty, yellow, second_yellow, red, substitution or var, player, assist, player_in/player_out, detail: card reason or VAR outcome; minute null = not known; no headers or xG per shot: not in our data) and referee_stats: the referee's season in the league (games, cards and penalties per game, with league_matches_with_referee of league_matches_played). |
get_match_briefingread-only | Ready briefing for one match (any sport but cricket): form, current streaks, home and away records, head-to-head, table position and gaps, stakes, schedule; for soccer also injuries, lineups, players one league appearance or goal short of a club milestone (milestone_next) and, after the match, the story (comeback, late winner, red cards), runs it ended (streak_ended_*: 'first defeat after 11 unbeaten') and long waits it ended that our data can date (first_since_*: first win at the opponent's ground, first clean sheet, top of the table for the first time since a day; history_from: nothing is claimed before it). The head-to-head block has goals and each side's biggest win. Soccer before kickoff: players suspended (suspended_out) or one booking from a ban, by the league's card rules. Each statement also as a sentence (lang de, es, it, fr). Facts only, no predictions. Insights feature. Prefer this for 'tell me about this match'. |
get_match_detailsread-only | Detail of one match: statistics or box score, lineups, injuries (soccer: per player type, expected_return and matches_missed; null = not known, never guess), play-by-play, a cricket scorecard (batting, bowling, fall of wickets), rugby scoring events, esports maps and games with player lines, or the singles and doubles of a table tennis team match with set scores. |
get_matchesread-only | Matches (fixtures and results) by day or date range, optionally of one league, or one team's matches in every competition (team_id; without status or dates its latest results, then live, then next matches; with status scheduled only the next ones, with finished only the latest results). Without a date or team: today (UTC). Where known: TV channels by country (where to watch) and a highlights video link. |
get_mma_eventread-only | One MMA card from the main event down (weight class, fighters, winner, method, round, time, judges' scores, fight stats), or with bout_id one fight. |
get_mma_eventsread-only | MMA (UFC) fight cards by date: name, date, status and the main event with its result once known. |
get_mma_fighterread-only | An MMA fighter's record (wins, losses, draws, no contests; wins and losses by KO/TKO, submission, decision) from the bouts held since 2026, with the last fights; where Wikipedia/Wikidata has the fighter also the profile (birth date, height, reach, stance, nationality, weight class, team), the career record and the fights before 2026 (cite the attribution). Or find fighters by name. |
get_motorsport_eventread-only | One motorsport weekend with its sessions (practice, qualifying, sprint, race; start in UTC, status), or with session_id one session's results: position, driver, team, time or gap, laps, grid, pit stops, DNF/DNS/DSQ. |
get_motorsport_eventsread-only | Motorsport race weekends (Formula 1, MotoGP, Moto2, Moto3, Formula 2, Formula E, IndyCar, NASCAR) by start date: round, name, country, circuit, dates, status and the race winner once known. With overview: every series with its season, next and last event. |
get_playerread-only | Player profile: position, nationality, birth date, height, team, career and photo link where known; cricket and tennis also Wikidata values (birth date, height, batting or playing hand, bowling style, role, country; cite the attribution); tennis also the ATP/WTA rank, or with vs the head-to-head of two players; soccer also bio: known_as, full_name, short_name, birth_date, age, nationality, position, number, club, market_value_eur (null = not in our data; there are no contract dates), and season_stats: the current season (or season) in every competition we hold statistics for, total and per competition (apps, minutes, goals, assists, cards, shots, rating; null = not in our data; matches_with_stats of team_matches_played says how complete it is); NBA, MLB and NFL players also season_stats: the season line per team from the data provider's team feeds (stats by category as the feed names them; season null for the NBA, whose feed names none, as_of when read). |
get_raceread-only | One horse race card: runners with number, horse, jockey, trainer, weight, rating, recent form where the feed has it, best current price and morning line; once settled the result (positions, starting prices, finish codes such as PU or F) and results_final. |
get_race_briefingread-only | Ready briefing for one horse race from our results: field size, distance, going, class, the favourite, each runner's form figures and last run, jockey and trainer strike rates over the last 30 days; after the race the winner, starting price and whether the favourite won. Each statement also as a sentence (lang de, es, it, fr). Facts only. |
get_racesread-only | Horse races of a day (default today, UTC), optionally of one region or racecourse: off time, course, race name, distance, going, class, number of runners, status (NS, live, result_pending, FT). |
get_runner_formread-only | Last runs of a horse, jockey or trainer in our stored results, latest first: date, course, distance, going, position and field size, starting price; plus wins, top-three finishes and strike rate over those runs. |
get_snooker_darts_playerread-only | A snooker or darts player (player_id): country, world ranking, birth date (Wikidata), titles and finals in the stored seasons, latest matches; or find players by name. |
get_snooker_darts_tournamentread-only | A snooker or darts tournament with its whole draw (qualifying first, the final last): round, players, seeds, frames/legs/sets won, best of, three-dart averages where listed; snooker also the century breaks per player. |
get_snooker_darts_tournamentsread-only | Snooker (World Snooker Tour ranking and invitational events) or darts (PDC majors, World Series, Players Championships, European Tour) tournaments of the current and last season from Wikipedia: dates, venue, prize fund, winner, final score. The world ranking: get_standings with sport snooker or darts. |
get_standingsread-only | League table of a league; for soccer also the top scorers, most assists or most cards (top_scorers), every player's season statistics sorted by goals, assists, minutes, rating, xg or apps (player_stats), every team's season statistics with ranks such as the best defence (team_stats), the referees with cards and penalties per game (referees), the roll of honour with champions and runners-up per season and their sources (champions), home attendance per team and league (attendance), the xG table with expected points against real points (xg_table), players banned or one booking away from a ban (suspensions) and past seasons' final tables (season); for every sport with results Elo-style team ratings of a league or the whole sport (ratings); for tennis the ATP or WTA singles ranking (tour); for motorsport a series' drivers or teams championship (series, kind); for golf the season money list with wins (tour); for snooker and darts the world ranking (WPBSA, PDC Order of Merit); for boxing the current world champions per weight class and body; for cricket the points table of a series or league. |
get_teamread-only | Team profile: country, founded, venue, leagues, logo link; rating: its Elo-style rating (rank of of in its league, matches_rated, rated_from, the last 10 changes); next: its next 5 matches in every competition (more: get_matches with team_id; fixture congestion: get_team_briefing). Soccer also coach: the current head coach from Wikidata with appointment date and won/drawn/lost since (record_complete false: our matches start later, at record_from, so say the record covers only that; cite the attribution), and squad_value_eur: the current squad's summed market value over players_with_value of squad_players. Options: squad (the players); soccer: coach (adds previous_coach and previous_club), facts (runs, first since, milestones; Insights feature), season_stats (the current season per league: home/away records, goals, clean sheets, biggest win and defeat, xG over matches_with_xg, home attendance over matches_with_attendance, the team's rank per metric), transfers (the latest 20), honours (titles and runners-up with sources), injuries (players out for coming matches: type, expected_return null = not known, never guess one; matches_missed a lower bound when matches_missed_complete is false). For an MLB, NBA, WNBA, NHL or NFL team, injuries returns its current injury report and season_stats its season statistics instead of the profile. |
get_team_briefingread-only | Ready briefing for one team (any sport but cricket; for tennis a player): form, streaks (overall, home, away; streak_season_best: the longest of the season), home and away record, table place and gaps, last and next match, congestion (games_last_7d, games_last_14d in every competition, rest_days from the last match to the next), injuries (soccer); what its last match ended (runs; soccer: first_since_* waits); soccer player milestones for the club (debut, first goal, 50/100/150 league appearances, 25/50/75 league goals, milestone_next before the next match; only when our statistics hold the whole season); each also as a sentence (lang de, es, it, fr). Facts only. Insights feature. |
get_transfersread-only | Soccer transfers from player profiles: player, from and to team, date, season, window (summer, winter, other by the date), type (transfer, loan, loan_return, free, promoted, swap, unknown) and fee_eur where the feed gives an amount (often null: say the fee is not known, never 0). Filter by league (moves in or out of its current teams), team (direction in or out), season and window; sort by fee for the biggest moves. Moves dated after today (mostly planned loan ends) are left out; planned true returns only those. Profiles are re-read every 30 days, so the latest moves can be missing. |
list_sportsread-only | Sports available, with whether each has upcoming matches. Free. Horse racing has its own tools (get_races, get_race, get_race_briefing, find_horses, get_runner_form), motorsport too (get_motorsport_events, get_motorsport_event; get_standings with sport motorsport), MMA (get_mma_events, get_mma_event, get_mma_fighter), golf (get_golf_tournaments, get_golf_leaderboard, get_golf_player; get_standings with sport golf), snooker and darts (get_snooker_darts_tournaments, get_snooker_darts_tournament, get_snooker_darts_player; get_standings with sport snooker or darts), boxing (get_boxing_events, get_boxing_event, get_boxing_fighter; get_standings with sport boxing for the current world champions). |
Schemas: list_tools.
{
"name": "com.sportstatsapi/sports-data",
"title": "SportStatsAPI",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://mcp.sportstatsapi.com/mcp",
"type": "streamable-http",
"headers": [
{
"name": "Authorization",
"isSecret": true,
"description": "Optional: Bearer <your SportStatsAPI key>. Without a key, list_sports and find_leagues are free and other tools are paid per call with x402 (USDC on Base)."
}
]
}
],
"version": "1.36.0",
"websiteUrl": "https://sportstatsapi.com/ai-agents/",
"description": "Fixtures, live scores, results, tables and match facts for 1,881 competitions in 8 sports."
}