Skip to main content
Glama
Ownership verified

Server Details

Live tennis scores, players, rankings, odds and win-probability. ATP, WTA, Challenger, ITF, juniors.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
livetennisapi/livetennisapi-mcp
GitHub Stars
190
Server Listing
livetennisapi-mcp

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4/5 across 12 of 12 tools scored. Lowest: 3.2/5.

Server CoherenceA
Disambiguation5/5

Each tool has a clear, distinct purpose covering API status, fixtures, live matches, match details, analysis, events, odds, scores, player profiles, results, upcoming matches, and player search. No overlaps or ambiguity.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., get_match_odds, search_players), making the set predictable and easy for agents to understand.

Tool Count5/5

With 12 tools, the set is well-scoped for a tennis API. Each tool provides necessary functionality without redundancy or excessive granularity.

Completeness4/5

The tool set covers core tennis data needs: status, fixtures, live matches, match details, analysis, events, odds, scores, player info, and search. Minor gaps like tournament details or head-to-head exist but do not hinder primary use cases.

Available Tools

12 tools
check_api_statusAPI status and planA
Read-onlyIdempotent
Inspect

Check whether the Live Tennis API is reachable and which plan the configured key is on. Useful for diagnosing why other tools are refusing data.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesTrue when the call returned data. False for a tier wall, a missing or rejected key, or an empty result — all of which are normal states with a clear remedy, not failures.
tierNoDetected plan: FREE, BASIC, PRO or ULTRA. Null when no key is configured.
has_keyNoWhether a key was supplied with this call.
messageYesHuman-readable summary. Identical to the text content, so either half can be used alone.
reachableNoTrue when the API answered its health check.
api_versionNoAPI version reported by the health check.
Behavior4/5

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

Annotations already indicate the tool is read-only, idempotent, and non-destructive. The description adds behavioral detail by specifying it checks both reachability and plan, providing valuable context 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.

Conciseness5/5

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

Two concise sentences: the first states the core action, the second provides usage context. No unnecessary words.

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

Completeness5/5

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

For a simple diagnostic tool with no parameters and an output schema available, the description fully covers purpose and usage context, making it complete for selecting and invoking the tool.

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?

The tool has no parameters, and schema coverage is 100%. Per guidelines, baseline is 4; the description does not add parameter semantics but none are needed.

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

Purpose5/5

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

The description clearly states the tool checks API reachability and plan. This distinguishes it from sibling data-retrieval tools like get_fixtures or get_live_matches, which focus on specific data rather than API status.

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

Usage Guidelines5/5

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

The description explicitly states the tool is 'useful for diagnosing why other tools are refusing data', providing clear context for when to use it and implying alternatives (sibling tools) for normal data retrieval.

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

get_fixturesFixture scheduleA
Read-onlyIdempotent
Inspect

Upcoming scheduled tennis fixtures, earliest first — the forward schedule.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum fixtures to return (1-200).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesTrue when the call returned data. False for a tier wall, a missing or rejected key, or an empty result — all of which are normal states with a clear remedy, not failures.
messageYesHuman-readable summary. Identical to the text content, so either half can be used alone.
fixturesNoScheduled fixtures, earliest first.
Behavior4/5

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

Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds that results are ordered 'earliest first', which is additional behavioral context. No contradictions.

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

Conciseness5/5

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

Single, concise sentence front-loads essential information (upcoming, earliest first, forward schedule) with no extraneous text.

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 a simple parameter (limit), output schema present, and low complexity, the description adequately covers what the tool returns and ordering. Could mention whether it includes only today or all future, but 'forward schedule' sufficiently implies ongoing.

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 coverage is 100% with clear description for the single 'limit' parameter, including default, min, max. Description adds no further meaning beyond the schema, meeting the baseline of 3.

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

Purpose5/5

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

The description clearly states that it returns 'upcoming scheduled tennis fixtures, earliest first', which is specific verb+resource+ordering. It distinguishes from siblings like get_live_matches and get_recent_results by specifying 'forward schedule'.

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?

