MCP server for American Airlines — let AI agents search flights, manage bookings, check in, retrieve boarding passes, and access AAdvantage rewards on aa.com via Playwright browser automation.
Built by Strider Labs.
- Flight Search — Search AA flights by origin, destination, dates, and cabin class
- Flight Details — Get connection info, aircraft type, baggage policy, and fare rules
- Flight Selection — Select outbound and return flights into a booking session
- Seat Maps — View available seats including Main Cabin Extra, Preferred, and First Class
- Seat Selection — Choose specific seats by seat number
- Baggage — Add checked bags to a booking
- Checkout — Complete bookings with a confirmation gate
- Reservations — Look up existing reservations by record locator
- Modify Trips — Initiate flight changes on existing bookings
- Cancellations — Cancel reservations with a confirmation gate
- Check-In — Online check-in starting 24 hours before departure
- Boarding Passes — Retrieve digital boarding passes after check-in
- AAdvantage — Check miles balance, elite status, and earning milestones
- Upgrades — Request upgrades using miles, systemwide certificates, or elite status
npm install -g @striderlabs/mcp-american
npx playwright install chromiumOr run directly with npx:
npx @striderlabs/mcp-americanAdd to your claude_desktop_config.json:
{
"mcpServers": {
"american": {
"command": "npx",
"args": ["-y", "@striderlabs/mcp-american"]
}
}
}Config file locations:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
This server uses browser automation and stores session cookies locally. To authenticate:
- Call the
logintool — it opens aa.com in a browser window - Log in manually with your AAdvantage credentials
- Call
statusto verify and save the session
Sessions are saved to ~/.striderlabs/american/ and reused across invocations. You typically only need to log in once until the session expires.
| Tool | Description |
|---|---|
status |
Check login status and session info |
login |
Open aa.com for manual login |
logout |
Clear saved session and cookies |
search_flights |
Search AA flights by route, date, cabin |
get_flight_details |
Get detailed info on a search result |
select_flight |
Choose outbound/return flight for booking |
get_seat_map |
View available seats and fees |
select_seats |
Choose seats by seat number |
add_bags |
Add checked baggage |
checkout |
Complete booking (requires confirm: true) |
get_reservation |
Look up reservation by record locator |
modify_trip |
Change flights on existing reservation |
cancel_trip |
Cancel reservation (requires confirm: true) |
check_in |
Online check-in (opens 24h before departure) |
get_boarding_pass |
Retrieve digital boarding passes |
get_aadvantage |
Check miles, elite status, milestones |
upgrade_request |
Request upgrade using miles or elite status |
User: Search for flights from DFW to JFK next Friday
Agent:
1. search_flights { origin: "DFW", destination: "JFK", departureDate: "2025-07-11" }
2. get_flight_details { flightId: "0" }
3. select_flight { outboundFlightId: "0" }
4. get_seat_map {}
5. select_seats { seats: ["14A"] }
6. add_bags { bags: 1 }
7. checkout {} → preview
8. checkout { confirm: true } → booking confirmed
Destructive or financial actions require explicit confirmation:
checkout— passconfirm: trueonly after user confirms the purchasecancel_trip— passconfirm: trueonly after user confirms the cancellation
Without confirm: true, these tools return a preview instead of taking action.
Optional — credentials can be provided via environment variables for automated workflows:
| Variable | Description |
|---|---|
AA_USERNAME |
AAdvantage number or email |
AA_PASSWORD |
Account password |
When set, the server will attempt auto-login on first use.
Cookies and session info are stored at:
~/.striderlabs/american/
├── cookies.json # Browser session cookies
└── session.json # Account info cache
To reset authentication: call logout or delete this directory.
git clone https://github.com/markswendsen-code/mcp-american
cd mcp-american
npm install
npx playwright install chromium
npm run build
npm startMIT — Strider Labs