Skip to main content
Glama

Server Details

FR/EN tools for French rental, frontalier & home-employment (CCN 3239) — sourced, dated answers.

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Available Tools

11 tools
calculate_assistant_maternel_end_of_contractAssistant maternel (assmat) end of contract — retrait d'enfant, démission, préavis, indemnité (CCN 3239)A
Read-only
Inspect

End of an assistant maternel (assmat) contract with a parent-employer: retrait d'enfant or resignation, notice, indemnity, Pajemploi documents, for the parent or the assistant maternel. · Fin de contrat d'assistant maternel (assmat) avec un parent employeur : retrait d'enfant ou démission, préavis, indemnité de rupture, documents Pajemploi, pour le parent comme pour l'assistant maternel. — Same engine as calculate_home_employment_end_of_contract with regime pre-set to assistant_maternel (socle spécifique): notice by length of care (art. 120: 8 days / 15 days / 1 month, outside the trial period), withdrawal indemnity (art. 121.1: 1/80 of gross salaries excluding entretien/repas/km, from 9 months of care), rupture conventionnelle NOT available (CASF L.423-2), last Pajemploi declaration, 6-month settlement contest window, documents with who produces and who receives each. NOT for a garde d'enfant à domicile (nounou at the family's home) — that is regime garde_domicile on the generic tool. Applies the Convention collective IDCC 3239 (verified on Légifrance 2026). Deterministic formulas — no AI, no assessment of any person or motif.

ParametersJSON Schema
NameRequiredDescriptionDefault
partyYesWho is asking: 'employer' (particulier employeur) or 'employee' (salarié / assistant maternel). Wording only — the figures are identical for both.
as_of_dateNoSeniority reference date when the letter has not been sent yet (planning). Ignored when notification_date is given.
end_reasonYesClosed category matching the letter: 'employer_termination' (licenciement / retrait d'enfant), 'resignation' (démission), 'mutual_termination' (rupture conventionnelle — not available for assistants maternels).
start_dateYesContract start (ISO).
am_monthly_grossNoAssistant maternel: monthly gross (mensualisation), EXCLUDING indemnités d'entretien, repas, kilométriques.
notification_dateNoISO date of the FIRST PRESENTATION (or handover) of the letter that ends the contract — the notice runs from it. For a rupture conventionnelle: the signature date. Omit for durations only.
serious_misconductNoThe letter states faute grave or faute lourde (a category chosen by the user — the tool does not assess it). Removes the notice and the indemnity by rule.
am_total_gross_paidNoAssistant maternel: optional total gross salaries paid since the start (art. 121.1 base). Defaults to mensualisation × complete months.

TDQS

A4.8/5.0
Behavior5/5

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

The annotations already declare readOnlyHint=true, but the description goes well beyond structured data: it states the calculation is deterministic ('no AI, no assessment of any person or motif'), advances the applicable convention (IDCC 3239 verified on Légifrance 2026), and discloses the non-availability of rupture conventionnelle. This prevents misuse of a network tool as a legal judgment or open-ended approximation tool.

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 front-loaded with the purpose and immediately names the sibling tool. The legal version is lengthy, but each segment adds a needed constraint or discloses an exclusion, and the French duplicate serves the bilingual domain. Overall it is longer than the bare minimum but well-structured and not redundant from an informational perspective.

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?

For a legal calculator with 8 parameters and no output schema, the description is unusually complete: it covers scope, excluding modality, output-like elements (last Pajemploi declaration, docs and who receives/provides, contest window), legal formula, and alternative routing to the generic tool. An agent has all signs needed to choose the tool and understand the result shape.

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

Parameters4/5

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

With 100% schema description coverage, the baseline is 3, but the description adds meaningful legal and calculation context: it names the 1/80 rule based on gross salaries excluding entretien/repas/km, the 8/15-day/1-month notice thresholds under article 120, and the 9-month care condition. This helps the agent understand how params like am_total_gross_paid and start_date will drive the computation.

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 clearly states the tool's verb and resource: it calculates end-of-contract outcomes for an assistant maternel with a parent-employer (retrait d'enfant, démission, préavis, indemnité, Pajemploi documents). It also differentiates itself from the sibling generic tool by name: 'Same engine as calculate_home_employment_end_of_contract with regime pre-set to assistant_maternel.'

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?

The description is explicit about when to use this tool versus alternatives: it names the generic sibling calculate_home_employment_end_of_contract, and explains that a 'garde d'enfant à domicile' should go to the generic tool with regime garde_domicile. It also excludes 'rupture conventionnelle NOT available', giving clear selection criteria.

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

calculate_home_employment_end_of_contractHome employment end of contract — notice, calendar, indemnity (CCN 3239)A
Read-only
Inspect