The description implies usage for future scheduled fixtures with 'upcoming' and 'forward schedule', but does not explicitly state when not to use it or compare to siblings like get_upcoming_matches. Guidance is implied but not fully explicit.

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

get_live_matchesLive matchesA
Read-onlyIdempotent
Inspect

List tennis matches currently in progress, with live scores. Covers ATP, WTA, Challenger and ITF. Use this for "what tennis is on right now".

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum matches to return (1-200).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesTrue when the call returned data. False for a tier wall, a missing or rejected key, or an empty result — all of which are normal states with a clear remedy, not failures.
matchesNoThe live matches, most relevant first.
messageYesHuman-readable summary. Identical to the text content, so either half can be used alone.
Behavior3/5

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

Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. Description adds that it returns live scores and covers multiple tours, but no additional behavioral traits beyond that. Does not contradict annotations.

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

Conciseness5/5

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

Two sentences, zero wasted words. Front-loaded with the core action and result, followed by scope and usage guidance.

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

Completeness5/5

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

Given rich annotations, output schema, and a single parameter, the description is complete. It conveys purpose, scope, and usage advice without needing elaboration.

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?

The only parameter (limit) is fully described in the schema with range and default. Description does not add parameter-specific information, but schema coverage is 100%, so baseline 3 applies.

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

Purpose5/5

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

Description explicitly states the tool lists tennis matches currently in progress with live scores, covering ATP, WTA, Challenger, and ITF. It clearly distinguishes from siblings like get_upcoming_matches and get_recent_results by focusing on 'right now'.

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?

Directly states when to use: 'for what tennis is on right now'. Implicitly excludes non-live matches. Could explicitly mention when not to use, but the context is clear given sibling tools.

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

get_matchMatch detailA
Read-onlyIdempotent
Inspect

Full detail for one match by id: players, score, surface, round and status. Includes market prices on PRO and model analysis on ULTRA.

ParametersJSON Schema
NameRequiredDescriptionDefault
match_idYesMatch id, as returned by get_live_matches, get_upcoming_matches or get_recent_results.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesTrue when the call returned data. False for a tier wall, a missing or rejected key, or an empty result — all of which are normal states with a clear remedy, not failures.
matchNoThe match.
marketNoMatch-winner market. Requires the PRO plan; absent otherwise.
messageYesHuman-readable summary. Identical to the text content, so either half can be used alone.
analysisNoModel analysis. Requires the ULTRA plan; absent otherwise.
Behavior4/5

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

Annotations already indicate safe, read-only behavior. The description adds context about tier-dependent content (PRO market prices, ULTRA model analysis), which is valuable beyond what annotations provide. It does not contradict annotations.

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

Conciseness5/5

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

The description is two sentences long, front-loaded with the core purpose, and contains no unnecessary words. Every sentence adds value.

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

Completeness5/5

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

The tool has a single parameter, an output schema, and the description covers the key returned data. The mention of tier-specific content addresses important behavioral differences. The description is complete given the tool's simplicity.

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 coverage is 100%, and the description adds minimal extra meaning (just 'by id'). The schema description already explains the parameter's origin. At high coverage, a baseline of 3 is appropriate.

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

Purpose5/5

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

The description clearly states that the tool retrieves full details for a match by its ID, listing specific data fields (players, score, surface, round, status). It also mentions tier-specific content (PRO market prices, ULTRA model analysis), distinguishing it from sibling tools like get_match_score or get_match_odds.

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?

The description implies when to use the tool (when full match detail is needed) but does not explicitly state when not to use it or mention alternative tools for specific subsets. Given the number of sibling tools, more explicit guidance would improve usability.

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

get_match_analysisModel analysisB
Read-onlyIdempotent
Inspect

