flightaware-mcp について
flightaware-mcp は Claude などの MCP クライアントを FlightAware AeroAPI v4 に接続し、リアルタイムのフライト・航空データを取得します。フライトや空港の検索、スケジュール、アラート管理に対応し、アラート変更前に確認を求めます。
主な機能
- 01フライト検索と現在位置の取得
- 02航跡・ルート・履歴・マップの取得
- 03空港情報・発着便・遅延・天気の取得
- 04運航会社・航空機・スケジュールの検索
- 05フライトアラートの作成と管理
- 06アラート変更前の確認
活用シーン
- 01フライトの現在位置とルートの確認
- 02空港の到着便・出発便の確認
- 03空港の遅延と天気の把握
- 04確認を経たフライトアラートの設定・更新
MCP 対応
stdio 経由で MCP クライアントに FlightAware AeroAPI v4 のフライト・航空データ操作をツールとして提供します。アラートの変更には事前確認が必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @chrischall/flightaware-mcpAEROAPI_API_KEYシークレットYour FlightAware AeroAPI key (flightaware.com/aeroapi/portal)AEROAPI_OUTPUT_DIRDefault directory for flight-map PNGs (default: current working directory)AEROAPI_CACHE_TTLSeconds to cache identical live-data GET responses (default 15; 0 disables)AEROAPI_STATIC_CACHE_TTLSeconds to cache reference data — airports, operators, routes, ownership (default 3600; 0 disables)ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
34掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| end | string | いいえ | 時間範囲の ISO-8601 終了時刻 |
| view | enum | いいえ | 応答形式:"compact"(既定)では、応答内の別の場所にすでに含まれるフィールドを省略します。"full" では、このサーバーが認識するすべてのフィールドを返します。compact は応答から画像/アバター URL を除外します。"full" は FlightAware のペイロードを変更せずに返します。フィールドの選択には対応していません。このサーバーには、どの FlightAware フィールドが重要かを示す検証済みの記録がなく、独自に選ぶと呼び出し元が必要とするフィールドを落とすおそれがあります。compact | full |
| ident | string | はい | フライト識別子、登録記号、または fa_flight_id |
| start | string | いいえ | 時間範囲の ISO-8601 開始時刻 |
| cursor | string | いいえ | ページネーションカーソル:前回の応答の links.next に含まれる cursor クエリパラメーター(links.next の値全体を渡すこともできます) |
| max_pages | integer | いいえ | 取得する最大ページ数(1~20、AeroAPI の既定値:1)。AeroAPI はページ単位で課金されるため、上限は 20 です。 |
| ident_type | enum | いいえ | `ident` の解釈方法を指定しますdesignator | registration | fa_flight_id |
詳細
flightaware-mcp
FlightAware AeroAPI(v4)用のMCP サーバーです。Claude 向けに、リアルタイムのフライト追跡と航空データを提供します。フライトの追跡、空港の発着便情報の確認、運航会社や航空機の検索、定期便の取得、フライトアラートの管理をすべてstdio経由で行えます。
AI(Claude Code)によって開発、保守されています。ご自身の判断でご利用ください。
クイックスタート
{
"mcpServers": {
"flightaware": {
"command": "npx",
"args": ["-y", "@chrischall/flightaware-mcp"],
"env": { "AEROAPI_API_KEY": "your-aeroapi-key-here" }
}
}
}
キーはflightaware.com/aeroapi/portalで取得できます。無料のPersonalティア(月500回の呼び出し)で使い始めるには十分です。AeroAPIはクエリごとに課金されます。
ツール
| 分野 | ツール |
|---|---|
| フライト | fa_get_flights、fa_search_flights、fa_search_flights_advanced、fa_search_flight_positions、fa_count_flights、fa_get_flight_track、fa_get_flight_position、fa_get_flight_route、fa_get_flight_map、fa_get_flight_history、fa_resolve_flight |
| 空港 | fa_get_airport、fa_get_airport_flights、fa_get_airport_flight_counts、fa_get_airport_routes、fa_list_airports、fa_get_nearby_airports、fa_get_airport_delays、fa_get_airport_weather、fa_resolve_airport |
| 運航会社/航空機 | fa_get_operator、fa_get_operator_flights、fa_list_operators、fa_get_aircraft_owner |
| スケジュール/予測 | fa_get_scheduled_flights、fa_foresight_search(プレミアムティア) |
| アラート | fa_list_alerts、fa_get_alert、fa_create_alert、fa_update_alert、fa_delete_alert、fa_get_alerts_endpoint、fa_set_alerts_endpoint |
| ヘルスチェック | fa_healthcheck — このコネクターが動作しているかを確認します。AEROAPI_API_KEYが解決されたか、AeroAPIがキーを受け付けたか、何を修正すべきかを報告します。検索結果は静的にキャッシュされるため、繰り返し確認しても再課金されません。 |
アラートの変更(fa_create_alert、fa_update_alert、fa_delete_alert、fa_set_alerts_endpoint)を行う前に、確認を求められます。確認を参照してください。
確認
アラートを変更するたびに、AeroAPIアカウントに変更を加える前に確認を求められます。確認プロンプトを表示できるクライアント(Claude Code)では、確認プロンプトが表示されます。確認プロンプトを表示できないクライアント(claude.ai、Claude Desktop)では、最初の呼び出しではネットワーク呼び出しを行わず、正確なリクエスト(メソッド、パス、本文)のプレビューとconfirmTokenを返します。そのトークンを付けて再度呼び出した場合にのみ、リクエストが送信されます。トークンは一度だけ使用でき、有効期限があり、プレビュー後にリクエストが変更されている場合は拒否されます。
| variable | default | |
|---|---|---|
MCP_CONFIRM_MODE | ask-user | 確認プロンプトを表示できないクライアント(claude.ai、Claude Desktop)で書き込みを行う際の動作です。ask-user:2段階で行います。最初の呼び出しは何も行わず、プレビューとトークンを返します。モデルはチャットで承認を得てから、トークンを付けて再度呼び出す必要があります。auto:同じく2段階で行いますが、モデルはプレビューを確認した後、自身の判断でトークンを使用できます。refuse:そのようなクライアントでは書き込みを拒否します。プロンプトを表示できるクライアント(Claude Code)には、MCP_CONFIRM_ELICITATION=offでない限り、常に実際のプロンプトが表示されます。認識されない値はrefuseとして扱われます。 |
MCP_CONFIRM_ELICITATION | on | offにすると確認プロンプトは送信されず、すべてのクライアントでMCP_CONFIRM_MODEの動作が適用されます。プロンプトを表示できると宣言しているものの実際には表示しないクライアント(確認が必要な呼び出しが停止する — opencode 2.0.x)では、この値を設定してください。それ以外の値はonとして扱われ、stderrに警告が表示されます。 |
MCP_CONFIRM_TTL_SECONDS | 600 | トークンの有効期間です。 |
MCP_CONFIRM_SECRET | プロセスごとにランダム | 署名キーです。サーバー再起動後もトークンを有効にする必要がある場合にのみ設定してください。 |
設定
| 変数 | 必須 | 用途 |
|---|---|---|
AEROAPI_API_KEY | はい | AeroAPI キーです(x-apikey ヘッダーとして送信されます)。 |
AEROAPI_OUTPUT_DIR | いいえ | フライトマップの PNG のデフォルト保存先ディレクトリです(デフォルト:~/Downloads/flightaware-mcp)。呼び出しごとの output_dir は、このディレクトリ内(未設定の場合は ~/Downloads/flightaware-mcp 内)に指定する必要があります。 |
AEROAPI_CACHE_TTL | いいえ | 同一のライブデータGET レスポンスをキャッシュする秒数です(デフォルト:15、0 で無効)。AeroAPI のクエリごとの課金を抑えられます。 |
AEROAPI_STATIC_CACHE_TTL | いいえ | 参照データ(空港/運航会社の情報、路線、所有権、正規化された検索結果)に適用する、より長い TTL です(デフォルト:3600、0 で無効)。 |
開発
npm install
npm run build
npm test
すべてのリクエストでご自身の AeroAPI キーを使用し、サブスクリプションの利用枠が消費されます。固定されたエンドポイントの一覧については、docs/FLIGHTAWARE-API.md を参照してください。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。