Airfare Brain
True cost of a flight's extras (bags, seats, fees) on 11 European airlines, dated and sourced.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"airfare-brain": {
"url": "https://airfarebrain.com/mcp"
}
}
}Remote endpoints
https://airfarebrain.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (4)
🟢get_capabilities
What Airfare Brain covers: airlines, how fees are researched and dated, what it does NOT do (no live fares, no booking), and the sister tool for car hire.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"airlines": {
"type": "array"
},
"method": {
"type": "string"
},
"error": {
"type": "string"
},
"note": {
"type": "string"
}
},
"additionalProperties": true
}🟢list_airlines
List every airline with a fee table: name, IATA code, the date its fees were checked, and its page.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"airlines": {
"type": "array"
},
"error": {
"type": "string"
},
"note": {
"type": "string"
}
},
"additionalProperties": true
}🟢airline_fees(airline, category, currency)
One airline's published extra fees (bags, seats, priority, check-in, changes, payment), each with the price range, when bought (at booking / later / airport), how it is charged, its source URL and the date checked. Optionally filter by category.
Input Schema
{
"type": "object",
"properties": {
"airline": {
"type": "string",
"description": "Name or IATA code, e.g. 'Ryanair', 'FR', 'easyJet', 'W6'"
},
"category": {
"type": "string",
"enum": [
"cabin_bag",
"checked_bag",
"seat",
"priority",
"airport_checkin",
"boarding_pass",
"payment",
"name_change",
"flight_change",
"other"
]
},
"currency": {
"type": "string",
"enum": [
"EUR",
"GBP"
]
}
},
"required": [
"airline"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"airline": {
"type": "string"
},
"fees": {
"type": "array"
},
"page": {
"type": "string"
},
"error": {
"type": "string"
},
"note": {
"type": "string"
}
},
"additionalProperties": true
}🟢true_cost(airline, passengers, infants, trip, currency, ...)
The true cost of a flight on one airline. Pass `fare` (the total for the whole party, from a flight-search tool or the person) to get fare + extras; without it you get the extras alone. Extras = what the person chooses (cabin bag, checked bag by kg, seat, priority, infants) for their party and trip, as the range the airline publishes. Also lists what costs more if left until the airport, unchosen fees that may apply (admin, card %), and extras the airline does not publish a price for.
Input Schema
{
"type": "object",
"properties": {
"airline": {
"type": "string",
"description": "Name or IATA code"
},
"passengers": {
"type": "integer",
"minimum": 1,
"maximum": 9,
"description": "People aged 2+ (default 1)"
},
"infants": {
"type": "integer",
"minimum": 0,
"maximum": 4,
"description": "Under-2s on a lap"
},
"trip": {
"type": "string",
"enum": [
"one_way",
"return"
]
},
"currency": {
"type": "string",
"enum": [
"EUR",
"GBP"
]
},
"fare": {
"type": "number",
"description": "Total fare already found for the whole party, if known"
},
"cabin_bag": {
"type": "boolean",
"description": "A large cabin bag for the overhead locker"
},
"checked_bag_kg": {
"type": "integer",
"description": "One checked bag per person of this weight allowance"
},
"seat": {
"type": "string",
"enum": [
"none",
"standard",
"extra"
],
"description": "extra = legroom / front"
},
"priority": {
"type": "boolean"
}
},
"required": [
"airline"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"airline": {
"type": "string"
},
"extras_total": {
"type": "string"
},
"true_cost": {
"type": "string"
},
"lines": {
"type": "array"
},
"page": {
"type": "string"
},
"error": {
"type": "string"
},
"note": {
"type": "string"
}
},
"additionalProperties": true
}Community
Evidence