Skip to main content
Glama

Live matches

get_live_matches
Read-onlyIdempotent

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

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tourNoTour filter; each name covers its doubles variants. Exhibition/team events carry no tour and are excluded whenever the filter is used.
limitNoMaximum matches to return (1-200).
playerNoPlayer ids (from search_players), max 50 — keeps matches where ANY listed player is either participant.
countryNoEither participant's country — the lowercase 3-letter IOC-style code the Player object returns (e.g. ned, sui, gre), NOT ISO-3166. Players with no recorded country never match.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
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.

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful scope coverage (ATP, WTA, Challenger, ITF, juniors) but does not add deeper behavioral details like data freshness, pagination, or rate limits. This matches the baseline for annotations covering safety.

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, front-loaded with the core action, and every phrase earns its place. No filler or redundancy.

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 tool's simple read-only nature, complete schema documentation for all four optional parameters, and a provided output schema, the description adequately covers what the tool does and when to use it. No gaps that would hinder an agent's invocation.

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 baseline is 3. The description mentions tour coverage, but the schema already provides enum values and detailed descriptions for each parameter. The description adds no new semantic meaning beyond what the schema already conveys.

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 uses a specific verb ('List') and resource ('tennis matches currently in progress, with live scores'), clearly distinguishing it from siblings like get_upcoming_matches or get_fixtures. The phrase 'what tennis is on right now' reinforces the unique scope of live/in-progress matches.

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?

The description explicitly tells the user when to use this tool ('Use this for "what tennis is on right now"'), providing clear context. It does not, however, name alternatives or specify exclusions compared to sibling tools, 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.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.9/5.0
Disambiguation4/5

The tool set is largely distinct with clear resource/action pairs. Potential confusion exists between get_match and get_match_score (both return match information), and get_fixtures vs get_upcoming_matches (both list upcoming matches), but descriptions clarify the specific use cases for each.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using either 'get_' or 'search_'. This makes the API highly predictable and easy to navigate, with no stylistic deviations.

Tool Count3/5

With 24 tools, the server is on the heavy end of the typical range. The broad scope (live, archive, charting, rankings, tournaments) justifies the count, but it borders on overwhelming and requires careful categorization.

Completeness4/5

The server covers the core lifecycle of a tennis information API: searching players/tournaments, retrieving profiles/rankings, live scores and detailed match analysis, historical results, and head-to-head records. Minor gaps like tournament draws or standings are missing, but the primary use cases are well covered.