# RaceHooks [Health: Active]

**Category:** 🏃 Sports  
**Repository:** https://github.com/racehooks/racehooks-mcp  
**GitHub Stars:** 1  
**npm Downloads (last month):** 650  
**Views:** 1  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/racehooks

## Description
F1 race analytics & live timing for AI assistants — webhooks, results, and race simulations.

## Tools
Capabilities this server exposes over MCP:

- **list_feeds** — List all available RaceHooks data feeds, including which subscription tier each feed requires. The special 'events.race' feed is a synthetic feed that emits structured events (overtakes, pit stops, safety cars, etc.) derived from multiple raw feeds.
- **list_webhooks** — List all webhook subscriptions for the authenticated RaceHooks account.
- **get_webhook** — Get a single webhook subscription by ID.
- **create_webhook** — Register a new webhook subscription. Returns the webhook and the HMAC signing secret (shown once — store it immediately).
- **update_webhook** — Update an existing webhook subscription. Use active: false to pause delivery, active: true to resume. Can also update the endpoint URL, HTTP method, or filters without deleting and recreating the webhook.
- **delete_webhook** — Permanently delete a webhook subscription.
- **test_webhook** — Send a test payload to a webhook endpoint immediately. Useful for verifying your server is reachable and your HMAC verification code is correct.
- **get_webhook_logs** — Retrieve recent delivery logs for a webhook — shows status codes, retry counts, and payload excerpts.
- **get_webhook_secret** — Retrieve the current HMAC signing secret for a webhook.
- **rotate_webhook_secret** — Rotate the HMAC signing secret for a webhook. The old secret is invalidated immediately — update your server before calling this. The new secret is shown once.
- **get_live_session** — Get the current live F1 session state: flag status, lap number, driver positions, intervals, tyre compounds, and recent race control messages. Returns an empty/inactive context when no session is live. Live per-driver timing requires Developer or higher; Free receives the latest milestone classification (end of a qualifying segment or the final result) instead.
- **list_events** — List F1 events (race weekends) for the current or a specific season, including session schedules and status.
- **get_subscription** — Get the current subscription tier, plan limits (webhooks, deliveries, HMAC, analytics enrichment), and live usage snapshot for this account.
- **get_usage** — Get delivery usage summary for the current period: total deliveries, failures, tier, and remaining monthly delivery bucket.
- **get_usage_by_feed** — Get webhook delivery counts broken down by feed for the current period. Useful for identifying which feeds are driving delivery volume.
- **get_usage_latency** — Get webhook delivery latency percentiles (p50, p95, p99) broken down by feed for the current period.
- **get_usage_hourly** — Get webhook delivery volume broken down by hour for the last 24 hours. Useful for identifying traffic spikes.
- **get_usage_history** — Get historical delivery counts and failure rates over past periods.
- **get_billing_plan** — Get the detailed billing plan including tier, subscription period end date, limits, and current usage.
- **list_replay_sessions** — List recorded F1 sessions that have archived data and can be replayed. Only completed sessions with archive paths are returned. Self-serve tiers (Free and Developer) list the current season only, plus the curated demo session; the full historical archive is on Custom. `restrictedToSeason` in the response reports the applied limit.
- **get_demo_session** — Get the curated demo session to replay (the canonical ID of a guaranteed-real event).
- **get_replay_quota** — Get the replay delivery quota for this account: distinct-session lifetime slots for your tier.
- **prepare_replay** — Prepare a session for recorded playback, generating its playback artifact if not already cached. Check readiness with get_replay_status.
- **get_replay_status** — Check whether a session's playback artifact is ready to stream.
- **list_drivers** — List F1 drivers. Available on every plan; page size is capped at 25 on Free and 100 on paid plans.
- **get_driver** — Get a driver profile with career statistics (wins, podiums, poles, championships). Available on every plan.
- **get_driver_results** — Get race-by-race results for a driver. Available on every plan; timing fields (gap, finish time) are only returned on Developer and above.
- **get_driver_standings** — Get championship standings history for a driver across seasons. Available on every plan.
- **list_constructors** — List F1 constructors. Available on every plan.
- **get_constructor** — Get a constructor profile including its lineage history (predecessor and successor teams). Available on every plan.
- **get_constructor_results** — Get race-by-race results for a constructor. Available on every plan; timing fields (gap, finish time) are only returned on Developer and above.
- **get_constructor_standings** — Get championship standings history for a constructor across seasons. Available on every plan.
- **list_circuits** — List all F1 circuits with location and coordinates. Available on every plan.
- **get_circuit** — Get circuit details and analytics (compound priors, historical pace data). Available on every plan.
- **list_seasons** — List all available F1 seasons with race counts. Available on every plan.
- **get_season_standings** — Get final driver and constructor championship standings for a season. Available on every plan.
- **get_season_races** — List all races in a season with circuit, date, and data quality tier. Available on every plan.
- **get_race** — Get race details with full results and qualifying grid. Available on every plan; timing fields (gaps, fastest lap, finish time, Q1/Q2/Q3 times) are only returned on Developer and above.
- **get_race_qualifying** — Get qualifying results for a race. Available on every plan; Q1/Q2/Q3 times are only returned on Developer and above.
- **get_race_pitstops** — Get all pit stop records for a race (driver, stop number, lap, duration). Available on every plan.
- **get_race_tyres** — Get tyre stint records for a race (driver, stint number, lap range, compound, tyre age). Available on every plan.
- **get_race_weather** — Get lap-by-lap weather data for a race. Available on every plan.
- **get_race_laps** — Get per-lap times and positions for a race. Requires Developer or higher. Optionally filter to a single driver with driverId.
- **get_race_summary** — Get the post-race analytics status and aggregate telemetry metrics for a race. Status is available on every plan; the aggregate metrics are only returned on Developer and above.
- **get_race_telemetry_laps** — Get per-lap telemetry metrics (speed, throttle, brake, DRS, aggression) from telemetry data. Requires Developer or higher. Optional driverId to filter to one driver.
- **get_race_telemetry_stints** — Get per-stint telemetry metrics and degradation slopes. Requires a Custom plan (not included in Developer).
- **get_race_telemetry_aggression** — Get driver aggression index rankings for a race. Requires a Custom plan (not included in Developer).
- **get_session_analytics** — Get per-lap ML analytics snapshot for a session (pit probability, SC probability, tyre health, LTOE, win probability). Requires Developer or higher.
- **get_event_pace** — Get practice and qualifying pace summary per driver for an event. Requires Developer or higher.
- **list_insight_races** — List F1 races that have a completed post-race analytics pipeline — i.e. races where get_race_insights will return data. Available on every plan.
- **get_race_insights** — Get the full post-race ML analytics bundle for a race. Includes per-driver per-lap outputs: pit stop probability, safety car probability, overtake probability, undercut probability, tyre health, cliff risk and lap prediction, fuel-corrected lap time (LTOE), win probability, expected championship points. Also includes pit stops, tyre stints, lap times, and safety-car lap list. Output depends on plan: Free receives the descriptive data plus tyre state only (compound, tyre life, tyre health); the strategic predictions require Developer or higher.
- **get_model_meta** — Get the public model manifest for each RaceHooks predictive model: what it predicts, its model family, a qualitative calibration tier, when it was last trained, and a changelog. Raw evaluation metrics are not exposed. Available on every plan.
- **get_telemetry_laps** — Get per-lap telemetry aggregates (avg/max speed, throttle, brake, DRS, aggression index). Returns all drivers by default. Filter with driverId or lapNumber. Requires Developer or higher.
- **get_telemetry_driver_laps** — Get per-lap telemetry for a single driver across all laps of a race. Requires Developer or higher.
- **get_telemetry_lap_comparison** — Get all drivers' telemetry for a single lap — useful for side-by-side lap comparisons. Requires Developer or higher.
- **get_telemetry_race_summary** — Get race-level telemetry summary: max speed, fastest driver, average throttle/brake percentages, top aggression driver. Requires Developer or higher.
- **get_fantasy_pit_times** — Get the pit-stop time leaderboard for a session: stationary time (seconds stopped in the box) per stop, with driver code and team. Requires Developer or higher.
- **get_fantasy_scores** — Get estimated F1 Fantasy points per driver for a completed race. Includes full scoring breakdown: race position points, qualifying points, Q2/Q3 bonuses, positions gained, fastest lap, beat-teammate bonuses, and DNF penalty. Requires Developer or higher.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "racehooks": {
    "command": "npx",
    "args": ["-y","@racehooks/mcp"],
    "env": {
      "RACEHOOKS_CLIENT_ID": "",
      "RACEHOOKS_CLIENT_SECRET": "",
      "RACEHOOKS_BASE_URL": ""
    }
  }
}
```

**Requires environment variables:** `RACEHOOKS_CLIENT_ID`, `RACEHOOKS_CLIENT_SECRET`, `RACEHOOKS_BASE_URL` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What RaceHooks does

RaceHooks MCP server exposes a RaceHooks account to an AI assistant over the Model Context Protocol. The service focuses on Formula 1 data, including live session information, race results, qualifying, pit stops, tyre stints, weather, lap data, driver and constructor history, circuits, seasons, and championship standings.

The RaceHooks MCP server also exposes analytics that go beyond standard results. Depending on the account plan, an assistant can inspect per-lap model outputs, session analytics, telemetry aggregates, tyre degradation, driver aggression, fantasy scoring, and race-level summaries. Webhook management, feed discovery, delivery logs, usage information, billing details, and recorded-session replay are also available.

## How it works

The MCP process makes authenticated requests using the configured RaceHooks credentials. The repository documents 58 tools, seven read-only resources, and six guided prompts. Resources provide reusable context such as the feed catalog, live state, webhook subscriptions, usage, current drivers, circuits, and seasons.

Tools accept identifiers and filters appropriate to each operation. For example, an assistant can find a race or driver, request a race-specific result, then inspect laps, tyres, weather, pit stops, or telemetry. Guided prompts provide workflows for setting up event or fantasy webhooks, checking account health, analyzing race strategy, comparing drivers, and reviewing model predictions.

The RaceHooks MCP server respects the account associated with each request. Returned data therefore depends on the subscribed RaceHooks plan. Free accounts have reduced access to some live, timing, analytics, telemetry, and replay details, while Developer and Custom plans unlock additional capabilities described by the service.

## Setup and configuration

Install the package globally with npm or run it directly through npx:

```bash
npm install -g @racehooks/mcp
npx @racehooks/mcp
```

Set the required credentials before starting the process:

```bash
export RACEHOOKS_CLIENT_ID="your-client-id"
export RACEHOOKS_CLIENT_SECRET="your-client-secret"
```

`RACEHOOKS_BASE_URL` is optional and defaults to `https://api.racehooks.io`. The server exits during startup if either required credential is missing. API credentials are obtained from RaceHooks. The README includes a Claude Desktop configuration using `npx`; the same installed process can be registered with an MCP client that supports stdio servers.

