naftiko: 1.0.0-alpha2 info: label: United Airlines Flight Booking description: United Airlines flight booking and travel management capability combining NDC shopping, booking creation, servicing, and flight status into a unified workflow for travel agencies, corporate booking tools, and online travel platforms. tags: - Airlines - Travel - Flight Booking - NDC - Corporate Travel - Shopping created: '2026-05-03' modified: '2026-05-06' binds: - namespace: env keys: UNITED_AIRLINES_OAUTH_TOKEN: UNITED_AIRLINES_OAUTH_TOKEN capability: consumes: - type: http namespace: united-airlines-ndc baseUri: https://api.united.com/v1 description: United Airlines NDC API for flight shopping, booking, and servicing. authentication: type: bearer token: '{{UNITED_AIRLINES_OAUTH_TOKEN}}' resources: - name: shopping path: /shopping description: Flight search and pricing operations: - name: search-flight-offers method: POST description: Search for available United Airlines flights with continuous pricing inputParameters: - name: origin in: body type: string required: true description: IATA origin airport code - name: destination in: body type: string required: true description: IATA destination airport code - name: departureDate in: body type: string required: true description: Outbound departure date (YYYY-MM-DD) - name: cabinPreference in: body type: string required: false description: Preferred cabin class outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get-flight-offer method: GET description: Retrieve detailed pricing and availability for a specific flight offer inputParameters: - name: offerId in: path type: string required: true description: Unique identifier of the flight offer outputRawFormat: json outputParameters: - name: result type: object value: $. - name: bookings path: /bookings description: Flight bookings and reservation management operations: - name: create-booking method: POST description: Create a new flight booking with payment inputParameters: - name: offerId in: body type: string required: true description: Offer ID from shopping response - name: holdBooking in: body type: boolean required: false description: Create a held booking without immediate payment outputRawFormat: json outputParameters: - name: result type: object value: $. - name: list-bookings method: GET description: Retrieve a list of bookings inputParameters: - name: status in: query type: string required: false description: Filter bookings by status - name: departureDate in: query type: string required: false description: Filter by departure date outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get-booking method: GET description: Retrieve details of a specific booking inputParameters: - name: bookingId in: path type: string required: true description: Unique booking identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: cancel-booking method: DELETE description: Cancel an existing booking inputParameters: - name: bookingId in: path type: string required: true description: Unique booking identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: servicing path: /bookings description: Post-booking modifications and ancillaries operations: - name: exchange-booking method: POST description: Modify booking by exchanging flights inputParameters: - name: bookingId in: path type: string required: true description: Unique booking identifier - name: newOfferId in: body type: string required: true description: New offer ID for the exchanged flights outputRawFormat: json outputParameters: - name: result type: object value: $. - name: refund-booking method: POST description: Process a refund for a cancelled booking inputParameters: - name: bookingId in: path type: string required: true description: Unique booking identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: add-ancillary method: POST description: Add ancillary services to an existing booking inputParameters: - name: bookingId in: path type: string required: true description: Unique booking identifier - name: type in: body type: string required: true description: Ancillary type (seat, bag, upgrade, insurance, lounge) outputRawFormat: json outputParameters: - name: result type: object value: $. - name: flights path: /flights description: Flight status and schedules operations: - name: get-flight-status method: GET description: Retrieve real-time flight status inputParameters: - name: flightNumber in: query type: string required: true description: United Airlines flight number - name: date in: query type: string required: true description: Flight date (YYYY-MM-DD) outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get-flight-schedules method: GET description: Retrieve flight schedules for an origin-destination pair inputParameters: - name: origin in: query type: string required: true description: IATA origin airport code - name: destination in: query type: string required: true description: IATA destination airport code - name: startDate in: query type: string required: true description: Start date for schedule query outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: united-airlines-booking-api description: Unified REST API for United Airlines flight booking and travel management. resources: - path: /v1/offers name: offers description: Flight offer search and pricing operations: - method: POST name: search-flight-offers description: Search for available United Airlines flights with continuous pricing call: united-airlines-ndc.search-flight-offers outputParameters: - type: object mapping: $. - method: GET name: get-flight-offer description: Get detailed pricing for a specific offer call: united-airlines-ndc.get-flight-offer with: offerId: rest.offerId outputParameters: - type: object mapping: $. - path: /v1/bookings name: bookings description: Booking creation and management operations: - method: POST name: create-booking description: Create a new flight booking call: united-airlines-ndc.create-booking outputParameters: - type: object mapping: $. - method: GET name: list-bookings description: List all bookings call: united-airlines-ndc.list-bookings with: status: rest.status departureDate: rest.departureDate outputParameters: - type: object mapping: $. - path: /v1/bookings/{id} name: booking description: Individual booking operations operations: - method: GET name: get-booking description: Get booking details call: united-airlines-ndc.get-booking with: bookingId: rest.id outputParameters: - type: object mapping: $. - method: DELETE name: cancel-booking description: Cancel a booking call: united-airlines-ndc.cancel-booking with: bookingId: rest.id outputParameters: - type: object mapping: $. - path: /v1/bookings/{id}/exchange name: booking-exchange description: Flight exchange operations operations: - method: POST name: exchange-booking description: Exchange flights on an existing booking call: united-airlines-ndc.exchange-booking with: bookingId: rest.id outputParameters: - type: object mapping: $. - path: /v1/bookings/{id}/ancillaries name: booking-ancillaries description: Add ancillary services to booking operations: - method: POST name: add-ancillary description: Add seat, bag, or upgrade to a booking call: united-airlines-ndc.add-ancillary with: bookingId: rest.id outputParameters: - type: object mapping: $. - path: /v1/flights/status name: flight-status description: Real-time flight status operations: - method: GET name: get-flight-status description: Get real-time status for a flight call: united-airlines-ndc.get-flight-status with: flightNumber: rest.flightNumber date: rest.date outputParameters: - type: object mapping: $. - path: /v1/flights/schedules name: flight-schedules description: Flight schedule information operations: - method: GET name: get-flight-schedules description: Get flight schedules for a route call: united-airlines-ndc.get-flight-schedules with: origin: rest.origin destination: rest.destination startDate: rest.startDate outputParameters: - type: object mapping: $. - type: mcp port: 9080 namespace: united-airlines-booking-mcp transport: http description: MCP server for AI-assisted United Airlines flight booking and travel management. tools: - name: search-flights description: Search for available United Airlines flights with pricing, bundles, and cabin options hints: readOnly: true openWorld: true call: united-airlines-ndc.search-flight-offers outputParameters: - type: object mapping: $. - name: get-flight-offer description: Get detailed pricing and availability for a specific flight offer hints: readOnly: true openWorld: true call: united-airlines-ndc.get-flight-offer with: offerId: tools.offerId outputParameters: - type: object mapping: $. - name: create-booking description: Book United Airlines flights for one or more passengers hints: readOnly: false destructive: false call: united-airlines-ndc.create-booking outputParameters: - type: object mapping: $. - name: list-bookings description: List existing flight bookings with optional status and date filters hints: readOnly: true openWorld: false call: united-airlines-ndc.list-bookings with: status: tools.status departureDate: tools.departureDate outputParameters: - type: object mapping: $. - name: get-booking description: Retrieve details of a specific United Airlines booking hints: readOnly: true openWorld: false call: united-airlines-ndc.get-booking with: bookingId: tools.bookingId outputParameters: - type: object mapping: $. - name: cancel-booking description: Cancel a United Airlines flight booking hints: readOnly: false destructive: true idempotent: true call: united-airlines-ndc.cancel-booking with: bookingId: tools.bookingId outputParameters: - type: object mapping: $. - name: exchange-booking description: Change flights on an existing booking hints: readOnly: false destructive: false call: united-airlines-ndc.exchange-booking with: bookingId: tools.bookingId outputParameters: - type: object mapping: $. - name: add-ancillary description: Add seat selection, checked bag, or upgrade to a booking hints: readOnly: false destructive: false call: united-airlines-ndc.add-ancillary with: bookingId: tools.bookingId outputParameters: - type: object mapping: $. - name: get-flight-status description: Get real-time departure, arrival, and gate status for a United flight hints: readOnly: true openWorld: true call: united-airlines-ndc.get-flight-status with: flightNumber: tools.flightNumber date: tools.date outputParameters: - type: object mapping: $. - name: get-flight-schedules description: Get United Airlines schedules for a specific route and date range hints: readOnly: true openWorld: true call: united-airlines-ndc.get-flight-schedules with: origin: tools.origin destination: tools.destination startDate: tools.startDate outputParameters: - type: object mapping: $.