Skip to main content
Glama

Quasi-resident status check — ordinary taxation on request (TOU) for frontaliers taxed at source

check_geneva_quasi_resident
Read-only

Quasi-resident status (≥ 90 % of the household's income taxable in CH). · Statut de quasi-résident (≥ 90 % des revenus du foyer imposables en CH). — For a person taxed at source in Switzerland who lives in France (Geneva and every canton outside the 1983 agreement): at least 90 % of the household's worldwide gross income (you + spouse) taxable in Switzerland opens a request for ordinary taxation (TOU), in writing, by 31 March of the following year, every year, not withdrawable once filed (LIFD art. 99a; OIS art. 14). The eight cantons of the agreement of 11 April 1983 (BE, SO, BS, BL, VD, VS, NE, JU) tax in France: not applicable there. Deterministic threshold rule — no AI. Returns eligibility, the share, the threshold, the deadline and the data year.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
work_cantonNoSwiss canton of work (code like GE, ZH, or name). A canton of the 1983 agreement is answered « not applicable » unless source_taxed is true. Omitted: the rule is answered with that condition stated.
source_taxedNoFor a canton of the 1983 agreement (BE, SO, BS, BL, VD, VS, NE, JU): true when the employer withholds Swiss source tax in 2026 (the tax year of the open request, due 31/03/2027) — a condition of the frontalier status is not met (daily return — at most 45 nights a year full time and at most one a week —, 2041-AS, telework ≤ 40 %) or a Swiss national paid by a public-law employer. The request is then open.
swiss_incomeYesHousehold (you + spouse) gross income taxable in Switzerland (same currency as total_income).
total_incomeYesHousehold (you + spouse) worldwide gross income (same currency).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / properties / source_taxed
      Added value: +{
      +  "description": "For a canton of the 1983 agreement (BE, SO, BS, BL, VD, VS, NE, JU): true when the employer withholds Swiss source tax in 2026 (the tax year of the open request, due 31/03/2027) — a condition of the frontalier status is not met (daily return — at most 45 nights a year full time and at most one a week —, 2041-AS, telework ≤ 40 %) or a Swiss national paid by a public-law employer. The request is then open.",
      +  "type": "boolean"
      +}
    • changedInput schema / properties / swiss_income / description
      Previous value: -"Income taxable in Switzerland (same currency as total_income)."New value: +"Household (you + spouse) gross income taxable in Switzerland (same currency as total_income)."
    • changedInput schema / properties / total_income / description
      Previous value: -"Total worldwide household income (same currency)."New value: +"Household (you + spouse) worldwide gross income (same currency)."
    • addedInput schema / properties / work_canton
      Added value: +{
      +  "description": "Swiss canton of work (code like GE, ZH, or name). A canton of the 1983 agreement is answered « not applicable » unless source_taxed is true. Omitted: the rule is answered with that condition stated.",
      +  "maxLength": 40,
      +  "type": "string"
      +}
  2. Changed1 schema field changed
    • removedInput schema / additionalProperties
      Removed value: -false
  3. Changed2 schema fields changed
    • addedInput schema / properties / swiss_income / maximum
      Added value: +100000000
    • addedInput schema / properties / total_income / maximum
      Added value: +100000000
  4. Added

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare a safe read-only, closed-world look-up, so the bar is lower; the description nonetheless adds real behavior — the annual 31 March deadline, non-withdrawability once filed, the legal basis (LIFD art. 99a, OIS art. 14) and the fact that it returns eligibility/share/threshold/deadline/data year. It does not discuss error or edge-case handling, which keeps it from a 5.

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

Conciseness3/5

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

The core rule is front-loaded and precise, but the bilingual duplication (English plus French) and the long parenthetical on the cantons of the 1983 agreement make it heavier than necessary for a four-parameter look-up.

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?

With no output schema, the description fills the gap by enumerating what is returned (eligibility, share, threshold, deadline, data year) and covers the deadline, irreversibility and territorial scope an agent needs to advise correctly. Nothing material to calling or interpreting this tool is missing.

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 coverage is 100%, so all four parameters are already documented in the schema, including the canton/1983-agreement interplay for work_canton and source_taxed. The description restates the 90% rule and the same-currency household framing but adds no syntax or format detail beyond the schema — the baseline 3 applies.

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?

Names a specific rule-check verb and subject (quasi-resident status, ≥90% of household income taxable in CH) and clearly marks itself as a deterministic threshold rule rather than a calculator, which separates it from the sibling calculate_* tools.

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

Usage Guidelines5/5

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

States exactly when it applies (person taxed at source in Switzerland living in France, Geneva and cantons outside the 1983 agreement) and when it does not (the eight cantons of the 11 April 1983 agreement, which tax in France). The when-not condition is explicit, not inferred.

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.

Resources