Labsco
MCP SERVER

Open F1 MCP Server

by AryaAkman

Formula 1 sessions, drivers, laps, pit stops and overtakes, queried by season, circuit or driver number.

Sports, Fantasy & Esports Data
Summary
Race questions answered from the timing data, not from recollection.

Ask a model who had the fastest pit stop in Singapore and you get a memory; this returns the row, with the lap number and the duration attached. Start every question by resolving the session — year, circuit, session name — because that key is what the lap, pit and overtake calls hang off.

What it is

A single-file Python server over OpenF1, the open API for real-time and historical Formula 1 data. Everything keys off a session: find the one you mean by year, country, circuit or session name, then read the drivers who took part, the lap and sector times, the pit stops and the overtakes. The upstream API is public and unauthenticated, so there is no key to obtain and nothing of yours to hand over.

What you get
  • Sessions filtered by year, country, circuit, session name or type, and by start date with `>=` and `<=` comparisons
  • The drivers in a session — name, number, team, country and headshot — or the current field, filtered by team or number
  • Lap data for a session, a driver or a single lap, with lap time, sector times, duration and position
  • Pit stops with duration and lap number, narrowed to stops under a duration you set
  • Overtakes as position changes: who passed whom, on which lap, and when in the session
Requirements

Python with the `mcp` and `httpx` packages, and the server file itself — it is one script, launched by its path. Answers come from openf1.org at request time, so it needs network access, but no account and no key. The parameter set is documented as of v1.2; the lap, pit-stop and overtake calls only return anything meaningful with a `session_key`, which is what the session lookup produces.