Formula One MCP Server について
Formula One MCP Serverは、Formula Oneのスケジュール、イベント詳細、セッション結果、ドライバー情報、テレメトリ、ランキングを提供します。レースデータの照会やドライバーの分析・比較を行うMCPクライアント向けです。
主な機能
- 01シーズン日程とイベント詳細の取得
- 02決勝、予選、スプリント、練習の結果照会
- 03ドライバー情報の検索
- 04ラップタイムの分析
- 05ドライバー比較とテレメトリ取得
- 06選手権ランキングの表示
活用シーン
- 01シーズンのレース日程の確認
- 02特定セッションの結果の確認
- 03セッション内のドライバー分析や比較
- 04ラップのテレメトリ確認
MCP 対応
MCPクライアントにFormula Oneのデータ照会・パフォーマンス分析ツールを公開します。スケジュール、結果、ドライバー、テレメトリ、ランキングを取得できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Formula One MCP Server
Formula Oneのレースデータを提供するModel Context Protocol(MCP)サーバーです。このパッケージでは、イベントスケジュール、ドライバー情報、テレメトリデータ、レース結果など、F1データを照会するためのさまざまなツールを利用できます。
特長
- イベントスケジュール:任意のシーズンのF1レースカレンダーにアクセスできます
- イベント情報:特定のグランプリイベントに関する詳細データを取得できます
- セッション結果:レース、予選、スプリント、プラクティスセッションの包括的な結果を取得できます
- ドライバー情報:特定のセッションのドライバー詳細にアクセスできます
- パフォーマンス分析:ラップタイム統計を使ってドライバーのパフォーマンスを分析できます
- ドライバー比較:同じセッションにおける複数のドライバーのパフォーマンスを比較できます
- テレメトリデータ:特定のラップの詳細なテレメトリにアクセスできます
- チャンピオンシップ順位:任意のシーズンのドライバーおよびコンストラクターの順位を確認できます
インストール
Smithery経由でのインストール
Smithery経由で、f1-mcp-serverをClaude Desktopに自動でインストールするには:
npx -y @smithery/cli install @Machine-To-Machine/f1-mcp-server --client claude
手動インストール
uvで管理されているPythonプロジェクトでは、次のように依存関係に追加します。
uv add f1-mcp-server
または、依存関係の管理にpipを使うプロジェクトでは、次のようにします。
pip install f1-mcp-server
プロジェクト内でサーバーを実行するには、次のようにします。
uv run f1-mcp-server
または、分離された環境でグローバルに実行するには、次のようにします。
uvx f1-mcp-server
ソースから直接インストールするには、次のようにします。
git clone https://github.com/Machine-To-Machine/f1-mcp-server.git
cd f1-mcp-server
pip install -e .
使用方法
コマンドライン
サーバーは2つのモードで実行できます。
標準I/Oモード(デフォルト):
uvx run f1-mcp-server
SSEトランスポートモード(ウェブアプリケーション向け):
uvx f1-mcp-server --transport sse --port 8000
Python API
from f1_mcp_server import main
# Run the server with default settings
main()
# Or with SSE transport settings
main(port=9000, transport="sse")
APIドキュメント
サーバーはMCP経由で次のツールを公開します。
| ツール名 | 説明 |
|---|---|
get_event_schedule | 特定のシーズンのFormula Oneレースカレンダーを取得します |
get_event_info | 特定のFormula Oneグランプリに関する詳細情報を取得します |
get_session_results | 特定のFormula Oneセッションの結果を取得します |
get_driver_info | 特定のFormula Oneドライバーに関する情報を取得します |
analyze_driver_performance | Formula Oneセッションにおけるドライバーのパフォーマンスを分析します |
compare_drivers | 複数のFormula Oneドライバーのパフォーマンスを比較します |
get_telemetry | 特定のFormula Oneラップのテレメトリデータを取得します |
get_championship_standings | Formula Oneのチャンピオンシップ順位を取得します |
基盤となるデータの詳細については、FastF1のドキュメントをご覧ください:FastF1 Documentation
依存関係
- anyio (>=4.9.0)
- click (>=8.1.8)
- fastf1 (>=3.5.3)
- mcp (>=1.6.0)
- numpy (>=2.2.4)
- pandas (>=2.2.3)
- uvicorn (>=0.34.0)
開発
開発環境のセットアップ
git clone https://github.com/Machine-To-Machine/f1-mcp-server.git
cd f1-mcp-server
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uv pip install -e ".[dev]"
コード品質
# Run linting
uv run ruff check .
# Run formatting check
uv run ruff format --check .
# Run security checks
uv run bandit -r src/
コントリビューションガイドライン
- リポジトリをフォークします
- フィーチャーブランチを作成します:
git checkout -b feature-name - 変更をコミットします:
git commit -am 'Add some feature' - ブランチにプッシュします:
git push origin feature-name - プルリクエストを送信します
ライセンス
このプロジェクトはMITライセンスのもとで公開されています。詳細はLICENSEファイルをご覧ください。
作者
- Machine To Machine
謝辞
このプロジェクトでは、F1データにアクセスするための優れたPythonパッケージであるFastF1を利用しています。メンテナーおよびコントリビューターの皆さまに感謝いたします。
このプロジェクトは、TypeScriptで記述されたrakeshgangwar/f1-mcp-serverに着想を得ています。f1_data.pyモジュールは、主にそのソースコードをもとに作成されました。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。