MCP Connector

Access Real-Time Aviation Data

An MCP server for AviationStack - live and historical flights, aircraft details, and airport/airline reference data.

Works with aviationstack

91
Spark score
out of 100
Updated 17 days ago
Version 1.6.0
Models
universal

Add to Favorites

Why it matters

Leverage the AviationStack API to retrieve real-time flight data, schedules, and detailed aircraft information for your data analysis needs.

Outcomes

What it gets done

01

Retrieve real-time and future flight schedules by airline and airport.

02

Access detailed information on aircraft types and specific airplanes.

03

Obtain comprehensive data on countries and cities relevant to aviation.

04

Integrate flight data into your applications via a structured API.

Install

Add it to your toolbox

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/vb-aviationstack | bash

Capabilities

Tools your agent gets

flights_with_airline

Get a random sample of flights for a specific airline

flight_arrival_departure_schedule

Get arrival or departure schedule for a specified airport and airline

future_flights_arrival_departure_schedule

Get future flight schedule for a specified airport, airline, and date

random_aircraft_type

Get random aircraft types

random_airplanes_detailed_info

Get detailed information about random airplanes

random_countries_detailed_info

Get detailed information about random countries

random_cities_detailed_info

Get detailed information about random cities

Overview

Aviationstack MCP Server

This MCP server exposes 12 tools for the AviationStack API: flight schedules by airline/airport/date, random aircraft and location lookups, and searchable airport/airline/route/tax listings. Use it when an AI assistant needs flight schedules or aviation reference data. Requires an AviationStack API key; historical flight lookups need a Basic plan or higher.

What it does

An MCP server exposing the AviationStack API as 12 tools covering flight, aircraft, and reference data. Flight tools: flights_with_airline returns a random sample of flights for a named airline; historical_flights_by_date fetches historical flights for a given date with optional airline/departure/arrival IATA filters (requires a Basic plan or higher); flight_arrival_departure_schedule returns arrival or departure schedules for a specific airport and airline; and future_flights_arrival_departure_schedule returns future scheduled flights for an airport, airline, and date. Random-sample lookup tools: random_aircraft_type, random_airplanes_detailed_info, random_countries_detailed_info, and random_cities_detailed_info each return a requested count of random records. Reference-data listing tools: list_airports, list_airlines, list_routes, and list_taxes all support limit/offset pagination, and list_airports/list_airlines/list_taxes additionally support a free-text search filter while list_routes filters by airline/departure/arrival IATA codes rather than free text.

When to use - and when NOT to

Use it when an AI assistant needs live or historical flight schedules, aircraft and airplane details, or airport/airline/route/tax reference data - for example, checking a specific airline's current flights, an airport's arrival board, or looking up airport codes by search term. It requires a free or paid AviationStack API key (a free tier is available at signup) and Python 3.13 or newer with the uv package manager. Historical flight lookups specifically require a Basic AviationStack plan or higher - the free tier won't support that tool.

Capabilities

12 tools spanning live/historical/future flight schedules by airline, airport, or date; random-sample lookups for aircraft types, airplanes, countries, and cities; and paginated, searchable listings of airports, airlines, routes, and taxes - all implemented as Python functions decorated with @mcp.tool() on top of the FastMCP class from mcp.server.fastmcp.

How to install

{
  "mcpServers": {
    "Aviationstack MCP": {
      "command": "uvx",
      "args": ["aviationstack-mcp"],
      "env": { "AVIATION_STACK_API_KEY": "<your-api-key>" }
    }
  }
}

That's the recommended zero-clone install via uvx. Alternatively, clone the repository and run it locally by pointing uv's --directory at the cloned src/aviationstack_mcp path and running -m aviationstack_mcp mcp run. Either way, an AVIATION_STACK_API_KEY environment variable is required.

Who it's for

Developers building travel, transportation, or aviation-data applications who want live/historical flight schedules and aviation reference data available through an MCP-compatible AI assistant instead of calling the AviationStack REST API directly - listed in the official modelcontextprotocol/servers community directory as well as Smithery and Glama. Also listed on mcpservers.org and in punkpeye/awesome-mcp-servers under travel and transportation. Distributed under the MIT License, with the main server logic living in server.py.

Source README

Aviationstack MCP Server

This project is an MCP (Model Context Protocol) server that provides a set of tools to interact with the AviationStack API. It exposes endpoints for retrieving real-time and future flight data, aircraft and airplane details, and core reference data (airports, airlines, routes, taxes), making it easy to integrate aviation data into your applications.