## Tools and capabilities

The RaceHooks MCP server includes tools for:

- Reading current session status, event schedules, race results, qualifying, weather, tyres, pit stops, laps, and pace.
- Searching drivers, constructors, circuits, and seasons, then retrieving profiles, results, standings, and race lists.
- Querying model metadata, post-race insights, session analytics, and telemetry at race, driver, and lap levels.
- Managing feeds and webhooks, including creation, updates, tests, delivery logs, secrets, rotation, and deletion.
- Reviewing subscription, billing, delivery, failure, latency, and historical usage information.
- Listing replayable sessions, preparing playback artifacts, checking status, and viewing replay quota.

## Limitations and notes

This listing concerns Formula 1 data and RaceHooks account access rather than a general motorsport database. Some fields and tools require a paid plan: Developer access is required for several timing, analytics, telemetry, fantasy, and session features, while selected telemetry operations require Custom. Free access may return a latest-milestone classification instead of full live timing and may provide only limited race-insight output.

RaceHooks is independent and is not affiliated with or endorsed by Formula One Management or the FIA. Formula 1-related marks belong to Formula One Licensing BV. Webhook signing secrets should be handled as credentials; the documented rotation behavior invalidates the previous secret immediately.

_Full upstream README: https://allmcps.com/mcp/racehooks/readme_

