Provides tools to search for flights with real-time pricing, manage reservations (including booking, changing, and canceling), check in for flights, retrieve boarding passes, and manage Rapid Rewards accounts.
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., "@mcp-southwestsearch for flights from Dallas to Denver on October 15th"
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.
@striderlabs/mcp-southwest
MCP server for Southwest Airlines — search flights, manage bookings, check in, and manage your Rapid Rewards account via browser automation.
Features
Search flights with real-time pricing across all fare classes
Compare fares: Wanna Get Away, Wanna Get Away+, Anytime, Business Select
Book flights with dollars or Rapid Rewards points
Manage reservations: change, cancel, get details
No change fees — Southwest never charges them
Check in online (opens exactly 24 hours before departure)
Get boarding passes with group/position (A/B/C)
Early Bird Check-In — auto check-in 36 hours before departure
Rapid Rewards — check points balance, tier status, Companion Pass progress
Prerequisites
Node.js 18+
Playwright browsers:
npx playwright install chromium
Installation
npm install -g @striderlabs/mcp-southwest
# or
npx @striderlabs/mcp-southwestSetup
Environment Variables
Create a .env file or set these in your environment:
# Required for account-based tools (check-in, Rapid Rewards, points booking)
SW_USERNAME=your_rapid_rewards_number_or_email
SW_PASSWORD=your_password
# Optional
SW_HEADLESS=true # Set to "false" to see the browser (useful for debugging)Claude Desktop Configuration
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"southwest": {
"command": "npx",
"args": ["@striderlabs/mcp-southwest"],
"env": {
"SW_USERNAME": "your_rapid_rewards_number",
"SW_PASSWORD": "your_password"
}
}
}
}Or if installed globally:
{
"mcpServers": {
"southwest": {
"command": "mcp-southwest",
"env": {
"SW_USERNAME": "your_rapid_rewards_number",
"SW_PASSWORD": "your_password"
}
}
}
}Available Tools
search_flights
Search for available Southwest flights.
{
"originAirport": "DAL",
"destinationAirport": "LAX",
"departureDate": "2024-06-15",
"passengers": 2,
"tripType": "oneway",
"fareType": "USD"
}get_flight_details
Get status and details for a specific flight.
{
"flightNumber": "WN1234",
"flightDate": "2024-06-15",
"originAirport": "DAL",
"destinationAirport": "LAX"
}select_flight
Select a flight from search results to proceed with booking.
{
"flightIndex": 0,
"fareType": "wanna-get-away"
}get_fares
Compare fare classes with pricing and benefits.
{
"originAirport": "HOU",
"destinationAirport": "MCO",
"departureDate": "2024-07-04",
"fareType": "USD"
}add_early_bird
Add Early Bird Check-In to an existing booking (~$15–25/person/flight).
{
"confirmationNumber": "ABC123",
"firstName": "Jane",
"lastName": "Smith"
}checkout
Complete a booking with passenger and payment details.
{
"firstName": "Jane",
"lastName": "Smith",
"dateOfBirth": "01/15/1990",
"gender": "F",
"email": "jane@example.com",
"phone": "5551234567",
"cardNumber": "4111111111111111",
"cardExpiration": "12/26",
"cardCvv": "123",
"cardZip": "75201",
"cardName": "Jane Smith",
"addEarlyBird": false
}get_reservation
Look up a booking by confirmation number.
{
"confirmationNumber": "ABC123",
"firstName": "Jane",
"lastName": "Smith"
}change_flight
Modify an existing booking (no change fees!).
{
"confirmationNumber": "ABC123",
"firstName": "Jane",
"lastName": "Smith",
"newDepartureDate": "2024-06-20"
}cancel_flight
Cancel a reservation. Use confirm: true to actually cancel.
{
"confirmationNumber": "ABC123",
"firstName": "Jane",
"lastName": "Smith",
"confirm": true
}check_in
Check in online (available 24 hours before departure).
{
"confirmationNumber": "ABC123",
"firstName": "Jane",
"lastName": "Smith"
}get_boarding_pass
Retrieve boarding pass with group and position number.
{
"confirmationNumber": "ABC123",
"firstName": "Jane",
"lastName": "Smith",
"savePath": "~/boarding-pass.pdf"
}get_rapid_rewards
Check Rapid Rewards points, tier status, and Companion Pass progress.
{}(Uses SW_USERNAME/SW_PASSWORD env vars)
book_with_points
Search for flights and book using Rapid Rewards points.
{
"originAirport": "DAL",
"destinationAirport": "DEN",
"departureDate": "2024-08-10",
"passengers": 1
}Southwest Airlines Fare Classes
Fare | Refundable | Points Multiplier | Boarding |
Wanna Get Away | Travel funds | 6x base | Standard |
Wanna Get Away+ | Transferable funds | 8x base | Standard |
Anytime | Full refund | 10x base | Priority (A1–A15) |
Business Select | Full refund | 12x base | Guaranteed A1–A15 |
Southwest Boarding System
Southwest uses open seating — no assigned seats. Passengers board in groups:
Group A (A1–A60): Early Bird / Business Select / Anytime priority
Group B (B1–B60): General boarding
Group C (C1–C60): Last to board
Check-in order determines boarding position. Check in exactly at the 24-hour mark for the best position.
Session Persistence
Login sessions are saved to ~/.config/mcp-southwest/session.json to avoid re-authenticating on every run.
Development
git clone https://github.com/markswendsen-code/mcp-southwest
cd mcp-southwest
npm install
npx playwright install chromium
npm run build
npm startFor development with hot reload:
npm run devTo see the browser during automation (useful for debugging):
SW_HEADLESS=false npm run devLicense
MIT © Strider Labs
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.