iRacing MCP

by musantro

9 stars
176 downloads
Not rated
GitHub

About

A model context protocol server to chat with iRacing data.

Details

Author
musantro
GitHub stars
9
Downloads
176
Categories
Other

- Retrieve iRacing profile statistics.
- Get iRating chart for any category.
- Python‑based, easy to install with uv.
- Integrates with MCP‑compatible clients (VS Code, Claude Desktop).

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name iRacing MCP
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Set the environment variables IRACING_USERNAME and IRACING_PASSWORD with your iRacing credentials (legacy authentication must be enabled), then run uvx iracing-mcp. Configuration examples for VS Code and Claude Desktop are provided in the README. The server is known to work with VS Code; other MCP clients have not been tested.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "iracing mcp": {
            "iracing-mcp": {
                "command": "uvx",
                "args": [
                    "iracing-mcp"
                ],
                "env": {
                    "IRACING_USERNAME": "your username",
                    "IRACING_PASSWORD": "your-password"
                }
            }
        }
    }
}

McpServers

{
    "iracing-mcp": {
        "command": "uvx",
        "args": [
            "iracing-mcp"
        ],
        "env": {
            "IRACING_USERNAME": "your username",
            "IRACING_PASSWORD": "your-password"
        }
    }
}

iRacing MCP

iRacing MCP is a Python-based project that integrates iRacing with the Model Context Protocol (MCP). It provides tools and resources to interact with iRacing data and build custom applications.

Features

- Retrieve iRacing profile statistics.
- Get iRating chart (for any category)
- More coming soon

Getting Started

Prerequisites

- uv - Install here
- iRacing account with legacy authentication (required) - Enable it here: <https://oauth.iracing.com/accountmanagement/security>

Usage

Running the Server Standalone

To start the MCP server, run:

IRACING_USERNAME="your username" IRACING_PASSWORD="your-password" uvx iracing-mcp

Running the Server on VSCode

Add this to your settings.json (in mcp.servers):

"iracing": {
    "command": "uvx",
    "args": [
        "iracing-mcp@latest"
    ],
    "env": {
        "IRACING_USERNAME": "your@email.com",
        "IRACING_PASSWORD": "your password"
    }
}

Running the MCP Server on Claude Desktop

Add this to your settings.json:

[
    "mcpServers": {
        "iracing": {
            "command": "uvx",
            "args": [
                "iracing-mcp@latest"
            ],
            "env": {
                "IRACING_USERNAME": "your@email.com",
                "IRACING_PASSWORD": "your-password"
            }
        }
    }
}

Running the Server on other MCP Clients

Currently I am only using VS Code as MCP Client so I don't know how to configure to other MCP Clients.
I am happy to receive PRs on how to configure in the different MCP Servers (e.g. Cursor, Claude Desktop, etc.)

Development

1. Clone the repository:

   git clone https://github.com/musantro/iracing-mcp.git
   cd iracing-mcp
   

2. Create environment with dependencies:

   uv sync
   

3. Set up environment variables for iRacing credentials:

   export IRACING_USERNAME="your_username"
   export IRACING_PASSWORD="your_password"
   

Linting and Formatting

Use the following commands to lint and format the code:

make

Contributing

We welcome contributions! Follow these steps to contribute:

1. Fork the repository.
2. Create a new branch for your feature or bugfix.
3. Push your branch.
4. Open a pull request.

License

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

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.