RaceHooks

io.github.racehooks由 GitHub 帳號 racehooks 發布v0.4.4更新於 Nov 3, 2026

Predictive models and analytics for motorsport — race intelligence delivered to your endpoint.

概覽

AI 產生的概覽

RaceHooks MCP 讓助理透過 RaceHooks 帳號存取賽車(F1)賽事資料、預測分析、遙測資料以及 webhook 管理功能。

可以做什麼
  • 查詢即時賽段狀態與比賽週末賽程
  • 瀏覽比賽、排位賽、進站、輪胎、天氣與圈速資料
  • 查詢車手、車隊、賽道與賽季的成績和積分榜
  • 讀取賽後模型洞察、遙測彙總與夢幻積分
  • 建立、更新、測試、刪除 webhook 訂閱並輪換簽章密鑰,查看投遞日誌
  • 查看訂閱等級、帳單方案與投遞用量統計
適用情境
適合希望助理回答一級方程式歷史、即時賽段或比賽策略問題,或在對話中建立與監控 RaceHooks webhook 推送及投遞用量的情境。
執行需求
需在本機以 Node.js 執行 npm 套件 @racehooks/mcp(也可用 npx 直接執行)。需要 RaceHooks 帳號,並設定環境變數 RACEHOOKS_CLIENT_ID 與 RACEHOOKS_CLIENT_SECRET,缺少時伺服器無法啟動。RACEHOOKS_BASE_URL 為選用,預設指向 RaceHooks API。需要能連線 RaceHooks API 的網路,且許多工具受帳號方案等級限制。
安裝前請注意
需要帳號憑證 RACEHOOKS_CLIENT_ID 與 RACEHOOKS_CLIENT_SECRET,會傳送至 RaceHooks API 以取得存取權杖。webhook 相關工具會變更帳號狀態:建立、更新、刪除、測試以及輪換密鑰,輪換後舊密鑰立即失效。新建 webhook 的簽章密鑰只顯示一次。資料範圍與功能取決於付費方案,模型輸出為機率性估計而非事實。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 RaceHooks,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

@racehooks/mcp

MCP server for RaceHooks — gives AI assistants (Claude, Cursor, Windsurf) direct access to RaceHooks predictive models and analytics for motorsport — race intelligence delivered to your endpoint.

[npm] [License: MIT]

RaceHooks is an independent service and is not affiliated with or endorsed by Formula One Management or the FIA. "Formula 1," "F1," and related marks are trademarks of Formula One Licensing BV.

What this does

Exposes your RaceHooks account to an AI assistant as 58 tools, 7 resources, and 6 guided prompts. Every call is made with your account's credentials, so what a tool returns depends on your plan (Free, Developer, or Custom). The data tools cover motorsport (including Formula 1).

Tools

Live

ToolWhat it doesKey argsPlan
get_live_sessionCurrent session state: flag, lap, running order, intervals, tyres, race control messages. Empty when nothing is live.—All (Free gets the latest milestone classification instead of live timing)
list_eventsRace weekends with session schedules and status.year, upcoming, limitAll

Post-race insights

ToolWhat it doesKey argsPlan
list_insight_racesRaces with a completed post-race analytics bundle.seasonAll
get_race_insightsPer-driver, per-lap model outputs (pit, safety car, overtake, undercut, tyre health, cliff risk, LTOE, win probability, expected points) plus pit stops, stints, and lap times.raceIdAll (Free gets tyre state only; strategic predictions need Developer+)
get_model_metaPublic model manifest: what each model predicts, model family, calibration tier, last trained.—All
get_session_analyticsPer-lap analytics snapshot for a session.sessionIdDeveloper+
get_race_summaryPost-race analytics status and aggregate telemetry metrics.raceIdAll (aggregates need Developer+)

Races

ToolWhat it doesKey argsPlan
get_raceRace details with results and qualifying grid.raceIdAll (timing fields need Developer+)
get_race_qualifyingQualifying results.raceIdAll (Q1/Q2/Q3 times need Developer+)
get_race_pitstopsPit stop records (driver, stop, lap, duration).raceIdAll
get_race_tyresTyre stints (compound, lap range, tyre age).raceIdAll
get_race_weatherLap-by-lap weather.raceIdAll
get_race_lapsPer-lap times and positions.raceId, driverIdDeveloper+
get_event_pacePractice and qualifying pace summary per driver.eventIdDeveloper+

History (drivers, constructors, circuits, seasons)

