Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
AA_MCP_CHROMIUMNoPath to Chromium executable. Overrides auto-discovery if your Chromium is somewhere unusual.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
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:

  1. Run aa-auth-browser <account> to launch Chromium with --remote-debugging-port.

  2. Log into aa.com in that browser.

  3. Call this tool — it connects to the debug port via CDP and saves all aa.com cookies.

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 divideEligible flag on the reservation indicates whether the self-serve split is allowed; partial reshop without a split usually requires a phone agent).

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

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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