AirLabs MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| AIRLABS_API_KEY | Yes | Your AirLabs API key |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_flight_statusA | TRIGGER: use automatically (no need for the user to mention 'AirLabs') whenever they ask about the status, arrival/departure time, gate, terminal, or delay of a SPECIFIC flight number — e.g. 'is BA117 on time?', 'when does LH401 land?', 'my flight AA6'. Get the live status of ONE flight by its flight number. Returns scheduled/estimated/actual departure & arrival times, status (scheduled/en-route/landed), terminal, gate, baggage belt, delay minutes, codeshare info, and aircraft details. Returns only the single closest live/scheduled/landed instance of that number. USE CASES: 'Is BA117 on time?', 'What gate is LH401?', 'Will my flight be late?'. INPUT: requires flight_iata OR flight_icao. If the user gives an airline NAME plus a number (e.g. 'Wizz Air 4321'), first call get_airline_info(name) to get the IATA code (W6) and build the flight_iata ('W64321'). NOTE: for ALL daily instances of a recurring number, use get_airport_schedule with flight_iata instead — this tool returns only one. |
| get_airport_scheduleA | TRIGGER: use automatically whenever the user asks what flights leave/arrive at an airport, or about departures/arrivals 'today / now / soon / in the next hours', or which destinations an airline serves from an airport right now — even without naming AirLabs. Get the LIVE departures/arrivals board for an airport (real-time, up to ~10 hours ahead). Each row has dep_time/arr_time, dep_estimated/arr_estimated, status, terminal, gate, delay, airline and flight number. THIS is the tool for questions about WHEN flights leave/arrive 'today' / 'soon' / 'right now'. USE CASES: 'What flights leave JFK today?', 'Show Wizz Air departures from Sofia in the next hours', 'Arrivals at LHR now'. INPUT: query by dep_iata (departures) OR arr_iata (arrivals). You may ADD airline_iata to filter by carrier, and/or flight_iata to list every instance of a number. WORKFLOW for 'Which airports does fly to from soon?':
|
| monitor_delaysA | TRIGGER: use automatically whenever the user asks about delayed flights — 'are flights delayed at ?', 'show departures running late', 'is delayed now?' — without needing to mention AirLabs. List flights currently delayed beyond a threshold, optionally filtered by airport or airline. Returns each delayed flight with its delay in minutes and new estimated time. USE CASES: 'Are arrivals at LAX delayed right now?', 'Show departures delayed 60+ min at JFK', 'Is Ryanair running late today?'. INPUT: requires type ('departures' or 'arrivals'); 'delay' is the minimum minutes to include. Optionally filter by dep_iata/arr_iata and/or airline_iata. If the user gives an airline or airport NAME, resolve it first (get_airline_info / search_airport_code). STATUS NOTE: a delay is most certain once a flight has actually left, so many results are already airborne (status=active) rather than still waiting to depart (status=scheduled). This is correct data, not an error. If the user specifically wants only flights that have NOT departed yet, keep status=scheduled; if they want what is delayed in the air right now, keep active. If they are not specific, show all matches and label each with its status — do not silently hide delayed flights just because they are already airborne. |
| track_live_flightsA | TRIGGER: use automatically whenever the user asks where aircraft are flying right now, to see planes over an area/on a map, or the live position of a specific aircraft/airline — without naming AirLabs. Get LIVE aircraft positions (lat, lng, altitude, speed, heading, squawk) for aircraft in the air right now. This is positional/map data — NOT schedule times. USE CASES: 'Show planes over New York', 'Where is aircraft N790AN right now?', 'Plot all Lufthansa flights currently airborne'. INPUT: filter by bbox (a map area), or by airline_iata, reg_number, flight_iata, dep_iata/arr_iata, or hex. Without filters it returns a very large global list — always filter or pass a bbox. For 'when does it depart/arrive' use get_airport_schedule or get_flight_status instead. |
| find_routesA | TRIGGER: use automatically whenever the user asks which airlines fly a route, whether a nonstop exists between two places, or on which days a route operates — without naming AirLabs. Look up the ROUTE timetable: which airlines operate a route and on which DAYS OF THE WEEK, with scheduled clock times (no live status). This is a planning/reference database, NOT real-time — use it for 'which airlines fly X to Y' and 'what days does this run', NOT for 'is it on time today'. USE CASES: 'Which airlines fly London to Tokyo?', 'What days does Wizz Air fly Sofia to London?', 'Does anyone fly nonstop A to B?'. INPUT: filter by dep_iata and/or arr_iata and/or airline_iata (resolve names to codes first). For 'soon/today with times', use get_airport_schedule instead. |
| find_nearest_airportA | TRIGGER: use automatically whenever the user asks for the closest/nearest airport to a location or coordinate — without naming AirLabs. Find airports (and nearby cities) around a geographic coordinate, sorted by distance. USE CASES: 'Closest airport to me', 'Airports within 50 km of these coordinates'. INPUT: requires lat, lng and a distance (km). If omitted, distance defaults to 50. If the user names a place instead of coordinates, use search_airport_code first to get its lat/lng, or just search_airport_code if they only need the airport code. |
| search_airport_codeA | TRIGGER: use automatically (often as the FIRST step of a chain) whenever the user names a city/country/airport in words and a code is needed, or asks 'what's the code for ' or 'airports in ' — without naming AirLabs. Autocomplete/resolve a PLACE name (airport, city, or country) into its IATA/ICAO code. Returns matched airports, cities, countries, and the airports belonging to a matched city or country. USE CASES: 'What's the code for Sofia?' -> SOF; 'airports in Spain' -> uses airports_by_countries. Call this FIRST whenever the user gives a city/country NAME and you need a code for get_airport_schedule, find_routes, or find_nearest_airport. IMPORTANT: this does NOT resolve AIRLINE names. To turn an airline name (e.g. 'Wizz Air') into its code, use get_airline_info(name=...) instead. |
| get_airline_infoA | TRIGGER: use automatically whenever the user asks about an airline (details, IATA/ICAO code, fleet size, country, safety), or names an airline that must be turned into a code for another query — without naming AirLabs. Look up airline(s) in the airlines database. Returns name, IATA & ICAO codes, callsign, country, fleet size, average fleet age, cargo/passenger/scheduled flags, safety stats and social links. USE CASES: 'Tell me about United', 'What's Wizz Air's IATA code?', 'How big is Ryanair's fleet?', 'List airlines in Bulgaria' (country_code='BG'). KEY WORKFLOW ROLE: this is how you turn an AIRLINE NAME into a CODE. Call get_airline_info(name='Wizz Air') to get iata_code 'W6', then use 'W6' in get_airport_schedule / find_routes / monitor_delays. (search_airport_code does NOT do airlines — only places.) INPUT: provide name (fuzzy), or iata_code/icao_code (exact), or country_code to list a country's carriers. |
| get_airport_infoA | TRIGGER: use automatically whenever the user asks about an airport's details (full name, city, country, timezone, coordinates, runways), or to expand an airport code into a full name — without naming AirLabs. Look up airport(s) in the airports database by code. Returns full name, city, country, coordinates, elevation, timezone, runways, yearly departures and localized names. USE CASES: 'What's the full name of LHR?', 'Where is SOF?', 'List all airports in Bulgaria' (country_code='BG'), 'airports in the PAR city group' (city_code='PAR'). WORKFLOW ROLE: after get_airport_schedule or find_routes returns destination codes (arr_iata), call this per code to give the user full airport NAMES instead of bare codes. INPUT: iata_code or icao_code (one airport), or country_code/city_code (a list). |
| lookup_aircraftA | TRIGGER: use automatically whenever the user asks about a specific aircraft (by tail/registration number or hex), its type/age/model, or about an airline's fleet — without naming AirLabs. Look up aircraft in the fleets database. Returns type, model, manufacturer, age, build year, engines, wake category, owner airline, and latest known position (when queried by a specific aircraft). USE CASES: 'What aircraft is N790AN?' (reg_number), 'Look up hex AAB812', 'Show Wizz Air's fleet' (airline_iata='W6'), 'How old is this plane?'. INPUT: reg_number, hex, or msn for ONE aircraft; airline_iata/airline_icao to list a carrier's fleet (use limit to cap size). If given an airline NAME, resolve via get_airline_info first. Latest geo-position is only included when you query by a specific aircraft (reg_number, hex, or msn). |
| get_city_infoA | TRIGGER: use when the user asks about an aviation city code/grouping or to list cities of a country in an aviation context — not for general geography questions. Look up cities in the world cities database by code or country. Returns city name, code, country, coordinates, timezone and population/popularity. USE CASES: 'Details for the LON city group', 'List cities in Bulgaria' (country_code='BG'). For turning a city NAME into a code, prefer search_airport_code (it also returns the airports for that city). |
| get_country_infoA | TRIGGER: use mainly as a helper to resolve a country NAME to its ISO-2 code for filtering airlines/airports — not for general country facts. Look up countries in the countries database. Returns ISO-2/ISO-3 codes, name, continent and currency. USE CASES: 'What's the country code for Bulgaria?' (-> BG), 'currency of Spain'. Useful to resolve a country NAME to its ISO-2 code before filtering airlines/airports by country_code. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
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/airlabs-co/airlabs-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server