ToolWhat it doesKey argsPlan
list_driversDrivers, searchable.search, nationality, active, limit, offsetAll (page size 25 on Free, 100 paid)
get_driverDriver profile with career stats.driverIdAll
get_driver_resultsRace-by-race results for a driver.driverId, seasonAll (timing fields need Developer+)
get_driver_standingsChampionship standings history for a driver.driverId, seasonAll
list_constructorsConstructors.lineage, active, limit, offsetAll
get_constructorConstructor profile with lineage history.constructorIdAll
get_constructor_resultsRace-by-race results for a constructor.constructorId, seasonAll (timing fields need Developer+)
get_constructor_standingsChampionship standings history for a constructor.constructorId, seasonAll
list_circuitsCircuits with location.country, limit, offsetAll
get_circuitCircuit details and analytics.circuitIdAll
list_seasonsSeasons with race counts.—All
get_season_standingsFinal driver and constructor standings for a season.yearAll
get_season_racesRaces in a season.yearAll

Telemetry

ToolWhat it doesKey argsPlan
get_telemetry_lapsPer-lap telemetry aggregates (speed, throttle, brake, DRS, aggression).raceId, driverId, lapNumberDeveloper+
get_telemetry_driver_lapsPer-lap telemetry for one driver.raceId, driverIdDeveloper+
get_telemetry_lap_comparisonEvery driver's telemetry for one lap.raceId, lapNumberDeveloper+
get_telemetry_race_summaryRace-level telemetry summary.raceIdDeveloper+
get_race_telemetry_lapsPer-lap telemetry metrics from the race data API.raceId, driverIdDeveloper+
get_race_telemetry_stintsPer-stint telemetry and degradation slopes.raceId, driverIdCustom
get_race_telemetry_aggressionDriver aggression index rankings.raceIdCustom

Fantasy

ToolWhat it doesKey argsPlan
get_fantasy_scoresEstimated F1 Fantasy points per driver with full breakdown.raceIdDeveloper+
get_fantasy_pit_timesPit-stop time leaderboard (stationary time) for a session.sessionIdDeveloper+

Account, usage and webhooks

ToolWhat it doesKey argsPlan
list_feedsFeed catalog with the plan each feed requires.limitAll
list_webhooksWebhook subscriptions on the account.limit, offsetAll
get_webhookOne webhook by ID.webhookIdAll
create_webhookCreate a webhook; returns the signing secret once.feedId, webhookUrl, webhookMethod, filtersAll
update_webhookChange URL, method, or filters; pause/resume with active.webhookId, webhookUrl, filters, activeAll
delete_webhookDelete a webhook.webhookIdAll
test_webhookSend a test payload now.webhookIdAll
get_webhook_logsRecent delivery logs.webhookId, limitAll
get_webhook_secretCurrent signing secret.webhookIdAll
rotate_webhook_secretRotate the signing secret (old one stops working immediately).webhookIdAll
get_subscriptionTier, plan limits, and usage snapshot.—All
get_usageDeliveries and failures this period, remaining bucket.—All
get_usage_by_feedDeliveries by feed this period.—All
get_usage_latencyDelivery latency percentiles by feed.—All
get_usage_hourlyHourly deliveries for the last 24 hours.—All
get_usage_historyDelivery history across past periods.—All
get_billing_planCurrent plan, limits, usage this period, and billing period dates.—All

Session replay

ToolWhat it doesKey argsPlan
list_replay_sessionsRecorded sessions that can be replayed.year, type, limit, offsetAll (Free and Developer: current season only)
get_demo_sessionThe curated demo session to replay.—All
get_replay_quotaReplay delivery quota (distinct-session slots) for your tier.—All
prepare_replayPrepare a session's playback artifact.sessionIdAll
get_replay_statusWhether a session's playback artifact is ready.sessionIdAll

Resources (read-only context)

  • racehooks://feeds — full feed catalog
  • racehooks://live — current live session state
  • racehooks://webhooks — all webhook subscriptions
  • racehooks://usage — current delivery usage
  • racehooks://drivers — current-season driver roster
  • racehooks://circuits — circuits with location
  • racehooks://seasons — seasons with race counts

Prompts (guided workflows)

  • setup_race_event_webhook — create an events.race subscription with filters
  • setup_fantasy_scoring_webhook — create a fantasy-optimised subscription
  • check_account_health — full account health summary
  • analyze_race_strategy — pit strategy, tyre management, and model predictions for one race
  • compare_drivers — two drivers head-to-head across a race
  • explain_ml_predictions — what the models predicted vs what happened in the latest analysed race

Installation

bash
npm install -g @racehooks/mcp

Or run directly with npx:

bash
npx @racehooks/mcp

Get your API credentials at racehooks.io.

Use of RaceHooks through this MCP server is subject to the RaceHooks Terms of Service and Privacy Policy. Model outputs are probabilistic estimates, not statements of fact.

Configuration

Two environment variables are required; the server exits on start-up without them:

bash
export RACEHOOKS_CLIENT_ID="your-client-id"export RACEHOOKS_CLIENT_SECRET="your-client-secret"# Optional — defaults to https://api.racehooks.ioexport RACEHOOKS_BASE_URL="https://api.racehooks.io"

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