Model analysis for a match: predicted win probability, the model's thesis and the key factors behind it. Requires the ULTRA plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
match_idYesMatch id, as returned by get_live_matches, get_upcoming_matches or get_recent_results.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesTrue when the call returned data. False for a tier wall, a missing or rejected key, or an empty result — all of which are normal states with a clear remedy, not failures.
thesisNoNarrative view.
messageYesHuman-readable summary. Identical to the text content, so either half can be used alone.
profileNoQuantitative view.
Behavior3/5

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

Annotations already declare readOnlyHint and idempotentHint, so the description's main contribution is the ULTRA plan requirement. It does not add details about rate limits, data freshness, or other behavioral traits beyond what annotations provide.

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?

Two sentences: first states output, second states requirement. Concise and front-loaded. Could improve by moving requirement earlier but overall efficient.

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

Completeness3/5

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

Given the presence of an output schema, the description does not need to detail return values. It adequately covers purpose and requirement but lacks usage context and behavioral details. Adequate for a simple read-only tool.

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?

With 100% schema description coverage, baseline is 3. The description adds where to obtain match_id (from get_live_matches, etc.), which provides helpful context but is not critical.

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?

Description clearly states it provides model analysis including predicted win probability, thesis, and key factors. However, it does not explicitly differentiate from sibling tools like get_match_odds or get_match_score, though the content is distinct.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives like get_match or get_match_odds. The ULTRA plan requirement is mentioned but doesn't help with selection among siblings.

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

get_match_eventsMatch timelineA
Read-onlyIdempotent
Inspect

Timeline of events for a match — breaks, games won, sets won, momentum runs. Requires the PRO plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum events to return (1-200).
match_idYesMatch id, as returned by get_live_matches, get_upcoming_matches or get_recent_results.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesTrue when the call returned data. False for a tier wall, a missing or rejected key, or an empty result — all of which are normal states with a clear remedy, not failures.
eventsNoEvents in chronological order.
messageYesHuman-readable summary. Identical to the text content, so either half can be used alone.
Behavior4/5

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

Annotations already indicate readOnlyHint=true, so the tool is safe. The description adds critical behavioral context: requires the PRO plan and lists the types of events included, going beyond annotations.

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

Conciseness5/5

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

The description is a single sentence with clear front-loading of purpose and no wasted words. It effectively communicates the tool's function and a key constraint.

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?

Given the presence of an output schema, the description need not detail return values. It adequately explains the event types included and the PRO plan requirement, making it complete for this tool.

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 coverage is 100% with descriptions for both match_id and limit. The description does not add extra parameter meaning beyond the schema, so baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states it provides a timeline of events for a match, listing specific event types (breaks, games won, sets won, momentum runs). This distinguishes it from sibling tools like get_match (full details) and get_match_score (score only).

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives. The description implies its usage for timeline events but does not mention when not to use it or suggest alternative tools.

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

get_match_oddsMatch market pricesA
Read-onlyIdempotent
Inspect

Match-winner market prices for a match — implied probability per player, with bid, ask and mid. Requires the PRO plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum price points to return (1-200).
match_idYesMatch id, as returned by get_live_matches, get_upcoming_matches or get_recent_results.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesTrue when the call returned data. False for a tier wall, a missing or rejected key, or an empty result — all of which are normal states with a clear remedy, not failures.
marketNoThe match-winner market.
messageYesHuman-readable summary. Identical to the text content, so either half can be used alone.
Behavior4/5

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

Annotations already declare safe read-only behavior. Description adds value by specifying exactly what data fields are returned (implied probability, bid, ask, mid) and the plan requirement. No contradictions.

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

Conciseness5/5

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

Two concise sentences with no fluff. The most critical information (function and prerequisite) is front-loaded.

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

Completeness5/5

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

Output schema exists to document return values, and the description provides key behavioral context (data types). Combined with strong annotations, the tool is fully documented.

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 has 100% coverage with detailed descriptions for both parameters. The description does not add additional parameter information beyond the schema, so baseline is appropriate.

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

Purpose5/5

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

