Skip to main content
Glama

RallyIQ

Explain a charted tennis match

explain_match
Read-onlyIdempotent

Why a charted match went the way it did: points won, and each player's gain or loss against expectation split into direction choice, shot selection and execution, by stroke and by set, the loser's biggest leaks and the points each player left on the table by not choosing the best-value direction. Finds the most recent charted match for a player, narrowed by opponent, tournament or year, and lists other matching matches.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
yearNoSeason of the match.
playerYesA player in the match, e.g. "Jannik Sinner", "Swiatek", "Alcaraz". Misspellings and surnames alone are fine.
opponentNoThe other player (optional), e.g. "Jannik Sinner", "Swiatek", "Alcaraz". Misspellings and surnames alone are fine.
tournamentNoWords from the tournament name, e.g. "Wimbledon", "Roland Garros", "Indian Wells".

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the safe read-only, idempotent, closed-world profile, so the description's job is to add non-obvious behavior — and it does: it discloses that only 'charted' matches qualify, that the most recent matching match is selected, and that other matching matches are listed. The only gap is what happens when no charted match exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The opening sentence is a dense, jargon-heavy run-on listing every analytic dimension before establishing the basic operation, which only appears at the end ('Finds the most recent charted match...'). Front-loading the operational behavior ahead of the analytic breakdown would make it far easier to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description must convey what comes back, and it does so thoroughly: points won, gain/loss vs expectation split into direction choice, shot selection and execution, by stroke and by set, plus biggest leaks and points left on the table. Given 4 fully documented parameters and no output schema, this is nearly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 player, opponent, tournament and year, including fuzzy-match tolerance. The description adds only that these parameters 'narrow' the search, which is marginal value over the schema's own descriptions; baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource (explain why a charted tennis match went the way it did) and enumerates the analytical dimensions returned, so the agent knows exactly what this tool produces. It does not explicitly distinguish itself from siblings like get_game_plan, but the scope is unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It implies usage by describing the lookup behavior ('Finds the most recent charted match for a player, narrowed by opponent, tournament or year'), which tells the agent what inputs select a match. However, there is no explicit when-to-use/when-not guidance and no reference to alternatives such as get_game_plan for tactical planning.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.