FlightPayback
Free check: does an airline owe you cash for a delayed or cancelled flight in Canada?
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"flightpayback": {
"url": "https://myflightpayback.com/mcp"
}
}
}Puntos de conexión remotos
https://myflightpayback.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (3)
🟢find_airport(query)
Search airports by city, name or IATA code. Returns up to 8 matches with their IATA codes; Canadian airports are listed first.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 60,
"description": "City, airport name or code, e.g. \"toronto\" or \"YUL\"."
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢find_airline(query)
Find an airline’s 2-character code from a flight number (e.g. "AC 857") or a name (e.g. "WestJet"). An airline missing from the list can still be checked by its code.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 60,
"description": "A flight number or an airline name."
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢check_flight_compensation(disruption, originIata, destinationIata, connectionIatas, marketingCarrierIata, ...)
Check whether an airline owes cash compensation for a delayed or cancelled flight under Canada's Air Passenger Protection Regulations, and how much. Ask the passenger for every answer; don't guess. Returns the verdict, amount per passenger and the last day to file. General information, not legal advice.
Esquema de entrada
{
"type": "object",
"properties": {
"disruption": {
"type": "string",
"enum": [
"delay",
"cancellation"
],
"description": "Was the flight delayed or cancelled?"
},
"originIata": {
"type": "string",
"pattern": "^[A-Z]{3}$",
"description": "IATA code of the departure airport, e.g. YYZ. Use find_airport if unsure."
},
"destinationIata": {
"type": "string",
"pattern": "^[A-Z]{3}$",
"description": "IATA code of the FINAL destination on the original ticket (not a connection)."
},
"connectionIatas": {
"default": [],
"description": "IATA codes of connecting airports, in order. Empty for a direct flight.",
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Z]{3}$"
}
},
"marketingCarrierIata": {
"type": "string",
"pattern": "^[A-Z0-9]{2}$",
"description": "2-character code of the airline on the ticket: the letters of the flight number, e.g. AC for AC 857."
},
"operatingCarrierIata": {
"description": "Only if a different airline actually flew the plane (\"operated by ...\"): its 2-character code.",
"type": "string",
"pattern": "^[A-Z0-9]{2}$"
},
"charter": {
"type": "string",
"enum": [
"no",
"yes",
"unsure"
],
"description": "Was it a charter or package-holiday flight? Use \"unsure\" if the passenger does not know."
},
"flightDate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Original scheduled departure date, YYYY-MM-DD."
},
"scheduledArrival": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}$",
"description": "Scheduled arrival at the final destination, as on the original ticket, local time there: YYYY-MM-DDTHH:mm."
},
"actualArrival": {
"description": "Required if outcome is \"travelled\": when the passenger actually arrived at the final destination (aircraft door opened), local time there: YYYY-MM-DDTHH:mm.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}$"
},
"outcome": {
"type": "string",
"enum": [
"travelled",
"refunded",
"other"
],
"description": "\"travelled\" = reached the destination (original or new flight); \"refunded\" = took a refund instead; \"other\" = e.g. made their own way."
},
"delayAtRefundAtLeast3h": {
"description": "Only for a delayed flight where the passenger took a refund: was it at least 3 hours late at that point?",
"type": "boolean"
},
"notice": {
"type": "string",
"enum": [
"within_14_days",
"more_than_14_days"
],
"description": "When did the airline tell the passenger? \"within_14_days\" includes being told at the airport."
},
"reason": {
"type": "string",
"enum": [
"crew_shortage",
"scheduled_maintenance",
"schedule_or_aircraft_change",
"airline_it_problem",
"mechanical_issue",
"safety_other",
"weather",
"air_traffic_control",
"airport_operations",
"security_threat",
"medical_emergency",
"wildlife_strike",
"labour_disruption",
"manufacturer_defect",
"government_or_police_order",
"war_or_unrest",
"illegal_act",
"no_reason_given",
"not_remembered",
"other"
],
"description": "The reason the airline gave, mapped to the closest value. Airline operations: crew_shortage (Crew or staff shortage), scheduled_maintenance (Scheduled maintenance), schedule_or_aircraft_change (Schedule change or aircraft swap), airline_it_problem (Airline's computer or IT problem). Safety: mechanical_issue (Mechanical or technical problem), safety_other (Another safety reason). Outside the airline: weather (Weather), air_traffic_control (Air traffic control), airport_operations (Airport problem (e.g. de-icing, runway, fuelling)), security_threat (Security threat), medical_emergency (Medical emergency), wildlife_strike (Bird or wildlife strike), labour_disruption (Strike or labour disruption), manufacturer_defect (Aircraft defect announced by the manufacturer or regulator), government_or_police_order (Order from government, police or airport security), war_or_unrest (War or political unrest), illegal_act (Sabotage or another illegal act). Not sure: no_reason_given (They didn't give a clear reason), not_remembered (I don't remember), other (Something else)."
},
"blamedEarlierFlight": {
"type": "boolean",
"description": "Did the airline say the problem was caused by an earlier flight?"
},
"acceptedVoucherInWriting": {
"type": "boolean",
"description": "Did the passenger accept a voucher or credit instead of cash, in writing?"
},
"alreadyCompensated": {
"type": "boolean",
"description": "Has the passenger already been paid compensation for this disruption (by the airline or under another country's rules)?"
}
},
"required": [
"disruption",
"originIata",
"destinationIata",
"marketingCarrierIata",
"charter",
"flightDate",
"scheduledArrival",
"outcome",
"notice",
"reason",
"blamedEarlierFlight",
"acceptedVoucherInWriting",
"alreadyCompensated"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"verdict": {
"type": "string",
"enum": [
"eligible",
"may_be_eligible",
"possibly_settled",
"not_eligible",
"out_of_scope"
]
},
"amountCadMin": {
"type": [
"number",
"null"
]
},
"amountCadMax": {
"type": [
"number",
"null"
]
},
"lastDayToFile": {
"type": [
"string",
"null"
]
},
"deadlineSoon": {
"type": "boolean"
},
"euOrUkRulesMayAlsoApply": {
"type": "boolean"
},
"whereToClaim": {
"anyOf": [
{
"type": "object",
"properties": {
"airline": {
"type": "string"
},
"label": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"airline",
"label",
"url"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"moreInfo": {
"type": "string"
}
},
"required": [
"verdict",
"amountCadMin",
"amountCadMax",
"lastDayToFile",
"deadlineSoon",
"euOrUkRulesMayAlsoApply",
"whereToClaim",
"moreInfo"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Comunidad
Evidencia