mcpField
P
Pitwall — F1 Data for Claude

Pitwall — F1 Data for Claude

ローカル
github.comゲーム・エンタメ912 週間前に更新

Pitwall — F1 Data for Claude について

Pitwallは、ClaudeにF1のタイミング、テレメトリー、レース戦略、過去の結果を提供するMCPサーバーです。セッション中のデータに加え、分析ツールやフルモードの可視化機能を備えています。

主な機能

  1. 01開催中セッションのライブタイミング
  2. 02ラップ単位のテレメトリーと比較
  3. 03タイヤ、ピットストップ、天候データ
  4. 04レースコントロールと戦略の分析
  5. 051950年以降のレース・選手権記録
  6. 06フルモードでのテレメトリー図

活用シーン

  1. 01順位、ギャップ、ラップタイムの確認
  2. 02ドライバー間の速度推移の比較
  3. 03タイヤスティントとピットストップの確認
  4. 04過去のレース結果や選手権結果の検索

MCP 対応

PitwallはClaude CodeやClaude Desktopを含むMCP対応クライアントに、F1データと分析ツールを公開します。ライブタイミングはF1のリアルタイムフィードを利用し、ライブテレメトリーとGPSにはF1 TVトークンが必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"darshjoshi-pitwall": {
"command": "uvx",
"args": [
"f1pitwall"
]
}
}
}
起動コマンドuvx f1pitwall

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypif1pitwall1.1.1

ツール

30

掲載時のツール一覧 · 2 週間前に更新

このツールにパラメーターはありません。

詳細

Pitwall

Claude を F1 のレースエンジニアにしましょう。
実際のテレメトリー。実際の戦略データ。75 年の歴史。

PyPI ダウンロード数 ライセンス:MIT Python 3.10+ MCP 対応 GitHub スター数

フェルスタッペン対ノリス — 2024 年アブダビ予選のスピード推移


クイックスタート

Claude Code — 1 つのコマンドで、79 個のツールをすべて利用できます。

claude mcp add pitwall -- uvx --from "f1pitwall[full]" f1pitwall

続いて Claude に質問します:「2025 年のオーストラリア GP の優勝者は?」

