Mcp Cricket

io.github.asaraogPublished by GitHub account asaraogv0.7.1Updated Oct 24, 2026

Live cricket incl. US Minor League, Kalshi prices, and a win model fitted on 10,847 matches.

VerifiedStreamable HTTPWeb executableLocation & LifestyleData & Analytics

Overview

AI-generated overview

A hosted cricket analytics server that gives an assistant win probabilities, ball-by-ball archive stats, live scores and Kalshi market prices.

What you can do
Compute win probability for live or hypothetical limited-overs match states, optionally adjusted by venue and league, and compare it with Kalshi prediction-market prices for a match or Minor League Cricket game. Look up archived scorecards, league leaderboards and a team's recent form. Retrieve player career aggregates, batter-vs-bowler head-to-heads, phase splits, dismissal breakdowns, dot-ball and boundary rates, batting-first versus chasing records, and partnerships. List live and upcoming matches with scores, and Minor League Cricket and Atlanta Open T20 scores and win chances. Explain cricket terms in plain English with their closest baseball equivalent.
When to use it
Useful when you want cricket answers computed from data rather than recalled from training: live match situations, historical player and matchup records, venue tendencies, or a model-versus-market comparison. It suits fans and analysts following international, franchise and US Minor League cricket.
Requirements
Remote endpoint at cricketfornoobs.com; no account, API key or configuration for the hosted server. A local static binary is also offered, but its archive tools need a ball-by-ball database, either built from public Cricsheet data or downloaded from a private release using the HISTORY_DB_TOKEN GitHub token; HISTORY_DB, HISTORY_DB_URL and timeout variables configure it.
Before you install
All tools are read-only and no orders or accounts are involved, but market prices are informational only and event contracts are legal in some jurisdictions and not others. The win model cannot see injuries, weather, pitch reports or team news. The hosted server's Minor League data draws on CricClubs and Wikipedia (CC BY-SA 4.0), and the local build's archive download requires the HISTORY_DB_TOKEN secret.

Installation

In SourceWeft

  1. Open Mcp Cricket in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.asaraog%2Fmcp-cricket/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "cricket": {
      "type": "http",
      "url": "https://cricketfornoobs.com/mcp"
    }
  }
}

README

🏏 Cricket MCP Server

[MCP] [Go] [License]

Cricket analytics for Claude Desktop, Claude Code, Cursor and any other MCP client — a calibrated win-probability model, 22,479 archived matches, and live prediction-market prices.

A Model Context Protocol server that gives AI assistants real cricket knowledge: a calibrated win-probability model, a ball-by-ball archive of 22,000+ matches, live prediction-market prices, career records, and live scores.

Ask cricket questions in plain language and get answers computed from data rather than recalled from training.

⚡ Add it in one step

It is hosted. There is nothing to install, download, build or configure.

https://cricketfornoobs.com/mcp

Paste that into your client's connector settings and you are done.

ClientWhere
Claude (free plan included)Customize → Connectors → Add custom connector
ChatGPTSettings → Apps → Developer mode → add server
Claude Codeclaude mcp add --transport http cricket https://cricketfornoobs.com/mcp
Cursor / VS Codeone-click buttons at cricketfornoobs.com/mcp
Gemini CLIadd {"cricket": {"httpUrl": "https://cricketfornoobs.com/mcp"}} to ~/.gemini/settings.json

No account, no API key, no data pipeline. Read-only.

Prefer to run it on your own machine? See Quick start below: same tools, one static binary.

💬 Things to ask it

  • "Who's winning the India match right now, and what does the model say?"
  • "What's the score in the Minor League Cricket game, and who's favoured?"
  • "Who is favoured at 149 for 7 chasing 178 with three overs left?"
  • "How does Kohli bat against Bumrah in T20s?"
  • "What does the market think versus your model for Welsh Fire vs Southern Brave?"
  • "How does Bumrah get his wickets — bowled, caught, lbw?"
  • "What's Rashid Khan's dot-ball percentage in T20s?"
  • "Is Kohli better batting first or chasing?"
  • "Who does Rohit Sharma score most of his runs with?"
  • "Does Grand Prairie Stadium favour chasing?"
  • "Show me Pooran's death-overs record."
  • "What actually is a googly?"

The same win model runs in production at cricketfornoobs.com, a live cricket explainer for American sports fans. This server exposes the analytics side of it to any MCP client.

✨ What makes this different

Most sports MCP servers wrap a scores API. This one ships analysis:

  • Win probability from a fitted model — logistic regression per format and innings over 10,847 matches (3.4M ball states), with pre-match Elo ratings. Held-out log loss 0.42 (T20 chases) / 0.40 (ODI chases); ~91% accurate on confident calls. It knows that 149/7 chasing 178 is not the same story as 149/2.
  • Ball-by-ball archive — 22,479 matches and 11.4M deliveries across T20, ODI/List-A, Tests and domestic multi-day cricket.
  • Career and matchup records — batter-vs-bowler head-to-heads, phase splits (powerplay / middle / death), venue reports, league leaderboards.
  • Baseball translations — every cricket term explained through its closest baseball equivalent, for newcomers to the sport.

🛠️ Tools

ToolWhat it does
cricket_win_probabilityWin probability for any live or hypothetical match state
cricket_head_to_headCareer batter-vs-bowler record (balls, runs, dismissals, strike rate)
cricket_player_careerCareer aggregates per format, men's and women's cricket
cricket_match_archiveScorecard for an archived match, searched by teams / league / year
cricket_phase_statsBatting and bowling split by powerplay, middle overs and death
cricket_venue_statsGround report: average first-innings score, chase win rate
cricket_leadersLeague and season leaderboards for runs or wickets. t20i is the T20Is alone; t20 adds the domestic T20s that have no code of their own. t20i, t20, odi, test, bbl, cpl and hundred hold men's and women's games and read the men's unless gender is female
cricket_team_formA team's recent archived results. Optional format (t20, odi, test) and gender (male, female) keep one side's games: the archive gives a country's men's and women's teams one name
cricket_dismissalsHow a batter gets out, or how a bowler takes wickets
cricket_disciplineDot-ball and boundary percentage, the numbers no scorecard shows
cricket_situationalA batter's record batting first versus chasing
cricket_partnershipsRuns added with each partner at the crease, and the best stand
cricket_market_oddsLive prediction-market prices (Kalshi) beside this model's number
cricket_live_matchesMatches live and upcoming right now
cricket_explain_termAny cricket term, with its baseball equivalent
cricket_minor_leagueMinor League Cricket (US domestic T20) and the Atlanta Open T20: live scores, situation and win chances from Kalshi's live data. Atlanta Open batters, bowlers and toss from CricCenter, the tournament's scoring app, on the hosted server only
cricket_minor_league_infoMinor League history, teams, grounds and player records. Hosted-only data: the local build points you to the hosted server

All tools are read-only.

Minor League Cricket data. ESPN does not carry the league, so its fixtures and scores come from Kalshi's public live data: the schedule, each game's score and state, and Kalshi's market beside it. That feed has no ball-by-ball commentary and names no batters or bowlers, so cricket_minor_league cannot say who is batting, who took a wicket or what happened on a given ball. A market figure appears only when Kalshi's book is a real price, and the model prices only the chase. The hosted server's cricket_minor_league_info does name players: it draws on CricClubs scorecards and results, and on Wikipedia's season articles (CC BY-SA 4.0), which is why that data stays on the hosted server.

🚀 Quick start

1. Install

One static binary, no runtime, no interpreter, no dependencies.

bash
go install github.com/asaraog/mcp-cricket/cmd/cricket-mcp@latest

Or download a prebuilt binary for macOS (Apple silicon or Intel), Linux (x86-64 or arm64) or Windows from Releases.

Register it with Claude Code:

bash
claude mcp add cricket -- ~/go/bin/cricket-mcp

2. Or configure a desktop client

Add the server to your client's config — for Claude Desktop:

OSConfig file
macOS~/Library/Application Support/Claude/claude_desktop_config.json
Windows%APPDATA%\Claude\claude_desktop_config.json
Linux~/.config/Claude/claude_desktop_config.json
json
{  "mcpServers": {    "cricket": {      "command": "/ABSOLUTE/PATH/TO/cricket-mcp"    }  }}

Restart the client and the cricket tools appear. Live scores, the win model, market prices and the glossary work as they are. The archive tools need the ball-by-ball database, which is not in the binary.

3. The archive

The database is built by the asaraog/cricket-history-data workflow from public Cricsheet data and published there as a release asset, history-full.db.gz (206 MB). That release is private. With HISTORY_DB_TOKEN set to a GitHub token that can read it, the server resolves the latest release on first use, downloads the archive once into your OS cache directory (~/Library/Caches on macOS, ~/.cache on Linux, %LocalAppData% on Windows) and reuses it from then on; when a later release replaces the asset, the next start downloads the new one. Without a token the download fails and the archive tools say the archive is missing.

Building it yourself needs no token:

bash
curl -O https://cricsheet.org/downloads/all_json.zippython3 scripts/histgen.py all_json.zip history.db

Then point HISTORY_DB at the result. A file you built is opened as it is and never replaced by a download. Limited-overs-only archives work too: tools degrade gracefully when a format is absent.

scripts/histgen.py is the same script the workflow runs. Since 2026-10-06 its deliveries table carries wide and noball columns, so balls faced leave out wides and a bowler's balls leave out wides and no-balls, as a scorecard counts them. An archive built before that has neither column; the server reads it as before, counting every row as a ball.

