Skip to main content
Glama

List tournaments

list_tournaments
Read-onlyIdempotent

Use to find tournaments. Lists a season's tournaments in calendar order with dates, city, surface, whether it is a Grand Slam, status, main-draw match count and the champion. Filter by surface (hard, clay, grass, carpet) and status. Tour: atp (default) or wta; on the shared endpoint pass league: "wta" for the WTA. Costs 1 credit.

Input Schema

NameRequiredDescriptionDefault
limitNoMax tournaments (default 100).
leagueNoLeague. Defaults to tennis. One of: tennis, wta.
offsetNoPage offset; use next_offset.
seasonNoYear, e.g. 2025 (default this year).
statusNoOnly upcoming, in-progress or completed tournaments.
surfaceNoOnly tournaments on this surface.

Output Schema

NameRequiredDescriptionDefault
tourYes
countYes
seasonYes
next_offsetNo
tournamentsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already cover readOnly/idempotent/non-destructive, so the description correctly focuses on what they don't say: results come back in calendar order, the season defaults to the current year, and the call costs 1 credit. Missing only pagination behavior, which is partly implied by the schema's next_offset note.

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?

Three tight sentences: purpose first, then returned fields, then filters and endpoint nuance, with the cost note last. Dense but every clause carries information; no filler.

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?

An output schema exists so returned fields need not be enumerated, yet the description still summarizes them at a useful level of detail. For a 6-param read-only list tool, the only real gap is explicit pagination guidance beyond the schema's offset note.

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 is 3; the description earns extra by clarifying the tour/league mapping — 'atp (default)' versus passing league: 'wta' on the shared endpoint — which the raw enum (tennis, wta) leaves ambiguous. It also restates the surface and status filter values usefully in context.

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?

Opens with a specific verb+resource ('find tournaments') and immediately specifies the output scope: a season's tournaments in calendar order with dates, city, surface, Grand Slam flag, status, match count and champion. This cleanly distinguishes it from the singular sibling get_tournament.

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?

States 'Use to find tournaments' and gives concrete filter guidance (surface, status, season). It also resolves the ATB/WTA routing question by noting the shared endpoint requires league: 'wta'. It doesn't explicitly say when to prefer get_tournament for a single event, so not quite 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.