json
{  "mcpServers": {    "racehooks": {      "command": "npx",      "args": ["-y", "@racehooks/mcp"],      "env": {        "RACEHOOKS_CLIENT_ID": "your-client-id",        "RACEHOOKS_CLIENT_SECRET": "your-client-secret"      }    }  }}

Claude Code

Claude Code does not read MCP servers from .claude/settings.json. Add the server with the CLI:

bash
claude mcp add racehooks \  -e RACEHOOKS_CLIENT_ID=your-client-id \  -e RACEHOOKS_CLIENT_SECRET=your-client-secret \  -- npx -y @racehooks/mcp

Add --scope project to write it to a shared .mcp.json in your project, or --scope user to make it available in every project. To check the file in without committing secrets, reference environment variables in .mcp.json:

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

Cursor / Windsurf

Add to your MCP config (.cursor/mcp.json or equivalent):

json
{  "mcpServers": {    "racehooks": {      "command": "npx",      "args": ["-y", "@racehooks/mcp"],      "env": {        "RACEHOOKS_CLIENT_ID": "your-client-id",        "RACEHOOKS_CLIENT_SECRET": "your-client-secret"      }    }  }}

Cline

In Cline, open MCP Servers → Installed → Configure MCP Servers and add to cline_mcp_settings.json:

json
{  "mcpServers": {    "racehooks": {      "command": "npx",      "args": ["-y", "@racehooks/mcp"],      "env": {        "RACEHOOKS_CLIENT_ID": "your-client-id",        "RACEHOOKS_CLIENT_SECRET": "your-client-secret"      },      "disabled": false    }  }}

Example usage with Claude

Once configured, you can ask Claude things like:

"Check my RaceHooks account health"

"Create an events.race webhook for https://myapp.com/hook, filtering for Ferrari only"

"Compare VER and NOR tyre degradation in the last race"

"Show me which feeds are using the most delivery quota today"

"Set up a fantasy scoring webhook for my VER, NOR, LEC team at https://scoring.myapp.com/hook"

Security

The MCP server runs as a local stdio process — it never binds a network port. Your credentials are passed via environment variables, are sent only to the RaceHooks API (to obtain an access token), and are never included in tool calls or resource URIs.

All API calls are authenticated using OAuth 2 client credentials (token auto-refreshes before expiry).

Links

來源:README.md,提交 9aba843

工具

58

list_feeds

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.

輸入參數limit

list_webhooks

List Webhooks

List all webhook subscriptions for the authenticated RaceHooks account.

輸入參數limitoffset

get_webhook

Get Webhook

Get a single webhook subscription by ID.

輸入參數webhookId必填

create_webhook

Create Webhook

Register a new webhook subscription. Returns the webhook and the HMAC signing secret (shown once — store it immediately).

輸入參數feedId必填filterswebhookUrl必填webhookMethod

update_webhook

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.

輸入參數activefilterswebhookId必填webhookUrlwebhookMethod

delete_webhook

Delete Webhook

Permanently delete a webhook subscription.

輸入參數webhookId必填

test_webhook

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.

輸入參數webhookId必填

get_webhook_logs

Get Webhook Logs

Retrieve recent delivery logs for a webhook — shows status codes, retry counts, and payload excerpts.

輸入參數limitwebhookId必填

get_webhook_secret

Get Webhook Secret

Retrieve the current HMAC signing secret for a webhook.

輸入參數webhookId必填

rotate_webhook_secret

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.

輸入參數webhookId必填

get_live_session

Get Live Session

Get the current live 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 Events

List events (race weekends) for the current or a specific season, including session schedules and status.

輸入參數yearlimitupcoming

get_subscription

Get Subscription

Get the current subscription tier, plan limits (webhooks, deliveries, HMAC, analytics enrichment), and live usage snapshot for this account.

無需輸入參數。

get_usage

Get Usage

Get delivery usage summary for the current period: total deliveries, failures, tier, and remaining monthly delivery bucket.

無需輸入參數。

get_usage_by_feed

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 Usage Latency

Get webhook delivery latency percentiles (p50, p95, p99) broken down by feed for the current period.

無需輸入參數。

get_usage_hourly

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 Usage History

Get historical delivery counts and failure rates over past periods.

無需輸入參數。

get_billing_plan

Get Billing Plan

Get the detailed billing plan including tier, subscription period end date, limits, and current usage.

無需輸入參數。

list_replay_sessions

List Replay Sessions

List recorded 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.

輸入參數typeyearlimitoffset

get_demo_session

Get Demo Session

Get the curated demo session to replay (the canonical ID of a guaranteed-real event).

無需輸入參數。

get_replay_quota

Get Replay Quota

Get the replay delivery quota for this account: distinct-session lifetime slots for your tier.

無需輸入參數。

