Skip to main content
Glama

f1_get_lap_times

Read-onlyIdempotent

Retrieve lap times for a specific F1 driver in a given session, with paging. Use the session key and driver number to fetch lap numbers and lap durations.

Instructions

Return lap times for a driver in a specific F1 session.

Args: session_key: OpenF1 session identifier. driver_number: Driver's race number (driver numbers change by season; use f1_get_drivers). limit: Max laps to return, 1..200 (default 100 — covers most full races). offset: Number of laps to skip for paging (default 0).

Returns: data.laps: page of lap objects with lap_number and lap_duration. OpenF1 does not put compound/tyre_life here — those live on the stints endpoint. data.pagination: {total, count, offset, limit, has_more, next_offset}. meta.source: adapter that served the data.

Input Schema

NameRequiredDescriptionDefault
limitNoMax laps to return, 1..200 (default 100 — covers most full races).
offsetNoNumber of laps to skip for paging (default 0).
session_keyYesOpenF1 session identifier.
driver_numberYesDriver's race number (driver numbers change by season; use f1_get_drivers).

Output Schema

NameRequiredDescriptionDefault
dataNo
metaNo
errorNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.4.0
    • changedInput schema / properties / driver_number / description
      Previous value: -"Driver's race number (e.g. 1 for Verstappen)."New value: +"Driver's race number (driver numbers change by season; use f1_get_drivers)."
  2. First observedv0.3.1

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare this as a read-only, idempotent, non-destructive, open-world operation. The description adds useful behavioral detail: pagination fields, what the lap objects contain, and explicitly that compound/tyre_life data is not included and lives on the stints endpoint.

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?

The definition is front-loaded and organized into Args and Returns sections. It is efficient overall, though the detailed Returns section is somewhat redundant because an output schema exists.

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?

For a simple read-only lap-times endpoint, the description covers required identifiers, pagination behavior, return shape, and an important data limitation. With annotations and an output schema also present, an agent has everything needed to call it correctly.

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 schema already documents all four parameters. The description repeats the same parameter meanings and adds only light context, such as limit covering most full races, so the baseline of 3 is appropriate.

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?

The description opens with a specific verb and resource: 'Return lap times for a driver in a specific F1 session.' This clearly distinguishes it from aggregate tools like f1_race_results or f1_qualifying_analysis, though it does not explicitly name sibling alternatives.

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?

Usage is implied by the purpose, and there is a helpful pointer to f1_get_drivers for driver numbers. However, the description does not state when to choose this tool over related siblings such as f1_race_results or f1_head_to_head_pace.

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