iRacing MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_telemetry_valuesA | get telemetry values. to get available telemetry names, call get_telemetry_names. if you want to get all telemetry values, set names to None. Returns: dict: telemetry values |
| get_telemetry_namesD | get telemetry names Returns: list[str]: telemetry names |
| get_driver_infoC | get driver info Returns: dict: driver info |
| get_session_infoD | get session info Returns: dict: session info |
| get_weekend_infoD | get weekend info Returns: dict: weekend info |
| get_qualify_results_infoD | get qualify results info Returns: list[dict]: qualify results info |
| get_camera_infoC | get camera info Returns: list[dict]: camera info |
| get_radio_infoD | get radio info Returns: dict: radio info |
| get_split_time_infoB | Retrieves split time information for each sector of the track. Returns: dict: split time info |
| cam_switchD | switch camera |
| pit_commandC | apply pit command. before apply pit command, you should call get_current_pit_service_status. |
| replay_searchD | search replay |
| get_leaderboardB | get leaderboard Note: When filtering for competitive leaderboard results, exclude entries where: 1. if driver_name="Pace Car" (not a competitor. so ignore this row from leaderboard) 2. if is_missing_start=True (indicates missed start. so this car is not correct position) 3. if is_towing=True (indicates towing. so this car is not correct position) 4. if status="not_in_world" (not in world. so this car is not correct position) Returns: list: leaderboard each element is a dict with the following keys: - car_idx: int - position: int | None - class_position: int | None - car_number: int - car_number_raw: int (use this value for camera switching functions) - driver_name: str - team_name: str - irating: int - license_str: str - lap_and_lap_dist_pct: float - best_lap_time: float - last_lap_time: float - car_name: str - class_name: str - class_est_time: float - gap_to_leader_str: str - gap_to_next_str: str - gap_to_class_leader_str: str - gap_to_class_next_str: str - flags: list[str] (e.g. ["black", "repair", "furled", "servicible"]. "servicible" means no flags) - status: str (e.g. "off_track", "in_pit_stall", "approaching_pits", "on_track", "not_in_world") - is_missing_start: bool - is_towing: bool |
| get_current_pit_service_statusC | get current pit service status Returns: list[str]: current pit service status |
| get_current_engine_warningsA | get current engine warnings Returns: list[str]: current engine warnings |
| get_current_flagsD | get current flags Returns: list[str]: current flags |
| get_current_camera_statusB | get current camera status Returns: dict: current camera status - target_car_idx: int - camera_group_number: int - camera_number: int |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| iracing_tool_usage | iracing tool usage Returns: str: iracing tool usage |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ellettie/iracing-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server