End of a home-employment contract in France (particulier employeur ↔ salarié: cleaner, carer, garde d'enfant à domicile, assistant maternel): notice, dates, indemnity, documents, for either party. · Fin de contrat d'emploi à domicile (particulier employeur ↔ salarié, assistant maternel) : préavis, calendrier, indemnité, documents, pour l'employeur comme pour le salarié. — Notice duration by seniority (art. 162.4.1 dismissal / 162.6 resignation / 120 assistant maternel), earliest entretien préalable date (art. 161.1.1.1 — 4th jour ouvrable counted from the day after presentation; the Code du travail dismissal procedure does not apply to the particulier employeur), notice end computed from the FIRST PRESENTATION of the letter, dismissal indemnity (art. 163.1: 1/4 month per year up to 10 years then 1/3, from 8 months, best of the 12- or 3-month average) or assistant-maternel withdrawal indemnity (art. 121.1: 1/80 of gross salaries, from 9 months), rupture conventionnelle windows (blocked for assistants maternels, CASF L.423-2), paid-leave reminder, last CESU/Pajemploi declaration date, 6-month settlement contest window, and the end-of-contract documents with who produces and who receives each. Same numbers whichever party calls. Applies the Convention collective IDCC 3239 (verified on Légifrance 2026). Deterministic formulas — no AI, no assessment of any person or motif.

ParametersJSON Schema
NameRequiredDescriptionDefault
partyYesWho is asking: 'employer' (particulier employeur) or 'employee' (salarié / assistant maternel). Wording only — the figures are identical for both.
regimeYes'home_employee' (salarié du particulier employeur: cleaner, carer, housekeeper…), 'garde_domicile' (child care at the family's home — same rules as home_employee), 'assistant_maternel' (childminder at her own home, agréée — or use calculate_assistant_maternel_end_of_contract).
as_of_dateNoSeniority reference date when the letter has not been sent yet (planning). Ignored when notification_date is given.
end_reasonYesClosed category matching the letter: 'employer_termination' (licenciement / retrait d'enfant), 'resignation' (démission), 'mutual_termination' (rupture conventionnelle — not available for assistants maternels).
start_dateYesContract start (ISO).
hourly_grossNoGross hourly rate in € (home employee / garde à domicile).
weekly_hoursNoWeekly hours (mensualisation = hourly × hours × 52 / 12).
am_monthly_grossNoAssistant maternel: monthly gross (mensualisation), EXCLUDING indemnités d'entretien, repas, kilométriques.
convocation_dateNoEmployer termination only: first presentation of the convocation à l'entretien préalable → earliest entretien date (CCN art. 161.1.1.1).
notification_dateNoISO date of the FIRST PRESENTATION (or handover) of the letter that ends the contract — the notice runs from it. For a rupture conventionnelle: the signature date. Omit for durations only.
avg_3_months_grossNoOptional — average gross monthly pay over the last 3 months (the more favourable average is used).
serious_misconductNoThe letter states faute grave or faute lourde (a category chosen by the user — the tool does not assess it). Removes the notice and the indemnity by rule.
am_total_gross_paidNoAssistant maternel: optional total gross salaries paid since the start (art. 121.1 base). Defaults to mensualisation × complete months.
avg_12_months_grossNoOptional — average gross monthly pay over the last 12 months (art. 163.1 reference).

TDQS

A4.6/5.0
Behavior5/5

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

Though annotations already mark readOnlyHint true, the description adds substantial behavioral context: notice runs from the FIRST PRESENTATION, results are deterministic with no AI and no assessment of persons or motifs, and the same figures are returned whichever party calls. These details set correct expectations about the tool's limits and assumptions.

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 dense but well structured: it leads with purpose, then lists all legal topics in one high-information paragraph, and ends with verification and determinism notes. It is longer than average, and the bilingual opening repeats content, but the density is justified for a complex legal calculator and every sentence adds value.

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?

For a highly complex legal computation with 14 parameters and no output schema, the description is unusually complete. It covers notice, indemnity, rupture conventionnelle restrictions, paid leave, CESU/Pajemploi declaration, contest window, beneficiary of documents, applicable law, and verification source. Important exclusions and behavioral constraints are also stated, leaving little ambiguity about what the agent should pose as inputs.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds value by explaining the legal formulas behind the parameters: dismissal indemnity (considered 1/4 month per year, then 1/3, from the 8th month, best of 12/3-month average), assistant-maternel indemnity (1/80 gross from the 9th month), and the earliest entretien préalable date calculation. It does not explicitly walk through all 14 parameter names, but functionally links the formulas to the relevant inputs.

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 clearly identifies the verb and resource: it calculates the end of a home-employment contract in France and enumerates the concrete deliverables: notice, dates, indemnity, and documents. It also narrows the scope to CCN 3239 and lists the relevant categories (cleaner, carer, garde d'enfant, assistant maternel), so it is easy to distinguish from salary, rent, and other calculators.

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?

The description states clear applicable context: both parties, particular employer ↔ salaried employee, home employment under IDCC 3239, with specific mention that the general Code du travail dismissal procedure does not apply. It does not explicitly list alternatives in the prose, but the schema tells the user to use calculate_assistant_maternel_end_of_contract in one embedded paraphrase; the distinction is present in the tool definition.

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

calculate_net_swiss_salaryNet Swiss salary calculator (frontalier)A
Read-only
Inspect

Net Swiss salary for a cross-border worker. · Salaire suisse net pour un frontalier. — Converts a gross annual Swiss salary (CHF) to net, deducting the employee shares of AVS/AI/APG, AC (chômage), LPP (2nd pillar) and NBU (non-occupational accident) for the given border canton. Deterministic Swiss payroll rules — no AI. Returns annual + monthly net and the deduction breakdown, with the data year of the rates used.

ParametersJSON Schema
NameRequiredDescriptionDefault
ageYesEmployee age (affects LPP rate).
cantonYesSwiss border canton (GE, VD, JU, NE, BS, VS).
gross_chf_annualYesGross annual salary in CHF.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations include readOnlyHint=true, and the description aligns by indicating a calculation ('Converts') with no side effects. It adds value by detailing the output (annual + monthly net, deduction breakdown, data year) and emphasizing deterministic rules (no AI), which goes beyond the annotations.

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 efficient, with a clear lead sentence, a translated version, and a concise explanation of method and outputs. It is slightly verbose due to bilingual text but still well-organized and front-loaded with the core purpose.

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

Completeness4/5

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

Given the complexity of Swiss payroll and no output schema, the description adequately explains the return format and the payroll components. It lacks edge-case details (e.g., salary caps) but is sufficient for an agent to understand scope and results.

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

Parameters4/5

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

Schema covers 100% of parameters, so baseline is 3. The description enriches parameter meaning by listing the specific deductions (AVS/AI/APG, AC, LPP, NBU) and tying them to the canton, which clarifies how canton and age affect the calculation beyond the schema's brief statements.

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 clearly states the tool's function: converting a gross annual Swiss salary to net for cross-border workers, with a specific verb ('converts') and resource ('gross salary to net'). It distinguishes itself from siblings like rent or tenant tools by focusing on salary and cross-border context.

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?

The description implicitly indicates usage for cross-border workers in specific cantons, and mentions deterministic rules, but does not explicitly state when to prefer this over alternatives or exclusions. Context is clear, but no direct when-not guidance.

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

calculate_rent_revisionFrench rent revision calculator (IRL indexation)A
Read-only
Inspect

New rent after the yearly IRL increase; F/G homes are frozen. · Nouveau loyer après la révision IRL annuelle ; les biens F/G sont gelés. — Computes the legally revised rent for a French residential lease using the INSEE IRL (indice de référence des loyers): new rent = current rent × (IRL of the lease's reference quarter ÷ IRL of the SAME quarter one year earlier), loi n° 89-462 art. 17-1. The reference quarter (trimestre de référence IRL) is the one written in the lease — pass it as reference_quarter. Two legal limits are enforced: the revision must be claimed within ONE YEAR of the lease anniversary or it is forfeited for that year, and it is BLOCKED for DPE class F or G (rent freeze since 25 August 2022, loi n° 2022-1158 art. 159) — pass dpe_class to get that check. Deterministic INSEE data + fixed formula — no AI. France métropolitaine.

ParametersJSON Schema
NameRequiredDescriptionDefault
dpe_classNoDwelling's DPE class, if known — F or G blocks the revision (rent freeze).
current_rentYesCurrent monthly rent excluding charges (hors charges), in euros.
revision_dateNoDate the revision takes effect, as an ISO date (e.g. 2026-09-01) — normally the lease anniversary; accept a natural date from the user and format it yourself. When given, the reference quarter is taken in THIS year; if reference_quarter names a different year, the result carries a warning and this date wins.
reference_quarterYesThe IRL reference quarter OF THE YEAR OF THE REVISION (e.g. '2026-T2' for a revision in 2026). The lease usually names the quarter only ('T2', '2e trimestre') — infer the year from the revision date, or pass revision_date and give just the quarter here. Accepts '2026-T2', 'T2 2026', 'Q2 2026', or 'T2' when revision_date is provided. Never the quarter of the previous year: the tool itself divides by the same quarter one year earlier.

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnlyHint annotation, the description discloses the exact formula, the reference-quarter logic, the two enforced legal limits, deterministic INSEE data, and the no-AI guarantee. This gives a full behavioral model of the calculation and its constraints with no contradiction.

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 dense yet organized: a front-loaded bilingual result statement, formula, then legal constraints, then determinism. Some bilingual duplication is present, but every substantive part earns its place for a tool with legal edge cases.

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

Completeness4/5

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

For a legal calculator with four parameters and no output schema, the description gives the formula, the two blocking conditions, the reference-quarter rule, and scope. It could explicitly state the return value shape, but the formula and 'new rent' framing make the output inferable.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, and the description adds real value on top: it tells the agent to pass the lease's reference quarter as reference_quarter and explains that dpe_class enables the F/G freeze check. Some parameter detail remains schema-only (revision_date, current_rent), but the schema already documents them thoroughly.

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 names a specific verb ('computes'), a precise resource (legally revised rent for French residential lease via INSEE IRL), and gives the exact formula, making the tool unmistakable. Its scope ('France métropolitaine', F/G freeze) also separates it from the sibling calculators.

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 clearly defines when the tool is appropriate: yearly IRL revision of French residential leases, with the one-year claim limit and F/G freeze described. It never names sibling alternatives or says when not to use it, but the context is specific enough that an agent can infer applicability.

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

calculate_tenant_notice_periodTenant notice period (préavis) calculator — French residential leaseA
Read-only
Inspect

Tenant's notice period to end a French lease (préavis). · Délai de préavis du locataire pour résilier un bail. — Computes the tenant's notice period for terminating a French residential lease (loi n° 89-462 art. 15): furnished = always 1 month; unfurnished = 3 months, reduced to 1 month in a zone tendue commune (first-list perimeter, resolved automatically from insee_code/commune) or on a statutory ground (art. 15 I, 1° à 5° incl. 3° bis). Returns the end date computed de quantième à quantième from the RECEPTION date, plus which justificatifs must accompany the letter. Deterministic legal formula — no AI involved. France métropolitaine rules.

ParametersJSON Schema
NameRequiredDescriptionDefault
communeNoCommune name, e.g. 'Lyon'. Used when insee_code is not provided.
ground_idNoStatutory ground for the reduced 1-month notice on an unfurnished lease (art. 15 I).
insee_codeNoINSEE commune code (5 chars, e.g. 75056 for Paris, 2A004 for Ajaccio). Preferred when known — skips name resolution.
lease_typeYes'vide' = unfurnished, 'meuble' = furnished
code_postalNo5-digit postal code — disambiguates homonym communes.
zone_tendueNoExplicit zone-tendue (first list) flag if already known — otherwise resolved from insee_code/commune.
reception_dateNoISO date the LANDLORD RECEIVES the notice (LRAR reception, remise en main propre, or acte de commissaire) — never the sending date.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, and the description reinforces this by labeling the computation 'Deterministic legal formula — no AI involved.' It adds valuable behavioral context beyond annotations: the reception-date emphasis (never the sending date), the automatic zone-tendue resolution, and the return of justificatifs. This exceeds the baseline for tools with annotations.

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 dense but well-organized, using a semicolon-separated enumeration and clear cause-effect statements. It front-loads the purpose and then provides necessary legal details. The bilingual intro is slightly redundant, but every sentence conveys essential information, keeping it appropriately concise for the complexity.

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

Completeness4/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 must convey what the function returns, and it does: 'the end date computed ... plus which justificatifs must accompany the letter.' It also covers the legal grounding, the zone-tendue resolution, and the scope (France métropolitaine). It lacks explicit error-handling notes (e.g., what happens with invalid dates), but for a deterministic calculator the description is sufficiently complete.

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

Parameters4/5

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

The schema covers 100% of parameters, so the baseline is 3. The description adds significant semantic value: it explains how lease_type dictates the base period, how ground_id and zone_tendue interact to reduce it, and clarifies the crucial nuance of reception_date (landlord receives, not sent). This goes well beyond the schema's raw field descriptions.

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 clearly states the tool computes the tenant's notice period for terminating a French residential lease, with specific rules (furnished = 1 month, unfurnished = 3 months with reductions). It names the legal reference (loi n° 89-462 art. 15) and distinguishes itself from sibling tools (e.g., calculate_rent_revision, check_zone_tendue) by its explicit scope and outputs (end date and justificatifs).

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?

The description indicates when to use the tool: for calculating tenant notice periods in France métropolitaine, and even notes it automatically resolves zone tendue, avoiding the need for separate calls. However, it does not explicitly name alternative tools or state when NOT to use it (e.g., for other legal jurisdictions or other lease types), which would push it to a 5.

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

check_dpe_rental_restrictionsDPE rental restrictions — letting ban, rent freeze, DPE validityA
Read-only
Inspect

French rental limits by DPE class: letting ban, rent freeze, DPE validity. · Restrictions locatives selon la classe DPE : interdiction de louer, gel des loyers, validité du DPE. — Given a dwelling's DPE class (A–G), returns the French rental restrictions in force: letting ban status and date (loi n° 2021-1104 Climat et Résilience — G banned since 2025, F from 2028, E from 2034, France métropolitaine), the F/G rent freeze (in force since 25 Aug 2022), and — when dpe_issue_date is provided — whether the DPE itself is still valid (10-year rule + the 2013–2021 transitional expiries). Deterministic rules from official thresholds — no AI involved.

ParametersJSON Schema
NameRequiredDescriptionDefault
dpe_classYesEnergy class from the dwelling's DPE.
dpe_issue_dateNoISO issue date of the DPE — enables the validity check.

TDQS

A4.6/5.0
Behavior5/5

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

The description goes beyond the readOnlyHint annotation by detailing the exact rules and thresholds: 'G banned since 2025, F from 2028, E from 2034', the rent freeze since 25 Aug 2022, and the 10-year validity rule with transitional expiries. It also assures 'Deterministic rules from official thresholds — no AI involved,' which sets expectations. This thoroughly aligns with the readOnlyHint and adds significant behavioral context.

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 dense but every sentence carries specific information: the summary line, the detailed breakdown of each restriction, and the legal references. It front-loads the main purpose and then expands. It could be slightly trimmed, but given the complexity of the rules, the length is justified.

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 no output schema, the description must explain what is returned, and it does: letting ban status and date, rent freeze, and DPE validity. It covers all three main aspects with precise dates and conditions, and notes the deterministic nature. For a tool with two parameters and clear rules, this is comprehensive.

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

Parameters4/5

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

Schema coverage is 100% for both parameters, so the schema already explains them. The description adds meaning by linking dpe_issue_date to the validity check ('when dpe_issue_date is provided — whether the DPE itself is still valid') and implicitly defines the DPE class range 'A–G'. It enriches the semantics without restating the schema.

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 clearly states the tool's purpose: it returns French rental restrictions (letting ban, rent freeze, DPE validity) based on a DPE class. The verb 'returns' and resource 'French rental restrictions' are specific, and it distinguishes itself from sibling tools that focus on Swiss salary, rent revision, etc., which are unrelated domains.

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?

The description provides clear context for when to use the tool: when a dwelling's DPE class is known and French rental restrictions are needed. It mentions France métropolitaine for the letting ban, and the optional dpe_issue_date for validity. It doesn't explicitly state alternatives, but siblings are obviously different topics, so no confusion arises. Could be improved by explicitly stating not to use for non-French properties.

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

check_geneva_quasi_residentGeneva quasi-resident status check (frontalier)A
Read-only
Inspect

Geneva quasi-resident status (≥90% income taxed in CH). · Statut de quasi-résident genevois (≥90% des revenus imposés en CH). — Tells a Geneva cross-border worker whether they qualify as a quasi-résident — i.e. at least ~90% of the household's worldwide income is taxable in Switzerland — which unlocks itemised deductions on the Geneva tax return. Deterministic threshold rule — no AI. Returns eligibility, the share, the threshold, and the data year.

ParametersJSON Schema
NameRequiredDescriptionDefault
swiss_incomeYesIncome taxable in Switzerland (same currency as total_income).
total_incomeYesTotal worldwide household income (same currency).

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint=true and openWorldHint=false. The description adds valuable behavioral context: it is a deterministic threshold rule, explicitly states 'no AI', and lists the exact return values (eligibility, share, threshold, data year). No contradiction with annotations.

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 compact and front-loaded with the key threshold, followed by user applicability and return values. It includes a redundant French duplicate of the opening phrase, which costs a little conciseness, but overall every major point is stated efficiently.

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?

For a simple two-parameter deterministic calculator with no output schema, the description is complete: it states the rule, the eligibility criterion, the benefit, and the exact outputs. No additional context is needed to invoke or interpret the result.

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 swiss_income and total_income are already fully documented in the schema. The description adds conceptual framing (household worldwide income, taxable in Switzerland) but does not provide additional parameter-level detail beyond the schema.

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 clearly states the tool's purpose: it tells a Geneva cross-border worker whether they qualify as a quasi-resident. It names the specific verb/resource/scope and distinguishes itself from sibling tools like calculate_net_swiss_salary and check_zone_tendue.

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?

The description clearly identifies the target user and context: Geneva cross-border workers considering itemised deductions. It does not explicitly name alternatives or state when not to use it, but the context is specific enough to guide selection.

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

check_zone_tendueZone tendue status of a French communeA
Read-only
Inspect

Is a commune in zone tendue, and which list (reduced tenant notice, or tax only)? · Une commune est-elle en zone tendue, et sur quelle liste (préavis réduit, ou fiscal seulement) ? — Checks whether a French commune is in the 'zone tendue' perimeter and — crucially — WHICH one: the first list (décret n° 2013-392 annex, 1,434 communes, agglomérations >50k) where the tenant's reduced 1-month notice applies, or the wider TLV tax perimeter added in 2023 where ONLY fiscal measures apply (widely mislabelled 'zone tendue' — the reduced notice does NOT apply there). Deterministic dataset lookup on DILA reference data (service-public.fr simulator dataset) — no AI involved. Provide insee_code, or commune (+ code_postal to disambiguate).

ParametersJSON Schema
NameRequiredDescriptionDefault
communeNoCommune name, e.g. 'Lyon'. Used when insee_code is not provided.
insee_codeNoINSEE commune code (5 chars, e.g. 75056 for Paris, 2A004 for Ajaccio). Preferred when known — skips name resolution.
code_postalNo5-digit postal code — disambiguates homonym communes.

TDQS

A4.1/5.0
Behavior4/5

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

Beyond the readOnlyHint=true and openWorldHint=false annotations, the description adds valuable behavioral context: it is a 'deterministic dataset lookup on DILA reference data (service-public.fr simulator dataset) — no AI involved.' It also discloses the real-world consequences of each list, making the tool's behavior and semantic boundary much clearer.

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 information-dense and front-loaded with the core question, then the critical caveat about the two lists. There is minor redundancy from the bilingual repetition of the opening question, but overall every substantive piece of the explanation earns its place given the tool's complexity.

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

Completeness4/5

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

Given the absence of an output schema, the description adequately conveys what the caller should expect conceptually: membership in the zone tendue perimeter and which list applies. It also covers the data source, determinism, and input disambiguation needs. It does not specify the exact output shape, but for a boolean/list lookup the semantic outcome is clear enough.

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% and the schema already explains the commune name, INSEE code preference, and postal-code disambiguation. The description essentially restates this guidance ('Provide insee_code, or commune (+ code_postal to disambiguate)') without adding new parameter-level meaning beyond the schema.

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 uses a specific verb and resource: 'Checks whether a French commune is in the zone tendue perimeter' and immediately distinguishes the two lists (reduced notice vs. tax-only). This clearly separates the tool from sibling tools and makes its exact scope unambiguous.

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 gives clear usage context by explaining the critical distinction between the two 'zone tendue' lists and warns that the wider TLV perimeter is often mislabelled. It also tells the caller how to provide input ('Provide insee_code, or commune (+ code_postal to disambiguate)'), though it does not explicitly compare against sibling tools or state when not to use it.

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

compare_family_allowancesFamily allowances — Swiss vs French (frontalier)A
Read-only
Inspect

Family allowances: Swiss vs French for a frontalier. · Allocations familiales : Suisse ou France pour un frontalier. — Compares the monthly/annual family allowances a cross-border worker's household is due under the Swiss canton's rules vs French CAF, and the EU 883/2004 differential top-up when the spouse works in France. Deterministic official allowance tables — no AI. Returns Swiss annual + monthly base (CHF), CAF monthly (EUR), the differential, and the data year.

ParametersJSON Schema
NameRequiredDescriptionDefault
cantonYesSwiss border canton (GE, VD, JU, NE, BS, VS).
childrenYesThe children (at least one).
spouse_works_in_franceNoDoes the spouse work in France? (triggers the EU differential).

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint=true inferring a safe read operation. The description adds that it's 'Deterministic official allowance tables — no AI', which explains the computation nature. It also describes the return values (Swiss annual/monthly in CHF, CAF monthly in EUR, differential, year). It doesn't mention any side effects, but for a read-only deterministic calculator, this is adequate. It adds value beyond annotations.

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

Conciseness5/5

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

Two sentences: first states the purpose and outputs, second adds deterministic nature and return specifics. Every word serves a purpose, no redundancy.

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

Completeness4/5

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

The tool has 3 parameters (all described in schema), no output schema, but the description explicitly lists the returned values (Swiss annual/monthly in CHF, CAF monthly in EUR, differential, data year). It also mentions the deterministic nature and the EU regulation. For a calculation tool with clear inputs, this is complete enough. Could have mentioned edge cases (e.g., max children, age limits) but schema covers those. Overall adequate.

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 the parameters are well-documented in the schema. The description adds context about the differential top-up and spouse working in France, which matches the parameter. But it doesn't add significant meaning beyond the schema descriptions. Baseline 3 is 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 clearly states the tool compares Swiss vs French family allowances for a frontalier, specifies the differential top-up, and lists the exact outputs. It uses a specific verb ('compares') and resource ('family allowances for a frontalier'), and it's distinct from siblings which deal with other legal/financial calculations.

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?

The description implies usage for frontaliers with children comparing Swiss vs French allowances concrete. It doesn't explicitly mention when not to use it or alternatives, but the purpose is specific enough that it's clear this is for cross-border workers. Given the sibling tools are unrelated (net salary, rent revision, etc.), the context is sufficient. It could have explicitly stated 'use this if you are a frontalier with children' but it's implied.

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

compare_lamal_cmuFrontalier health cover — LAMal vs CMUA
Read-only
Inspect

Frontalier health cover: LAMal (CH) vs CMU/PUMa (FR). · Couverture santé frontalier : LAMal (CH) ou CMU (FR). — Estimates the monthly cost of the two health-insurance options a France–Switzerland cross-border worker chooses between (droit d'option): Swiss LAMal (in CHF) vs French CMU/PUMa (in EUR, a % of income). Dependants are priced by age band (0-18 child, 19-25 young adult, 26+ adult). Deterministic official premium/rate tables — no AI. Returns both monthly figures + the data year, plus how to transmit the signed choice form (the CPAM's dedicated online téléservice).

ParametersJSON Schema
NameRequiredDescriptionDefault
ageYesWorker's age.
cantonYesSwiss border canton (GE, VD, JU, NE, BS, VS).
salary_chfYesAnnual Swiss salary in CHF.
children_agesNoAges of dependants (optional) — priced by band (≤18 / 19-25 / 26+).

TDQS

A4.5/5.0
Behavior5/5

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

Adds meaningful behavior beyond annotations: deterministic official rate tables with no AI, dependants priced by age bands, and returns both monthly figures, the data year, and transmission instructions. Aligns with readOnlyHint=true and openWorldHint=false without contradiction.

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?

Core content is dense and useful, but the opening bilingual phrase duplicates the title before the explanatory sentence begins. Slightly verbose; the first clause could be removed without losing information.

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?

No output schema exists, yet the description compensates by specifying the exact returns: both monthly figures, the data year, and how to transmit the signed choice form. All key inputs, pricing logic, and currencies are covered, providing a complete picture for an agent.

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

Parameters4/5

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

Schema covers 100% of parameters, so baseline is 3. The description adds value by clarifying that CMU/PUMa is a percentage of income, that dependants are grouped into specific age bands, and that the salary context is annual Swiss CHF.

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?

States the exact verb 'Estimates' and resource: monthly cost of the two health-insurance options for a France–Switzerland cross-border worker. Explicitly names LAMal vs CMU/PUMa, making it instantly distinguishable from sibling tools like compare_family_allowances.

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?

Clearly identifies when to use: when a France–Switzerland cross-border worker is choosing between LAMal and CMU/PUMa under the droit d'option. Does not explicitly name sibling alternatives or exclusion conditions, but the context is unambiguous enough for selection.

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

generate_rent_receiptGenerate a French rent receipt (quittance de loyer) PDF — free, no accountAInspect

FREE — no account needed. · GRATUIT, sans compte : quittance de loyer en PDF. — Rent receipt (quittance de loyer, loi n° 89-462 art. 21) PDF from the data you give: landlord, tenant, property address, period, rent and charges, payment date. Deterministic template engine — a fixed legal template filled with the given data, not AI-generated content. The document is issued in FRENCH (required for legal validity); includeEnglish appends a non-binding English reference translation. Nothing is stored: the PDF is available for 24 hours through a single-use link, then deleted — no account, no property, no history. Per-network caps apply (a structured rate_limited result says when to retry). Have the landlord verify every field before sending it to the tenant. With an AdminLanding account the same receipt is pre-filled from your saved properties, the tenant is stamped from the record so their name never passes through the assistant, receipts are kept in your history and shared through the tenant portal, and leases can be sent for e-signature — €4.90 — one document for this property (buy in the web app), or €49 — 50 documents (€39 each additional property); first property free (10 documents). Payment happens in the browser, never through the agent. General information/document tooling, not legal advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
localeNoFilename/interface language only — the document is always issued in French (required for validity). Default fr.
periodToYesRental period end (ISO date). The receipt month is derived from this date.
periodFromYesRental period start (ISO date, e.g. 2026-08-01).
rentAmountYesRent excluding charges, in euros, as a string (e.g. '850' or '850.50').
tenantNameYesTenant's full name (locataire) as it must appear on the receipt.
paymentDateYesDate the landlord RECEIVED the payment (ISO date).
landlordNameYesLandlord's full name (bailleur).
chargesAmountYesCharges (provisions/forfait), in euros, as a string ('0' if none).
paymentMethodNoPayment method (e.g. 'Virement bancaire', 'Chèque'). Defaults to bank transfer.
includeEnglishNoAppend a non-binding English reference translation as the last page. The legal document itself stays French.
landlordAddressYesLandlord's address.
propertyAddressYesAddress of the rented dwelling.

TDQS

A4.1/5.0
Behavior5/5

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

Annotations are all false, so the description carries the full behavioral burden. It discloses determinism ('not AI-generated content'), the French-only legal document plus optional non-binding English appendix, the 24-hour single-use link and deletion lifecycle, per-network caps and rate_limited response, and an instruction to have the landlord verify every field. This is exceptionally transparent.

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

Conciseness2/5

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

The description is heavily padded with marketing and account-tier/pricing details ('€4.90 — one document... €49 — 50 documents...') and the bilingual headline duplicates the same 'free, no account' information. While the essential behavior is front-loaded, much of the length is not needed for correct tool invocation.

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

Completeness4/5

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

For a tool with no output schema, the description explains the core outcome: a French legal PDF, a 24-hour single-use link, deletion after 24 hours, and a structured rate_limited result. It also covers per-network caps and the landlord-verification step. The only gap is an exact description of the response envelope/field names, but the provided lifecycle and legality details make it sufficiently complete.

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 the baseline is 3. The description loosely lists field groups (landlord, tenant, property, period, rent/charges, payment date) and clarifies includeEnglish's non-binding role, but the schema already documents every parameter, including locale and receipt-month derivation. No meaningful parameter semantics are added beyond that.

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?

States it produces a 'Rent receipt (quittance de loyer, loi n° 89-462 art. 21) PDF' from user-supplied data, naming the specific resource and legal basis. This clearly distinguishes it from the sibling calculators/checkers, which solve numerical or eligibility questions rather than generating documents.

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?

Provides rich context: free, no account needed, 24-hour single-use link, per-network caps, payment happening in the browser rather than through the agent, and 'not legal advice'. However, it never explicitly names an alternative tool or says when not to use it, so it reaches clear-context but not explicit exclusion.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool update
    • Addedgenerate_rent_receipt
  2. 1 tool update
    • Changedcalculate_rent_revision2 fields changed
      • changedInput schema / properties / reference_quarter / description
        Previous value: -"The IRL reference quarter named in the lease (trimestre de référence). Accepts forms like '2026-T2', 'T2 2026', 'Q2 2026'."New value: +"The IRL reference quarter OF THE YEAR OF THE REVISION (e.g. '2026-T2' for a revision in 2026). The lease usually names the quarter only ('T2', '2e trimestre') — infer the year from the revision date, or pass revision_date and give just the quarter here. Accepts '2026-T2', 'T2 2026', 'Q2 2026', or 'T2' when revision_date is provided. Never the quarter of the previous year: the tool itself divides by the same quarter one year earlier."
      • addedInput schema / properties / revision_date
        Added value: +{
        +  "description": "Date the revision takes effect, as an ISO date (e.g. 2026-09-01) — normally the lease anniversary; accept a natural date from the user and format it yourself. When given, the reference quarter is taken in THIS year; if reference_quarter names a different year, the result carries a warning and this date wins.",
        +  "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        +  "type": "string"
        +}
  3. 2 tool updates
    • Addedcalculate_assistant_maternel_end_of_contract
    • Addedcalculate_home_employment_end_of_contract
  4. 8 tool updates
    • Changedcalculate_net_swiss_salary1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcalculate_rent_revision1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcalculate_tenant_notice_period1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcheck_dpe_rental_restrictions1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcheck_geneva_quasi_resident1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcheck_zone_tendue1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcompare_family_allowances2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • removedInput schema / properties / children / items / additionalProperties
        Removed value: -false
    • Changedcompare_lamal_cmu1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
  5. 1 tool update
    • Changedcheck_geneva_quasi_resident2 fields changed
      • addedInput schema / properties / swiss_income / maximum
        Added value: +100000000
      • addedInput schema / properties / total_income / maximum
        Added value: +100000000
  6. 4 tool updates
    • Addedcalculate_net_swiss_salary
    • Addedcheck_geneva_quasi_resident
    • Addedcompare_family_allowances
    • Addedcompare_lamal_cmu
  7. 1 tool update
    • Addedcalculate_rent_revision
  8. 3 tool updates
    • First observedcalculate_tenant_notice_period
    • First observedcheck_dpe_rental_restrictions
    • First observedcheck_zone_tendue

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Accounting MCP server for the French LMNP tax status (furnished rentals, e.g. Airbnb hosts). 44 tools to manage properties, income and expenses, compute component-based depreciation and fiscal results, and generate the official French tax return (2031/2033) and FEC accounting export.
    44
    3
    AGPL 3.0
  • F
    license
    Not graded
    quality
    B
    maintenance
    Estimates French social benefits (RSA and prime d'activité) locally from household details like salary, rent, housing status, children, and couple status.
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.4/5.0
Disambiguation4/5

Each tool is tied to a specific legal or payroll calculation, and the names clearly indicate their target: salary, rent revision, tenant notice, DPE restrictions, quasi-resident status, zone-tendue lookup, family allowances, and health insurance. Some overlap exists because rent revision and DPE checks both involve F/G rent freezes, and tenant notice relies on zone-tendue data, but descriptions keep boundaries clear.

Naming Consistency5/5

All tool names follow the same snake_case verb_noun pattern with a concise legal/domain object. The verbs vary by nature of action—calculate_, check_, compare_—but each is consistent and semantically meaningful.

Tool Count5/5

Eight tools is a well-scoped number for a specialist compliance server. Each tool handles a distinct calculation or legal lookup, and none feels redundant or purely decorative.

Completeness4/5

The set covers the main rental-revision, tenant-notice, DPE-restriction, zone-tendue, and cross-border worker salary/benefit comparisons well. Minor gaps remain around related compliance details such as rental deposits, landlord-side termination, or deeper Swiss tax filing checks, but they are not fatal to the tool set’s stated purpose.

Resources