aa について
aaは、American Airlines AAdvantage会員がMCP対応アシスタントから口座や旅程を読み取り専用で確認するためのMCPサーバーです。ログイン済みChromiumから取得したセッションCookieでaa.comのJSON APIを呼び出し、予約やプロフィール編集には対応しません。
主な機能
- 01アカウントと会員資格の概要
- 02マイルとLoyalty Pointsの履歴
- 03今後の旅程と予約詳細
- 04航空券・旅行クレジットの照会
- 05予約便の代替便検索
- 06Chromiumからのセッション取得
活用シーン
- 01AAdvantage残高とステータス進捗の確認
- 02マイル取引履歴と通知の確認
- 03今後の旅程と旅行クレジットの照会
- 04予約便の代替便を比較
MCP 対応
MCPクライアントに、アカウント、会員情報、旅程、クレジット、特典の読み取り専用ツールを提供します。認証状態の確認とChromiumからのセッション保存にも対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
aa-mcp-server
MCP サーバーは、Claude(または MCP 互換の LLM)に American Airlines AAdvantage アカウントへの読み取り専用アクセスを提供します。マイル残高、Loyalty Points の進捗状況、取引履歴、今後の旅行、トラベルクレジット、提携会社のオファーを確認できます。
これはブラウザー自動化のラッパーではありません。サーバーは、Chromium へのログインから抽出したセッションクッキーを使用して、aa.com の基盤となる JSON API を直接検出し、呼び出します。すべての HTTP 通信には curl_cffi を使用し、Chrome の TLS を偽装して aa.com の Akamai Bot Manager に対応します。
ツール
| ツール | エンドポイント | 戻り値 |
|---|---|---|
get_account_summary | /loyalty/api/member-information | 名前、AAdvantage 番号、マイル残高、ステータス、提携カード、ビジネス会員資格 |
get_loyalty_points_progress | /loyalty/api/progress-qualification | 年初来の LP、前年の合計、ステータスのしきい値、次のステータスまでの差分 |
get_profile_details | /api/loyalty/.../profile | 生年月日、提携会社のリスト、販売都市、マイルの有効期限、million-miler の統計 |
get_mile_activity | /api/loyalty/.../memberActivity | マイル/LP の取引履歴(日付範囲、ページネーション、検索に対応) |
get_upcoming_trips | /loyalty/api/upcoming-trips | 予約と予約番号 |
get_reservation_by_locator | /manage-reservation/viewres/api/reservation | 予約の詳細:区間、搭乗者、航空券、料金、変更・キャンセルの可否(代表搭乗者の名前が必要) |
search_change_flights | /manage-reservation/reshop/api/reshop/cheapest | 予約の代替便。±6 日の価格カルーセルと客室クラスごとの料金に対応(netPrice = 支払い済み料金との差額)。出発地/目的地/日付の変更を受け付けます。料金は全搭乗者分の合計です(搭乗者ごとの内訳はありません) |
get_flight_credits | /api/loyalty/travelCredits/flightCredit/details | 1 名分の航空券クレジット |
get_trip_credits | /api/loyalty/travelCredits/tripCredit/details | 複数搭乗者/旅程のクレジット |
get_partner_offers | /loyalty/api/partnerOffers | ダッシュボードに表示される提携会社のキャンペーン |
get_notifications | /loyalty/api/notifications | アカウント通知 |
check_auth_status | — | 保存済みセッションの情報:AA 番号、トークンの有効期限、クッキー数 |
save_session_from_browser | CDP | ログイン済み Chromium からクッキーを取得して保存します |
セットアップ
pip install aa-mcp-server
初回の認証
aa.com は Akamai Bot Manager の背後にあるため、ヘッドレスリクエストではログインできません。手順は次のとおりです。
- 永続プロファイルとリモートデバッグポートを指定して、実際の Chromium を起動します。
aa-auth-browser # default account aa-auth-browser personal # named account - 開いたウィンドウで aa.com にログインします(求められた場合は 2FA も完了します)。
- クッキーを MCP ストアにコピーします。
または、Claude からaa-mcp-server --extract-session defaultsave_session_from_browserMCP ツールを呼び出します。
クッキーは ~/.aa-mcp/accounts/<account>/session.json に保存されます。Chromium プロファイルは ~/.aa-mcp/chrome-profiles/<account>/ に保存されます。有効期限が切れた後に更新するには、aa-auth-browser を再起動します(保存済みプロファイルでは、aa.com のページにアクセスすると access_token クッキーが自動更新されます)。その後、--extract-session を再実行してください。
Chromium の場所が特殊な場合は、AA_MCP_CHROMIUM=<path-to-chrome.exe> で自動検出を上書きできます。
複数アカウント
すべてのツールで account パラメーターを省略可能です。省略すると、デフォルトのアカウントが使用されます。
get_account_summary() # default
get_account_summary(account="spouse")
実行
aa-mcp-server # stdio transport
aa-mcp-server --setup # show account status & setup hints
aa-mcp-server --extract-session NAME # save cookies from running Chromium
MCP クライアントの設定に追加します(例:Claude Desktop)。
{
"mcpServers": {
"aa": {
"command": "aa-mcp-server"
}
}
}
制限事項
- 読み取り専用です。 予約、特典航空券への交換、プロフィールの編集はできません。
- クッキーの有効期限。
access_tokenJWT の有効期間は約 45 分です。refresh_tokenクッキーは通常約 30 日間有効です。保存済みの Chromium プロファイルで aa.com のページにアクセスすると、両方がバックグラウンドで更新されます。長期間アクセスしていなかった場合は、再度抽出してください。 - GraphQL の対応範囲。 現在組み込まれているのは
GetCustomer永続クエリのみです。対応範囲を広げるには、ブラウザーバンドルから追加の sha256Hashes を取得する必要があります。簡単ですが、機能ごとに作業が必要です。 - テスト済みの地域は 1 つです。 すべてのテストは米国ロケールの aa.com で実施しています。海外のロケールでは、異なる
refererパスが必要になる場合があります。
License
MIT
mcp-name: io.github.thehesiod/aa
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。