
MCP Sport
io.github.andrequeiroz2Published by GitHub account andrequeiroz2v0.1.0Updated Oct 24, 2026
MCP server that exposes Formula 1 data from the OpenF1 API.
Overview
Exposes Formula 1 data from the OpenF1 API so an assistant can query sessions, results, laps, telemetry and standings.
- What you can do
- Look up sessions and meetings: practice, qualifying, sprint and race sessions, Grand Prix weekends and driver lists. Retrieve results: final classification, starting grid and position history. Analyze the race: lap times and sectors, pit stops, stints and tyre compounds, gaps, race control flags and safety cars, overtakes and team radio. Read telemetry and context: speed, RPM, gear, throttle, brake, DRS, car location and track weather. Check drivers and teams championship standings (beta). Two interactive views, a standings board and an animated race replay, render only in hosts that support MCP Apps; other clients receive JSON.
- When to use it
- Use it when an assistant should answer questions about Formula 1 sessions, results, lap times, pit stops, telemetry or standings from 2023 onward, or build race summaries in conversation. Live data and rendered views need extra setup.
- Requirements
- Runs as a local stdio process; needs Python 3.13 or later with uv for dependencies, and can be launched with uvx. Requires network access to the OpenF1 API; historical data from 2023 is free, live data needs a paid OpenF1 subscription. Optional MCP_SPORT_LOG_LEVEL variable sets the log level.
Installation
In SourceWeft
- Open MCP Sport in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
MCP Sport — F1 Telemetry MCP 🏎️
An MCP (Model Context Protocol) server that exposes Formula 1 data from the OpenF1 API as tools for AI assistants (Claude Desktop, Cursor, MCP Inspector, etc.).
Full coverage: 18 data tools matching the 18 documented OpenF1 endpoints — sessions, meetings, drivers, results, laps, pit stops, stints, telemetry, weather, championships and more. Two MCP App views sit on top of that data: a drivers standings board and an animated race replay. Hosts that render MCP Apps show the HTML. Cursor and Claude Desktop do not: they return the same payload as JSON.
Stack
Installation
Usage
Run the server (stdio)
MCP Inspector (web UI to test the tools)
In the Inspector UI: transport STDIO, command .venv/bin/python,
args src/mcp_sport/server.py → Connect.
Claude Desktop / Cursor
Add to the client's MCP configuration:
The 18 data tools work in both clients. The views do not render there.
Views (MCP Apps)
get_drivers_championship_view and get_race_replay_view return interactive
HTML. Cursor and Claude Desktop are incompatible with MCP Apps: they
ignore the UI and show the JSON payload. The MCP Inspector also treats the
result as text.
The views were validated in the official
basic-host
from modelcontextprotocol/ext-apps.
The server must be HTTP, with CORS exposing the MCP session headers.
Otherwise the browser cannot complete the Streamable HTTP handshake.
Terminal 1 — MCP server on port 8765:
Terminal 2 — basic-host (needs Node.js; npm start requires bun, so use tsx):
Open http://localhost:8080 (sandbox on :8081) and call
get_drivers_championship_view or get_race_replay_view. After a change to
the view HTML, hard-refresh the page (Ctrl+Shift+R) before running the tool
again. The host caches the ui:// resource.
Available tools (18)
Example conversation with the AI
"How many points did Norris score in the last two races?"
The AI orchestrates: get_sessions(session_type="Race") to discover recent
sessions → get_session_results(session_key=..., driver_number=4) on each one.
Project structure
Canonical documentation
Configuration
Known limitations
- Historical data from 2023 onwards; real-time data requires a paid OpenF1 subscription
session_resultandstarting_gridreturn HTTP 404 until official results are published- Telemetry (
car_data,location) returns 18–24k samples per session/driver. Narrow the call with range filters such asspeed_minanddate_from/date_to - Championship endpoints are in beta on OpenF1
License
MIT. OpenF1 is an unofficial project, not associated in any way with the Formula 1 companies.
Source: README.md at commit 84692f8
Tools
0Version history
1- v0.1.0LatestSep 22, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts