MCP server for accessing Indian Premier League (IPL) cricket data including current matches, series details, and match information
Three tools with basic schemas and descriptions, but significant gaps in parameter documentation, output schema clarity, and error handling guidance. Tool names follow verb_noun convention (get_*), which is good. However, descriptions lack context on WHEN to use each tool vs. alternatives, and parameter descriptions are minimal. The get-ipl-details tool has a broken implementation (reads from hardcoded file instead of using API). No output schemas documented. Error handling exists but doesn't guide recovery. Baseline: avg tool description ~194 chars; these average ~110 chars. Avg params per tool: 1, well below baseline of 4.
Get detailed information about a specific cricket match
Get list of all current cricket matches in IPL. Only call this for finding the score of current matches, other things are better found in other tools.
Get detailed information about IPL (Indian Premier League), domestic cricket series including all matches
Output schemas not documented. LLMs cannot plan downstream calls or extract required fields (e.g., match IDs for chaining). Responses are JSON blobs without field-level type hints.
Parameter descriptions are minimal or missing context. 'offset' is described as 'Offset for pagination (default: 0)' but lacks guidance on valid range, when pagination is needed, or what happens at boundary conditions.
Tool descriptions lack WHEN-to-use guidance. 'get-current-matches' says 'Only call this for finding the score of current matches, other things are better found in other tools' but doesn't explain what 'other things' are or when to use get-ipl-details instead.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
get-ipl-details implementation is broken: reads from hardcoded 'schedule.json' file instead of calling the API. Ignores the 'offset' parameter entirely. This tool will fail or return stale data in production.
Error handling returns raw error messages but does not guide recovery. E.g., 'Failed to fetch current matches data' tells the LLM nothing about whether to retry, check the API key, or try a different tool.