Clearly states the resource (match-winner market prices) and the data provided (implied probability, bid, ask, mid). Distinguishes from sibling tools like get_match (general info) and get_match_score (score).

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?

Explicitly notes the PRO plan requirement, which is a key prerequisite. Does not explicitly state when to use vs. alternatives, but the purpose is specific enough that usage context is clear.

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

get_match_scoreMatch scoreA
Read-onlyIdempotent
Inspect

Current score for one match — the fastest, lowest-latency read. Use this when you only need the score and already know the match id.

ParametersJSON Schema
NameRequiredDescriptionDefault
match_idYesMatch id, as returned by get_live_matches, get_upcoming_matches or get_recent_results.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesTrue when the call returned data. False for a tier wall, a missing or rejected key, or an empty result — all of which are normal states with a clear remedy, not failures.
scoreNoThe current score.
messageYesHuman-readable summary. Identical to the text content, so either half can be used alone.
Behavior4/5

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

Annotations already provide readOnlyHint, idempotentHint, etc. The description adds that it's the fastest/lowest-latency read, which is useful performance context beyond annotations. No contradiction.

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

Conciseness5/5

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

Two sentences, zero wasted words, front-loaded with purpose and usage. Excellent conciseness.

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

Completeness5/5

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

For a simple read-only tool with one parameter and an output schema, the description is complete. It explains when to use, the speed advantage, and the prerequisite (knowing match ID). No missing critical information.

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 coverage is 100% and the schema already provides a clear description for match_id. The tool description does not add new parameter information, so baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool gets the current score for one match, emphasizes low latency, and requires knowing the match ID. It distinguishes from siblings by focusing on score-only and speed.

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?

Explicitly says 'Use this when you only need the score and already know the match id,' which implies when not to use (for other details, use other tools). Does not list alternative names but the guidance is clear.

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

get_playerPlayer profileA
Read-onlyIdempotent
Inspect

One player's profile: ranking, country, handedness, date of birth and cached stats.

ParametersJSON Schema
NameRequiredDescriptionDefault
player_idYesPlayer id, as returned by search_players.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesTrue when the call returned data. False for a tier wall, a missing or rejected key, or an empty result — all of which are normal states with a clear remedy, not failures.
playerNoThe player.
messageYesHuman-readable summary. Identical to the text content, so either half can be used alone.
Behavior3/5

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

The annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering safety and behavior. The description adds that it returns 'cached stats,' implying possible staleness, but does not elaborate on other behaviors like call limits or data freshness guarantees.

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

Conciseness5/5

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

The description is a single, front-loaded sentence that efficiently conveys the tool's output without unnecessary words. Every word adds value.

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?

Given the low complexity (1 parameter, no nested objects, output schema exists), the description sufficiently informs the agent about the returned fields. However, the mention of 'cached stats' is somewhat vague and could be more precise.

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 coverage is 100% and the single parameter 'player_id' is described as 'Player id, as returned by search_players.' The description does not add extra meaning beyond what the schema provides, so it meets the baseline for complete schema documentation.

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

Purpose5/5

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

The description clearly states the tool returns one player's profile listing specific fields (ranking, country, handedness, date of birth, cached stats), and the tool name 'get_player' distinguishes it from siblings like 'search_players' or 'get_match'.

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?

The description does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention when not to use it. The context from the tool name and sibling list implies usage for retrieving a single player's profile, but no exclusions or comparisons are given.

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

get_recent_resultsRecent resultsA
Read-onlyIdempotent
Inspect

Recently completed tennis matches with final scores and winners.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum matches to return (1-200).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesTrue when the call returned data. False for a tier wall, a missing or rejected key, or an empty result — all of which are normal states with a clear remedy, not failures.
matchesNoCompleted matches, most recent first.
messageYesHuman-readable summary. Identical to the text content, so either half can be used alone.
Behavior3/5

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

Annotations already provide readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, covering safety and idempotency. The description adds only 'recently completed' timing context, which is minimal beyond annotations.

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

