A favicon of Formula1 MCP Server

Formula1 MCP Server

Provide real-time and historical Formula 1 racing data through a standardized protocol. Access live telemetry, session statuses, driver and constructor standings, race results, weather, and circuit information seamlessly. Enhance your applications with comprehensive F1 data and insights for any season or event.

smithery badge

The Formula1 MCP Server ! 🏎️💨

A TypeScript-based Formula 1 MCP server, bringing the thrill of real-time and historical F1 racing data straight to your fingertips via the Model Context Protocol. Faster than Verstappen on a hot lap! (Okay, maybe not that fast, but it's trying!)

Resources

  • Access F1 session data via standardized URIs
  • Real-time telemetry data
  • Historical race information
  • Driver and constructor standings
  • Weather data
  • Circuit information

Getting Started

Quick Install via Smithery

To install the Formula 1 MCP Server automatically via Smithery:

npx -y @smithery/cli install @Panth1823/formula1-mcp --client claude

Manual Installation

  1. Clone the repo:
git clone https://github.com/Panth1823/formula1-mcp
cd formula1-mcp
  1. Install:
npm install
  1. Build:
npm run build

Setup

Add to your MCP client config:

{
  "mcpServers": {
    "formula1": {
      "command": "node",
      "args": ["<path-to-your-cloned-repo>/build/index.js"],
      "cwd": "<path-to-your-cloned-repo>",
      "enabled": true
    }
  }
}

Config locations:

  • Windows: %APPDATA%\.cursor\mcp.json
  • MacOS: ~/.cursor/mcp.json
  • Linux: ~/.config/.cursor/mcp.json

Available Tools

1. getLiveTimingData

Get real-time timing data for the current session.

Parameters:

  • None required

2. getCurrentSessionStatus

Get status information about the current session.

Parameters:

  • None required

3. getDriverInfo

Get information about a specific driver.

Parameters:

  • driverId (string): Driver identifier (e.g., "max_verstappen", "lewis_hamilton")

4. getHistoricalSessions

Find session keys for historical events.

Parameters:

  • year (number, optional): Season year (e.g., 2023)
  • circuit_short_name (string, optional): Circuit name (e.g., "monza", "spa")
  • country_name (string, optional): Country name (e.g., "Italy", "Belgium")
  • session_name (string, optional): Session type (e.g., "Race", "Qualifying")

5. getHistoricRaceResults

Get race results for a specific historical race.

Parameters:

  • year (number): Season year (e.g., 2023)
  • round (number): Race number (e.g., 1, 2, 3)

6. getDriverStandings

Get driver championship standings.

Parameters:

  • year (number): Season year (e.g., 2023)

7. getConstructorStandings

Get constructor championship standings.

Parameters:

  • year (number): Season year (e.g., 2023)

8. getLapTimes

Get lap times for a specific driver.

Parameters:

  • year (number): Season year (e.g., 2023)
  • round (number): Race number (e.g., 1, 2, 3)
  • driverId (string): Driver identifier (e.g., "max_verstappen", "lewis_hamilton")

9. getWeatherData

Get weather data for a session.

Parameters:

  • sessionKey (string, optional): Session identifier

10. getCarData

Get detailed car telemetry data.

Parameters:

  • driverNumber (string): Driver's car number (e.g., "44", "33")
  • sessionKey (string, optional): Session identifier
  • filters (string, optional): Data filters

11. getPitStopData

Get pit stop information.

Parameters:

  • driverNumber (string, optional): Driver's car number
  • sessionKey (string, optional): Session identifier

12. getTeamRadio

Get team radio communications.

Parameters:

  • driverNumber (string, optional): Driver's car number
  • sessionKey (string, optional): Session identifier

13. getRaceControlMessages

Get race control messages.

Parameters:

  • sessionKey (string, optional): Session identifier

14. getRaceCalendar

Get the F1 race calendar.

Parameters:

  • year (number): Season year (e.g., 2023)

15. getCircuitInfo

Get detailed circuit information.

Parameters:

  • circuitId (string): Circuit identifier (e.g., "monza", "spa")

16. getSeasonList

Get a list of available F1 seasons.

Parameters:

  • limit (number, optional): Number of seasons to return

17. getQualifyingResults

Get qualifying session results.

Parameters:

  • year (number): Season year (e.g., 2023)
  • round (number): Race number (e.g., 1, 2, 3)

18. getDriverInformation

Get detailed driver information from Ergast API.

Parameters:

  • driverId (string): Driver identifier (e.g., "max_verstappen", "lewis_hamilton")

19. getConstructorInformation

Get detailed constructor information from Ergast API.

Parameters:

  • constructorId (string): Constructor identifier (e.g., "red_bull", "mercedes")

20. clearCache

Clear the local cache for F1 data.

Parameters:

  • None required

Data Sources

  • Live data: F1 Live Timing API (OpenF1)
  • Historical: Ergast API (FastF1)

Examples

  • "Show 2023 Monaco GP results"
  • "Get current standings"
  • "Weather at Silverstone"
  • "Hamilton's lap times"
  • "Show 2024 calendar"
  • "Verstappen's info"
  • "Japanese GP qualifying"

Debug

Use MCP Inspector for debugging.

Help

  • Bugs? Report here
  • Questions? Open an issue
  • Want to help? Submit a PR

License

This project is licensed under the MIT License - see the LICENSE file for details.

Share:
Details:
  • Stars


    10
  • Forks


    0
  • Last commit


    13 days ago
  • Repository age


    17 days
  • License


    MIT
View Repository

Auto-fetched from GitHub .

MCP servers similar to Formula1 MCP Server:

 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit