Socket
Book a DemoInstallSign in
Socket

iracing-data-mcp-server

Package Overview
Dependencies
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

iracing-data-mcp-server

Node.js mcp server for iRacing data api

latest
npmnpm
Version
1.3.2
Version published
Weekly downloads
11
83.33%
Maintainers
1
Weekly downloads
 
Created
Source

iRacing Data MCP Server 🏎️

A Node.js Model Context Protocol (MCP) server that provides seamless access to iRacing's racing simulation data API. This project serves as both a standalone CLI tool and an MCP server for AI assistant integration.

npm version License: MIT

🌟 Features

🤖 MCP Server Integration

  • AI Assistant Ready: Seamlessly integrate with Claude, ChatGPT, and other AI assistants
  • Real-time Data Access: Live access to iRacing's comprehensive racing data
  • Automatic Authentication: Handles login and session management automatically
  • Type-safe Operations: Full TypeScript support with Zod schema validation

📊 Data Access

  • Member Profiles: Detailed driver information including licenses and ratings
  • Team Information: Comprehensive team data and statistics
  • Career Statistics: Complete racing career history and achievements
  • Season Recaps: Detailed season performance and progression
  • Driver Lookup: Search and find drivers by name
  • API Documentation: Built-in access to iRacing's API documentation

🛠️ Dual Interface

  • MCP Server: For AI assistant integration
  • CLI Tool: For direct command-line access and automation

📖 Usage

As MCP Server

Configuration for LLM Clients

To use this MCP server with AI assistants like Claude Desktop, add the following configuration to your MCP settings file: For Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "iracing-data-mcp-server": {
      "command": "npx",
      "args": [
        "iracing-data-mcp-server@latest",
        "@modelcontextprotocol/server-filesystem",
        "/path/to/your/cookie-jar-file"
      ]
      "env": {
        "COOKIE_JAR": "/path/to/your/cookie-jar-file",
        "EMAIL": "your.email@example.com",
        "API_KEY": "your_api_key_here"
      }
    }
  }
}

Available MCP Tools

The server will run and provide the following tools to AI assistants:

ToolDescriptionParameters
loginAuthenticate with iRacingNone
get_members_profileGet member profile datamember_ids: number[]
get_teamRetrieve team informationteam_id: string
get_member_recapGet season recap datamember_id: number, year?: number, season?: number
get_member_careerGet career statisticsmember_id: number
driver_lookupSearch for driversdriver_name: string

📹 Watch the video

Watch the video

As CLI Tool

Environment Setup

Create a .env file in your project directory:

# Required: Path to store authentication cookies
COOKIE_JAR=./cookies.txt

# Required: Your iRacing account credentials
EMAIL=your.email@example.com

# Option 1: Use your iRacing password
PASSWORD=your_password

# Option 2: Use pre-generated API key (recommended for security)
# API_KEY=your_api_key_here

Initial Authentication

Before using the cli, authenticate with iRacing:

npm run login

Use the command-line interface for direct data access:

Get Member Profile

# Single member
npm run api member 123456

# Multiple members
npm run api member 123456,789012

Get Team Information

npm run api team 123456

Get Member Career Data

npm run api member-career 123456

Get Season Recap

# Current season recap
npm run api member-recap --member-id 123456

# Specific year and season
npm run api member-recap --member-id 123456 --year 2024 --season 1

Driver Lookup

npm run api driver-lookup "Max Verstappen"

API Documentation

npm run api documentation

🔧 Development Setup

Prerequisites

  • Node.js 24+
  • npm
  • iRacing account with active subscription

Clone and Install

git clone https://github.com/yourusername/iracing-data-mcp-server.git
cd iracing-data-mcp-server
npm install

🔐 Authentication & Security

API Key vs Password

Recommended: Use an API key for enhanced security:

  • Generate API Key:

    const crypto = require('crypto');
    const apiKey = crypto.createHash('sha256')
      .update(password + email)
      .digest('base64');
    
  • Set in Environment:

    API_KEY=your_generated_api_key
    # Remove PASSWORD variable when using API_KEY
    

The server automatically manages authentication cookies:

  • Stores cookies in the path specified by COOKIE_JAR
  • Automatically refreshes expired sessions
  • Handles authentication errors gracefully

Built with ❤️ for the racing community

Buy Me A Coffee

FAQs

Package last updated on 10 Sep 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts