aa-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| AA_MCP_CHROMIUM | No | Path to Chromium executable. Overrides auto-discovery if your Chromium is somewhere unusual. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| check_auth_statusB | Check the saved AA session for an account — token expiry, AAdvantage #, cookie count. Args: account: Account name (optional, uses default). |
| save_session_from_browserA | Pull cookies from a logged-in Chromium (started by aa-auth-browser) and save them. Workflow:
Args: account: Account name to associate with the saved cookies. Default: "default". port: Chromium remote-debugging port as a string. Empty/omitted uses the default (9224, matches aa-auth-browser). Pass as string to avoid MCP type-coercion issues with some clients. |
| get_account_summaryB | Member info: name, AAdvantage #, mile balance, status, cobranded card, business memberships. Args: account: Account name (optional, uses default). |
| get_loyalty_points_progressC | Elite status progress — Loyalty Points YTD + last-year EQDs/EQMs/EQSs + tier thresholds. Args: account: Account name (optional, uses default). |
| get_profile_detailsA | Detailed profile: DOB, partners, sales city, mile expiration, million-miler stats. Args: account: Account name (optional, uses default). |
| get_mile_activityA | AAdvantage mile / loyalty-point transaction history. Returns activity cards with date, type (Flight/Bank/Promo/Misc), miles earned/used, loyalty points, partner code, and transaction description. Args: from_date: YYYY-MM-DD inclusive (default: 180 days ago). to_date: YYYY-MM-DD inclusive (default: today). starting_index: 0-based offset for pagination. page_size: Max records (server caps ~50). search_string: Free-text filter on transaction description. sort_direction: "asc" or "desc" by activity_date. account: Account name (optional, uses default). |
| get_upcoming_tripsC | Upcoming flight reservations with record locators. Args: account: Account name (optional, uses default). |
| get_reservation_by_locatorA | Full reservation details by record locator + lead passenger name. Returns the complete viewres payload: passengers (with passengerID like "01.01"), itinerary slices and segments (flight numbers, times, fare codes, booking codes), tickets (one per passenger), cost summary, eligibilityFlags (cancel / change / partial-reshop), and eligibleProducts (deep links to change-flow URLs). The underlying endpoint validates first+last name against the lead passenger on the PNR, so both are required even when authenticated. Args: record_locator: 6-character PNR (e.g., "UHJHHT"). last_name: Lead passenger last name (e.g., "Mohr"). first_name: Lead passenger first name (e.g., "Alexander"). account: Account name (optional, uses default). |
| search_change_flightsA | Search alternative flights for an existing reservation (the "change flight" flow). Returns the full reshop payload: a ±6-day price carousel around departure_date, plus up to 40 flight options with per-cabin pricing (flightCells contain fare, netPrice = delta vs paid, cabinType, fareType, changeType, seatsLeft). The endpoint allows changing origin city, destination city, and date in a single query — AA validates against the original fare rules and either returns SUCCESS or an error. Negative netPrice means you'd be issued a travel credit; positive means additional payment due. Change fees are usually $0 (waived on non-Basic- Economy fares). PRICING SCOPE: All numbers are TOTAL for every passenger on the PNR. This
endpoint does not support per-passenger pricing. To change only some passengers
on a multi-pax booking, the PNR typically has to be split first via an agent
(the Args: record_locator: 6-character PNR (e.g., "UHJHHT"). last_name: Lead passenger last name. first_name: Lead passenger first name. departure_date: New departure date (YYYY-MM-DD). origin_airport: New origin airport (3-letter IATA — can differ from original). destination_airport: New destination airport (3-letter IATA — can differ from original). slice_index: Which slice of the reservation to change (0 = first; matters for round-trips). carousel_days: Include the ±6-day min-price grid in the response (default True). account: Account name (optional, uses default). |
| get_flight_creditsC | Flight credits (single-passenger ticket credits from cancelled flights). Args: locale: Locale code (default en_US). account: Account name (optional, uses default). |
| get_trip_creditsB | Trip credits (multi-passenger / itinerary-level credits). Args: locale: Locale code (default en_US). account: Account name (optional, uses default). |
| get_partner_offersC | Partner offers / promotions on the dashboard. Args: account: Account name (optional, uses default). |
| get_notificationsC | Account notifications panel. Args: account: Account name (optional, uses default). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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