{
  "protocolVersion": "0.3.0",
  "name": "FlightLogic",
  "description": "Independent UK travel intelligence. Answers questions about airports, airline quality and safety ratings, live flight positions and global travel disruption, from FlightLogic's own published datasets. Read-only: it looks things up, it does not book, pay or transact.",
  "url": "https://flightlogic.co.uk/a2a",
  "preferredTransport": "JSONRPC",
  "version": "1.0.0",
  "provider": {
    "organization": "Elite Digital AI Solutions Ltd",
    "url": "https://flightlogic.co.uk/about/"
  },
  "documentationUrl": "https://flightlogic.co.uk/api/#a2a",
  "iconUrl": "https://flightlogic.co.uk/apple-touch-icon.png",
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "stateTransitionHistory": false
  },
  "securitySchemes": {},
  "security": [],
  "defaultInputModes": ["application/json", "text/plain"],
  "defaultOutputModes": ["application/json", "text/plain"],
  "supportsAuthenticatedExtendedCard": false,
  "skills": [
    {
      "id": "search_airports",
      "name": "Search airports",
      "description": "Search ~10,000 airports worldwide by name, city or IATA code. Returns up to 8 matches with slug, name, IATA code, city and country. Send {\"skillId\": \"search_airports\", \"query\": \"heathrow\"}.",
      "tags": ["airports", "reference", "search"],
      "examples": ["Which airports match 'heathrow'?", "Look up IATA code LHR."],
      "inputModes": ["application/json", "text/plain"],
      "outputModes": ["application/json"]
    },
    {
      "id": "find_nearest_airports",
      "name": "Find nearest airports",
      "description": "Airports closest to a UK postcode or a latitude/longitude pair, ordered by distance. Send {\"skillId\": \"find_nearest_airports\", \"postcode\": \"SW1A 1AA\"} or the same with lat and lon.",
      "tags": ["airports", "geospatial", "uk"],
      "examples": ["What is the nearest airport to SW1A 1AA?"],
      "inputModes": ["application/json", "text/plain"],
      "outputModes": ["application/json"]
    },
    {
      "id": "get_airline_scores",
      "name": "Get airline ratings",
      "description": "FlightLogic editorial airline ratings — overall score, safety score, star band and six category scores, all 0-10. Omit the airline argument for the full ranked table. These are editorial expert ratings by named FlightLogic editors, not aggregated user reviews.",
      "tags": ["airlines", "ratings", "open-data"],
      "examples": ["How does British Airways score?", "Give me the full airline ranking table."],
      "inputModes": ["application/json", "text/plain"],
      "outputModes": ["application/json"]
    },
    {
      "id": "get_live_flights",
      "name": "Get live flight positions",
      "description": "Live aircraft positions within roughly 100km of a coordinate. Positions come from a live third-party feed and may lag by up to a minute — not authoritative for safety or operational decisions.",
      "tags": ["flights", "live", "geospatial"],
      "examples": ["What is flying near 51.4, -0.45 right now?"],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"]
    },
    {
      "id": "get_travel_disruptions",
      "name": "Get global travel disruptions",
      "description": "Currently open natural events that plausibly disrupt flying — severe storms, volcanic activity, dust and haze, ice and heavy snow — sourced from NASA EONET. Global, not airport-specific.",
      "tags": ["disruption", "weather", "live"],
      "examples": ["Are there any volcanic events disrupting flights?"],
      "inputModes": ["application/json", "text/plain"],
      "outputModes": ["application/json"]
    },
    {
      "id": "read_page",
      "name": "Read a FlightLogic page as Markdown",
      "description": "Fetch any flightlogic.co.uk page as clean Markdown instead of HTML. Send {\"skillId\": \"read_page\", \"path\": \"/guides/uk261-compensation/\"}.",
      "tags": ["content", "markdown", "citation"],
      "examples": ["Read /airlines/british-airways/ as Markdown."],
      "inputModes": ["application/json"],
      "outputModes": ["text/plain"]
    }
  ]
}