Since 2026-10-07 its matches table also carries a gender column, male or female as Cricsheet records it. cricket_leaders and cricket_team_form filter on it. Older archives (the v1 file and the 2026-10-06 rebuild) still work: without the column, a game's gender is read off its event name, which says "Women" for Cricsheet's women's events.

⚙️ Configuration

VariablePurpose
HISTORY_DBWhere the archive lives (default: your OS cache directory)
HISTORY_DB_URLDownload the archive from this URL instead of the latest release
HISTORY_DB_TOKENGitHub token that can read the private release, or a bearer token for HISTORY_DB_URL
HISTORY_QUERY_TIMEOUTDeadline for match lookups and scorecards, default 3s
HISTORY_ANALYTICS_TIMEOUTDeadline for phase splits, leaders, dismissals, discipline, situational and partnership queries, default 15s
MILC_LIVEoff turns off Minor League Cricket live data

Live-score tools work without any archive; archive tools report clearly when the database is missing rather than inventing an answer.

📊 About the model

The win model is fitted offline, not guessed at runtime. Features are match state (runs, wickets, balls remaining, required rate), pre-match Elo, and a wickets × required-rate interaction — because thin batting hurts far more when the asking rate is steep. Calibration is measured by wickets in hand: within about one point across most of the range.

Par is per ground. A first-innings score only means something relative to what the ground usually yields, so the innings-one segments are fitted against a table of 371 grounds and 7 leagues rather than one global constant. Real pars run from 153.7 to 172.5 by league alone, and further by ground. Pass venue (and league) to cricket_win_probability and the same 80/2 at ten overs is 47% at Chinnaswamy and 60% at Newlands. Without a venue it falls back ground → league → global, which costs about 0.006 of held-out log loss.

It cannot see injuries, weather, pitch reports or team news.

📈 Markets

cricket_market_odds reads public prices from Kalshi, a CFTC-regulated US exchange where contracts settle at $1 and a price in cents is the implied probability. Put beside cricket_win_probability, the gap between the two is the edge a trader would be claiming.

This is informational only — read-only market data, no account, no orders, no advice. The model cannot see injuries, weather or team news, which is often exactly why it disagrees with the market. Event contracts are legal in some jurisdictions and not others.

🙏 Data

Ball-by-ball data from Cricsheet, licensed CC BY-SA 4.0. Live scores from public ESPNcricinfo endpoints, and for Minor League Cricket from Kalshi's public live data; market prices from Kalshi's public API. This project is unaffiliated with any of them.

📝 License

BSD 3-Clause. See LICENSE.

Source: README.md at commit d1efca7

Tools

17

cricket_win_probability

Win probability for a limited-overs match, live or hypothetical, from a logistic model fitted on 8,000+ archived matches (per format and innings, with pre-match Elo). Pass a state for an in-play number, or just two team names for a fixture that has not started. Returns each side's probability and who is favored. Use for 'who is winning', 'what are the odds at X/Y', or 'who is favoured tomorrow'.

Parametersrunsrequiredoversrequiredtargetinningsrequiredwicketsrequiredtotal_oversrequiredbatting_teambowling_teamballs_per_over

cricket_head_to_head

Career batter-vs-bowler record from ball-by-ball archives: balls faced, runs scored, dismissals, strike rate. Cricket tracks these like baseball's batter-vs-pitcher splits.

Parametersbatterrequiredbowlerrequiredformat

cricket_player_career

Career aggregate statistics for a player (men's and women's cricket) from Cricsheet ball-by-ball archives: innings, runs, strike rate, average, high score, wickets, economy — per format.

Parametersnamerequired

cricket_match_archive

Look up an archived limited-overs match and return its scorecard: innings totals, top scorers, leading wicket-takers. Search by team names, league (mlc, ipl, bbl, psl, cpl), and/or year.

Parametersqueryrequired

cricket_phase_stats

How a player performs by phase of the innings — powerplay, middle overs, and the death — for batting and bowling. This is the split that separates a strike-rate merchant from a genuine finisher, computed from ball-by-ball archives.

Parametersnamerequiredtotal_overs

cricket_venue_stats

How a ground plays: matches recorded, average first-innings score, highest first-innings total, and how often the chasing side wins there. Useful for toss decisions and pre-match reads.

Parametersvenuerequiredtotal_overs

cricket_leaders

