All servers · Scraping & browsing · APIs & integrations · Email & messaging
stat-api — Sports Data
com.stat-api/sports-data · v1.0.1
Tools changed (7 days)No registry update 90+ days
Measured by MCP Station
| Last check | Reachable |
|---|---|
| Checked at | — |
| Check success 7 / 30 days | — |
| First-try success 30 days | — |
| Median response | — |
| Lookups 30 days | — |
| Authentication | No auth |
| MCP version | 2025-06-18 |
| Rank score | — |
| Declared risk | Read-only (all tools declare readOnlyHint) |
| Capabilities declared | tools |
| Tool definitions | 9 tools · with description 100% · input schema is an object 100% · read/destructive hints 100% |
Description written by the publisher, not verified
NFL/NBA/MLB/NHL/PGA + DFS and prediction-market data. Browse free; query with a free API key.
Connect
streamable-http · https://api.stat-api.com/mcp
claude mcp add --transport http sports-data https://api.stat-api.com/mcp{
"mcpServers": {
"sports-data": {
"url": "https://api.stat-api.com/mcp"
}
}
}Tools as reported by the server
list_leaguesList every league/data group this API serves (nfl, nba, mlb, nhl, pga, dfs, reference) with table counts and availability. No credentials needed. Start here, then call list_tables.list_tablesList every queryable table in one league with a one-line summary each. No credentials needed. Follow with describe_table before querying.describe_tableFull contract for one table: fields with types and descriptions, the filters query_table accepts (with operators like __gte/__lte/__between/__like and required filter combinations), page-size limits, primary key, and a runnable example URL. No credentials needed. Always call this before query_tablequery_tableQuery any table. Returns `{"<table>": [rows], "limit": N, "next_from_id": M|null, "has_more": bool}`. To read every row, start with from_id=0 and re-call with from_id set to the previous next_from_id until it is null. A call without from_id returns the first page in the table's default sort with nexget_recordFetch 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_playersFuzzy player-name search (typo-tolerant). Currently NBA only — for other leagues query the players table with a name filter via query_table. Returns player rows ordered by match quality. Requires a stat-api sign-in or API key; rows count against quota.games_on_dateGames scheduled/played on one calendar date (US-Eastern) for nba, mlb, or nhl; defaults to today. Returns the same envelope as query_table on the games table. NFL is week-based, not date-based — for nfl, use query_table on nfl/games with season_id + week filters instead. Requires a stat-api sign-ingraphql_queryRun 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 (nfl, nba, …), each exposing its tables with the same filter arguments as REST plus `first`/`after` pagination. Do NOT send introspection queries (the schema isapi_usageYour account's quota position: plan, monthly record limit, records used, remaining, and when the quota resets. Requires a stat-api sign-in or API key; costs 1 record.
Tool changes
- 2026-10-18: list_leagues, list_tables, describe_table, query_table, get_record, search_players, games_on_date, graphql_query, api_usage
- 2026-10-17: list_leagues, list_tables, describe_table, query_table, get_record, search_players, games_on_date, graphql_query, api_usage
- 2026-10-16: list_leagues, list_tables, describe_table, query_table, get_record, search_players, games_on_date, graphql_query, api_usage
Repository · Website · JSON · Text for agents · Registry updated 2026-07-07