[
  {
    "name": "msisdn_info",
    "description": "Get MSISDN info: operator, connection type (PREPAID/POSTPAID), customer segment, active plan, name, last call reference. Optional name in body overrides demo name.",
    "parameters": {
      "type": "object",
      "properties": {
        "msisdn": {"type": "string", "description": "10-digit or 9-digit number, optional country code (e.g. 254, 91)"},
        "name": {"type": "string", "description": "Optional customer name to return"}
      },
      "required": ["msisdn"]
    }
  },
  {
    "name": "msisdn_nearby_centers",
    "description": "Get current coordinates for MSISDN (demo-derived) and top 3 nearest Airtel centers with distance in km.",
    "parameters": {
      "type": "object",
      "properties": {
        "msisdn": {"type": "string", "description": "9–15 digit number, optional country code"}
      },
      "required": ["msisdn"]
    }
  },
  {
    "name": "msisdn_plans_and_bundles",
    "description": "List available postpaid plans and prepaid bundles for the number. Returns connectionType and both option lists.",
    "parameters": {
      "type": "object",
      "properties": {
        "msisdn": {"type": "string", "description": "9–15 digit number"}
      },
      "required": ["msisdn"]
    }
  },
  {
    "name": "msisdn_purchase_options",
    "description": "Get purchase options for the number: if postpaid returns plans (buy_plan), if prepaid returns bundles (buy_bundle). Airtel only.",
    "parameters": {
      "type": "object",
      "properties": {
        "msisdn": {"type": "string", "description": "9–15 digit number"}
      },
      "required": ["msisdn"]
    }
  },
  {
    "name": "msisdn_purchase",
    "description": "Buy a plan (postpaid) or bundle (prepaid) for the number. Use productId from purchase-options.",
    "parameters": {
      "type": "object",
      "properties": {
        "msisdn": {"type": "string", "description": "9–15 digit number"},
        "type": {"type": "string", "enum": ["plan", "bundle"], "description": "plan for postpaid, bundle for prepaid"},
        "productId": {"type": "string", "description": "e.g. plan_infinity_499, bundle_unlimited_299"}
      },
      "required": ["msisdn", "type", "productId"]
    }
  }
]
