airline-ticketing-server

v1.0.0
A powerful MCP server built with NitroStack

🔌 Connection Information

MCP Endpoint

https://airline-ticketing-mcp-692c2f25.default.nitrocloud.ai/mcp

Connect to this MCP server using the endpoint above. The server supports Server-Sent Events (SSE) for real-time bidirectional communication following the Model Context Protocol specification.

🛠️ Available Tools

search_flights
Search for flight offers based on origin, destination, dates, and preferences. Returns available flight options with pricing and details.
🎨 Has UI Widget
Input Schema
{
  "type": "object",
  "properties": {
    "origin": {
      "type": "string",
      "minLength": 3,
      "maxLength": 3,
      "description": "Origin airport IATA code (e.g., \"JFK\", \"LHR\")"
    },
    "destination": {
      "type": "string",
      "minLength": 3,
      "maxLength": 3,
      "description": "Destination airport IATA code (e.g., \"LAX\", \"CDG\")"
    },
    "departureDate": {
      "type": "string",
      "description": "Departure date in YYYY-MM-DD format"
    },
    "returnDate": {
      "type": "string",
      "description": "Return date in YYYY-MM-DD format for round trip"
    },
    "adults": {
      "type": "number",
      "minimum": 1,
      "maximum": 9,
      "default": 1,
      "description": "Number of adult passengers (18+)"
    },
    "children": {
      "type": "number",
      "minimum": 0,
      "maximum": 9,
      "default": 0,
      "description": "Number of child passengers (2-17)"
    },
    "infants": {
      "type": "number",
      "minimum": 0,
      "maximum": 9,
      "default": 0,
      "description": "Number of infant passengers (under 2)"
    },
    "cabinClass": {
      "type": "string",
      "enum": [
        "economy",
        "premium_economy",
        "business",
        "first"
      ],
      "default": "economy",
      "description": "Preferred cabin class"
    },
    "maxConnections": {
      "type": "number",
      "minimum": 0,
      "maximum": 3,
      "description": "Maximum number of connections (0 for direct flights only)"
    },
    "departureTimeFrom": {
      "type": "string",
      "description": "Earliest departure time in HH:MM format"
    },
    "departureTimeTo": {
      "type": "string",
      "description": "Latest departure time in HH:MM format"
    }
  },
  "required": [
    "origin",
    "destination",
    "departureDate"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
get_flight_details
Get detailed information about a specific flight offer including baggage allowance, fare conditions, and seat availability.
🎨 Has UI Widget
Input Schema
{
  "type": "object",
  "properties": {
    "offerId": {
      "type": "string",
      "description": "The offer ID from search results"
    }
  },
  "required": [
    "offerId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
search_airports
Search for airports by city name or airport code. Useful for finding IATA codes.
🎨 Has UI Widget
Input Schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "description": "City name or airport code to search for"
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
create_order
Create a flight order with hold (no payment required). IMPORTANT: Before calling this tool, you MUST collect passenger information from the user. Ask for: full name (first and last), title (Mr/Ms/Mrs/Miss/Dr), gender (M/F), date of birth (YYYY-MM-DD), email, and phone number with country code. The order will be held for later payment.
🎨 Has UI Widget
Input Schema
{
  "type": "object",
  "properties": {
    "offerId": {
      "type": "string",
      "description": "The offer ID to book"
    },
    "passengers": {
      "type": "string",
      "description": "JSON string containing array of passenger objects. Each passenger must have: title (mr/ms/mrs/miss/dr), givenName (first name), familyName (last name), gender (M/F), bornOn (YYYY-MM-DD), email, phoneNumber. Example: '[{\"title\":\"mr\",\"givenName\":\"John\",\"familyName\":\"Doe\",\"gender\":\"M\",\"bornOn\":\"1990-01-15\",\"email\":\"john@example.com\",\"phoneNumber\":\"+1234567890\"}]'"
    }
  },
  "required": [
    "offerId",
    "passengers"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
get_order_details
Get detailed information about an order
🎨 Has UI Widget
Input Schema
{
  "type": "object",
  "properties": {
    "orderId": {
      "type": "string",
      "description": "The order ID"
    }
  },
  "required": [
    "orderId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
get_seat_map
Get available seats for a flight offer to allow seat selection
🎨 Has UI Widget
Input Schema
{
  "type": "object",
  "properties": {
    "offerId": {
      "type": "string",
      "description": "The offer ID to get seats for"
    }
  },
  "required": [
    "offerId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
cancel_order
Cancel a flight order and request refund if applicable
🎨 Has UI Widget
Input Schema
{
  "type": "object",
  "properties": {
    "orderId": {
      "type": "string",
      "description": "The order ID to cancel"
    }
  },
  "required": [
    "orderId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}