Skip to main content
Glama

Get Race Control

get_race_control

Fetch race control events such as flags, safety cars, and incidents from OpenF1. Filter results by session, driver, category, flag, scope, or lap to analyze on-track decisions.

Instructions

Fetch race control events (flags, safety car, incidents) from OpenF1.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
flagNostr — optional, 1-50 chars, e.g., 'YELLOW', 'BLACK AND WHITE'. Normalized to uppercase.
scopeNostr — optional, e.g., 'Track', 'Driver', 'Sector'.
date_toNo
categoryNostr — optional, e.g., 'SessionStatus', 'CarEvent', 'Drs', 'Flag', 'SafetyCar'.
date_fromNo
session_keyNoint | str — optional, positive int or 'latest'. Session identifier; use get_sessions to discover it.
driver_numberNoint — optional, 1-99. Driver number for the season.
lap_number_maxNo
lap_number_minNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.7/5.0
Behavior2/5

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

No annotations exist, so the description carries the full behavioral burden, and it discloses almost nothing beyond the resource name. It doesn't state that this is a read-only query, that every parameter is optional and unfiltered calls may return large result sets, or that session_key accepts 'latest' — the schema hints at that but the description does not reinforce it.

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?

A single front-loaded sentence with no filler; the resource and its content are stated immediately. Brevity here borders on under-specification for a 9-parameter tool, but nothing is wasted.

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

Completeness2/5

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

An output schema exists so return values need not be explained, but with 9 parameters, no annotations, and half the schema undocumented, the description leaves the agent without enough context to filter correctly or understand behavior. It is far too thin for the tool's surface area.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 56% and four parameters (date_from, date_to, lap_number_min, lap_number_max) have no schema description at all, so the description is expected to compensate. Instead it names zero parameters, and its 'flags / safety car' examples only loosely echo category and flag values already documented in the schema.

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 a specific verb ('Fetch') and resource ('race control events') and clarifies the payload with examples (flags, safety car, incidents). It's clear what the tool returns, though it makes no attempt to distinguish itself from siblings like get_overtakes or get_session_results.

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?

There is no guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions. With 9 optional filters and a 'latest' session option, an agent gets no help deciding between a filtered call and a broad one.

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