Skip to main content
Glama

Flight Simulator MCP Server

by jabir366
  • Apple

Flight Simulator MCP Server

An enhanced Model Context Protocol (MCP) server for comprehensive airline booking operations, built with FastMCP 2.0 and Python.

Features

🛫 Core Booking Tools (17 total)

  • Flight Search & Booking: Multi-criteria search, booking creation, modifications
  • Check-in & Services: Online check-in, seat selection, baggage, meal preferences
  • Real-time Operations: Flight tracking, price alerts, disruption handling
  • Loyalty & Groups: Frequent flyer integration, group bookings, special assistance

📊 Information Resources (9 total)

  • Airport information with timezones
  • Real-time flight status
  • Seat maps and availability
  • Weather impact data
  • Airline policies
  • Gate information
  • Upgrade availability
  • Loyalty benefits

🤖 AI-Powered Prompts (6 total)

  • Intelligent flight search assistance
  • Complete booking workflow guidance
  • Multi-city trip planning
  • Disruption management
  • Loyalty optimization
  • Accessibility support

Installation

Prerequisites

  • Python 3.10 or higher
  • UV package manager (recommended) or pip

Setup

  1. Clone the repository:
git clone <repository-url> cd flight-sim-mcp
  1. Install dependencies using UV (recommended):
uv pip install -r requirements.txt

Or using pip:

pip install -r requirements.txt
  1. Copy environment configuration:
cp .env.example .env
  1. Configure your .env file with appropriate values.

Usage

Running the Server

Start the MCP server:

python src/server.py

The server will start in stdio mode by default, suitable for integration with Claude Desktop or other MCP clients.

Integration with Claude Desktop

  1. Open your Claude Desktop configuration file:
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. Add the flight simulator server:
{ "mcpServers": { "flight-simulator": { "command": "python", "args": ["/path/to/flight-sim-mcp/src/server.py"], "env": {} } } }
  1. Restart Claude Desktop

Example Interactions

Flight Search:

"Find me a flight from San Francisco to New York next Friday"

Group Booking:

"I need to book flights for 8 people from SFO to JFK on March 15th"

Check-in:

"Check me in for booking BK12345ABC"

Flight Tracking:

"Track flight UA123"

Loyalty Optimization:

"How can I maximize my miles on upcoming trips?"

Available Tools

Flight Search & Booking

  • search_flights - Search with multiple criteria
  • get_flight_details - Detailed flight information
  • create_booking - Book flights
  • get_booking - Retrieve booking details
  • cancel_booking - Cancel with refund calculation
  • modify_booking - Change flights or dates

Check-in & Services

  • check_in - Online check-in with boarding passes
  • select_seats - Choose specific seats
  • add_baggage - Add checked bags
  • add_services - Meals, WiFi, priority boarding
  • travel_insurance - Trip protection options
  • special_assistance - Accessibility services

Real-time & Loyalty

  • track_flight - Live flight status
  • price_alert - Monitor price changes
  • loyalty_account - Link frequent flyer accounts
  • group_booking - 5+ passenger bookings
  • upgrade_seat - Request upgrades

Testing

Using MCP Inspector

  1. Install MCP Inspector:
npm install -g @modelcontextprotocol/inspector
  1. Run the inspector:
npx mcp-inspector python src/server.py
  1. Access the web UI at http://localhost:5173

Running Unit Tests

pytest tests/

Development

Project Structure

flight-sim-mcp/ ├── src/ │ ├── server.py # Main MCP server │ ├── tools/ # Tool implementations │ ├── resources/ # Resource endpoints │ ├── models/ # Pydantic data models │ ├── data/ # Mock database │ └── prompts/ # AI prompt templates ├── tests/ # Test files ├── pyproject.toml # Project configuration └── README.md # This file

Adding New Tools

  1. Create a new file in src/tools/
  2. Import the MCP instance: from ..server import mcp
  3. Define tools using the @mcp.tool() decorator
  4. Import the module in server.py

Mock Data

The server uses a mock database that generates realistic flight data for demonstrations. In production, this would connect to real airline APIs.

Security Considerations

  • API tokens should be stored in environment variables
  • Payment tokens are mocked - implement real payment integration for production
  • Personal data handling follows privacy best practices
  • Rate limiting is recommended for production deployments

Deployment

Local Development

The default stdio transport is perfect for local development and testing with Claude Desktop.

Remote Deployment

For remote access, configure SSE transport:

# In server.py or via environment variables MCP_TRANSPORT=sse MCP_HOST=0.0.0.0 MCP_PORT=8080

Deploy options:

  • Docker container (Dockerfile included)
  • Railway/Render (one-click deploy)
  • AWS Lambda (serverless)
  • Any Python-capable hosting platform

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Add tests for new functionality
  4. Submit a pull request

License

MIT License - see LICENSE file for details

Support

For issues, questions, or contributions:

  • Open an issue on GitHub
  • Check existing documentation
  • Review MCP protocol specs at modelcontextprotocol.io

Related MCP Servers

  • -
    security
    A
    license
    -
    quality
    This MCP server allows an AI assistants to search for flight information online using Google Flights. It can find flights for specific dates or search through a range of dates to find all options or just the cheapest ones available.
    Last updated -
    11
    Python
    MIT License
  • A
    security
    A
    license
    A
    quality
    The server provides a simple API interface that allows users to search for 12306 tickets.
    Last updated -
    4
    1,148
    389
    JavaScript
    MIT License
  • A
    security
    F
    license
    A
    quality
    Integration platform for aviation data sources including weather, NOTAMs, airport information, and flight planning APIs, enabling comprehensive pre-flight preparation and in-flight decision support.
    Last updated -
    1
    12
    1
    JavaScript
  • -
    security
    F
    license
    -
    quality
    Provides tools to query flight and train information including flight searches, train tickets, weather forecasts, and transfer options between different transportation modes.
    Last updated -
    15

View all related MCP servers

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/jabir366/MCPFligh'

If you have feedback or need assistance with the MCP directory API, please join our Discord server