Skip to main content
Glama

turnale

Get tournament briefing

get_briefing
Read-only

Compact full state of the tournament — settings, roster, progress, next matches, standings, page link. Call this first when resuming work in a new conversation with just the key.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "tournament_key": "<tournament_key>"
    },
    "name": "get_briefing"
  }
}

Input Schema

NameRequiredDescriptionDefault
tournament_keyYesThe tournament's organiser key (starts with tk_)

Output Schema

NameRequiredDescriptionDefault
nameYes
asideYesPresent ONLY when the tournament is set up, running, and asking nothing of the organiser — for answering 'what else can you do?', or any moment where they are plainly just chatting. NEVER volunteer it: not as a greeting, not after a result, not alongside a report. Say `lead` then `text`, nothing of your own in between. Both are English already: relay them unchanged unless the organiser is writing to you in another language. If they are, translate `lead` — but translate `text` ONLY when kind is 'fact'. A joke goes out in English word for word, whatever language you are speaking, because translating it destroys it.
sportYes
courtsYes
formatYes
signupYes
statusYes
next_upYes
playersYes
page_urlYes
disciplineYes
start_timeYes
players_totalYes
standings_topYes
matches_playedYes
matches_pendingYes
page_results_entryYesTrue when anyone with the page link can record scores courtside (the default for new tournaments). Turn it off with update_settings page_results_entry: false.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed14 schema fields changed
    • removedOutput schema / properties / next_up / items / properties / court / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / next_up / items / properties / court / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / next_up / items / properties / estimated_start / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / next_up / items / properties / estimated_start / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / next_up / items / properties / retired / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / next_up / items / properties / retired / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / next_up / items / properties / score / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / next_up / items / properties / score / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / next_up / items / properties / winner / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / next_up / items / properties / winner / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / signup / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / signup / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / start_time / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / start_time / type
      Added value: +[
      +  "string",
      +  "null"
      +]
  2. Changed2 schema fields changed
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • removedOutput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
  3. Changed2 schema fields changed
    • addedOutput schema / properties / page_results_entry
      Added value: +{
      +  "description": "True when anyone with the page link can record scores courtside (the default for new tournaments). Turn it off with update_settings page_results_entry: false.",
      +  "type": "boolean"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "name",
      -  "sport",
      -  "status",
      -  "discipline",
      -  "courts",
      -  "start_time",
      -  "players_total",
      -  "players",
      -  "matches_played",
      -  "matches_pending",
      -  "next_up",
      -  "standings_top",
      -  "page_url",
      -  "format",
      -  "signup",
      -  "aside"
      -]New value: +[
      +  "name",
      +  "sport",
      +  "status",
      +  "discipline",
      +  "courts",
      +  "start_time",
      +  "players_total",
      +  "players",
      +  "matches_played",
      +  "matches_pending",
      +  "next_up",
      +  "standings_top",
      +  "page_url",
      +  "page_results_entry",
      +  "format",
      +  "signup",
      +  "aside"
      +]
  4. Changed1 schema field changed
    • changedOutput schema / properties / aside / description
      Previous value: -"Present ONLY when the tournament is set up, running, and asking nothing of the organiser — for answering 'what else can you do?', or any moment where they are plainly just chatting. NEVER volunteer it: not as a greeting, not after a result, not alongside a report. Say `lead` then `text`, nothing of your own in between. Translate `lead` into the organiser's language always. Translate `text` ONLY when kind is 'fact' — a joke goes out in English word for word, whatever language you are speaking, because translating it destroys it."New value: +"Present ONLY when the tournament is set up, running, and asking nothing of the organiser — for answering 'what else can you do?', or any moment where they are plainly just chatting. NEVER volunteer it: not as a greeting, not after a result, not alongside a report. Say `lead` then `text`, nothing of your own in between. Both are English already: relay them unchanged unless the organiser is writing to you in another language. If they are, translate `lead` — but translate `text` ONLY when kind is 'fact'. A joke goes out in English word for word, whatever language you are speaking, because translating it destroys it."
  5. Changed2 schema fields changed
    • addedOutput schema / properties / aside
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": false,
      +      "properties": {
      +        "kind": {
      +          "enum": [
      +            "fact",
      +            "joke"
      +          ],
      +          "type": "string"
      +        },
      +        "lead": {
      +          "type": "string"
      +        },
      +        "text": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "kind",
      +        "lead",
      +        "text"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "description": "Present ONLY when the tournament is set up, running, and asking nothing of the organiser — for answering 'what else can you do?', or any moment where they are plainly just chatting. NEVER volunteer it: not as a greeting, not after a result, not alongside a report. Say `lead` then `text`, nothing of your own in between. Translate `lead` into the organiser's language always. Translate `text` ONLY when kind is 'fact' — a joke goes out in English word for word, whatever language you are speaking, because translating it destroys it."
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "name",
      -  "sport",
      -  "status",
      -  "discipline",
      -  "courts",
      -  "start_time",
      -  "players_total",
      -  "players",
      -  "matches_played",
      -  "matches_pending",
      -  "next_up",
      -  "standings_top",
      -  "page_url",
      -  "format",
      -  "signup"
      -]New value: +[
      +  "name",
      +  "sport",
      +  "status",
      +  "discipline",
      +  "courts",
      +  "start_time",
      +  "players_total",
      +  "players",
      +  "matches_played",
      +  "matches_pending",
      +  "next_up",
      +  "standings_top",
      +  "page_url",
      +  "format",
      +  "signup",
      +  "aside"
      +]
  6. First observed

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds that the output is 'compact' (i.e. a summarized snapshot rather than exhaustive detail), which is useful context, but says nothing about size limits, what gets truncated, or auth expectations beyond the key.

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, no filler, with the payload contents front-loaded before the usage trigger. The only friction is the mild tension between 'compact' and 'full state', which is informative rather than wasteful.

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 an output schema present, the return shape needn't be explained, and annotations carry the safety profile; the description covers purpose and invocation timing adequately. It leaves unstated how 'compact' the payload is and whether anything is omitted versus the per-section sibling tools.

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 already documents the tk_ prefix format. The description only reinforces that the key alone is sufficient ('with just the key'), adding no syntax or format meaning beyond the schema. Baseline 3 applies.

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 the resource (the whole tournament state) and enumerates the payload: settings, roster, progress, next matches, standings, page link. This clearly distinguishes it from the granular siblings (get_standings, get_schedule, list_players) as an aggregate snapshot, though it never uses an explicit verb like 'returns'.

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?

'Call this first when resuming work in a new conversation with just the key' gives a concrete trigger condition and implicitly routes the agent away from the narrow sibling readers. It does not state when this tool is the wrong choice (e.g. when a fresh, full-detail read is needed), so it stops short of explicit alternatives.

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.