prepare_replay

Prepare Replay

Prepare a session for recorded playback, generating its playback artifact if not already cached. Check readiness with get_replay_status.

輸入參數sessionId必填

get_replay_status

Get Replay Status

Check whether a session's playback artifact is ready to stream.

輸入參數sessionId必填

list_drivers

List Drivers

List drivers. Available on every plan; page size is capped at 25 on Free and 100 on paid plans.

輸入參數limitactiveoffsetsearchnationality

get_driver

Get Driver

Get a driver profile with career statistics (wins, podiums, poles, championships). Available on every plan.

輸入參數driverId必填

get_driver_results

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.

輸入參數limitoffsetseasondriverId必填

get_driver_standings

Get Driver Standings

Get championship standings history for a driver across seasons. Available on every plan.

輸入參數seasondriverId必填

list_constructors

List Constructors

List constructors. Available on every plan.

輸入參數limitactiveoffsetlineage

get_constructor

Get Constructor

Get a constructor profile including its lineage history (predecessor and successor teams). Available on every plan.

輸入參數constructorId必填

get_constructor_results

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.

輸入參數limitoffsetseasonconstructorId必填

get_constructor_standings

Get Constructor Standings

Get championship standings history for a constructor across seasons. Available on every plan.

輸入參數seasonconstructorId必填

list_circuits

List Circuits

List all F1 circuits with location and coordinates. Available on every plan.

輸入參數limitoffsetcountry

get_circuit

Get Circuit

Get circuit details and analytics (compound priors, historical pace data). Available on every plan.

輸入參數circuitId必填

list_seasons

List Seasons

List all available F1 seasons with race counts. Available on every plan.

無需輸入參數。

get_season_standings

Get Season Standings

Get final driver and constructor championship standings for a season. Available on every plan.

輸入參數year必填

get_season_races

Get Season Races

List all races in a season with circuit, date, and data quality tier. Available on every plan.

輸入參數year必填

get_race

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.

輸入參數raceId必填

get_race_qualifying

Get Race Qualifying

Get qualifying results for a race. Available on every plan; Q1/Q2/Q3 times are only returned on Developer and above.

輸入參數raceId必填

get_race_pitstops

Get Race Pitstops

Get all pit stop records for a race (driver, stop number, lap, duration). Available on every plan.

輸入參數raceId必填

get_race_tyres

Get Race Tyres

Get tyre stint records for a race (driver, stint number, lap range, compound, tyre age). Available on every plan.

輸入參數raceId必填

get_race_weather

Get Race Weather

Get lap-by-lap weather data for a race. Available on every plan.

輸入參數raceId必填

get_race_laps

Get Race Laps

Get per-lap times and positions for a race. Requires Developer or higher. Optionally filter to a single driver with driverId.

輸入參數raceId必填driverId

get_race_summary

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.

輸入參數raceId必填

get_race_telemetry_laps

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.

輸入參數raceId必填driverId

get_race_telemetry_stints

Get Race Telemetry Stints

Get per-stint telemetry metrics and degradation slopes. Requires a Custom plan (not included in Developer).

輸入參數raceId必填driverId

get_race_telemetry_aggression

Get Race Telemetry Aggression

Get driver aggression index rankings for a race. Requires a Custom plan (not included in Developer).

輸入參數raceId必填

get_session_analytics

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.

輸入參數sessionId必填

get_event_pace

Get Event Pace

Get practice and qualifying pace summary per driver for an event. Requires Developer or higher.

輸入參數eventId必填

list_insight_races

List Insight Races

List races that have a completed post-race analytics pipeline — i.e. races where get_race_insights will return data. Available on every plan.

輸入參數season

get_race_insights

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.

輸入參數raceId必填

get_model_meta

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 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.

輸入參數raceId必填driverIdlapNumber

get_telemetry_driver_laps

Get Telemetry Driver Laps

Get per-lap telemetry for a single driver across all laps of a race. Requires Developer or higher.

輸入參數raceId必填driverId必填

get_telemetry_lap_comparison

Get Telemetry Lap Comparison

Get all drivers' telemetry for a single lap — useful for side-by-side lap comparisons. Requires Developer or higher.

輸入參數raceId必填lapNumber必填

get_telemetry_race_summary

Get Telemetry Race Summary

Get race-level telemetry summary: max speed, fastest driver, average throttle/brake percentages, top aggression driver. Requires Developer or higher.

輸入參數raceId必填

get_fantasy_pit_times

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.

輸入參數sessionId必填

get_fantasy_scores

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.

輸入參數raceId必填

版本歷史

5
  1. v0.4.4最新Oct 29, 2026
  2. v0.4.1Oct 21, 2026
  3. v0.3.4Oct 5, 2026
  4. v0.3.3Oct 2, 2026
  5. v0.3.1Sep 16, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分