Leaderboards for a league and optional season: most runs or most wickets, from ball-by-ball archives. Leagues include mlc, ipl, bbl, psl, cpl, hundred and international cricket (t20i, odi, test). t20 is the T20Is together with every domestic T20 that has no code of its own (the Vitality Blast, the Syed Mushtaq Ali Trophy); t20i is the T20Is alone. Cricsheet publishes no Afghanistan men's matches, so the men's t20i, odi and test lists have none of Afghanistan's players. t20i, t20, odi, test, bbl, cpl and hundred hold men's and women's games (the WBBL is bbl, the WCPL cpl) and read the men's unless gender says otherwise. t20i and odi hold the associate nations' games too; members 'full' keeps the games between two of the twelve ICC full members (t20i, odi, test).

Parameterskindyearlimitgenderleaguerequiredmembers

cricket_team_form

A team's most recent archived results — opponent, outcome, and match event — for reading current form. The archive gives a country's men's and women's sides one name. Pass gender, and format, to read one side's games.

Parametersteamrequiredlimitformatgender

cricket_market_odds

Live prediction-market prices for a cricket match from Kalshi (a CFTC-regulated US exchange), shown beside this server's own win probability so the two can be compared. Prices are cents that equal implied probability: 42 means the market prices a 42% chance. Minor League Cricket prices come from cricket_minor_league's rule, a market figure only when Kalshi's book is a real price, and this tool gives the same answer for those games. Informational only — not betting advice, and event contracts are legal only in some jurisdictions.

Parametersteam_arequiredteam_brequired

cricket_dismissals

How a batter gets out, or how a bowler takes wickets, across the ball-by-ball archive: bowled, caught, lbw, stumped, run out and the rest, with counts and shares. Run outs are excluded from the bowling view because they are not credited to the bowler.

Parametersplayerrequiredperspective

cricket_discipline

Dot-ball percentage, boundary percentage and economy for a bowler, or the same rates faced by a batter. These are the numbers that decide limited-overs games well before the wickets column does, and no scorecard shows them.

Parametersplayerrequiredperspectivetotal_overs

cricket_situational

A batter's record batting first versus chasing, in limited-overs cricket: runs, balls, average and strike rate for each. Multi-day cricket is excluded rather than guessed at, since there the fourth innings is the chase and the first three are not comparable.

Parametersplayerrequiredtotal_overs

cricket_partnerships

A batter's most productive partnerships: runs added while the two were at the crease together, how many stands, and their best. Stands are reconstructed by segmenting each innings at the wickets that fall, since the archive records the striker but not the non-striker.

Parameterslimitplayerrequired

cricket_live_matches

Currently live and upcoming cricket matches with scores where available (ESPNcricinfo public feeds, plus Minor League Cricket and Atlanta Open T20 games from Kalshi's live data, each labelled with its league).

Takes no parameters.

cricket_minor_league

Scores and win chances for Minor League Cricket (the US domestic T20 league) and the Atlanta Open T20 from Kalshi's public live data: every game live, starting within 3 hours or finished in the last 2 hours, or one team's game. Each game gives its state, start time (ET), score, what the chasing side needs or the result, and win chances: the Kalshi market's midpoint only when its book is a real price, and this server's model from the first ball, with both sides rated equal because these clubs have no ratings. Kalshi's feed has no ball-by-ball commentary and no batters or bowlers; an Atlanta Open T20 game adds them from CricCenter, the app that tournament is scored on: the toss, who is batting and bowling, the over in progress, each innings' best performers and the player of the match. If nothing is on, it says when the next game is. The league's history, teams, grounds and players are cricket_minor_league_info's.

Parametersteam

cricket_minor_league_info

Player records and league history for Minor League Cricket (the US domestic T20 league), from data this server holds: CricClubs scorecards for 2026 and results with grounds for 2023-2026, CricClubs' 2025 and 2026 batting tables, Wikipedia's 2021-2024 squads and leader tables (CC BY-SA 4.0) and a research record that sources every fact. Every argument is optional and they combine: player for a season-by-season card (add team when two players share a name); team for where they are based and play, their finals and a season's captain, wicketkeeper, players and results; team with opponent, date or both for one fixture's ground, result and 2026 top performers; ground; leaders with season and team; season alone for its champion, final and awards; topic for league facts. With no arguments it lists what it can answer. Each answer gives exact figures, its source and how current it is, and says what the data lacks. Names are matched whole: a surname several players share gets a question back, and a name the data lacks is said to be missing, never answered with another player's figures. Live scores and win chances are cricket_minor_league's.

Parametersdateteamtopicgroundplayerseasonleadersopponent

cricket_explain_term

Explain a cricket term in plain English with its closest baseball equivalent (wicket, yorker, googly, powerplay, DLS, and ~60 more).

Parameterstermrequired

Version history

7
  1. v0.7.1LatestOct 16, 2026
  2. v0.7.0Oct 15, 2026
  3. v0.5.0Oct 7, 2026
  4. v0.4.0Oct 7, 2026
  5. v0.3.0Sep 27, 2026
  6. v0.2.0Sep 27, 2026
  7. v0.1.2Sep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts