{
  "type": "object",
  "properties": {
    "canton": {
      "type": "string",
      "minLength": 2,
      "maxLength": 40,
      "description": "Swiss canton: two-letter code (ZH, BE, GE, VD, TI...) or its name in German, French, Italian or English (Zürich, Genève, Ticino, Basel-Stadt). For employer contributions this is the canton where the household lives."
    },
    "hourly_wage_chf": {
      "type": "number",
      "exclusiveMinimum": 0,
      "maximum": 500,
      "description": "Agreed hourly wage in CHF, before the vacation supplement (e.g. 30)."
    },
    "hours_per_week": {
      "type": "number",
      "exclusiveMinimum": 0,
      "maximum": 70,
      "description": "Average working hours per week with this household (e.g. 4)."
    },
    "wage_is_net": {
      "type": "boolean",
      "default": false,
      "description": "true if the agreed hourly wage is what the worker receives in hand (net). The gross wage is then worked out from it. Default false (gross)."
    },
    "vacation_weeks": {
      "type": "integer",
      "minimum": 4,
      "maximum": 6,
      "default": 4,
      "description": "Paid vacation weeks per year: 4 (legal minimum), 5 (under age 20) or 6. Default 4."
    },
    "workplace_postcode": {
      "type": "string",
      "pattern": "^\\d{4}$",
      "description": "4-digit Swiss postcode (PLZ/NPA) of the WORKPLACE. City minimum wages (e.g. Stadt Luzern) depend on it."
    },
    "skill_level": {
      "type": "string",
      "enum": [
        "unskilled",
        "experienced",
        "eba",
        "efz"
      ],
      "description": "Qualification of the worker, which sets the federal NAV wage tier: unskilled; experienced (4+ years in household work); eba (2-year federal vocational certificate); efz (3-year federal vocational diploma)."
    },
    "language": {
      "type": "string",
      "enum": [
        "en",
        "de",
        "fr",
        "it",
        "es",
        "pt"
      ],
      "default": "en",
      "description": "Language of the explanatory texts and of the clino.ch links: en, de, fr, it, es or pt. Default en."
    }
  },
  "required": [
    "canton",
    "hourly_wage_chf",
    "hours_per_week"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "estimate_employer_cost input",
  "x-source": "https://clino.ch/mcp (MCP tools/list, 2026-11-04, verbatim inputSchema)"
}