Skip to main content
Glama

Clino: Swiss household employment

Employment contract terms in one canton

get_contract_terms
Read-onlyIdempotent

What the employment contract of a cleaner, nanny, carer or au pair in a Swiss private household has to say in one canton, from the canton's standard employment contract for household work (NAV / CTT / CNL) and the Code of Obligations: probation and its notice, notice after probation by service year, paid vacation weeks (by age), full-time week, overtime, night and Sunday supplements, paid public holidays, 13th month wage, hours register, maternity leave and sick pay in the first year. Every term carries its article and the instrument's verbatim sentence, and whether a written contract may deviate. Also what must be confirmed in writing (Art. 330b OR) and a link to Clino's free contract generator, prefilled with the figures given. Use it for 'write me an employment contract', 'what notice period applies', 'how many weeks of vacation', 'is overtime paid extra'.

Input Schema

NameRequiredDescriptionDefault
roleNoWhat the worker does: cleaner, nanny (childcare), carer (care of an elderly or disabled person), au_pair or other. Sets which contract generator the link opens; au_pair in Geneva adds the au pair contract's own rules.cleaner
cantonYesSwiss canton where the household lives: two-letter code (ZH, GE, VD...) or its name. The standard employment contract (NAV/CTT) of the WORKPLACE governs; that is this canton unless workplace_postcode places the work in another one.
languageNoLanguage of the explanatory texts and of the clino.ch links: en, de, fr, it, es or pt. Default en.en
lives_inNotrue if the worker lives in the household (board and lodging). Neuchâtel's standard contract only covers live-in staff, and Vaud gives them a longer notice.
start_dateNoFirst working day, YYYY-MM-DD, to prefill the contract and date the end of the probation.
worker_ageNoAge of the worker in years, for the vacation entitlement (more weeks under 20 and, in some cantons, from 50 or 60). Never a birthdate.
hours_per_weekNoAverage weekly hours, to prefill the contract generator.
hourly_wage_chfNoAgreed gross hourly wage in CHF, to prefill the contract generator.
monthly_wage_chfNoAgreed gross monthly wage in CHF instead of an hourly wage (nanny, carer), or the au pair's pocket money.
workplace_postcodeNo4-digit Swiss postcode (PLZ/NPA) of the WORKPLACE. City minimum wages (e.g. Stadt Luzern) depend on it.

Output Schema

NameRequiredDescriptionDefault
linksYes
termsYes
cantonYesThe canton whose standard employment contract governs (the workplace).
sourcesYes
summaryYesTwo or three sentences a person can read first.
providerYes
disclaimerYes
rates_yearYes
written_termsYesWhat the employer must confirm in writing even without a signed contract.
au_pair_genevaYesOnly for an au pair working in Geneva: the CTT-TPMaj addendum.
paperwork_helpYesOnly relevant when the user asks who can prepare the contract, registration and payslips for them. Not an answer to any other question.
governing_rulesYes
data_verified_onYesDate the rate set was last checked against the official sources.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • changedOutput schema / properties / governing_rules / properties / binding / enum
      Previous value: -[
      -  "imperative",
      -  "dispositive",
      -  "mixed",
      -  "code_of_obligations"
      -]New value: +[
      +  "imperative",
      +  "dispositive",
      +  "mixed",
      +  "no_worsening",
      +  "code_of_obligations"
      +]
    • addedOutput schema / properties / terms / properties / overtime / properties / no_supplement_exception
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": false,
      +      "properties": {
      +        "legal_basis": {
      +          "$ref": "#/properties/terms/properties/probation/properties/legal_basis"
      +        },
      +        "quote": {
      +          "$ref": "#/properties/terms/properties/probation/properties/quote"
      +        },
      +        "rule": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "rule",
      +        "legal_basis",
      +        "quote"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "description": "Hours on which the instrument itself owes no overtime supplement (ZH/OW part-time staff, UR part-timers, LU 43rd to 45th hour); null where supplement_percent applies to every hour above the contract."
      +}
    • changedOutput schema / properties / terms / properties / overtime / required
      Previous value: -[
      -  "supplement_percent",
      -  "time_off_instead",
      -  "hourly_cleaners_exempt",
      -  "legal_basis",
      -  "quote"
      -]New value: +[
      +  "supplement_percent",
      +  "time_off_instead",
      +  "hourly_cleaners_exempt",
      +  "no_supplement_exception",
      +  "legal_basis",
      +  "quote"
      +]
  2. Added

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

While annotations already declare the tool as read-only, idempotent, and non-destructive, the description adds valuable context beyond them: each term includes its legal article, verbatim sentence, deviation rules, written confirmation requirements, and a prefilled contract generator link. It stops short of covering performance or error behavior, but that is minor for a safe read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but well-structured: it front-loads the core purpose, then lists covered terms, explains output details, and ends with usage examples. It is dense with information and no sentence feels wasted, though it could be slightly tighter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (10 parameters, 1 required), the presence of an output schema, and annotations, the description is complete. It explains what the tool does, what the output contains, and gives clear usage examples, leaving no critical gaps for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all parameters are fully documented in the schema. The description itself adds no additional meaning about parameter usage or interactions beyond what the schema already provides, making the baseline 3 appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (retrieves) and resource (employment contract terms for household work in one canton), and enumerates the exact terms covered (probation, vacation, overtime, etc.). This clearly distinguishes it from siblings like get_canton_rules or get_employer_guide by focusing on the contract's substantive terms.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides explicit example queries ('write me an employment contract', 'what notice period applies', etc.) that tell the agent when to use it. However, it does not name alternative tools or state when not to use it, leaving a small gap in routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.