iracing-mcp
iRacing MCP is a Python project that connects iRacing to the Model Context Protocol (MCP). It allows users to interact with iRacing data and create custom applications, featuring utilities like profile statistics retrieval and iRating charts.
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
-
Clone the repository:
git clone https://github.com/musantro/iracing-mcp.git cd iracing-mcp
-
Create environment with dependencies:
uv sync
-
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:
- Fork the repository.
- Create a new branch for your feature or bugfix.
- Push your branch.
- Open a pull request.
License
This project is licensed under the MIT License. See the file for details.