Skip to main content
Glama

✈️ Flights MCP Server

A Model Context Protocol (MCP) server that provides flight search capabilities using the Aviasales Flight Search API. This server allows you to search for flights, filter results, get detailed flight information, and generate booking links.

https://github.com/user-attachments/assets/87d79d54-c4ab-4938-9792-18572315f1ba

How to use

You can either use the remote MCP server or deploy your own instance:

  • Remote MCP
    A public instance is available at:
    https://findflights.me/sse
    This server uses the SSE transport protocol and is ready to use without setup.

    ⚠️ Important: Currently not all LLM clients support remote MCP connections. For example, Claude.ai supports remote MCP integrations only on Pro+ plans.

  • Self-Hosted Deployment
    If you prefer to run your own server, follow the instructions in the Installation section.

    Note: To deploy your own server, you must obtain an Aviasales API Key and Marker ID.

Related MCP server: Google-Flights-MCP-Server

Features

  • Flight Search: Search for one-way, round-trip, and multi-city flights

  • Advanced Filtering: Filter results by price, duration, airlines, departure/arrival times, and number of stops

  • Multiple Sorting Options: Sort by price, departure time, arrival time, or duration

  • Detailed Flight Information: Get comprehensive flight details including baggage allowances and airline information

  • Booking Links: Generate booking links for selected flights

  • Local Storage: Performed searches are stored locally so LLM can access past searches without waiting

  • Multiple MCP Transport Options: Supports stdio, HTTP, and SSE transports

Installation

Prerequisites

  • Aviasales API key

  • Python 3.12 or higher

  • UV package manager

Setup

  1. Clone the repository:

git clone <repository-url>
cd flights-mcp
  1. Set up environment variables (see Environment Variables section)

  2. Run the server

uv run src/flights-mcp/main.py

The server binds to 0.0.0.0, making it accessible on all network interfaces of the host machine.

Environment Variables

The following environment variables are required:

  • FLIGHTS_AVIASALES_API_TOKEN (required): Your Aviasales API token

  • FLIGHTS_AVIASALES_MARKER (required): Your Aviasales marker ID

  • FLIGHTS_TRANSPORT (optional): Transport protocol to use

    • Options: stdio (default), streamable_http, sse

  • FLIGHTS_HTTP_PORT (optional): Port for HTTP/SSE transport

    • Only used when FLIGHTS_TRANSPORT is streamable_http or sse

    • Default: 4200

  • FLIGHTS_HTTP_PATH (optional): URI path for the endpoint

    • Only used when FLIGHTS_TRANSPORT is streamable_http or sse

    • Default: /mcp

MCP Tools

The server provides the following MCP tools:

Tool

Description

search_flights

Searches for flights using the Aviasales Flight Search API. Returns search description with search_id and summary of found options.

get_flight_options

Retrieves, filters, and sorts flight options from a previous search. Returns a paginated list of filtered flight options.

get_flight_option_details

Returns detailed flight information including segments, pricing, baggage allowances, and agency terms.

request_booking_link

Generates a booking link for a specific flight option.

Typical Usage Pattern

  1. Search for flights using search_flights() - Call multiple times for flexible dates

  2. Filter and browse options using get_flight_options() - Lightweight tool, call multiple times with different filters and sorting option

  3. Get detailed information using get_flight_option_details() - For user's preferred options

  4. Generate booking link using request_booking_link() - Only when user confirms booking intent

Support

For issues related to:

Available Tools

4 tools
get_flight_option_detailsA

Retrieve detailed information about a specific flight option from the search results. This tool provides detailed information about a flight option, including its segments, price, baggage info. It is useful for getting more granular information about a specific flight option.

Inputs: search_id (required), offer_id (required).

get_flight_optionsA

Get flight options from the previously performed search. This tool allows you to filter the found flight options by price, departure and arrival times, and airlines. It returns a paginated list of flight options that match the specified filters and sorting option.IMPORTANT: This is very cheap operation, so you can call it as many times as needed to find the best flight options.

Inputs: search_id (required), filters (required), page, page_size.

search_flightsA

Search for flights using the Aviasales Flight Search API. This tool performs search based on the provided flight segments, number of passengers, trip class, currency, and locale. It provides search_id and description of search results and saves found options internally.After receiving the result client can use get_flight_options tool to retrieve the found options with more granular filters.IMPORTANT: All times are local to departure/arrival locations and use HH:MM 24-hour format.IMPORTANT: Call this tool as many times as needed to find the best flight options.

Inputs: request (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.9/5.0

    Scored across 4 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose in the flight booking workflow: search_flights initiates a search, get_flight_options retrieves and filters results, get_flight_option_details provides granular details, and request_booking_link handles final booking. There is no functional overlap between these tools.

    Naming Consistency5/5

    All tools follow a consistent verb_noun naming pattern (search_flights, get_flight_options, get_flight_option_details, request_booking_link) with clear, descriptive names that accurately reflect their functions.

    Tool Count5/5

    Four tools is well-scoped for a flight search and booking server, covering the essential workflow from search to booking without being overly sparse or bloated. Each tool earns its place in the sequence.

    Completeness4/5

    The toolset covers the core flight search and booking workflow effectively, but lacks explicit tools for operations like canceling bookings, managing user profiles, or handling payment details, which might be expected in a comprehensive flight booking system.

    Maintenance

    ActivityInactive
    ResponsivenessLimited data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      C
      quality
      D
      maintenance
      Enables searching and retrieving detailed flight information using the Duffel API, supporting various flight types and flexible search parameters for efficient travel planning.
      3
      233
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      An MCP server that provides flight search capabilities using the Aviasales API, allowing users to search, filter, and get details on flights and generate booking links.
      4
      GPL 3.0