Skip to main content
Glama
SportApi-net

sportapi-mcp

Official

get_match

Read-onlyIdempotent

Retrieve full details for one sports match, including score, live stats, betting markets, odds, and sub-events; filter by market to focus results.

Instructions

Full details of one match: score, live statistics, all betting markets and odds, and its sub-events (halves, corners, cards...).

A match can have hundreds of markets: filter with markets (e.g. ["1X2", "Total"]). Odds are decimal; 'blocked' means the selection is suspended. Sub-events have their own game_id: call get_match again with it and the same line_type.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
game_idYesgame_id from a match list, search or sub_events.
marketsNoOnly show these markets: case-insensitive name fragments (e.g. 'Total', '1X2', 'Handicap') or numeric market ids (group_id). Omit for the default markets.
line_typeYesThe line type the game_id came from ('live' or 'prematch').
max_marketsNoMaximum markets to return (API order).
include_statsNoInclude live statistics (attacks, shots, xG...).
include_pointersNoAppend each selection's oc_pointer code (needed only for bet placement systems).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, openWorld). The description adds real behavioral context beyond them: odds are decimal, 'blocked' means a suspended selection, a match can have hundreds of markets, and sub-events must be fetched via a recursive call with the same line_type.

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?

Front-loaded with the return-contents sentence, then two tight sentences on filtering and sub-event recursion. Dense but no filler; slightly list-like in the first line.

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 carries the burden of describing returns and does so well (score, stats, markets, odds, sub-events). It doesn't address scale/pagination behavior for the default market set, but the schema's max_markets and default annotations fill most of that 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 description coverage is 100%, so baseline is 3. The description goes further by illustrating the `markets` filter with concrete values (["1X2", "Total"]) and by explaining that line_type is what ties a sub-event's game_id back to a valid get_match call, linking two parameters semantically.

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?

States a specific verb+resource ('Full details of one match') and enumerates the payload: score, live statistics, markets, odds, sub-events. That clearly distinguishes it from the list_*/search_matches siblings, which return sets of matches rather than one match's detail.

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?

Gives useful operational guidance — filter with `markets`, and re-call get_match with a sub-event's own game_id plus the same line_type to drill down. However it never states when to prefer this over alternatives (search_matches, list_live_matches) or any precondition, so the usage guidance is implied rather than explicit.

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