Football Charts
Футбольная статистика по 93 лигам в виде MCP-инструментов: турнирные таблицы, результаты, расписание матчей, тайминг голов, модельные вероятности и прогнозы на сезон. Бесплатный ключ.
Документация
Free football data API & MCP server — 93 leagues
Results, fixtures, league tables, goal timing, a public baseline model and Monte Carlo season projections for 93 leagues in 42 countries — including the lower divisions most sources skip. Plain JSON over REST, or ten tools for Claude and other assistants via MCP. No key needed to start.
1 · Add it to Claude — nothing to install, no key
The hosted endpoint works in the claude.ai web and mobile apps, which no local server can. Keyless tier: 300 requests/day per IP. The URL carries no secret, so it is safe in configs and logs. The API runs on an always-on paid instance: no cold starts, warm responses in about 0.1 s.
claude.ai (web or mobile) — Settings → Connectors → Add custom connector
https://mcp.football-charts.com/mcp
Download the latest footballcharts-mcp-x.y.z.mcpb and open it:
https://github.com/ddevetak/footballcharts-mcp/releases/latest
claude mcp add football-charts -- npx -y footballcharts-mcp
Any MCP client — claude_desktop_config.json style
{ "mcpServers": { "football-charts": {
"command": "npx", "args": ["-y", "footballcharts-mcp"] } } }
Then ask: “Who leads the Estonian league?”, “When does Liverpool score most?”, “Can Hull stay up?”. Every tool is read-only. The model is a public baseline that does not beat the bookmaker market; the get_track_record tool is the proof.
2 · Need more? A free key gives 5,000 requests/day
Same data, higher limits (5,000/day, 60/min). All leagues, current + previous season. No odds — probabilities and results only. With a key the connector URL becomes https://mcp.football-charts.com/fc_your_key/mcp and stdio installs set FC_API_KEY.
3 · MCP with a key
claude.ai on web or mobile — add a custom connector
Settings → Connectors → Add custom connector
https://mcp.football-charts.com/fc_your_key/mcp
The key goes in the URL because a connector field takes only a URL. Prefer a header?POST /mcp with Authorization: Bearer works too. Keys are read-only and you can issue a new one at any time.
claude mcp add football-charts \
-e FC_API_KEY=fc_your_key \
-- npx -y footballcharts-mcp
{
"mcpServers": {
"football-charts": {
"command": "npx",
"args": ["-y", "footballcharts-mcp"],
"env": { "FC_API_KEY": "fc_your_key" }
}
}
}
4 · Plain REST — no key needed
curl https://footballcharts-backend.onrender.com/api/v1/leagues/premier/table/
# with a key: -H "Authorization: Bearer fc_your_key"
import requests
r = requests.get("https://footballcharts-backend.onrender.com/api/v1/leagues/premier/projection/")
# with a key: headers={"Authorization": "Bearer fc_your_key"}
print(r.json())
The MCP server is open source: github.com/ddevetak/footballcharts-mcp · npm package footballcharts-mcp
MCP tools
| about_football_charts | What the source covers and how to use it — call first when unsure |
|---|---|
| list_leagues | All 93 leagues + available seasons |
| get_league_table | Standings: points, W/D/L, goals, form; view=luck or goals |
| get_results | Finished matches: FT/HT scores, first-goal minute |
| get_fixtures | Upcoming matches with model probabilities |
| get_match | One match: full probability block across markets |
| get_season_projection | Title / top-4 / relegation %, points ranges (10k sims, daily) |
| get_team | One team: match log, goal timing, stats |
| get_goal_timing | Goals per 15-minute bin, per team (team filter) |
| get_track_record | Our settled public prediction ledger |
REST endpoints
Base URL: https://footballcharts-backend.onrender.com/api/v1 — the API also describes itself at GET /api/v1/.
| GET /leagues/ | all leagues + the seasons you can query |
|---|---|
| GET /leagues/{league}/table/?season=&view= | standings (classic | luck | goals) |
| GET /leagues/{league}/results/?season=&team= | finished matches |
| GET /leagues/{league}/fixtures/ | upcoming with model probabilities |
| GET /leagues/{league}/projection/ | Monte Carlo season projection |
| GET /leagues/{league}/goal-timing/?season= | goal-timing heat map |
| GET /leagues/{league}/teams/?season= | teams in table order |
| GET /leagues/{league}/teams/{team}/?season= | team page |
| GET /matches/{slug}/ | match detail |
| GET /track-record/ | settled prediction ledger |
Free vs paid
Free
- · All 90+ leagues
- · Current + previous season
- · Probabilities, projections, results, tables
- · Keyless 300/day per IP · free key 5,000/day · attribution required
Paid — the odds archive
- · Per-bookmaker opening + closing odds, 2020-21 to 2025-26
- · 1X2 (FT/HT), over/under ladders, Asian handicap, BTTS, correct score, HT/FT
- · Results and goal minutes joined · CSV + Parquet · one-off download
- · Commercial licence and archive API access by quote
Older seasons through the API: contact@football-charts.com
Terms: free for personal and research use with attribution ("Data by football-charts.com"); no resale. Numbers are probabilities from match data — statistics, not betting advice · 18+. See also our track record and methodology.