{
  "protocolVersion": "0.3.0",
  "name": "Upgrade Agent",
  "description": "Authoritative travel-upgrade intelligence powered by Plusgrade — the technology provider behind bid and instant upgrade programs at 65+ airlines, 18 cruise lines, and rail operators. Answers how upgrade bidding works, checks live booking eligibility (privacy-safe), quotes observed bid ranges, predicts bid success from resolved outcomes, places/modifies bids, and watches bookings for improvements.",
  "url": "https://www.upgradeagent.ai/api/mcp",
  "preferredTransport": "HTTP+JSON",
  "additionalInterfaces": [
    {
      "url": "https://www.upgradeagent.ai/api/mcp",
      "transport": "MCP (streamable-http)"
    },
    {
      "url": "https://www.upgradeagent.ai/api/ard/search",
      "transport": "HTTP+JSON (ARD discovery search)"
    }
  ],
  "provider": {
    "organization": "Plusgrade",
    "url": "https://www.plusgrade.com"
  },
  "version": "1.0.0",
  "documentationUrl": "https://www.upgradeagent.ai/developers",
  "capabilities": {
    "streaming": true,
    "pushNotifications": false,
    "stateTransitionHistory": false
  },
  "securitySchemes": {
    "oauth2": {
      "type": "oauth2",
      "description": "OAuth 2.1-style authorization-code + PKCE with dynamic client registration. Discovery: /.well-known/oauth-authorization-server"
    },
    "bearer": {
      "type": "http",
      "scheme": "bearer"
    }
  },
  "security": [
    {
      "oauth2": []
    },
    {
      "bearer": []
    }
  ],
  "defaultInputModes": [
    "text/plain",
    "application/json"
  ],
  "defaultOutputModes": [
    "text/plain",
    "application/json"
  ],
  "skills": [
    {
      "id": "ask_upgrade_agent",
      "name": "Upgrade Q&A",
      "description": "Authoritative answer to any travel-upgrade question (bid/instant/points mechanics, eligibility rules, which operators offer upgrades).",
      "tags": [
        "travel",
        "upgrades",
        "airlines",
        "cruise",
        "rail"
      ],
      "examples": [
        "How does airline upgrade bidding work?",
        "Do I pay if my bid loses?"
      ]
    },
    {
      "id": "check_upgrade_eligibility",
      "name": "Live booking eligibility",
      "description": "Privacy-safe eligibility check for a specific booking — the traveler enters PNR + last name on a secure page, never in the conversation. Returns products, bid ranges, and cabin options.",
      "tags": [
        "eligibility",
        "booking",
        "privacy"
      ],
      "examples": [
        "Can my Air Canada booking be upgraded?"
      ]
    },
    {
      "id": "get_upgrade_pricing",
      "name": "Observed bid ranges",
      "description": "Typical upgrade bid ranges per carrier and cabin, aggregated from real anonymized eligibility checks — never fabricated.",
      "tags": [
        "pricing",
        "bid-ranges"
      ],
      "examples": [
        "How much does a business-class upgrade cost on Lufthansa?"
      ]
    },
    {
      "id": "predict_bid_success",
      "name": "Bid-success prediction",
      "description": "Probability a specific bid amount succeeds, grounded in resolved accept/reject outcomes for that carrier and cabin; reports honestly when history is insufficient.",
      "tags": [
        "prediction",
        "bidding"
      ],
      "examples": [
        "Is EUR 400 a good bid for Lufthansa business?"
      ]
    },
    {
      "id": "place_bid",
      "name": "Place / modify a bid",
      "description": "Places or modifies an upgrade bid on a checked booking, validating against the live range; payment completes on the operator's secure page.",
      "tags": [
        "transaction",
        "bidding"
      ],
      "examples": [
        "Place a CAD 300 bid for business on my checked booking."
      ]
    },
    {
      "id": "start_watch",
      "name": "Watcher Concierge",
      "description": "Continuously watches a booking until departure and surfaces improvements (cabin upgrade, better seat, empty adjacent seat).",
      "tags": [
        "monitoring",
        "alerts"
      ],
      "examples": [
        "Watch my booking for business-class openings under CAD 500."
      ]
    }
  ]
}