Award Travel Finder
Qué hace este MCP
Searches award flights and hotels, tracks bookings and loyalty balances, evaluates points and credit cards, and monitors travel redemptions.
Herramientas
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['airline', 'origin', 'destination', 'departure_date', 'cabin_class'], 'properties': {'kind': {'enum': ['award', 'cash'], 'type': 'string', 'description': 'award = points/miles redemption (default); cash = paid with money. Defaults to award.'}, 'notes': {'type': 'string'}, 'origin': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'airline': {'type': 'string'}, 'program': {'type': 'string', 'description': 'Award bookings only. Loyalty program used.'}, 'trip_id': {'type': 'string', 'description': 'Optional UUID grouping legs of the same multi-leg booking. Generate once and reuse for all legs. Omit for single-leg bookings.'}, 'cash_paid': {'type': 'number', 'minimum': 0, 'description': 'Cash bookings only. Total cash fare paid for this leg, in taxes_currency (default USD).'}, 'passengers': {'type': 'integer', 'minimum': 1}, 'taxes_paid': {'type': 'number'}, 'cabin_class': {'enum': ['economy', 'premium_economy', 'business', 'first'], 'type': 'string'}, 'destination': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'return_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'points_spent': {'type': 'integer', 'minimum': 0, 'description': 'Award bookings only. Total points for this leg. Use 0 for connecting legs — put the full booking cost on the first leg only.'}, 'flight_number': {'type': 'string'}, 'departure_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'taxes_currency': {'type': 'string', 'description': 'Currency for taxes_paid and cash_paid. Defaults to USD.'}, 'workspace_trip_id': {'type': 'integer', 'description': 'Optional id of a workspace Trip (from create_trip / list_trips) to file this flight under, so it shows grouped with the matching hotels. Distinct from trip_id, which only chains multi-leg legs.'}, 'confirmation_number': {'type': 'string'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['hotel_id', 'check_in_date', 'check_out_date'], 'properties': {'kind': {'enum': ['award', 'cash'], 'type': 'string', 'description': 'award = points stay with price-drop monitoring (default); cash = paid with money. Defaults to award.'}, 'notes': {'type': 'string'}, 'trip_id': {'type': 'integer', 'description': 'Optional id of a workspace Trip (from create_trip / list_trips) to file this stay under.'}, 'hotel_id': {'type': 'string', 'description': 'Hotel identifier from search_hotels / get_hotel_availability results.'}, 'rate_plan': {'type': 'string'}, 'room_type': {'type': 'string'}, 'check_in_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'check_out_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'original_points': {'type': 'integer', 'minimum': 1, 'description': 'Award bookings only. Total points paid for the stay.'}, 'cash_rate_currency': {'type': 'string', 'description': 'Currency of original_pay_rate_usd. Defaults to USD.'}, 'confirmation_number': {'type': 'string'}, 'original_pay_rate_usd': {'type': 'number', 'minimum': 0, 'description': 'Cash rate paid for the stay (required for cash bookings; optional cash-equivalent for award bookings).'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['voucher_slug'], 'properties': {'notes': {'type': 'string'}, 'reference': {'type': 'string', 'description': 'Voucher code or membership reference.'}, 'expires_on': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Voucher expiry date (YYYY-MM-DD).'}, 'voucher_slug': {'type': 'string', 'description': "Slug from list_voucher_types, e.g. 'ba-amex-premium-plus-companion'."}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['voucher_id'], 'properties': {'booking_id': {'type': 'integer', 'minimum': 1, 'description': 'ID of the booking to apply the voucher to. Omit to detach.'}, 'voucher_id': {'type': 'integer', 'minimum': 1, 'description': "ID of the user's voucher (from list_my_vouchers)."}, 'booking_type': {'enum': ['flight', 'hotel'], 'type': 'string', 'description': 'Whether booking_id refers to a flight redemption or a hotel booking.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['trip_id'], 'properties': {'trip_id': {'type': 'integer', 'description': 'Target workspace Trip id.'}, 'hotel_booking_ids': {'type': 'array', 'items': {'type': 'integer'}, 'description': 'Hotel booking ids to file under the trip.'}, 'flight_booking_ids': {'type': 'array', 'items': {'type': 'integer'}, 'description': 'Flight redemption ids to file under the trip.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['chain', 'folio_text'], 'properties': {'chain': {'enum': ['marriott', 'hilton', 'hyatt', 'ihg'], 'type': 'string'}, 'stay_type': {'enum': ['award', 'cash', 'points_advance'], 'type': 'string'}, 'folio_text': {'type': 'string'}, 'status_tier': {'type': 'string'}, 'confirmation_number': {'type': 'string'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['folio_text'], 'properties': {'stay_type': {'enum': ['award', 'cash', 'points_advance'], 'type': 'string'}, 'folio_text': {'type': 'string'}, 'status_tier': {'enum': ['member', 'silver', 'gold', 'platinum', 'titanium', 'ambassador'], 'type': 'string'}, 'confirmation_number': {'type': 'string'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['origin', 'destination', 'program'], 'properties': {'cabin': {'type': 'string', 'default': 'economy', 'description': 'Cabin: economy, premium, business, or first.'}, 'origin': {'type': 'string', 'description': "Origin airport IATA code, e.g. 'LHR'."}, 'program': {'type': 'string', 'description': "Qualifying program slug: 'british-airways-executive-club', 'air-france-klm-flying-blue', or 'american-aadvantage'."}, 'segments': {'type': 'integer', 'minimum': 1, 'description': 'Number of flight segments/legs (multiplies Flying Blue XP). Default 1.'}, 'fare_price': {'type': 'number', 'description': 'Fare price for revenue-based programs (BA Tier Points, AA Loyalty Points). Base fare + carrier surcharges, excluding taxes.'}, 'destination': {'type': 'string', 'description': "Destination airport IATA code, e.g. 'JFK'."}, 'fare_currency': {'type': 'string', 'description': "ISO currency of fare_price (e.g. GBP, USD, EUR). Defaults to the program's home currency."}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monitor_id'], 'properties': {'monitor_id': {'type': 'integer'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['standing_order_id'], 'properties': {'standing_order_id': {'type': 'integer'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monthly_spending'], 'properties': {'limit': {'type': 'number', 'description': 'Max cards to return (default 10).'}, 'region': {'enum': ['US', 'UK', 'AU', 'DE', 'FR', 'IT', 'ES', 'NL'], 'type': 'string', 'description': 'Region of cards to evaluate. Defaults to US.'}, 'card_type': {'enum': ['personal', 'business'], 'type': 'string'}, 'monthly_spending': {'type': 'array', 'items': {'type': 'object', 'required': ['category', 'amount'], 'properties': {'amount': {'type': 'number'}, 'category': {'type': 'string'}}}, 'description': "Array of {category, amount} for the user's typical monthly spend. Amounts in the local currency of the chosen region."}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['ids'], 'properties': {'ids': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 4, 'minItems': 2, 'description': 'Card ids to compare, e.g. ["amex-gold-us", "chase-sapphire-preferred"].'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['category'], 'properties': {'limit': {'type': 'number', 'description': 'Max results (default 10).'}, 'region': {'enum': ['US', 'UK', 'AU', 'DE', 'FR', 'IT', 'ES', 'NL'], 'type': 'string'}, 'category': {'type': 'string', 'description': 'Spend category — supports UK/AU terms like "petrol", "chemist", "woolworths".'}, 'card_type': {'enum': ['personal', 'business'], 'type': 'string'}, 'min_multiplier': {'type': 'number', 'description': 'Only return cards at or above this multiplier.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['partner_name'], 'properties': {'region': {'enum': ['US', 'UK', 'AU', 'DE', 'FR', 'IT', 'ES', 'NL'], 'type': 'string', 'description': 'Filter to programs from a specific region.'}, 'partner_name': {'type': 'string', 'description': 'Airline or hotel name, e.g. "Qantas", "Virgin Atlantic", "Hyatt".'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Card id, e.g. "amex-gold-us". Use list_cards to discover ids.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'region': {'enum': ['US', 'UK', 'AU', 'DE', 'FR', 'IT', 'ES', 'NL'], 'type': 'string', 'description': 'Filter by region/country.'}, 'provider': {'enum': ['amex', 'chase', 'bilt', 'capital-one', 'anz', 'nab', 'westpac', 'cba', 'barclaycard', 'hsbc', 'virgin-money', 'lloyds', 'currensea', 'yonder', 'other'], 'type': 'string', 'description': 'Filter by issuer.'}, 'card_type': {'enum': ['personal', 'business'], 'type': 'string', 'description': 'Filter by personal vs business.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'days': {'type': 'number', 'description': 'Look back this many days (default 30).'}, 'limit': {'type': 'number', 'description': 'Max results (default 50).'}, 'card_id': {'type': 'string', 'description': 'Filter to changes for one card.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'region': {'enum': ['US', 'UK', 'AU', 'DE', 'FR', 'IT', 'ES', 'NL'], 'type': 'string', 'description': 'Filter to programs from a specific region.'}, 'provider': {'type': 'string', 'description': 'Filter to one provider, e.g. "amex" or "anz".'}, 'partner_type': {'enum': ['airline', 'hotel'], 'type': 'string'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'number', 'description': 'Max results (default 20).'}, 'region': {'enum': ['US', 'UK', 'AU', 'DE', 'FR', 'IT', 'ES', 'NL'], 'type': 'string'}, 'card_type': {'enum': ['personal', 'business'], 'type': 'string'}, 'min_value': {'type': 'number', 'description': 'Minimum bonus point/mile value.'}, 'monthly_spend': {'type': 'number', 'description': "Monthly spend in the card's local currency. If provided, only includes bonuses where required spend ≤ monthly_spend × months."}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['target_program', 'points_needed'], 'properties': {'points_needed': {'type': 'integer', 'minimum': 1, 'description': 'How many target-program points the redemption costs'}, 'target_program': {'type': 'string', 'description': "The program you need points in (e.g. 'Asia Miles', 'Avios', 'Aeroplan', 'Virgin Points')"}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['provider'], 'properties': {'provider': {'enum': ['seats_aero', 'award_wallet', 'google_sheets', 'tripit', 'autopilot'], 'type': 'string', 'description': 'Which integration to connect'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['origin', 'destination', 'earliest_date', 'latest_date'], 'properties': {'cabin': {'enum': ['economy', 'premium_economy', 'business', 'first'], 'type': 'string'}, 'origin': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'airlines': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional airline filter; omit to watch all supported carriers'}, 'max_points': {'type': 'integer', 'description': 'Only fire when points <= this cap'}, 'passengers': {'type': 'integer', 'maximum': 9, 'minimum': 1}, 'destination': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'latest_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'earliest_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['prompt'], 'properties': {'prompt': {'type': 'string', 'description': 'The self-contained instruction to run each time. No conversation context is carried over.'}, 'cadence': {'enum': ['daily', 'weekly'], 'type': 'string', 'description': 'Defaults to weekly.'}, 'trip_id': {'type': 'integer', 'description': 'Optional trip to file this order under.'}, 'run_hour': {'type': 'integer', 'maximum': 23, 'minimum': 0, 'description': 'Hour of day in UTC to run. Defaults to 7.'}, 'run_weekday': {'type': 'integer', 'maximum': 6, 'minimum': 0, 'description': '0=Sunday … 6=Saturday. Weekly cadence only. Defaults to Monday (1).'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': "Trip name, e.g. 'Tokyo with the family'"}, 'end_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'start_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'destination': {'type': 'string', 'description': 'Primary destination (city or airport)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['booking_id'], 'properties': {'booking_id': {'type': 'integer', 'minimum': 1}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['booking_id'], 'properties': {'booking_id': {'type': 'integer', 'minimum': 1}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['visit_id'], 'properties': {'visit_id': {'type': 'integer', 'description': 'Id of the logged visit, from list_lounge_visits.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['program'], 'properties': {'program': {'type': 'string'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['program'], 'properties': {'program': {'type': 'string', 'description': 'Loyalty program name to remove (as shown by list_points_balances)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['trip_id'], 'properties': {'trip_id': {'type': 'integer', 'description': 'Trip id to remove. Use list_trips to find it.'}, 'permanently': {'type': 'boolean', 'description': 'Delete the trip and its itinerary for good instead of archiving. Defaults to false.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['voucher_id'], 'properties': {'voucher_id': {'type': 'integer', 'minimum': 1}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['provider'], 'properties': {'provider': {'enum': ['seats_aero', 'award_wallet', 'google_sheets', 'tripit', 'autopilot'], 'type': 'string'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'city': {'type': 'string', 'description': "City name to search (e.g. 'Tokyo', 'Maldives'). Optional — omit to list all premium hotels."}, 'program': {'enum': ['any', 'amex_fhr', 'amex_thc', 'chase_edit'], 'type': 'string', 'description': 'Filter by program. Default: any.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['from_program', 'target_program'], 'properties': {'max_hops': {'type': 'integer', 'maximum': 3, 'minimum': 1, 'description': 'Max transfer steps to consider (default 3)'}, 'from_program': {'type': 'string', 'description': "Program you have points in (e.g. 'Amex Membership Rewards', 'Chase', 'Marriott Bonvoy')"}, 'points_needed': {'type': 'integer', 'minimum': 1, 'description': 'Optional: how many target-program points you need. Returns source points required per route.'}, 'target_program': {'type': 'string', 'description': "Program you want points in (e.g. 'American Airlines AAdvantage', 'Alaska', 'Avios')"}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['flight_number', 'flight_date', 'cabin_class', 'seat_preference'], 'properties': {'cabin_class': {'enum': ['economy', 'premium_economy', 'business', 'first'], 'type': 'string', 'description': 'Cabin class to monitor'}, 'flight_date': {'type': 'string', 'description': 'Flight date in YYYY-MM-DD format. Must be today or within the next 60 days.'}, 'flight_number': {'type': 'string', 'description': "Flight number, e.g. 'QF1', 'AA716'"}, 'specific_seat': {'type': 'string', 'description': "Required when seat_preference is 'specific' (e.g. '12A')"}, 'seat_preference': {'enum': ['window', 'aisle', 'bulkhead', 'exit_row', 'extra_legroom', 'quiet_zone', 'front_of_cabin', 'rear_of_cabin', 'specific', 'adjacent_seats', 'minimum_seats', 'class_availability', 'better_seat_upgrade'], 'type': 'string', 'description': 'Seat preference to alert on'}, 'adjacent_seats_count': {'type': 'integer', 'maximum': 9, 'minimum': 2, 'description': "Required when seat_preference is 'adjacent_seats' or 'minimum_seats' (2-9)"}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['alert_id'], 'properties': {'alert_id': {'type': 'integer', 'description': 'ID of the seat alert to delete'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['flight_number', 'preferences'], 'properties': {'cabin_class': {'enum': ['economy', 'premium_economy', 'business', 'first'], 'type': 'string', 'description': 'Optional cabin class filter'}, 'flight_date': {'type': 'string', 'description': 'Optional flight date in YYYY-MM-DD format'}, 'preferences': {'type': 'array', 'items': {'enum': ['window', 'aisle', 'extra_legroom', 'exit_row', 'quiet_zone', 'front', 'rear', 'bulkhead'], 'type': 'string'}, 'description': 'Seat preferences to match'}, 'flight_number': {'type': 'string', 'description': "Flight number, e.g. 'QF1'"}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['flight_number', 'seat_number'], 'properties': {'flight_date': {'type': 'string', 'description': 'Optional flight date in YYYY-MM-DD format'}, 'seat_number': {'type': 'string', 'description': "Seat number, e.g. '12A', '1F', '32K'"}, 'flight_number': {'type': 'string', 'description': "Flight number, e.g. 'QF1'"}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['flight_number'], 'properties': {'flight_date': {'type': 'string', 'description': 'Optional flight date in YYYY-MM-DD format'}, 'flight_number': {'type': 'string', 'description': "Flight number including airline code, e.g. 'QF1', 'AA716', 'BA178'"}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['flight_number'], 'properties': {'seat_number': {'type': 'string', 'description': "Optional seat number to filter reviews (e.g. '12A')"}, 'flight_number': {'type': 'string', 'description': "Flight number, e.g. 'QF1'"}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['flight_number'], 'properties': {'flight_date': {'type': 'string', 'description': 'Optional flight date in YYYY-MM-DD format'}, 'flight_number': {'type': 'string', 'description': "Flight number, e.g. 'QF1', 'AA716'"}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['flight_number'], 'properties': {'flight_date': {'type': 'string', 'description': 'Flight date in YYYY-MM-DD format (defaults to today)'}, 'flight_number': {'type': 'string', 'description': "Flight number, e.g. 'QF1', 'AA716'"}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['program'], 'properties': {'program': {'type': 'string', 'description': "Programme slug or loose name, e.g. 'aeroplan', 'British Airways', 'avios', 'world-of-hyatt'."}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['airline'], 'properties': {'airline': {'type': 'string', 'description': "IATA code (e.g. 'BA') or carrier name (e.g. 'British Airways')."}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['trip_id'], 'properties': {'trip_id': {'type': 'string', 'description': 'The `trip_id` field from an award search result row'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'program': {'type': 'string', 'description': 'Program slug. Omit to list all available programs.'}, 'quantity': {'type': 'integer', 'minimum': 1, 'description': 'Number of points/miles to price (e.g. 50000).'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['airline'], 'properties': {'airline': {'type': 'string', 'description': "Airline slug or name, e.g. 'british-airways', 'Qatar Airways', 'virgin'."}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['program', 'airline'], 'properties': {'airline': {'type': 'string', 'pattern': '^[A-Z0-9]{2}$', 'description': 'Operating airline IATA code (e.g. AA, BA, QR)'}, 'program': {'enum': ['british-airways', 'aeroplan', 'alaska', 'american-aadvantage', 'virgin-atlantic', 'flying-blue'], 'type': 'string', 'description': 'Loyalty program to credit to'}, 'fare_class': {'type': 'string', 'description': 'Optional booking class letter (e.g. K, M, Y). If omitted, returns the full table for that program×airline.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['booking_id'], 'properties': {'booking_id': {'type': 'integer', 'minimum': 1}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['hotel_code', 'check_in_date', 'check_out_date'], 'properties': {'hotel_code': {'type': 'string', 'description': 'Hotel code or numeric id from search_hotels'}, 'check_in_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'check_out_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['booking_id'], 'properties': {'booking_id': {'type': 'integer', 'minimum': 1}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['carrier', 'departure', 'destination'], 'properties': {'carrier': {'type': 'string', 'description': 'Operating airline IATA code (2 letters, e.g. KE for Korean Air, AF for Air France).'}, 'departure': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'Origin airport IATA code (e.g. ICN).'}, 'destination': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'Destination airport IATA code (e.g. LAX).'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['currency'], 'properties': {'currency': {'type': 'string', 'description': 'Points/miles currency — a slug (chase-ultimate-rewards) or loose name ("amex points", "marriott", "hyatt").'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['airline', 'departure_code', 'arrival_code'], 'properties': {'airline': {'enum': ['british_airways', 'qatar_airways', 'cathay_pacific', 'virgin_atlantic', 'iberia', 'emirates', 'qantas'], 'type': 'string'}, 'arrival_code': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'departure_code': {'type': 'string', 'pattern': '^[A-Z]{3}$'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['program'], 'properties': {'program': {'enum': ['aeroplan', 'aadvantage', 'singapore-krisflyer', 'cathay-asia-miles', 'turkish-miles-smiles', 'ana-mileage-club'], 'type': 'string', 'description': 'Programme slug.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['program'], 'properties': {'program': {'enum': ['british-airways', 'qatar-airways', 'singapore-airlines', 'cathay-pacific', 'emirates', 'etihad', 'flying-blue', 'aeroplan', 'turkish-airlines', 'ana', 'jetblue', 'jet2-emirates', 'virgin-atlantic', 'iberia', 'alaska-airlines', 'american-airlines', 'qantas', 'delta-skymiles', 'united', 'lifemiles', 'marriott-bonvoy', 'hilton-honors', 'hyatt'], 'type': 'string', 'description': 'Loyalty program slug (e.g. british-airways, emirates, aeroplan)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['key'], 'properties': {'key': {'type': 'string', 'description': 'Skill key from list_skills'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'alliance': {'enum': ['SkyTeam', 'Star Alliance', 'oneworld'], 'type': 'string', 'description': 'Filter by airline alliance'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'program': {'type': 'string', 'description': 'Optional — limit to a single program slug. Omit to return all tracked statuses.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['flight_number'], 'properties': {'origin': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'Optional departure airport IATA code'}, 'destination': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'Optional arrival airport IATA code'}, 'flight_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Optional departure date'}, 'flight_number': {'type': 'string', 'pattern': '^[A-Za-z0-9]{2,3}\\s*\\d{1,4}$', 'description': 'Flight code such as BA117 or AA 100'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'minimum': 1, 'description': 'Page number (1-indexed). Defaults to 1.'}, 'status': {'enum': ['all', 'active', 'paused', 'cancelled', 'fired'], 'type': 'string'}, 'per_page': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Items per page (default 20, max 100).'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'include_inactive': {'type': 'boolean', 'description': 'Include cancelled/paused orders. Defaults to false.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'status': {'enum': ['all', 'active', 'archived', 'planning', 'booked', 'completed'], 'type': 'string', 'description': 'Filter by status (default: all)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'region': {'enum': ['UK', 'US'], 'type': 'string', 'description': 'Filter by issuer region.'}, 'category': {'enum': ['companion', 'upgrade', 'companion_pass', 'upgrade_cert'], 'type': 'string', 'description': 'Filter by voucher category.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['airport_code', 'lounge_name', 'visit_date'], 'properties': {'notes': {'type': 'string', 'description': 'Optional notes'}, 'rating': {'type': 'integer', 'maximum': 5, 'minimum': 1, 'description': 'Optional 1-5 rating'}, 'visit_date': {'type': 'string', 'description': 'Date of the visit (YYYY-MM-DD)'}, 'lounge_name': {'type': 'string', 'description': 'Lounge name, e.g. Qantas First Lounge'}, 'airport_code': {'type': 'string', 'description': 'Airport IATA code, e.g. LHR'}, 'access_method': {'type': 'string', 'description': 'How you got in, e.g. Priority Pass, Amex Platinum, business ticket'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['flight_code'], 'properties': {'flight_code': {'type': 'string', 'description': "A flight code like 'BA117', 'AA 1234', or 'EK521'."}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['lounge_slug'], 'properties': {'lounge_slug': {'type': 'string', 'description': 'Lounge slug (from search results)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['lounge_slug'], 'properties': {'lounge_slug': {'type': 'string', 'description': 'Lounge slug of the review to delete'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['lounge_slug'], 'properties': {'visited_at': {'type': 'string', 'format': 'date', 'description': 'Visit date (YYYY-MM-DD) — needed only to disambiguate multiple visits'}, 'lounge_slug': {'type': 'string', 'description': 'Lounge slug of the visit to delete'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['access_method'], 'properties': {'access_method': {'enum': ['amex-platinum', 'chase-sapphire-reserve', 'capital-one-venture-x', 'citi-prestige', 'amex-centurion', 'hilton-aspire', 'marriott-brilliant', 'ritz-carlton', 'bilt-mastercard', 'priority-pass', 'loungekey', 'dragonpass', 'diners-club', 'plaza-premium', 'business-class', 'first-class', 'united-club', 'delta-sky-club', 'admirals-club', 'qantas-club', 'star-alliance', 'oneworld', 'skyteam', 'star-alliance-gold', 'oneworld-emerald', 'oneworld-sapphire', 'skyteam-elite-plus'], 'type': 'string', 'description': 'Access method slug (e.g. amex-platinum, priority-pass, chase-sapphire-reserve, business-class, star-alliance-gold)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['iata'], 'properties': {'iata': {'type': 'string', 'pattern': '^[A-Za-z]{3}$', 'description': 'Airport IATA code (e.g. LHR, JFK, SIN)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'Lounge slug (from search results or airport lounges)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'description': 'Max reviews to return (default 20, max 50)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'description': 'Max visits to return (default 20, max 50)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['network'], 'properties': {'network': {'enum': ['priority-pass', 'loungekey', 'dragonpass', 'plaza-premium', 'amex-centurion'], 'type': 'string', 'description': 'Network slug (priority-pass, loungekey, dragonpass, plaza-premium, amex-centurion)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['visited_at'], 'properties': {'notes': {'type': 'string', 'description': 'Optional notes about your visit'}, 'rating': {'type': 'integer', 'maximum': 5, 'minimum': 1, 'description': 'Your rating, 1 (poor) to 5 (excellent)'}, 'visited_at': {'type': 'string', 'format': 'date', 'description': 'Date of visit (YYYY-MM-DD)'}, 'lounge_name': {'type': 'string', 'description': "Lounge name — use with airport_iata if you don't have the slug."}, 'lounge_slug': {'type': 'string', 'description': 'Lounge slug (from search results). Preferred if known.'}, 'airport_iata': {'type': 'string', 'description': '3-letter airport IATA code — use with lounge_name.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['lounge_slug'], 'properties': {'lounge_slug': {'type': 'string', 'description': 'Lounge slug (from search results)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'query': {'type': 'string', 'minLength': 2, 'description': 'Search query (lounge name, airport name, IATA code, city, or country)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['lounge_slug'], 'properties': {'rating': {'type': 'integer', 'maximum': 5, 'minimum': 1, 'description': 'New rating, 1-5'}, 'content': {'type': 'string', 'minLength': 10, 'description': 'New review text (minimum 10 characters)'}, 'lounge_slug': {'type': 'string', 'description': 'Lounge slug of the review to update'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['lounge_slug'], 'properties': {'notes': {'type': 'string', 'description': 'New notes'}, 'rating': {'type': 'integer', 'maximum': 5, 'minimum': 1, 'description': 'New rating, 1-5'}, 'visited_at': {'type': 'string', 'format': 'date', 'description': 'Existing visit date (YYYY-MM-DD) — needed only to disambiguate multiple visits'}, 'lounge_slug': {'type': 'string', 'description': 'Lounge slug of the visit to update'}, 'new_visited_at': {'type': 'string', 'format': 'date', 'description': 'Change the visit date to this (YYYY-MM-DD)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['lounge_slug', 'rating', 'content'], 'properties': {'rating': {'type': 'integer', 'maximum': 5, 'minimum': 1, 'description': 'Rating from 1 (poor) to 5 (excellent)'}, 'content': {'type': 'string', 'minLength': 10, 'description': 'Review text (minimum 10 characters)'}, 'lounge_slug': {'type': 'string', 'description': 'Lounge slug (from search results)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['hotel_code', 'check_in_date', 'check_out_date', 'original_points', 'room_type', 'rate_plan'], 'properties': {'notes': {'type': 'string'}, 'rate_plan': {'type': 'string'}, 'room_type': {'type': 'string'}, 'hotel_code': {'type': 'string', 'description': 'Hotel code or numeric id from search_hotels'}, 'check_in_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'check_out_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'original_points': {'type': 'integer', 'minimum': 1, 'description': 'TOTAL points cost (per-night rate x nights)'}, 'confirmation_number': {'type': 'string'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['origin', 'destination', 'date'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'cabin': {'enum': ['economy', 'premium_economy', 'business', 'first'], 'type': 'string'}, 'origin': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'passengers': {'type': 'integer', 'maximum': 9, 'minimum': 1}, 'destination': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'flexibility_days': {'type': 'integer', 'maximum': 14, 'minimum': 0, 'description': 'Optional ± days flexibility — if set, also probes adjacent dates'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['origin', 'destination', 'date'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'cabin': {'enum': ['economy', 'premium_economy', 'business', 'first'], 'type': 'string'}, 'origin': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'passengers': {'type': 'integer', 'maximum': 9, 'minimum': 1}, 'destination': {'type': 'string', 'pattern': '^[A-Z]{3}$'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['target_program'], 'properties': {'target_tier': {'type': 'string', 'description': "Optional target tier (e.g. 'Gold'). Defaults to the next tier above the user's current one, or the top tier."}, 'target_program': {'type': 'string', 'description': "Program slug to reach status with — e.g. 'qatar-privilege-club', 'british-airways-executive-club'."}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['blocks'], 'properties': {'title': {'type': 'string', 'description': 'Card heading, e.g. "SFO → NRT in business".'}, 'blocks': {'type': 'array', 'items': {'type': 'object', 'required': ['kind'], 'properties': {'kind': {'enum': ['stats', 'table', 'bars', 'steps', 'list', 'note'], 'type': 'string', 'description': 'Block kind.'}, 'rows': {'type': 'array', 'items': {'type': 'array', 'items': {'type': 'string'}}, 'description': 'table: rows of cell strings.'}, 'text': {'type': 'string', 'description': 'note: the callout body.'}, 'tone': {'enum': ['info', 'warn', 'success', 'danger'], 'type': 'string', 'description': 'note: callout tone.'}, 'unit': {'type': 'string', 'description': 'bars: unit shown after each value, e.g. "pts".'}, 'items': {'type': 'array', 'items': {'type': 'object'}, 'description': 'Rows for stats/bars/steps/list. Objects whose keys depend on the kind.'}, 'caption': {'type': 'string', 'description': 'table: optional caption under the table.'}, 'columns': {'type': 'array', 'items': {'type': 'string'}, 'description': 'table: column headers.'}}}, 'description': 'Blocks to render, in order. Max 10.'}, 'subtitle': {'type': 'string', 'description': 'One-line context under the heading.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['departure_code', 'arrival_code', 'date'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Travel date (YYYY-MM-DD)'}, 'cabin': {'enum': ['economy', 'premium_economy', 'business', 'first'], 'type': 'string', 'description': 'Cabin to unlock and rank by (default: economy). Results list EVERY bookable cabin the airline returned, not just this one — free accounts may only request economy.'}, 'flex_days': {'type': 'integer', 'maximum': 7, 'minimum': 0, 'description': 'Also search this many days either side of the date. Only widens the seats.aero results (all 24 programmes); the per-airline search stays on the exact date.'}, 'arrival_code': {'type': 'string', 'pattern': '^[A-Z]{3}$', 'description': 'Arrival airport IATA code (e.g. JFK)'}, 'departure_code': {'type': 'string', 'pattern': '^[A-Z]{3}$', 'description': 'Departure airport IATA code (e.g. LHR)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['airline', 'departure_code', 'arrival_code', 'date'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'cabin': {'enum': ['economy', 'premium_economy', 'business', 'first'], 'type': 'string', 'description': 'Cabin to unlock and rank by (default: economy). Results list EVERY bookable cabin the airline returned, not just this one — free accounts may only request economy.'}, 'airline': {'enum': ['british_airways', 'qatar_airways', 'cathay_pacific', 'virgin_atlantic', 'iberia', 'alaska_airlines', 'american_airlines', 'qantas', 'jetblue', 'frontier', 'southwest', 'delta', 'etihad', 'emirates', 'japan_airlines', 'united', 'tap_portugal', 'cape_air', 'icelandair', 'condor', 'aer_lingus', 'el_al', 'turkish_airlines', 'ana', 'lufthansa', 'air_france', 'klm', 'smiles', 'qantas_rewards', 'alaska_direct'], 'type': 'string'}, 'arrival_code': {'type': 'string', 'description': 'IATA code (SIN), or a city or airport name'}, 'departure_code': {'type': 'string', 'description': 'IATA code (LHR), or a city or airport name (Heathrow, Tokyo)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['origin', 'destination', 'date'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'cabin': {'enum': ['economy', 'premium_economy', 'business', 'first'], 'type': 'string'}, 'origin': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'source': {'enum': ['auto', 'duffel', 'ignav', 'airtrfx'], 'type': 'string', 'description': "Default 'auto' tries Duffel, then Ignav, then AirTRFX. Force one with 'duffel', 'ignav' or 'airtrfx'."}, 'airline': {'type': 'string', 'description': "Airline slug for the 'airtrfx' source (e.g. 'american', 'klm'). AirTRFX is per-airline, so this is required to use it."}, 'passengers': {'type': 'integer', 'maximum': 9, 'minimum': 1}, 'destination': {'type': 'string', 'pattern': '^[A-Z]{3}$'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'brand': {'enum': ['Marriott', 'Hilton', 'IHG', 'Hyatt'], 'type': 'string'}, 'limit': {'type': 'integer', 'maximum': 20, 'minimum': 1}, 'query': {'type': 'string', 'description': 'Hotel name or city'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['origin', 'destination', 'date'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'cabin': {'enum': ['economy', 'business', 'first'], 'type': 'string', 'description': 'Target cabin class (default: business)'}, 'origin': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'destination': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'points_value_cents': {'type': 'number', 'description': 'How you value points in cents/pence per point (default: 1.5)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 10, 'minimum': 1, 'description': 'How many excerpts to return (default 5)'}, 'query': {'type': 'string', 'description': "Natural-language question or topic, e.g. 'best Avios redemption sweet spots from London'"}, 'source': {'enum': ['miles_and_points_daily', 'smart_with_points'], 'type': 'string', 'description': 'Restrict to one publication. Omit to search both.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'card': {'type': 'string', 'description': "Filter to a specific card by name (e.g. 'Amex Gold'). Optional."}, 'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Max entries to return (default 20).'}, 'query': {'type': 'string', 'description': "Merchant, card, or category to search for (e.g. 'Whole Foods', 'Amex Gold', 'Dining'). Optional."}, 'country': {'type': 'string', 'description': "Two-letter country code to filter by (e.g. 'US', 'UK'). Optional."}, 'category': {'type': 'string', 'description': "Filter to a bonus category (e.g. 'Groceries', 'Dining'). Optional."}, 'min_multiplier': {'type': 'number', 'description': 'Only return entries earning at least this multiplier (e.g. 4 for 4x and up). Optional.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['airline', 'departure_code', 'arrival_code', 'date'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}(-\\d{2})?$', 'description': 'Month to search (YYYY-MM or YYYY-MM-DD)'}, 'airline': {'enum': ['british_airways', 'qatar_airways', 'cathay_pacific', 'virgin_atlantic', 'iberia', 'qantas', 'qantas_rewards', 'etihad', 'smiles'], 'type': 'string'}, 'arrival_code': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'departure_code': {'type': 'string', 'pattern': '^[A-Z]{3}$'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['departure_code', 'arrival_code', 'date', 'passengers'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'cabin': {'enum': ['economy', 'premium_economy', 'business', 'first'], 'type': 'string'}, 'passengers': {'type': 'integer', 'maximum': 9, 'minimum': 2}, 'arrival_code': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'departure_code': {'type': 'string', 'pattern': '^[A-Z]{3}$'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 10, 'minimum': 1, 'description': 'How many excerpts to return (default 5).'}, 'query': {'type': 'string', 'description': "Natural-language question or topic to find in the user's documents."}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['program', 'tier'], 'properties': {'tier': {'type': 'string', 'description': "Exact elite tier name as used by the program — e.g. 'Gold' (BA), 'Diamond Medallion' (Delta), 'Globalist' (Hyatt), 'Titanium Elite' (Bonvoy). Case-insensitive; will be normalized to official casing."}, 'notes': {'type': 'string', 'description': 'Optional notes (free-form).'}, 'program': {'type': 'string', 'description': "Loyalty program slug — e.g. 'british-airways-executive-club', 'marriott-bonvoy', 'world-of-hyatt', 'delta-skymiles'. Use the slug from the known programs list."}, 'member_id': {'type': 'string', 'description': 'Optional loyalty number.'}, 'expires_on': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Optional ISO date when this status expires.'}, 'target_tier': {'type': 'string', 'description': 'Optional — a tier the user is chasing (must be a valid tier for the program).'}, 'qualifying_balance': {'type': 'integer', 'minimum': 0, 'description': 'Optional — current qualifying units this period (Tier Points / XP / Loyalty Points / MQD / PQP / nights), for status-progress tracking.'}, 'qualifying_year_end': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Optional — ISO date the qualifying/membership year ends.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['program'], 'properties': {'tier': {'type': 'string', 'description': "Optional — the user's CURRENT tier. Required only if no status is tracked for this program yet."}, 'program': {'type': 'string', 'description': "Loyalty program slug — e.g. 'british-airways-executive-club', 'marriott-bonvoy'."}, 'target_tier': {'type': 'string', 'description': "Optional tier the user is chasing — e.g. 'Gold'. Must be a valid tier for the program. Defaults the progress bar to this instead of the next tier up."}, 'qualifying_balance': {'type': 'integer', 'minimum': 0, 'description': 'Current qualifying units earned this period (Tier Points / XP / Loyalty Points / MQD / PQP / nights).'}, 'qualifying_year_end': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'ISO date the current qualifying/membership year ends (e.g. BA membership years are anchored to the join date — ask the user).'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['type', 'summary', 'details', 'confirmed'], 'properties': {'type': {'enum': ['feedback', 'bug'], 'type': 'string', 'description': 'Whether this is general feedback or a bug report.'}, 'details': {'type': 'string', 'maxLength': 4000, 'description': 'What the user wants the Award Travel Finder team to know.'}, 'summary': {'type': 'string', 'maxLength': 160, 'description': 'A concise title for the feedback or bug.'}, 'page_url': {'type': 'string', 'maxLength': 500, 'description': 'The current Award Travel Finder path or URL, when known.'}, 'confirmed': {'type': 'boolean', 'description': 'True only once the user has confirmed that this report should be sent.'}, 'actual_behavior': {'type': 'string', 'maxLength': 4000, 'description': 'For bugs, what actually happened.'}, 'expected_behavior': {'type': 'string', 'maxLength': 4000, 'description': 'For bugs, what the user expected to happen.'}, 'steps_to_reproduce': {'type': 'string', 'maxLength': 4000, 'description': 'For bugs, the steps that reproduce the problem, if known.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['airline_code'], 'properties': {'airline_code': {'type': 'string', 'description': 'IATA airline code, e.g. "UA" for United, "DL" for Delta'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['flight_number'], 'properties': {'flight_number': {'type': 'string', 'description': 'IATA flight number, e.g. "UA123" or "DL456"'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'airline_code': {'type': 'string', 'description': 'Optional IATA airline code to filter rollouts, e.g. "UA"'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'airline_code': {'type': 'string', 'description': 'IATA airline code, e.g. "UA"'}, 'flight_number': {'type': 'string', 'description': 'IATA flight number, e.g. "UA123"'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['tail_number'], 'properties': {'tail_number': {'type': 'string', 'description': 'Aircraft registration / tail number, e.g. "N12345"'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['flight_number'], 'properties': {'date': {'type': 'string', 'description': 'Flight date in YYYY-MM-DD format. Defaults to today.'}, 'flight_number': {'type': 'string', 'description': 'IATA flight number, e.g. "UA123"'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'query': {'type': 'string', 'description': 'Search query, e.g. "United" or "UA123"'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'provider': {'enum': ['seats_aero', 'award_wallet', 'google_sheets', 'tripit', 'autopilot'], 'type': 'string', 'description': 'Optional — sync just this provider. Omit to sync all connected integrations.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['booking_id'], 'properties': {'kind': {'enum': ['award', 'cash'], 'type': 'string'}, 'notes': {'type': 'string'}, 'origin': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'airline': {'type': 'string'}, 'program': {'type': 'string'}, 'trip_id': {'type': 'string'}, 'cash_paid': {'type': 'number', 'minimum': 0}, 'booking_id': {'type': 'integer', 'minimum': 1}, 'taxes_paid': {'type': 'number'}, 'cabin_class': {'enum': ['economy', 'premium_economy', 'business', 'first'], 'type': 'string'}, 'destination': {'type': 'string', 'pattern': '^[A-Z]{3}$'}, 'return_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'points_spent': {'type': 'integer', 'minimum': 0}, 'flight_number': {'type': 'string'}, 'departure_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'confirmation_number': {'type': 'string'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['booking_id'], 'properties': {'kind': {'enum': ['award', 'cash'], 'type': 'string'}, 'notes': {'type': 'string'}, 'hotel_id': {'type': 'string'}, 'rate_plan': {'type': 'string'}, 'room_type': {'type': 'string'}, 'booking_id': {'type': 'integer', 'minimum': 1}, 'check_in_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'check_out_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'original_points': {'type': 'integer', 'minimum': 0}, 'cash_rate_currency': {'type': 'string'}, 'monitoring_enabled': {'type': 'boolean'}, 'confirmation_number': {'type': 'string'}, 'original_pay_rate_usd': {'type': 'number', 'minimum': 0}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['heading', 'body'], 'properties': {'body': {'type': 'string', 'description': 'Section body in markdown'}, 'kind': {'enum': ['flight', 'hotel', 'note', 'budget'], 'type': 'string', 'description': 'Section kind (default: note)'}, 'heading': {'type': 'string', 'description': "Section heading, e.g. 'Outbound flight' or 'Hotel: Tokyo'"}, 'trip_id': {'type': 'integer', 'description': "Target trip. If omitted, the user's most recent active trip is used (or a new one is created)."}, 'section_id': {'type': 'string', 'description': 'Existing section id to update. Omit to append a new section.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['program', 'balance'], 'properties': {'balance': {'type': 'integer', 'minimum': 0}, 'program': {'type': 'string', 'description': 'Loyalty program name'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['monitor_id'], 'properties': {'cabin': {'enum': ['economy', 'premium_economy', 'business', 'first'], 'type': 'string'}, 'status': {'enum': ['active', 'paused'], 'type': 'string', 'description': 'Pause or resume the monitor'}, 'airlines': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Replaces the existing airline filter; pass [] to watch all carriers'}, 'max_points': {'type': 'integer'}, 'monitor_id': {'type': 'integer'}, 'passengers': {'type': 'integer', 'maximum': 9, 'minimum': 1}, 'latest_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'earliest_date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['code', 'sessionId'], 'properties': {'code': {'type': 'string', 'description': '(required) Unique identifier of the Viator experience to retrieve details for.This value must correspond to an experience previously returned by the search_experiences tool.The model must not guess or make up experience IDs; if the user request is ambiguous (e.g., multiple items shown), the model must ask which experience they mean before calling the tool.'}, 'locale': {'type': 'string', 'description': '(optional) The language/locale code requested for content localization (e.g., en-US, en-GB, fr-FR).If not provided by the user, the model should infer it from context or default to en.Used to descriptions, highlights, and content where available.'}, 'currency': {'type': 'string', 'description': '(optional) Currency code for from-price display (e.g., USD, EUR, GBP).When provided, fromPrice and fromPriceBeforeDiscount are populated.When omitted, pricing fields are not returned.Should match the currency used in the preceding search_experiences call when available.'}, 'language': {'type': 'string', 'description': '(deprecated) This value is deprecated and should not be sent. Please only send the locale.'}, 'sessionId': {'type': 'string', 'description': '(mandatory) A unique identifier, ideally an UUID, for the current user conversation. The same identifier should be used until the user opens a new chat.'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['searchTerm', 'startDate', 'endDate', 'sessionId'], 'properties': {'limit': {'type': 'integer', 'format': 'int32', 'description': '(optional) Maximum number of products to return, between 1 and 10.If omitted, defaults to 5.Not intended as a user-facing refinement mechanism; the model should not use it to alter intent.'}, 'locale': {'type': 'string', 'description': '(optional) The language/locale code requested for content localization (e.g., en-US, en-GB, fr-FR).If not provided by the user, the model should infer it from context or default to en.Used to localize title, and other content where available.'}, 'endDate': {'type': 'string', 'description': "(required) The last date the user is available to participate in an experience, formatted as ISO-8601 (YYYY-MM-DD).Also derived from natural-language expressions (e.g., 'this summer', 'next weekend', 'early April', 'tomorrow'); if the user gives a single day, set endDate = startDate. When resolving these expressions, use the destination timezone from searchTerm when inferable, otherwise the user's timezone. Must be >= startDate. Used to widen search results to a date range."}, 'toPrice': {'type': 'number', 'description': '(optional) Maximum per-person price to include in search, expressed in the requested currency.Used when the user expresses a maximum budget (e.g., “under $100”)'}, 'currency': {'type': 'string', 'description': '(optional) Currency code used for interpreting and filtering prices.The model should infer currency from context when possible (e.g., GBP if the user is in the UK; USD if the user specifies dollars).Default value: USDValid ISO currency codes include: AED, ARS, AUD, BRL, CAD, CHF, CLP, CNY, COP, DKK, EUR, FJD, GBP, HKD, IDR, ILS, INR, ISK, JPY, KRW, MXN, MYR, NOK, NZD, PEN, PHP, PLN, SEK, SGD, THB, TRY, TWD, USD, VND, ZAR'}, 'duration': {'type': 'integer', 'format': 'int32', 'description': '(optional) User preference for maximum experience length, expressed in minutes.Used to filter results to experiences at or below this duration.'}, 'fromPrice': {'type': 'number', 'description': '(optional) Minimum per-person price to include in search, expressed in the requested currency.Used when the user specifies a lower budget boundary (e.g., “at least €50”).'}, 'sessionId': {'type': 'string', 'description': '(mandatory) A unique identifier, ideally an UUID, for the current user conversation. The same identifier should be used until the user opens a new chat.'}, 'startDate': {'type': 'string', 'description': "(required) The first date the user is available to participate in an experience, formatted as ISO-8601 (YYYY-MM-DD).The model must convert natural-language expressions (e.g., 'this summer', 'next weekend', 'early April', 'tomorrow') into a specific ISO date before calling the tool. When resolving these expressions, if searchTerm names a destination, use that location's local timezone. Otherwise, use the user's current timezone. The date must not be in the past. Must be before the endDate."}, 'searchTerm': {'type': 'string', 'description': "(required) Natural-language description of what the user is looking for. Must be non-blank and at most 500 characters; the tool rejects empty, whitespace-only, or over-length values. Include destination, activity type, and preferences in this single free-text query (e.g. 'walking tours in Paris, France'). Do not embed dates, prices, duration limits, or currency here—use the dedicated fields."}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'program': {'type': 'string', 'description': "Filter to a single program (e.g. 'Avios', 'Marriott Bonvoy')"}, 'category': {'enum': ['all', 'airline', 'hotel', 'transfer'], 'type': 'string', 'description': 'Filter (default: all)'}}}
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['airport_code'], 'properties': {'airline': {'type': 'string', 'description': 'Optional — filter the result to this airline name (substring match)'}, 'destination': {'type': 'string', 'description': 'Optional — filter to flights serving this destination IATA or city'}, 'airport_code': {'type': 'string', 'pattern': '^[A-Z]{3,4}$', 'description': 'IATA (3-letter) or ICAO (4-letter) airport code'}}}
Cambios recientes en herramientas
Servidores MCP similares
Cancun4me — Reservas de Hotel
Searches, quotes, books, tracks, cancels, and provides vouchers for hotels in Cancun and Riviera Maya, with Stripe payment links.
x402card: Virtual Cards + Freeland eSIM
Supports x402 virtual-card issuance and top-ups and lists prepaid travel eSIM plans payable with Base USDC.
esimker eSIM store
Searches travel eSIM plans and enables purchases, top-ups, wallet funding, and checkout through card, crypto, or prepaid balance.
Hotel Booking AI MCP
Searches hotels and live room rates, checks availability, creates and manages bookings, and generates payment requests.
booking
Resolves travel locations, flights, and trains; obtains private-driver quotes; and creates payment links for Paris transfers and …
Gitsim Chat
Searches, orders and manages international eSIM data packages and provides Stripe checkout links for purchases and top-ups.
topup
Lists and sells travel eSIMs, mobile top-ups, prepaid services, and international payment offers using user-approved USDC wallet …
pifini
Searches events and places across the Caribbean and Latin America, provides listings and reviews, and creates hosted ticket payme…