Categories › Data & Databases › Warehouses & analytics (BigQuery, Snowflake...)
NFL/NBA/MLB/NHL/PGA + DFS and prediction-market data. Browse free; query with a free API key.
Remote server: your requests and data go to api.stat-api.com. Claude Code: claude mcp add --transport http stat-api-sports-data https://api.stat-api.com/mcp · Claude app: Settings → Connectors → Add custom connector.
The tools this server listed when we connected to it, in its own words.
list_leagues — List every league/data group this API serves (nfl, nba, mlb, nhl, pga, dfs, reference) with table counts and availability. No credentials nelist_tables — List every queryable table in one league with a one-line summary each. No credentials needed. Follow with describe_table before querying.describe_table — Full contract for one table: fields with types and descriptions, the filters query_table accepts (with operators like __gte/__lte/__between/query_table — Query any table. Returns `{"<table>": [rows], "limit": N, "next_from_id": M|null, "has_more": bool}`. To read every row, start with from_id=get_record — Fetch a single row by primary key. Returns the row object. Requires a stat-api sign-in or API key; costs 1 record of quota.search_players — Fuzzy player-name search (typo-tolerant). Currently NBA only — for other leagues query the players table with a name filter via query_table.games_on_date — Games scheduled/played on one calendar date (US-Eastern) for nba, mlb, or nhl; defaults to today. Returns the same envelope as query_table ographql_query — Run a GraphQL query against the same data with relations — nest from a game to its teams/players/odds in one call. Root fields are leagues (api_usage — Your account's quota position: plan, monthly record limit, records used, remaining, and when the quota resets. Requires a stat-api sign-in oNot tested by KitScout yet. When our harness runs it, pros, cons and the tasks we tried appear here, with the date and evidence.