aa-mcp-server
Provides read-only access to American Airlines AAdvantage account data including mile balance, Loyalty Points progress, transaction history, upcoming trips, travel credits, and partner offers via aa.com APIs.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@aa-mcp-serverWhat's my current mile balance?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
aa-mcp-server
An MCP server that gives Claude (or any MCP-compatible LLM) read-only access to your American Airlines AAdvantage account — mile balance, Loyalty Points progress, transaction history, upcoming trips, travel credits, and partner offers.
This is not a browser-automation wrapper. The server discovers and calls aa.com's underlying JSON APIs directly using session cookies extracted from a Chromium login. All HTTP traffic uses curl_cffi with Chrome TLS impersonation to satisfy aa.com's Akamai Bot Manager.
Tools
Tool | Endpoint | Returns |
|
| Name, AAdvantage #, mile balance, status, cobranded card, business memberships |
|
| LP YTD, last-year totals, tier thresholds, next-status delta |
|
| DOB, partners list, sales city, mile expiration, million-miler stats |
|
| Mile/LP transaction history (date range, paginated, searchable) |
|
| Reservations with record locators |
|
| Full reservation: segments, passengers, tickets, costs, change/cancel eligibility (requires lead-passenger name) |
|
| Alternative flights for a reservation with a ±6-day price carousel, per-cabin pricing ( |
|
| Single-passenger ticket credits |
|
| Multi-passenger / itinerary credits |
|
| Dashboard partner promotions |
|
| Account notifications |
| — | Saved-session info: AA #, token expiry, cookie count |
| CDP | Pulls cookies from a logged-in Chromium and persists them |
Setup
pip install aa-mcp-serverOne-time auth
aa.com is fronted by Akamai Bot Manager — you can't log in via headless requests. The flow:
Launch a real Chromium with a persistent profile and a remote-debugging port:
aa-auth-browser # default account aa-auth-browser personal # named accountLog into aa.com (and complete 2FA if prompted) in the window that opens.
Copy the cookies into the MCP store:
aa-mcp-server --extract-session defaultOr call the
save_session_from_browserMCP tool from Claude.
The cookies live in ~/.aa-mcp/accounts/<account>/session.json. The chromium profile lives in ~/.aa-mcp/chrome-profiles/<account>/. To refresh after expiry, relaunch aa-auth-browser (the saved profile auto-refreshes the access_token cookie when you visit any aa.com page) and re-run --extract-session.
AA_MCP_CHROMIUM=<path-to-chrome.exe> overrides the auto-discovery if your Chromium is somewhere unusual.
Multi-account
Every tool takes an optional account parameter. Omit it to use the default account.
get_account_summary() # default
get_account_summary(account="spouse")Running
aa-mcp-server # stdio transport
aa-mcp-server --setup # show account status & setup hints
aa-mcp-server --extract-session NAME # save cookies from running ChromiumAdd to your MCP client config (e.g. Claude Desktop):
{
"mcpServers": {
"aa": {
"command": "aa-mcp-server"
}
}
}Limitations
Read-only. No booking, no award redemption, no profile edits.
Cookie expiry. The
access_tokenJWT lives ~45 min; therefresh_tokencookie typically ~30 days. Visiting any aa.com page in the saved Chromium profile silently refreshes both. After a long gap, re-extract.GraphQL coverage. Only the
GetCustomerpersisted query is wired up. Expanding requires capturing additional sha256Hashes from the browser bundle — easy but a per-feature task.One region tested. All testing has been on US-locale aa.com. International locales may require different
refererpaths.
License
MIT
mcp-name: io.github.thehesiod/aa
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/thehesiod/aa-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server