uv が必要です(curl -LsSf https://astral.sh/uv/install.sh | sh)。pip も仮想環境も「which python3」も不要で、常に最新リリースを利用できます。

初回起動時は FastF1 スタック(約 540 MB)がダウンロードされ、約 25 秒かかります。その後の起動は毎回 1 秒未満です。初回起動がタイムアウトした場合は、Claude Code を再起動してください。ダウンロードはすでにキャッシュされています。

サーバーと一緒に f1 スキルも使いたい場合は、プラグインとしてインストールできます。Claude Code プラグインとしてインストールをご覧ください。

軽量インストール(30 個のツール、プロットなし)

pandas/numpy/matplotlib/FastF1 を省きます。ライブタイミングツール 16 個はすべて含まれます。

claude mcp add pitwall -- uvx --from f1pitwall f1pitwall
代わりに pip でインストール
pip install "f1pitwall[full]"        # or just f1pitwall for lite
claude mcp add pitwall -- f1pitwall
代わりにソースからインストール
git clone https://github.com/darshjoshi/pitwall.git && cd pitwall
pip install -r requirements.txt        # lite (incl. live timing)
pip install -r requirements-full.txt   # full
claude mcp add pitwall -- python3 $(pwd)/pitwall.py
Claude Code プラグインとしてインストール

このプラグインには、MCP サーバーと f1 スキルの両方が含まれています。スキルは、79 個のツールのうちどれを使うべきか、またレースを見たことがない人に F1 をどう説明するかを Claude に教えます。

/plugin marketplace add darshjoshi/pitwall
/plugin install pitwall@pitwall
Claude Desktop

claude_desktop_config.json に追加します(Settings → Developer → Edit Config):

{
  "mcpServers": {
    "pitwall": {
      "command": "uvx",
      "args": ["--from", "f1pitwall[full]", "f1pitwall"]
    }
  }
}

Pitwall を選ぶ理由

Claude はトレーニングデータから F1 の知識を得ていますが、先週のレースを調べることはできません。ターン 1 を通過するフェルスタッペンのスロットルトレースを表示することも、誰が先にピットインしたか、セーフティカーがいつ出動したかを知ることもできません。

Pitwall は Claude を実際の F1 データに接続します。

  • 幻覚ではなく実データ — formula1.com の実際のタイミングフィード
  • ラップ単位のテレメトリー — 車両ごとに 4 Hz で記録された速度、RPM、スロットル、ブレーキ、ギア、DRS
  • ビジュアルプロット — スピード推移の比較、ギアシフトマップを画像で返します
  • 75 年の歴史 — 1950 年以降のすべてのレース結果と選手権
  • 各セッション終了後に更新 — 2018 年以降の全テレメトリーとタイミングが、各セッション終了から約 30 分後に公開されます
  • API キー不要 — コアデータはすべて無料で、アカウントも必要ありません

質問できること

"Who won the 2025 Australian GP?"           → Race results and classification
"Verstappen's speed on lap 25 at Monaco"    → Lap telemetry at 4Hz
"Plot Hamilton vs Norris speed trace"       → Visual speed comparison chart
"Compare Ferrari's tyre strategy"           → Stint-by-stint breakdown
"Who won the 1994 championship?"            → 75 years of history
"When was the safety car at Silverstone?"   → Race control messages and flags
質問例をすべて表示
質問使用するツール
「中国GPで優勝したのは誰ですか?」get_standings
「25周目のフェルスタッペンの速度は?」get_telemetry
「ハミルトンとルクレールを比較して」get_driver_comparison
「全員がどのタイヤを使いましたか?」get_tyre_strategy
「2025年オーストラリアGPで最速のピットストップは?」get_pit_stops
「セーフティカーが出たのはいつですか?」get_race_control
「レース中に雨は降っていましたか?」get_weather
「2024年モンツァの最高速度は?」get_speed_traps
「レース中のノリスのラップタイム」get_lap_times
「2005年のチャンピオンシップで優勝したのは誰ですか?」get_championship_standings
「フェルスタッペンとハミルトンの速度推移をプロットして」plot_telemetry_comparison
「モナコのギアシフトマップを見せて」plot_gear_shifts
「最も順位を上げたのは誰ですか?」compare_grid_to_finish
「レース中のオーバーテイク」detect_overtakes
「フェルスタッペンの5周目と50周目を比較して」plot_multi_telemetry_comparison
「予選でのフェラーリのチーム内対決」team_head_to_head
「予選で削除されたラップ」get_deleted_laps
「レースを通じた首位とのギャップ」get_gap_to_leader

機能

2つのモードで79個のツールを利用できます。Pitwallはインストール済みの機能を自動検出するため、設定を変更する必要はありません。

Lite モード(30個のツール)

pip install f1pitwall — 軽量な依存関係のみ(mcp、requests、ライブタイミング用のwebsockets/aiohttp)。pandas/numpy/FastF1は不要です。

レース結果、ラップタイム、テレメトリー、タイヤ戦略、ピットストップ、天候、レースコントロール、スピードトラップ、ドライバー比較、および1950年までさかのぼる過去のデータを利用できます。さらに、16個のライブタイミングツール(走行順、ギャップ、ラップ/セクタータイム、タイヤ、天候、レースコントロール、スピードトラップ、ミニセクターなど)も利用でき、セッション中にF1のリアルタイムSignalRフィードを読み取ります。認証は不要です。(ライブの車両テレメトリーとGPSは認証が必要で、Fullモードで利用できます。)F1の無料の静的アーカイブとJolpica APIを使用します。

Full モード(79個のツール)

pip install -r requirements-full.txt — FastF1が追加されます。

Liteモードのすべてに加えて、次の機能を利用できます。

カテゴリ利用できる機能
ビジュアルプロット速度推移の比較、ギアシフトマップ、複数ラップのテレメトリー重ね合わせ
詳細なテレメトリーブレーキポイント分析、RPMパターン、DRS使用状況、スロットル推移
高度な戦略分析スティントの劣化、コンパウンド比較、タイヤの使用年数別パフォーマンス
レース分析オーバーテイク検出、ギャップ追跡、順位変動、予選の進行状況
ツール一覧(79個)
Lite ツール(常に利用可能)
ツール説明
list_seasons利用可能なシーズン(2018年〜現在)
list_races日付を含むシーズン全体のカレンダー
get_race_infoセッションの詳細と利用可能なデータフィード
get_standingsレース順位 — 順位、ギャップ、ベストラップ、ピット
get_lap_timesラップごとのタイム。ドライバーとラップ範囲で絞り込み可能
get_telemetry特定のラップの速度、RPM、スロットル、ブレーキ、ギア、DRS
get_tyre_strategy全ドライバーのコンパウンド、スティントの長さ、新品/使用済み
get_pit_stops最速順に並べた全ピットストップ
get_race_controlフラッグ、ペナルティ、セーフティカー、調査
get_weather気温/路面温度、雨、湿度、風
get_speed_trapsドライバーごとの4つの計測地点での速度
get_driver_comparison直接比較:順位、ペース、戦略、ピットストップ
get_historical_results1950年から現在までのレース結果
get_championship_standings1950年以降のドライバー/コンストラクターズ選手権
ライブタイミング(ライト版 — 認証不要。セッション中にF1のリアルタイムSignalRフィードを読み込みます)
ツール説明
get_live_session_statusセッション名、フラッグ/トラック状況、ラップ数
get_live_positionsギャップとインターバルを含むリアルタイムの順位
get_live_lap_timesドライバーごとの直近ラップタイムとベストラップタイム
get_live_sector_times1人のドライバーのセクタータイムとスピードトラップ
get_live_time_gaps先頭との差と前車とのインターバル(モード対応)
get_live_best_sectorsドライバーごとの自己ベストセクターとベストラップを順位付け
get_live_speed_trap全車のスピードトラップ(ST)順位
get_live_speed_comparisonドライバーごとのI1/I2/FL/STでの最高速度
get_live_tyresドライバーごとのコンパウンド、使用年数(ラップ数)、スティント番号
get_live_stint_historyドライバーごとの全コンパウンド履歴
get_live_pit_activityピット回数とピットイン/アウトラップのフラグ
get_live_weather気温/路面温度、湿度、風、雨
get_live_race_controlフラッグ、ペナルティ、トラックリミット違反によるタイム抹消、SC/VSC
get_live_session_clockセッションの残り時間
get_live_track_status_historyトラック/セッション状況の時系列ログ
get_live_mini_sectorsドライバーごとのミニセクター状況(グリーン/パープル/イエロー)
FastF1 ツール(FastF1 が必要)
カテゴリツール
ビジュアルプロットplot_telemetry_comparison、plot_gear_shifts、plot_multi_telemetry_comparison、plot_driver_telemetry_comparison
テレメトリー分析analyze_brake_points、analyze_rpm_data、analyze_drs_usage
ラップ分析get_lap_times_fastf1、get_deleted_laps、analyze_lap_consistency、get_fastest_sectors、get_personal_best_laps、compare_sector_times
戦略get_driver_tyre_detail、get_stint_analysis、compare_tire_compounds、compare_tire_age_performance、analyze_starting_tires、compare_strategies
レース分析get_race_results、get_sprint_results、get_session_summary、get_fastest_lap_data、detect_overtakes、compare_grid_to_finish、get_qualifying_progression
ピットストップget_pit_stop_detail、get_fastest_pit_stops
ドライバーとチームget_driver_info、get_driver_standings、get_constructor_standings、team_head_to_head、get_team_laps、analyze_long_run_pace
トラックと安全性get_circuit_info、get_track_status、get_track_record、get_race_control_messages、get_penalties、get_dnf_list
速度と順位get_speed_trap_comparison、get_position_changes、get_gap_to_leader
履歴get_race_winners_history
ライブ(認証が必要)get_live_telemetry、get_live_gps_positions — ライブの車両テレメトリーとGPS。F1 TVトークンが必要です
セッションget_schedule、get_session_info、get_weather_data

セットアップ

macOS

Claude Code:

claude mcp add pitwall -- python3 /absolute/path/to/pitwall.py

Claude Desktop — ~/Library/Application Support/Claude/claude_desktop_config.json に追加します:

{
  "mcpServers": {
    "pitwall": {
      "command": "python3",
      "args": ["/absolute/path/to/pitwall.py"]
    }
  }
}
Windows

1. Python のパスを確認します:

where python

C:\Users\YourName\AppData\Local\Programs\Python\Python313\python.exe や C:\Python313\python.exe のようなパスが返されます。

2. Pitwall をクローンした場所を確認します: 例:C:\Users\YourName\Projects\pitwall\pitwall.py

Claude Code(PowerShell):

claude mcp add pitwall -- python C:\Users\YourName\Projects\pitwall\pitwall.py

Claude Desktop — %APPDATA%\Claude\claude_desktop_config.json に追加します:

このフォルダーを開くには、Win + R を押し、%APPDATA%\Claude と入力して Enter キーを押します。Claude フォルダーまたは claude_desktop_config.json が存在しない場合は、作成してください。

{
  "mcpServers": {
    "pitwall": {
      "command": "python",
      "args": ["C:\\Users\\YourName\\Projects\\pitwall\\pitwall.py"]
    }
  }
}

注: JSON のパスには二重のバックスラッシュ(\\)またはスラッシュ(/)を使用します。どちらでも動作します。Windows ではコマンドは python3 ではなく python です。

Linux

Claude Code:

claude mcp add pitwall -- python3 /absolute/path/to/pitwall.py

Claude Desktop — ~/.config/Claude/claude_desktop_config.json に追加します:

{
  "mcpServers": {
    "pitwall": {
      "command": "python3",
      "args": ["/absolute/path/to/pitwall.py"]
    }
  }
}

セットアップ後、Claude Code または Claude Desktop を再起動してください。MCP 互換のクライアントであれば、どれでも利用できます。

オプション:初心者向けスキル(Claude Desktop)

SKILL.md を Claude Desktop のスキルとしてアップロードします(Settings → Skills → Upload)。Claude が DRS、アンダーカット、コンパウンド、セーフティカーなど、F1 の専門用語をその場で解説します。


データソース

主要なデータはすべて無料で、API キーも不要です。

ソース対応範囲提供データ
F1 Static Live Timing2018年〜現在テレメトリー、タイミング、戦略、ピットストップ、天候、レースコントロール
Jolpica-F11950年〜現在過去の結果と選手権
FastF1(オプション)2018年〜現在高度なテレメトリー分析とビジュアルプロット
F1 SignalR Core(オプション)ライブのみセッション開催中のリアルタイムレースデータ

仕組み

Pitwall は F1 が公開している静的なタイミングアーカイブからデータを読み込みます。これは公式 F1 アプリを支えるデータと同じものです。各セッション終了後(約30分)に、F1 はセッションごとに33種類のデータフィードを公開します。これには、車両の完全なテレメトリー(車両ごとに約4Hzの速度、RPM、スロットル、ブレーキ、ギア、DRS)、GPS 位置、タイヤデータ、ピットストップ、レースコントロールのメッセージが含まれます。

テレメトリーツール(get_telemetry)は、タイミングストリームと車両データストリームを関連付け、特定のドライバーの特定のラップのテレメトリーを抽出します。これを実現する F1 MCP サーバーはほかにありません。

アーキテクチャ
Claude ──MCP──> Pitwall ──HTTP──> livetiming.formula1.com/static/ (free)
                       ──HTTP──> api.jolpi.ca/ergast/f1/ (free)
                       ──lib──>  FastF1 (optional, local)
                       ──WS───> SignalR Core (optional, live races)
サーバーの実行
python3 pitwall.py              # MCP stdio (Claude Code / Claude Desktop)
python3 pitwall.py --http       # MCP HTTP (remote / self-hosted)
python3 pitwall.py --http --port 3000

ライブレースデータ

Pitwallには、F1セッション開催中のリアルタイムデータを取得するための、生のSignalR Core WebSocketクライアントが含まれています。ほとんどのデータは無料です。車両テレメトリーとGPSの取得には、F1 TV ProまたはPremiumのサブスクリプションが必要です。

注: get_live_* MCPツールは、このクライアントのSignalRライブフィードを直接読み取ります。16個のタイミングツール(順位、ギャップ、ラップ/セクタータイム、タイヤ、天候、レースコントロール、スピードトラップ、ミニセクターなど)は、liteインストールで認証なしで動作します。ライブの車両テレメトリーとGPS(get_live_telemetry、get_live_gps_positions)にはF1 TVトークンが必要で、fullインストールに含まれます。セッション終了後も、テレメトリー、タイミング、戦略などのセッション後データは、メインツールから引き続き利用できます。

無料のデータとF1 TVが必要なデータ
データ無料F1 TV
レース順位、ギャップ、ラップタイムはいはい
レースコントロール、旗、ペナルティはいはい
天候、トラック状況はいはい
タイヤコンパウンド、スティント情報はいはい
チームラジオのURLはいはい
車両テレメトリー(速度、RPM、スロットル、ブレーキ)いいえはい
GPS位置(X/Y/Z座標)いいえはい

テレメトリーやGPSを含むすべてのデータは、セッション終了から約30分後に、静的アーカイブで無料になります。

認証の設定
python3 auth_setup.py

F1 TVにログインするため、ブラウザーが開きます。トークンはローカルに保存されます。

  • <project_dir>/.f1token
  • ~/Library/Application Support/fastf1/f1auth.json(macOS)

トークンは約4日ごとに期限切れになります。更新するには、再度実行してください。トークンが外部にアップロードされることはありません。

ライブクライアントの使用方法
import asyncio
from signalr_client import F1LiveClient

async def main():
    # Free mode — timing, weather, race control (no auth needed)
    client = F1LiveClient(no_auth=True)

    @client.on("TimingData")
    def on_timing(data, timestamp):
        for num, info in data.get("Lines", {}).items():
            print(f"P{info.get('Position','?')} #{num} Gap: {info.get('GapToLeader','')}")

    @client.on("RaceControlMessages")
    def on_rc(data, timestamp):
        for msg in data.get("Messages", {}).values():
            print(f"[{msg.get('Flag', '')}] {msg.get('Message', '')}")

    await client.connect()

asyncio.run(main())

完全なテレメトリー(速度、RPM、スロットル、ブレーキ、GPS)を取得するには:

from auth_setup import load_token

client = F1LiveClient(no_auth=False, auth_token=load_token())

@client.on("CarData.z")
def on_telemetry(data, timestamp):
    # Speed, RPM, throttle, brake, gear, DRS at ~4Hz per car
    ...

@client.on("Position.z")
def on_position(data, timestamp):
    # GPS X/Y/Z coordinates at ~4Hz per car
    ...

リファレンス

レース名

レース名はあいまい一致で照合されます。以下の名前はすべて使用できます。

"china", "chinese", "shanghai"           → Chinese Grand Prix
"australia", "melbourne", "aus"          → Australian Grand Prix
"monaco", "monte carlo"                  → Monaco Grand Prix
"silverstone", "great britain", "british" → British Grand Prix
ドライバーコード
VER = Verstappen    HAM = Hamilton    NOR = Norris     LEC = Leclerc
ANT = Antonelli     RUS = Russell     PIA = Piastri    BEA = Bearman
GAS = Gasly         LAW = Lawson      HAD = Hadjar     SAI = Sainz
ALO = Alonso        STR = Stroll      OCO = Ocon       BOT = Bottas
ALB = Albon         HUL = Hulkenberg  COL = Colapinto  LIN = Lindblad
プロジェクトファイル
ファイル用途
pitwall.pyMCP サーバー — 79個のツール。FastF1がない場合は30個に自動的に縮退します
signalr_client.pyライブレースデータ用の生のSignalR Core WebSocketクライアント
decompressor.pyCarData.z / Position.zのZlib解凍
merger.pyF1の差分形式におけるキーフレームと差分の状態管理
topics.py認証/圧縮のメタデータを含む、すべての20個のSignalRトピック
auth_setup.pyF1 TVトークンの設定 — ブラウザーを使ったOAuthフロー

コントリビューション

バグを見つけましたか?ツールを追加したいですか?コントリビューションを歓迎します。

  1. リポジトリをフォークします
  2. 機能ブランチを作成します
  3. 変更を加えます
  4. テストスイートを実行します:python3 tests/pitwall_tool_validation.py
  5. プルリクエストを作成します

クレジット

  • FastF1 — @theOehrlyによる、F1向けPythonライブラリの最高峰
  • Jolpica-F1 — Ergast APIの後継
  • drivenrajat/f1 — FastF1のツールパターンの着想元

開発者

Darsh Joshi — AIエンジニア

LinkedIn GitHub Email

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。