Conciseness5/5

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

The description is a single concise sentence that front-loads the purpose with no wasted words.

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

Completeness5/5

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

Given the simple tool with one parameter, strong annotations, and an existing output schema, the description adequately specifies return values (scores, winners) and is complete for selection.

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 coverage is 100%, and the parameter 'limit' is well-described in the schema (maximum matches 1-200). The description adds no additional meaning beyond the schema.

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

Purpose5/5

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

The description clearly states 'Recently completed tennis matches with final scores and winners,' which is a specific verb+resource combination. It distinguishes from sibling tools like get_live_matches (ongoing) and get_upcoming_matches (future).

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?

The description does not explicitly state when to use this tool versus alternatives or any exclusions. Usage is implied by context of sibling tools, but no explicit guidance is provided.

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

get_upcoming_matchesUpcoming matchesA
Read-onlyIdempotent
Inspect

List tennis matches scheduled to start soon, with players and tournament.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum matches to return (1-200).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesTrue when the call returned data. False for a tier wall, a missing or rejected key, or an empty result — all of which are normal states with a clear remedy, not failures.
matchesNoMatches due to start, soonest first.
messageYesHuman-readable summary. Identical to the text content, so either half can be used alone.
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the description doesn't need to reiterate safety. It adds the behavioral nuance that matches are 'scheduled to start soon,' which is useful but minimal.

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

Conciseness5/5

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

A single sentence with all key information (list, matches, soon, players, tournament). No fluff or redundancy. Front-loaded and efficient.

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?

Given the tool's simplicity (one optional param, full schema coverage, output schema present, and annotations providing safety guarantees), the description adequately covers what the tool does and returns. It could optionally mention ordering or time range, but not necessary for a list tool.

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?

The only parameter (limit) has 100% schema description coverage, so the description adds no extra meaning. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the verb 'List' and the resource 'tennis matches scheduled to start soon, with players and tournament.' It distinguishes from siblings like get_live_matches (which implies ongoing matches) and get_fixtures (which may be broader).

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?

The description provides clear context ('scheduled to start soon') but does not explicitly state when to use this tool versus alternatives like get_live_matches or get_fixtures. No exclusions or specific recommendations are given.

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

search_playersSearch playersA
Read-onlyIdempotent
Inspect

Search tennis players by name. Returns id, country, ranking and tour. Use the returned id with get_player.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum players to return (1-200).
queryYesFull or partial player name, e.g. "alcaraz".

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesTrue when the call returned data. False for a tier wall, a missing or rejected key, or an empty result — all of which are normal states with a clear remedy, not failures.
messageYesHuman-readable summary. Identical to the text content, so either half can be used alone.
playersNoMatching players, best match first.
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint. Description adds value by specifying return fields and usage for chaining, which is beyond annotations.

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

Conciseness5/5

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

Two short sentences with no filler. Every word contributes meaning: purpose, return value, and follow-up tool recommendation.

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

Completeness5/5

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

For a simple search tool with output schema and comprehensive annotations, the description provides all necessary context: what it does, what it returns, and how to use the result. No gaps.

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 coverage is 100% with descriptive parameter definitions. Description adds no new semantic information beyond 'Search tennis players by name', which weakly reinforces the query parameter.

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

Purpose5/5

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

Explicitly states 'Search tennis players by name', a specific verb and resource, and lists return fields (id, country, ranking, tour). Distinguishes from sibling 'get_player' by directing use of returned id.

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?

Provides clear context: use to search, then use get_player with returned id. No explicit exclusion of alternatives, but the chaining pattern is evident from the description.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    -
    quality
    C
    maintenance
    Tournament software for tennis, padel, pickleball and more: fair draws, live standings, scores and dropout handling.
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Live sports betting odds, cross-book +EV, and graded player-prop resolution across 13 books.
    11
    550
    1
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Live football/soccer data from top European leagues, enabling queries for standings, fixtures, scorers, and team comparisons via natural language.
    6
    11
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.