Formula One MCP Server

by rakeshgangwar

11 stars
265 downloads
Not rated
GitHub

Description

# Formula One MCP Server This Model Context Protocol (MCP) server provides access to Formula One data and statistics using the FastF1 Python library. It allows you to access race calendars, event information, session results, driver data, lap times, telemetry, and championship…

About

# Formula One MCP Server This Model Context Protocol (MCP) server provides access to Formula One data and statistics using the FastF1 Python library. It allows you to access race calendars, event information, session results, driver data, lap times, telemetry, and championship standings through a clean MCP interface…

Details

Author
rakeshgangwar
GitHub stars
11
Downloads
265
Categories
Database, Other

- Get Formula One race calendars for specific seasons
- Retrieve detailed information about Grand Prix events
- Get session results (Race, Qualifying, Practice, Sprint)
- Access driver information and statistics
- Analyze driver performance with lap times and telemetry
- Compare multiple drivers’ performance
- Get championship standings for drivers and constructors

Install Python dependencies (pip install fastf1 pandas numpy), then install Node.js dependencies (npm install), build the TypeScript code (npm run build), and add the server to your MCP settings file (e.g., ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json) with the node command pointing to the built index.js.

Formula One MCP Server

This Model Context Protocol (MCP) server provides access to Formula One data and statistics using the FastF1 Python library. It allows you to access race calendars, event information, session results, driver data, lap times, telemetry, and championship standings through a clean MCP interface.

Features

- Get Formula One race calendars for specific seasons
- Retrieve detailed information about Grand Prix events
- Get session results (Race, Qualifying, Practice)
- Access driver information and statistics
- Analyze driver performance with lap times and telemetry data
- Compare multiple drivers' performance
- Get championship standings for drivers and constructors

Prerequisites

- Node.js 18 or later
- Python 3.8 or later
- FastF1 library

Installation

1. Install Python dependencies

pip install fastf1 pandas numpy

2. Install Node.js dependencies

cd f1-mcp-server
npm install

3. Build the TypeScript code

npm run build

4. Add to MCP settings

Add the following to your Cline MCP settings file (~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json):

{
  "mcpServers": {
    "formula1": {
      "command": "node",
      "args": ["/Users/rakeshgangwar/Documents/Cline/MCP/f1-mcp-server/build/index.js"],
      "disabled": false,
      "autoApprove": []
    }
  }
}

Available Tools

1. get_event_schedule

Get Formula One race calendar for a specific season.

Parameters:
- year (number): Season year (e.g., 2023)

2. get_event_info

Get detailed information about a specific Formula One Grand Prix.

Parameters:
- year (number): Season year (e.g., 2023)
- identifier (string): Event name or round number (e.g., "Monaco" or "7")

3. get_session_results

Get results for a specific Formula One session.

Parameters:
- year (number): Season year (e.g., 2023)
- event_identifier (string): Event name or round number (e.g., "Monaco" or "7")
- session_name (string): Session name (e.g., "Race", "Qualifying", "Sprint", "FP1", "FP2", "FP3")

4. get_driver_info

Get information about a specific Formula One driver.

Parameters:
- year (number): Season year (e.g., 2023)
- event_identifier (string): Event name or round number (e.g., "Monaco" or "7")
- session_name (string): Session name (e.g., "Race", "Qualifying", "Sprint", "FP1", "FP2", "FP3")
- driver_identifier (string): Driver identifier (number, code, or name; e.g., "44", "HAM", "Hamilton")

5. analyze_driver_performance

Analyze a driver's performance in a Formula One session.

Parameters:
- year (number): Season year (e.g., 2023)
- event_identifier (string): Event name or round number (e.g., "Monaco" or "7")
- session_name (string): Session name (e.g., "Race", "Qualifying", "Sprint", "FP1", "FP2", "FP3")
- driver_identifier (string): Driver identifier (number, code, or name; e.g., "44", "HAM", "Hamilton")

6. compare_drivers

Compare performance between multiple Formula One drivers.

Parameters:
- year (number): Season year (e.g., 2023)
- event_identifier (string): Event name or round number (e.g., "Monaco" or "7")
- session_name (string): Session name (e.g., "Race", "Qualifying", "Sprint", "FP1", "FP2", "FP3")
- drivers (string): Comma-separated list of driver codes (e.g., "HAM,VER,LEC")

7. get_telemetry

Get telemetry data for a specific Formula One lap.

Parameters:
- year (number): Season year (e.g., 2023)
- event_identifier (string): Event name or round number (e.g., "Monaco" or "7")
- session_name (string): Session name (e.g., "Race", "Qualifying", "Sprint", "FP1", "FP2", "FP3")
- driver_identifier (string): Driver identifier (number, code, or name; e.g., "44", "HAM", "Hamilton")
- lap_number (number, optional): Lap number (gets fastest lap if not provided)

8. get_championship_standings

Get Formula One championship standings.

Parameters:
- year (number): Season year (e.g., 2023)
- round_num (number, optional): Round number (gets latest standings if not provided)

Example Usage

Once the server is added to your MCP settings and running, you can use these tools with Cline to access Formula One data.

Example queries:
- "Show me the 2023 Formula One race calendar"
- "Get the results from the 2022 Monaco Grand Prix"
- "Compare Hamilton and Verstappen's performance in the 2021 British Grand Prix"
- "Show me the telemetry data from Leclerc's fastest lap in the 2023 Italian Grand Prix qualifying"
- "What are the current F1 championship standings?"

Data Source

This server uses the FastF1 Python library, which provides access to official Formula 1 timing data, car telemetry, and session results.

License

MIT

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.