Skip to main content
Glama

The Tennis Desk

One line's win chance

predict_matchup
Read-onlyIdempotent

Gives the home side's win probability for one line between named players. It weighs each player's Desk level, how a pair plays together and who is available, while a player the Desk has not yet rated gets a default level. Call it when someone asks who would win, the odds of a matchup, or how a pairing stacks up. Needs a Desk Pass after the member's free forecast each week. Past that, a call gets the free part, with no chance for anything still to be played, and deskPass, whose message you give the person. Its error is free_forecast_used, or desk_pass_required for a key with no member.

Input Schema

NameRequiredDescriptionDefault
askedNoThe person's question word for word, never paraphrased. Leave it out rather than invent one.
line_typeNoOptional; inferred from side sizes when omitted. One of 'singles' or 'doubles'.
away_playersYesAway-side player name(s), ideally as they appear on recorded lines. Each may also be a player's Desk page link or number.
home_playersYesHome-side player name(s), ideally as they appear on recorded lines, e.g. 'Last, First'. Each may also be a player's Desk page link or number.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior5/5

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

Goes well beyond the readOnly/idempotent annotations by disclosing the model inputs (Desk level, pair synergy, availability, default level for unrated players), the entitlement rule (Desk Pass after the weekly free forecast), the `deskPass` response field and what to do with its message, and the exact error codes free_forecast_used and desk_pass_required. That is exactly the auth/gating context annotations cannot carry.

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

Conciseness4/5

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

Purpose is front-loaded in the first sentence and gating/error details follow in a logical order with little filler. However, the sentence 'Past that, a call gets the free part, with no chance for anything still to be played, and `deskPass`…' is compressed to the point of ambiguity and costs clarity.

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?

For a 4-parameter prediction tool with no output schema, it covers inputs, gating, degraded behavior, response fields, and error codes well. It never says what the probability result actually looks like (format, range, supporting fields), which is the main remaining gap.

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

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline would be 3, but the description adds real meaning: an unrated player name gets a default level rather than failing, and side sizes drive line_type inference. It does not clarify the `asked` field or name-lookup flexibility beyond the schema, keeping it at 4.

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?

States a specific verb and resource — 'Gives the home side's win probability for one line between named players' — with clear scope (one line, home perspective, named players). It does not explicitly differentiate itself from the sibling query_matchup, which also sounds matchup-related, so it stops 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.

Usage Guidelines4/5

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

Gives concrete trigger phrasing: 'Call it when someone asks who would win, the odds of a matchup, or how a pairing stacks up.' That is a clear usage context, but there is no exclusion clause pointing away from query_matchup or compute_match_line_ratings, which an agent could easily confuse with this.

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.

Resources