You can also find the Aviationstack MCP server in these well-known MCP server repositories for easy access:

Demo

https://github.com/user-attachments/assets/9325fcce-8ecc-4b01-8923-4ccb2f6968f4

Features

  • Get flights for a specific airline
  • Fetch historical flights by date
  • Retrieve arrival and departure schedules for airports
  • Fetch future flight schedules
  • Get random aircraft types
  • Get detailed info on random airplanes
  • Get detailed info on random countries
  • Get detailed info on random cities
  • List airports, airlines, routes, and taxes

All endpoints are implemented as MCP tools and are ready to be used in an MCP-compatible environment.

Prerequisites

  • Aviationstack API Key (You can get a FREE API Key from Aviationstack)
  • Python 3.13 or newer
  • uv package manager installed

Available Tools

Tool Description Parameters
flights_with_airline(airline_name: str, number_of_flights: int) Get a random sample of flights for a specific airline. - airline_name: Name of the airline (e.g., "Delta Air Lines")
- number_of_flights: Number of flights to return
historical_flights_by_date(flight_date: str, number_of_flights: int, airline_iata: str = "", dep_iata: str = "", arr_iata: str = "") Get historical flights for a date (Basic plan+). - flight_date: Date in YYYY-MM-DD format
- number_of_flights: Number of flights to return
- airline_iata: Optional airline IATA filter
- dep_iata: Optional departure airport IATA filter
- arr_iata: Optional arrival airport IATA filter
flight_arrival_departure_schedule(airport_iata_code: str, schedule_type: str, airline_name: str, number_of_flights: int) Get arrival or departure schedules for a given airport and airline. - airport_iata_code: IATA code of the airport (e.g., "JFK")
- schedule_type: "arrival" or "departure"
- airline_name: Name of the airline
- number_of_flights: Number of flights to return
future_flights_arrival_departure_schedule(airport_iata_code: str, schedule_type: str, airline_iata: str, date: str, number_of_flights: int) Get future scheduled flights for a given airport, airline, and date. - airport_iata_code : IATA code of the airport
- schedule_type: "arrival" or "departure"
- airline_iata: IATA code of the airline (e.g., "DL" for Delta)
- date: Date in YYYY-MM-DD format
- number_of_flights: Number of flights to return
random_aircraft_type(number_of_aircraft: int) Get random aircraft types. - number_of_aircraft: Number of aircraft types to return
random_airplanes_detailed_info(number_of_airplanes: int) Get detailed info on random airplanes. - number_of_airplanes: Number of airplanes to return
random_countries_detailed_info(number_of_countries: int) Get detailed info on random countries. - number_of_countries: Number of countries to return
random_cities_detailed_info(number_of_cities: int) Get detailed info on random cities. - number_of_cities: Number of cities to return
list_airports(limit: int = 10, offset: int = 0, search: str = "") List airports. - limit: Number of results to return
- offset: Pagination offset
- search: Optional search query
list_airlines(limit: int = 10, offset: int = 0, search: str = "") List airlines. - limit: Number of results to return
- offset: Pagination offset
- search: Optional search query
list_routes(limit: int = 10, offset: int = 0, airline_iata: str = "", dep_iata: str = "", arr_iata: str = "") List routes. - limit: Number of results to return
- offset: Pagination offset
- airline_iata: Optional airline IATA filter
- dep_iata: Optional departure airport IATA filter
- arr_iata: Optional arrival airport IATA filter
list_taxes(limit: int = 10, offset: int = 0, search: str = "") List aviation taxes. - limit: Number of results to return
- offset: Pagination offset
- search: Optional search query

Development

  • The main server logic is in server.py.
  • All MCP tools are defined as Python functions decorated with @mcp.tool().
  • The server uses the FastMCP class from mcp.server.fastmcp.

MCP Server configuration

To add this server to your favorite MCP client, you can add the following to your MCP client configuration file.

  1. Using uvx without cloning the repository (recommended)
{
  "mcpServers": {
    "Aviationstack MCP": {
      "command": "uvx",
      "args": [
        "aviationstack-mcp"
      ],
      "env": {
        "AVIATION_STACK_API_KEY": "<your-api-key>"
      }
    }
  }
}
  1. By cloning the repository and running the server locally
{
  "mcpServers": {
    "Aviationstack MCP": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/aviationstack-mcp/src/aviationstack_mcp",
        "run",
        "-m",
        "aviationstack_mcp",
        "mcp",
        "run"
      ],
      "env": {
        "AVIATION_STACK_API_KEY": "<your-api-key>"
      }
    }
  }
}

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.