mcp-cricket
Server Details
Live cricket incl. US Minor League, Kalshi prices, and a win model fitted on 10,847 matches.
- Status
- Healthy
- Uptime
- 100.0% over 40 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- asaraog/mcp-cricket
- GitHub Stars
- 0
- Server Listing
- cricket-mcp
TDQS
Scored across 17 tools
Most tools target distinct cricket statistics or queries, but a few have overlapping scope: cricket_win_probability and cricket_market_odds both provide win probability, and cricket_live_matches and cricket_minor_league both return live scores. Descriptions do help differentiate, but an agent might still confuse them in edge cases.
All tools use the cricket_ prefix and snake_case consistently. The convention is noun-based rather than verb_noun, but it is uniform across the set, with only cricket_explain_term using a verb, which is a minor deviation but still consistent.
17 tools is slightly above the ideal 3-15 range but reasonable for a comprehensive cricket analytics server. Each tool addresses a distinct aspect of cricket data, so none seem redundant.
The set covers a wide range of cricket statistics: player career, phase, situational, partnerships, discipline, dismissals, head-to-head, leaders, team form, venue stats, match archive, live matches, minor league info, market odds, win probability, and term explanations. Minor gaps exist (e.g., no explicit team-vs-team head-to-head or tournament standings), but core analytics are well-covered.
Available Tools
17 toolscricket_disciplineBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| player | Yes | player name, e.g. 'JJ Bumrah' | |
| perspective | No | 'bowling' (default) or 'batting' | |
| total_overs | No | restrict to one format: 20 for T20, 50 for ODI. Omit for all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds conceptual background about the metrics' importance but discloses no additional behavioral traits such as default perspective, data coverage, or output structure. It does not contradict annotations, but it fails to add meaningful behavioral context beyond them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the core metrics, followed by a sentence explaining relevance. The second sentence adds value by clarifying rarity of data, though it could be trimmed; still, it is not wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should clarify what is returned, but it only states which metrics are computed without describing the response shape. Given the simple parameter set and read-only annotations, coverage is adequate but not complete; an agent might still wonder about format or default behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters. The description echoes the bowler/batter distinction already present in the perspective field, but it does not enrich parameter meaning (e.g., how total_overs affects results). Baseline 3 is appropriate given full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the resource (bowler or batter) and the specific metrics computed (dot-ball percentage, boundary percentage, economy). It distinguishes itself from siblings like cricket_dismissals and cricket_head_to_head by focusing on rates that scorecards don't show, leaving no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by explaining that these numbers are decisive in limited-overs games and not available on scorecards, suggesting when an agent might need them. However, it does not explicitly contrast with sibling tools or state when not to use this tool, leaving alternatives unaddressed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_dismissalsARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| player | Yes | player name, e.g. 'V Kohli' | |
| perspective | No | 'batting' (default) for how they get out, 'bowling' for how they take wickets |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint true and destructive false, so no contradiction. The description adds non-obvious behavioral context: run outs are excluded from bowling because they are not credited to the bowler, and results are aggregated counts/shares across the ball-by-ball archive. This is useful beyond the annotated metadata.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences with no fluff. The primary purpose is front-loaded, and the caveat about run-outs is placed meaningfully. Every sentence contributes to selection and invocation correctness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read-only tool with no output schema, the description gives a complete picture: what data is returned, what the two perspectives are, and a key exception. An agent has enough to decide whether this tool fits and to call it without surprises.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds semantic depth by explaining what each perspective means ('how they get out' vs 'how they take wickets') and clarifies an important detail about run outs in the bowling perspective. This enriches the interpretation of the 'perspective' parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's resource and purpose: how a batter gets out or how a bowler takes wickets, with specific dismissal types and output of counts and shares. It distinguishes the batting and bowling perspectives, making it easy to differentiate from sibling cricket tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear contextual guidance by explaining the two possible perspectives (batting vs bowling) and the meaning of each. It clearly notes that run outs are excluded from the bowling view, which is essential for correct interpretation. It does not explicitly mention alternative tools, but the context is strong enough for its niche.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_explain_termARead-onlyInspect
Explain a cricket term in plain English with its closest baseball equivalent (wicket, yorker, googly, powerplay, DLS, and ~60 more).
| Name | Required | Description | Default |
|---|---|---|---|
| term | Yes | cricket term, e.g. 'googly' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description goes beyond that by revealing the response style ('plain English'), the comparative output ('closest baseball equivalent'), and the scope ('~60 more' terms). It doesn't cover unknown-term behavior, but the annotations carry the safety profile and the added context is useful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that states the action, output format, and scope with no filler. Every part of the sentence earns its place, and the examples improve comprehension without bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, read-only, single-parameter lookup tool, the description is complete: it explains what the tool does, what kind of output to expect, and gives a sense of the covered terms. Annotations cover side effects, sibling context disambiguates from stats tools, and no output schema is necessary for such an explanatory response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter, so the schema already fully documents 'term'. The description reinforces it with examples and scope, but does not add meaningful new semantics beyond what the schema provides. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Explain') and a clear resource ('a cricket term'), and adds a distinctive output feature ('closest baseball equivalent'). It also lists concrete examples, making the tool's purpose immediately distinguishable from the statistical sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the use case clear: this is a terminology-explanation tool, not a stats or data tool. It does not explicitly name alternatives or exclusions, but the sibling list is all data/analytics tools, so the contrast is strong and the intended usage is evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_head_to_headARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| batter | Yes | batter name, e.g. 'Virat Kohli' or 'V Kohli' | |
| bowler | Yes | bowler name, e.g. 'Jasprit Bumrah' | |
| format | No | 't20' or 'odi'; omit to try T20 then ODI |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover read-only and non-destructive behavior. The description adds useful context beyond annotations by identifying the data source ('ball-by-ball archives') and the nature of the data (career-level record), which helps set expectations about scope and granularity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: the first states the purpose and output fields, the second gives a useful analogy for familiarity. No filler or repetition; every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only lookup with fully documented parameters, the description is sufficient. It names the output metrics and data source, and the schema covers the format defaults. A caveat about missing/insufficient ball-by-ball data could add completeness, but is not essential for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with batter, bowler, and format all documented. The description reinforces the head-to-head nature but does not add parameter-specific detail beyond the schema, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource ('Career batter-vs-bowler record') and enumerates the exact metrics returned (balls faced, runs scored, dismissals, strike rate), making it immediately clear what the tool does and how it differs from general player career or phase stats tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is for batter-vs-bowler head-to-head queries, but it does not state when to prefer it over siblings like cricket_player_career, cricket_phase_stats, or cricket_match_archive. No explicit usage context or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_leadersARead-onlyInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | 'batting' (default) or 'bowling' | |
| year | No | optional season year, e.g. '2026' | |
| limit | No | how many players to return (default 10) | |
| gender | No | optional: 'male' or 'female'. t20i, t20, odi, test, bbl, cpl and hundred read the men's when it is omitted; other leagues read every game | |
| league | Yes | league code, e.g. 'mlc', 'ipl', 'bbl', 't20i' | |
| members | No | optional, t20i, odi and test only: 'full' for the games between two ICC full members alone. Omit for every side's games, associates' included |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnly/openWorld/non-destructive; the description adds data-provenance caveats that annotations cannot carry, e.g. Cricsheet publishes no Afghanistan men's matches, so t20i/odi/test men's lists omit those players, and which leagues mix men's and women's games. That is genuinely useful for interpreting results. It does not describe ordering, pagination, or what happens on an unknown league code.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose sentence is correctly front-loaded, but the remaining text is an unstructured wall of semicolon-clause taxonomy that is hard to scan and repeats the schema's gender/members wording. Most sentences do carry information, so it is dense rather than padded, but it is not well organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter tool with no output schema, the description thoroughly covers the hardest dimension (league scoping, gender, members) but omits other things an agent needs: the sort direction (are leaders returned highest-first?), the meaning of 'kind' beyond the schema's one-liner, and the year format nuance. Return-shape omission is excused by the absent output schema, but ordering is not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description goes beyond the schema by defining the league taxonomy itself (t20 = T20Is plus code-less domestic T20; t20i = T20Is alone), which the schema only labels as 'league code, e.g. mlc, ipl'. It partially duplicates the gender and members semantics already in the schema, but the league expansion adds real meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb and resource: 'Leaderboards for a league and optional season: most runs or most wickets, from ball-by-ball archives.' That clearly separates it from siblings like cricket_player_career or cricket_phase_stats. It stops short of 5 because it never names a sibling it is not, so the agent must still infer the boundary against cricket_situational or cricket_minor_league.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The bulk of the text is context for invoking the 'league' parameter correctly (t20 vs t20i, gender default behaviour, members 'full'), which is real usage guidance for a tricky dimension. But there is no explicit when-to-use-this-vs-alternative routing and no exclusions against the many sibling leaderboard-adjacent tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_live_matchesARead-onlyInspect
Currently live and upcoming cricket matches with scores where available (ESPNcricinfo public feeds, plus Minor League Cricket games from Kalshi's live data).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds meaningful behavioral context: the data comes from ESPNcricinfo public feeds and Kalshi's live data, and scores are conditional ('where available'). This goes beyond the annotations and helps set expectations about data source and completeness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the core purpose and appends the data-source details parenthetically. Every word earns its place, with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless read-only tool with no output schema, the description is complete: it states the subject (live/upcoming cricket matches), the conditional data field (scores), and the sources. An agent can call it without needing additional context about inputs or expected returns.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so there is nothing to document. The baseline of 4 applies because the description need not explain parameters that do not exist, and it successfully communicates the tool's non-configurable, retrieval-style behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource (cricket matches) and its scope (currently live and upcoming, with scores where available), which distinguishes it from siblings like cricket_match_archive. However, it lacks an explicit action verb such as 'list' or 'get', relying on the noun phrase 'Currently live and upcoming cricket matches' to imply retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool—when the user wants live or upcoming cricket matches and scores—but it does not explicitly contrast it with alternatives such as cricket_match_archive or cricket_minor_league. The mention of Minor League Cricket from Kalshi's live data hints at overlap with cricket_minor_league, yet no exclusion or selection guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_market_oddsARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| team_a | Yes | one team, e.g. 'San Francisco Unicorns' | |
| team_b | Yes | the other team, e.g. 'Guyana Amazon Warriors' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, but the description still adds substantial behavioral context: prices are cents equal to implied probability, the Kalshi exchange is CFTC-regulated, Minor League Cricket prices follow cricket_minor_league's rule only when Kalshi's book is real, and the tool is informational only with legal caveats. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences deliver the core purpose first, then price interpretation, then edge-case and legal details. It is slightly dense and the Minor League Cricket sentence is convoluted, but every sentence contributes useful information rather than padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by explicitly explaining the output format ('42 means the market prices a 42% chance'). The two parameters are fully documented in the schema, annotations cover read-only safety, and the description covers behavior and caveats. Nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%—both team_a and team_b have descriptions and examples. The tool description adds no additional parameter-specific meaning (e.g., format constraints or team-name normalization), but per the baseline for high schema coverage, a score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Live prediction-market prices for a cricket match from Kalshi... shown beside this server's own win probability.' This clearly states what the tool does and differentiates it from siblings like cricket_win_probability (model probability) and cricket_minor_league (overlapping market rule).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The text implies usage context—comparing Kalshi market prices to the server's own win probability, and noting a Minor League Cricket crossover with cricket_minor_league. However, it never explicitly states when to prefer this tool over alternatives or provides exclusions, leaving the guidance to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_match_archiveARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | free text, e.g. 'the 2025 IPL final' or 'Washington Freedom vs San Francisco Unicorns 2026' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds useful behavioral detail about the lookup scope and the returned data, including that it searches by team names, league, and year, which goes beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, with the core action and return value front-loaded. No filler or repetition, and every phrase contributes to selection and invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description still explains the return value (scorecard components) and the acceptable search inputs. It is adequate for a simple one-parameter lookup, though a note on the absence of Test matches or the meaning of 'limited-overs' could marginally improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% coverage for the single free-text query parameter, so the baseline is already solid. The description adds meaning by specifying the search dimensions: team names, league, and/or year, which clarifies how the free-text query should be composed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Look up') with a clear resource ('archived limited-overs match') and states the concrete return payload ('scorecard: innings totals, top scorers, leading wicket-takers'). It clearly distinguishes this from live-match and aggregate-stat siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use the tool: searching archived limited-overs match scorecards by team, league, or year. It does not explicitly name alternative tools or state when not to use it, but the 'archived' qualifier and focus on match scorecards provide a practical usage boundary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_minor_leagueARead-onlyInspect
Scores and win chances for Minor League Cricket (the US domestic T20 league) 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 only during the chase. Kalshi's feed has no ball-by-ball commentary and no batters or bowlers. 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.
| Name | Required | Description | Default |
|---|---|---|---|
| team | No | optional: a full or partial Minor League Cricket team name, e.g. 'Atlanta Fire' or 'Kingsmen'. Omit for every game on now |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the readOnly/openWorld/non-destructive annotations: it names the upstream feed (Kalshi public live data), the precise time window, the win-chance semantics (midpoint only when the book is a real price, model only during the chase), known limitations (no ball-by-ball, no batters or bowlers), and fallback behavior ('If nothing is on, it says when the next game is').
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Dense and front-loaded, leading with what the tool returns and its data source before caveats. It is a single long paragraph whose clauses all carry information, though it could be split for readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of describing returns and does so: each game's state, start time (ET), score, chase requirement or result, and win chances. Failure mode (nothing on) and coverage limits are also stated, so an agent has everything needed to call and interpret it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single 'team' parameter, so the schema already carries the full matching semantics (full or partial name, omit for all games). The description adds no syntax or format detail beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: 'Scores and win chances for Minor League Cricket... from Kalshi's public live data,' with the exact data source named. It also explicitly distinguishes itself from the sibling cricket_minor_league_info, which owns history, teams, grounds and players.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clear inclusion conditions are given (live, starting within 3 hours, or finished in the last 2 hours) plus the routing rule to cricket_minor_league_info. It does not explicitly contrast with other live/odds siblings like cricket_live_matches or cricket_market_odds, so exclusions are partial.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_minor_league_infoARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | a day, YYYY-MM-DD, e.g. '2026-09-26': with team (and opponent) for that day's game, or alone for every game that day | |
| team | No | a team's name, e.g. 'Chicago Kingsmen', 'All Stars' or 'Kingsmen'; 'Atlanta Fire v Atlanta Lightning' is read as a fixture. With player, it picks between players who share a name | |
| topic | No | a league-level fact: overview, format (season and playoffs), champions (every final), draft (roster rules), watch (tickets and streaming), history (founding and renamed teams), mlc (the pathway to Major League Cricket), teams (conferences and divisions) | |
| ground | No | a ground's name, e.g. 'Church Street Park', 'Grand Prairie' or 'NY Ovals' | |
| player | No | a player's full name, e.g. 'Andries Gous'. A surname alone works when only one player has it | |
| season | No | a season, 2020-2026. Alone, that season's champion, final and awards; with other arguments, it narrows them. Default 2026 where a season is needed | |
| leaders | No | a season's leaders: runs or wickets for 2021-2026, the rest for 2026. Narrow with season and team | |
| opponent | No | the other team, for a fixture with team |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover safety (readOnly, non-destructive, openWorld), and the description adds substantial context beyond them: exact provenance of each dataset, licensing (CC BY-SA 4.0), freshness ('how current it is'), explicit statement of what data lacks, and whole-name matching that returns a question rather than another player's figures. This is unusually rich failure-mode disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose and sourcing are front-loaded, then a compact semicolon-delimited tour of argument combinations. Every sentence carries information, but the single dense paragraph is longer than ideal and could be split for scannability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter, all-optional tool with no output schema, the description covers the combination logic, defaults, provenance, currency, and answer format ('exact figures, its source and how current it is'). Nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3; however the description adds cross-parameter combination semantics (team+opponent+date for a fixture, player+team for disambiguation, season narrowing other arguments, default 2026) that the flat schema cannot express. It stops short of adding per-parameter syntax beyond what the schema already gives.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb+resource ('Player records and league history for Minor League Cricket') and immediately scopes the data (CricClubs scorecards 2026, results/grounds 2023-2026, Wikipedia squads 2021-2024). It also names the sibling it is not, cricket_minor_league, for live scores, so the agent can separate the two without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Enumerates concrete usage patterns for every argument combination (player, team+opponent, ground, leaders+season, season alone, topic, no arguments) and states the fallback behavior when no arguments are given. It explicitly routes live-score queries to cricket_minor_league.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_partnershipsARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | how many partners (default 8) | |
| player | Yes | player name, e.g. 'RG Sharma' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds valuable context about how stands are reconstructed by segmenting innings at wickets, and explains a limitation of the archive (only striker recorded). This goes beyond the annotations and helps the agent understand data provenance and potential edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: the first sentence states the output content, the second sentence explains the reconstruction method. No redundant words, and the most important information is front-loaded. It earns a top score for efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read-only tool with no output schema, the description explains what is returned (runs, stands, best) and how the data is derived. It does not specify output formatting or sorting, but that is a minor gap given the simplicity and the annotations covering safety. The description is sufficient for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both parameters (player, limit) are described in the schema. The description does not add new parameter-level details beyond the schema, but it does clarify the meaning of 'partnerships' and 'stands'. This meets the baseline for a tool with full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states what the tool does: it returns a batter's most productive partnerships, including runs added, how many stands, and their best. It uses a specific resource (partnerships) and provides detail, though it does not explicitly distinguish it from sibling tools, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool compared to other cricket tools. The description implies that it is for exploring partnership statistics, but it does not mention alternatives or conditions that would make this tool preferable. No exclusions or contextual advice is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_phase_statsBRead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | player name, e.g. 'Nicholas Pooran' | |
| total_overs | No | 20 for T20 (default), 50 for ODI/List-A |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds a useful data-source detail ('computed from ball-by-ball archives') but does not disclose player-name matching behavior, data availability, or behavior for unsupported formats. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first sentence is concise and front-loads the core purpose. The second sentence is rhetorical flavor about separating 'a strike-rate merchant from a genuine finisher' and does not help an agent select or invoke the tool, so not every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with two parameters and strong schema coverage, and the core query intent is clear. However, there is no output schema and the description does not indicate what metrics or fields the result will contain, leaving some uncertainty about the returned shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents both parameters with 100% description coverage, so the baseline is 3. The tool description adds no parameter-specific detail beyond the schema, though it does clarify the batting/bowling split that the player name parameter relates to.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies a player-performance stats tool broken down by innings phase (powerplay, middle overs, death) for both batting and bowling. It lacks a direct imperative verb like 'retrieve' or 'calculate', and it doesn't explicitly distinguish itself from sibling player-oriented tools, but the phase-split scope is specific and recognizable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool over cricket_player_career, cricket_team_form, or cricket_venue_stats. It only mentions that the data is computed from ball-by-ball archives, which implies historical analysis but does not help an agent choose between alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_player_careerARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | player name, e.g. 'Rachin Ravindra' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered and nothing is contradicted. The description adds valuable context beyond annotations: data provenance (Cricsheet ball-by-ball archives), gender coverage (men's and women's), and per-format aggregation behavior — all non-obvious traits the agent would not know otherwise.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence: purpose leads, followed by source, stat list, and the per-format qualifier. There is no filler, no repetition of schema content, and every clause adds information an agent needs to select and invoke the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only tool with no output schema, the description covers scope, data source, returned fields, and per-format grouping — enough to form an accurate mental model of the result. Minor gaps are the lack of explicit return-structure detail and name-matching behavior for unknown or ambiguous players, but these are unlikely to block correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — the single `name` parameter already has a description with a concrete example ('Rachin Ravindra'). The tool description adds no parameter-specific meaning beyond what the schema provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a precise scope — 'Career aggregate statistics for a player' — with a specific resource (player), a concrete stat list (innings, runs, strike rate, average, high score, wickets, economy), and per-format grouping. The single-player career framing differentiates it from siblings like cricket_head_to_head (two players), cricket_leaders (rankings), and cricket_phase_stats without needing to inspect their schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
When to use the tool is implied by the purpose statement — when an agent needs career aggregates for a single player — but no explicit when/when-not guidance or alternative tools are named. An agent must infer that head-to-head comparisons belong to cricket_head_to_head or that phase-level breakdowns belong to cricket_phase_stats.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_situationalARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| player | Yes | player name, e.g. 'V Kohli' | |
| total_overs | No | restrict to one format: 20 for T20, 50 for ODI. Omit for all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey read-only and non-destructive safety. The description adds beyond that by disclosing the exact output fields (runs, balls, average, strike rate for each scenario) and the policy of excluding multi-day rather than guessing, giving the agent confidence about what it will and will not return.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core purpose, and each sentence is information-dense. The second sentence provides necessary context about the exclusion without fluff. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with only two parameters (one required) and no output schema, the description fully covers what is returned (runs, balls, average, strike rate per scenario) and the scope (limited-overs, batting-first vs chasing). Annotations cover safety, so the description is complete for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for both parameters (player and total_overs), with clear descriptions already explaining player name format and format restriction. The description does not add further parameter-level detail beyond what is in the schema, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: reporting a batter's batting record when batting first versus chasing in limited-overs cricket, with specific metrics (runs, balls, average, strike rate). The phrasing 'batting first versus chasing' and explicit exclusion of multi-day cricket differentiates it from sibling tools like cricket_player_career or cricket_phase_stats, even without naming them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies the context (limited-overs cricket) and explicitly states when NOT to use it (multi-day cricket), citing the incomparability of innings. It does not explicitly name alternative tools, but the exclusion of multi-day and the focus on situational splits clearly delineates its scope among the cricket siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_team_formARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| team | Yes | team name, e.g. 'San Francisco Unicorns' | |
| limit | No | how many recent matches (default 8) | |
| format | No | optional: 't20', 'odi' or 'test'. Omit for every format | |
| gender | No | optional: 'male' or 'female'. Omit for both |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds a genuine non-obvious caveat — that the archive stores a country's men's and women's sides under one name, which explains the gender parameter's purpose. It says nothing about limits beyond the default or rate behavior, but the added naming caveat is real value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the core purpose and return fields before the parameter guidance. No filler, though the second sentence reads slightly awkwardly and the ordering could be tightened.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by naming the return fields (opponent, outcome, match event). All four parameters are documented in the schema, and annotations cover the safety profile, leaving little an agent needs that is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description justifies the gender parameter by explaining the shared-naming model ('the archive gives a country's men's and women's sides one name'). That tells the agent why gender exists and what omitting it yields, adding meaning beyond the schema's terse 'Omit for both'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb-and-resource combination ('a team's most recent archived results... for reading current form') and enumerates the returned fields (opponent, outcome, match event). It is clearly distinct from data-heavy siblings like cricket_match_archive or cricket_head_to_head, though it does not explicitly name those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'for reading current form' and by the instruction to pass gender/format for one side, but there is no explicit when-to-use versus when-to-use-a-sibling guidance (e.g., versus cricket_head_to_head or cricket_match_archive). The reader must infer the routing from the stated purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_venue_statsARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| venue | Yes | ground name or fragment, e.g. 'Grand Prairie' or 'Eden Gardens' | |
| total_overs | No | 20 for T20 (default), 50 for ODI/List-A |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, non-destructive behavior. The description adds useful behavioral context by enumerating the key stats returned and framing them as historical venue tendencies. It does not explain output formatting or edge cases, but the core read-only behavior is reinforced rather than contradicted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. It front-loads the core concept ('How a ground plays'), lists the meaningful stats, and ends with a practical use case. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only stats tool with only one required parameter and full schema coverage, the description is complete. It tells the agent what the tool computes, why it matters, and how to apply the results. No output schema exists, but the described metrics give a sufficient mental model of the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters well, including the venue example and the total_overs defaults. The description adds no new parameter-level detail, but the baseline of 3 is appropriate because the schema carries the necessary semantic load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource ('a ground') and the specific purpose: summarizing how a venue plays. It lists concrete outputs (matches recorded, average first-innings score, highest total, chasing-side win rate), which makes the tool's function unambiguous and distinct from the sibling tools like head-to-head or team form.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states when to use this tool: 'for toss decisions and pre-match reads.' This gives the agent a clear context for invocation. It does not explicitly name alternative tools or when-not-to-use conditions, but the use case is well implied by the venue-specific scope.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cricket_win_probabilityARead-onlyInspect
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'.
| Name | Required | Description | Default |
|---|---|---|---|
| runs | Yes | runs scored so far by the batting side | |
| overs | Yes | overs bowled in cricket notation, e.g. 15.3 = 15 overs 3 balls | |
| target | No | runs needed to win (second innings only) | |
| innings | Yes | 1 for the side setting a target, 2 for the chase | |
| wickets | Yes | wickets lost so far (0-10) | |
| total_overs | Yes | overs per side: 20 for T20 and The Hundred, 50 for ODI | |
| batting_team | No | team name; improves a live estimate via Elo, and with bowling_team alone prices a fixture that has not started | |
| bowling_team | No | optional team name, improves the estimate via Elo | |
| balls_per_over | No | balls per over: 6 unless The Hundred, which bowls 5-ball sets — pass 5 there or every rate is a fifth off |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as read-only and open-world; the description adds useful context by specifying the model basis ('8,000+ archived matches', per format and innings, pre-match Elo) and the output shape (per-side probability and favored side). It does not cover limitations or edge cases, but it complements rather than contradicts the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-structured: it opens with the core computation, then gives invocation patterns, return values, and example use cases in just four sentences. There is minimal redundancy, and the most important context is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool without an output schema, the description adequately covers what the tool returns and when to use it. However, it is incomplete about how to encode a not-yet-started fixtures under the required fields, and it does not explain probability semantics, leaving some ambiguity for the agent to infer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover all nine parameters in detail (100% coverage), so the baseline is a 3. The description adds an invocation pattern ('pass a state' vs two team names), but it does not clarify how a pre-match call can satisfy the five required numeric state fields, which keeps it at the baseline rather than above it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states what the tool computes: win probability for a limited-overs match, live or hypothetical, based on a logistic model. It also names the return value ('each side's probability and who is favored') and gives concrete example queries, making it easy to distinguish from siblings like cricket_market_odds.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit use cases ('who is winning', 'what are the odds at X/Y', 'who is favoured tomorrow') and separates in-play state usage from pre-match team-name usage. It does not name alternatives or exclusions, and the 'just two team names' hint is not fully reconciled with the required numeric schema fields, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
cricket_leaders1 field changed- added
Input schema / properties / membersAdded value: +{ + "description": "optional, t20i, odi and test only: 'full' for the games between two ICC full members alone. Omit for every side's games, associates' included", + "type": "string" +}
1 tool update
- Changed
cricket_leaders2 fields changed- changed
Input schema / properties / gender / descriptionPrevious value: -"optional: 'male' or 'female'. t20, odi, test, bbl, cpl and hundred read the men's when it is omitted; other leagues read every game"New value: +"optional: 'male' or 'female'. t20i, t20, odi, test, bbl, cpl and hundred read the men's when it is omitted; other leagues read every game" - changed
Input schema / properties / league / descriptionPrevious value: -"league code, e.g. 'mlc', 'ipl', 'bbl', 't20'"New value: +"league code, e.g. 'mlc', 'ipl', 'bbl', 't20i'"
1 tool update
- Changed
cricket_leaders2 fields changed- added
Input schema / properties / genderAdded value: +{ + "description": "optional: 'male' or 'female'. t20, odi, test, bbl, cpl and hundred read the men's when it is omitted; other leagues read every game", + "type": "string" +} - changed
Input schema / properties / league / descriptionPrevious value: -"league code, e.g. 'mlc', 'ipl', 'bbl'"New value: +"league code, e.g. 'mlc', 'ipl', 'bbl', 't20'"
1 tool update
- Changed
cricket_team_form2 fields changed- added
Input schema / properties / formatAdded value: +{ + "description": "optional: 't20', 'odi' or 'test'. Omit for every format", + "type": "string" +} - added
Input schema / properties / genderAdded value: +{ + "description": "optional: 'male' or 'female'. Omit for both", + "type": "string" +}
1 tool update
- Added
cricket_minor_league_info
1 tool update
- Added
cricket_minor_league
1 tool update
- Changed
cricket_win_probability1 field changed- changed
Input schema / properties / batting_team / descriptionPrevious value: -"optional team name, improves the estimate via Elo"New value: +"team name; improves a live estimate via Elo, and with bowling_team alone prices a fixture that has not started"
4 tool updates
- Added
cricket_discipline - Added
cricket_dismissals - Added
cricket_partnerships - Added
cricket_situational
11 tool updates
- First observed
cricket_explain_term - First observed
cricket_head_to_head - First observed
cricket_leaders - First observed
cricket_live_matches - First observed
cricket_market_odds - First observed
cricket_match_archive - First observed
cricket_phase_stats - First observed
cricket_player_career - First observed
cricket_team_form - First observed
cricket_venue_stats - First observed
cricket_win_probability
Related MCP Connectors
Live Kalshi and Polymarket data: EV edges, cross-venue arbitrage, markets, and whale trades.
Probability-calibrated NBA, EuroLeague, football and ATP/WTA tennis predictions, full distributions
Cricket MCP — wraps CricAPI (api.cricapi.com) for live cricket data.
Sports prediction markets for AI agents — live prices, quotes, orders, and positions.
Related MCP Servers
- AlicenseAqualityCmaintenance29 MCP tools for IPL 2026, IPL historical (18 seasons), and Major League Cricket. Free, no API key.5748 npm2MIT

PropLineofficial
AlicenseAqualityAmaintenanceLive sports betting odds, cross-book +EV, and graded player-prop resolution across 13 books.111,893 npm1MIT- AlicenseAqualityAmaintenance48 AI-callable tools for FIFA World Cup 2026 football, Formula 1, and IPL cricket — Monte-Carlo bracket simulations, F1 pit-strategy modeling, and a Dream11 ILP optimizer, plus live odds and value-bet detection. Free, open-source, and works with any MCP client via uvx.4410MIT
- FlicenseNot gradedqualityBmaintenanceAn MCP server that enables natural language querying of over 10 million ball-by-ball cricket deliveries stored in a local DuckDB database. It provides 26 tools for analyzing player matchups, situational stats, and historical records across all major cricket formats and tournaments.2-
Glama MCP Gateway
Add one secure layer between your agents and this server.