Skip to main content
Glama

Server Details

French rental tools: create & e-sign a lease, rent control, IRL, deposit, receipts (France).

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
ykarmouta/faireplace-public-mcp
GitHub Stars
0
Server Listing
FairePlace Public MCP Server

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 3.9/5 across 21 of 21 tools scored. Lowest: 3.2/5.

Server CoherenceA
Disambiguation4/5

Most tools are clearly distinct document generators or calculators, but check_rent_control and get_reference_rent both deal with rent control and could be confused, as could simulate_irl and simulate_irl_by_quarters. Descriptions mostly clarify boundaries, so only minor ambiguity exists.

Naming Consistency5/5

All tools follow a consistent verb_noun snake_case pattern (e.g., generate_quittance, check_address_risks, simulate_irl). The verbs vary by action but the structure is uniform and predictable across the entire set.

Tool Count4/5

With 21 tools covering a broad but focused domain of French rental law, the count is slightly above the ideal 3-15 range but each tool serves a distinct legal or calculation purpose. The scope is large but justified for a comprehensive rental toolkit.

Completeness5/5

The toolset covers the full lifecycle of a French residential lease: creation, amendments, termination, deposits, guarantors, inventories, rent receipts, unpaid rent, rent control, and rent revision. There are no obvious missing operations for the stated purpose.

Available Tools

21 tools
calculate_deposit_restitutionCalculer la restitution du depot de garantieBInspect

Compute the security deposit legal cap, restitution deadline, allowed retentions and any late penalty (art. 22 loi 89-462). FR: depot de garantie, restitution, retenues, delais.

ParametersJSON Schema
NameRequiredDescriptionDefault
lease_typeYesType de bail : 'vide' ou 'meuble'
deposit_amountYesDepot de garantie verse, en euros
lease_end_dateYesDate de fin de bail, format YYYY-MM-DD
monthly_rent_hcYesLoyer mensuel hors charges, en euros
exit_inspection_conformityYesL'etat des lieux de sortie est-il conforme a celui d'entree ?
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It lists calculations but does not state that the tool is read-only, deterministic, or side-effect-free, nor does it describe error handling or assumptions. The absence of any safety or side-effect disclosure is a notable gap for a tool that may have legal implications.

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 a single, front-loaded sentence that packs key information: what is computed and the legal reference. The appended French phrase is redundant with the title but short and harmless. No wasted words, though it could be slightly tightened by removing the French repetition.

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

Completeness3/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 partially covers return values by naming the computed elements (cap, deadline, retentions, penalty). However, it does not describe the output format, units, or potential edge cases (e.g., when exit_inspection_conformity is false). For a tool with 5 required parameters and no output schema, this is minimally complete but leaves room for ambiguity.

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?

The input schema provides 100% coverage with descriptions for all 5 parameters, so the baseline is 3. The tool description does not add parameter-level syntax or format details, but it provides useful context by linking parameters to legal concepts (cap, deadline, retentions, penalty). This is adequate but not compensatory.

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

Purpose4/5

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

The description clearly specifies the tool's function with a specific verb ('Compute') and resource ('security deposit legal cap, restitution deadline, allowed retentions and any late penalty'), citing the legal basis (art. 22 loi 89-462). It distinguishes itself from sibling tools like generate_bordereau_restitution by focusing on calculation rather than document generation, though it does not explicitly name alternatives.

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

Usage Guidelines3/5

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

The description implies usage when computing deposit restitution figures, but it provides no explicit when-to-use guidance, exclusions, or references to alternative tools (e.g., generate_bordereau_restitution for document generation). The context is clear enough for a knowledgeable user but lacks direct comparison.

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

check_address_risksVerifier l'etat des risques d'une adresseAInspect

Geocode an address and return an indicative summary of the commune's natural and technological risks (Georisques) + a link to the official ERRIAL tool. For the lease's mandatory risk annex. FR: etat des risques (ERNMT/ERRIAL), annexe obligatoire du bail.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesAdresse en texte libre, ex : '1 rue de Rivoli, 75001 Paris'
Behavior4/5

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

No annotations are present, so the description carries the burden. It discloses that the result is an 'indicative summary' at the commune level and includes a link, setting expectations about scope and precision. It doesn't detail error handling or output format, but for a read-only lookup this is adequate.

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 concise sentences plus a French translation pack the essential action, use case, and output traits into minimal space. No filler.

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 simple one-parameter interface and no output schema, the description covers the core behavior, the intended legal context, and the return structure (summary + link). A minor gap is the lack of explicit mention of failure modes, but that's not critical for this lookup tool.

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?

The schema already fully describes the single `address` parameter with an example, giving 100% coverage. The description adds the geocoding behavior but no new format or syntax details, so it stays at baseline.

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 it geocodes an address and returns an indicative summary of the commune's natural and technological risks plus an ERRIAL link. This verb+resource combination distinguishes it from all sibling tools dealing with rent, deposits, or lease 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?

It provides clear context: 'For the lease's mandatory risk annex' and references ERNMT/ERRIAL, indicating when to use it. However, it doesn't explicitly state when not to use it or mention alternatives, though the unique purpose makes it obvious.

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

check_rent_controlVerifier l'encadrement des loyersAInspect

Check whether a proposed rent complies with French rent control for an address (returns reference rent, upper ceiling and verdict). Use for: max allowed rent, rent cap, is a city rent-controlled. FR: verifie un loyer face a l'encadrement des loyers (zone tendue).

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesAdresse du logement, ex : '1 rue de Rivoli'
room_countYesNombre de pieces principales
postal_codeYesCode postal, ex : '75001'
is_furnishedYesLe logement est-il meuble ?
surface_areaYesSurface habitable en m2
proposed_rentYesLoyer mensuel hors charges propose, en euros
construction_periodYesPeriode de construction, ex : 'avant 1946', '1946-1970', '1971-1990', 'apres 1990'
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses that the tool returns reference rent, upper ceiling, and verdict, but it does not explicitly state whether the operation is read-only, what happens for non-rent-controlled areas, or any other behavioral traits like error handling or data sourcing.

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 concise (two sentences) and front-loaded with the core purpose. The French translation (FR:) adds redundancy by restating the same information, slightly reducing efficiency. Overall, it is well-structured and free of fluff.

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 tool's complexity (7 parameters, no output schema), the description provides useful context: what it does, what it returns (reference rent, upper ceiling, verdict), and when to use it. It does not explain edge cases (e.g., unsupported addresses) or that it specifically applies to 'zones tendues', though it hints via 'zone tendue' in the French sentence. Fairly complete for a well-defined check tool.

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 schema already documents all parameters clearly. The description adds minimal parameter-level detail beyond mentioning 'proposed rent' and 'address', but these are already in the schema. Baseline 3 is appropriate since the description does not enhance parameter understanding 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?

Description clearly states the tool's function: 'Check whether a proposed rent complies with French rent control for an address' and lists outputs (reference rent, upper ceiling, verdict). It also specifies use cases (max allowed rent, rent cap, is city rent-controlled), effectively distinguishing it from related sibling tools like get_reference_rent.

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 explicit use cases ('Use for: max allowed rent, rent cap, is a city rent-controlled') that indicate when to select this tool. However, it does not explicitly mention alternative tools or scenarios where a different tool would be more appropriate, such as when only the reference rent is needed.

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

create_lease_draftCreer un brouillon de bail (a finaliser et signer)AInspect

Create a French residential lease draft (bail / contrat de location) from the provided info, and return a link to finalize, adjust and E-SIGN it (advanced eIDAS signature, legally binding) on FairePlace. Use whenever a user wants to create, draft or generate a lease / rental contract. Link valid 30 minutes. FR: creer / rediger / generer un bail de location.

ParametersJSON Schema
NameRequiredDescriptionDefault
leaseYesLes conditions du bail. Ex : { rent_amount, charges_amount, deposit_amount, start_date, lease_type }.
ownerYesLe bailleur (proprietaire). Ex : { last_name, first_name, email }. Personne morale : { legal_name, email }.
logementYesLe logement. Ex : { name, address, postal_code, city, surface_area, room_count, is_furnished }.
Behavior3/5

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

No annotations are provided, so the description bears full responsibility for behavioral disclosure. It reveals the link's 30-minute validity and the eIDAS signature feature, which is helpful. However, it does not describe side effects, lasting state changes, or error conditions, so some transparency gaps remain.

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?

The description is three sentences long, front-loaded with the core action, and includes a French usage hint for multilingual relevance. Every sentence adds value without 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?

Given the nested parameter structure and lack of output schema, the description covers the primary output (a signable link) and the 30-minute expiration. It sets expectations for legal binding via eIDAS. Missing details like authentication requirements or post-expiry behavior, but it is sufficiently complete for a creation tool.

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?

The input schema already has 100% coverage with descriptions and examples for all three parameters. The description does not add parameter-specific details, but the schema supplies sufficient meaning. Therefore, 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?

The description clearly states the tool's function: 'Create a French residential lease draft... and return a link to finalize, adjust and E-SIGN it.' This distinguishes it from sibling generation tools like generate_avenant or generate_conge by specifying 'lease / rental contract' and the e-signature element.

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 explicitly says 'Use whenever a user wants to create, draft or generate a lease / rental contract.' This provides clear usage context. It does not list exclusions or alternatives, but the sibling names imply other document types.

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

generate_avenantGenerate a lease amendment / avenant (PDF)BInspect

Generate a lease amendment. Fields: landlord_name, tenant_name, property_address, object, effective_date. FR: avenant au bail. Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It does disclose a key behavioral trait: it returns a link to open/download the PDF ('Renvoie un lien a ouvrir pour afficher/telecharger le PDF') and lists the input fields. However, it does not mention whether the document is stored, if there are permissions required, how the link behaves, or what happens if required fields are missing—leaving important side effects and constraints undisclosed.

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 concise and front-loaded: it states the primary action, lists the fields, includes a French translation, and notes the output link in three short sentences. No wasted words, though the French translation could be seen as optional. It is efficient and easy to scan.

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

Completeness3/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 explains the return value (a link to the PDF). However, for a document generator with many sibling tools, it lacks contextual information about the purpose of an avenant (e.g., modifying an existing lease), any prerequisites, or limitations. The description is functional but not fully complete for guiding an agent in all situations.

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 input schema only specifies a generic 'payload' object, deferring to the tool description for field details. The description compensates by enumerating the actual fields (landlord_name, tenant_name, property_address, object, effective_date), which gives the agent precise parameter names beyond the schema. However, it lacks types, formats, or required status for these fields, so it doesn't fully define semantics but provides a solid baseline.

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

Purpose4/5

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

The description clearly states the tool generates a lease amendment ('Generate a lease amendment') and lists the specific fields involved (landlord_name, tenant_name, property_address, object, effective_date). The French phrase 'avenant au bail' reinforces the document type. However, it doesn't explicitly distinguish itself from sibling tools like create_lease_draft, which also deals with lease documents, so it falls short of a perfect 5.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives such as create_lease_draft or generate_conge. The description is purely descriptive and does not mention prerequisites, exclusions, or scenarios where another tool would be more appropriate. This leaves the agent without decision-support information.

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

generate_bordereau_restitutionGenerate a deposit restitution slip / bordereau (PDF)AInspect

Generate the security-deposit restitution slip. Fields: landlord_name, tenant_name, property_address, deposit_amount, retentions. FR: bordereau de restitution du depot. Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior3/5

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

Annotations are absent, so the description fully carries the transparency burden. It discloses the key behavior of returning a link to view/download the PDF, but does not mention side effects, auth requirements, or field validation.

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?

The description is compact and front-loaded, stating the purpose, listing fields, and noting the return format in two sentences. No redundant or filler content is present.

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 explains the output (a PDF link). It does not clarify required fields or detail the retentions parameter, but for a straightforward document generator it provides sufficient context.

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 only has a generic payload object with no specific properties, so the description compensates by enumerating the five fields (landlord_name, tenant_name, property_address, deposit_amount, retentions). It does not specify types or the internal structure of retentions, but this is a meaningful addition over 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 generates a security-deposit restitution slip (bordereau), using a specific verb and resource. This distinguishes it from sibling document generators like generate_quittance or generate_conge.

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

Usage Guidelines3/5

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

No explicit when-to-use or when-not-to-use guidance is provided. The usage is implied by the tool's name and the existence of sibling tools such as calculate_deposit_restitution, but the description itself does not offer alternative selection advice.

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

generate_cautionnementGenerate a guarantee deed / acte de cautionnement (PDF)AInspect

Generate a guarantor's guarantee deed. Fields: guarantor_name, tenant_name, landlord_name, property_address, rent, duration. FR: acte de cautionnement (garant). Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses a key behavioral trait: returning a link to view/download the PDF. However, it does not mention side effects, whether the document is persisted, or any system permissions required, leaving some behavioral ambiguity.

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?

The description is concise, with two sentences covering the action, fields, and output behavior. It front-loads the primary purpose and includes a French localization note, with no redundant or filler content.

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

Completeness3/5

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

The description covers the main aspects: what the tool does, the input fields, and the output PDF link. However, it does not specify optional vs required fields, format expectations (e.g., rent currency, duration units), or how this tool differs from other document generators, leaving gaps for an agent to fully understand usage.

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 is generic (a payload object with additionalProperties), so the description compensates by enumerating the six specific fields (guarantor_name, tenant_name, landlord_name, property_address, rent, duration). This adds essential meaning beyond the schema, though it does not specify types, units, or requiredness.

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 generates a guarantor's guarantee deed (acte de cautionnement) and outputs a PDF. It lists the relevant fields, making it distinct from sibling document generators. The verb 'Generate' plus the specific document type provides unambiguous purpose.

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

Usage Guidelines3/5

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

The description implies usage when a guarantee deed is needed, but it does not explicitly state when to use this tool versus other document generators, nor does it provide any exclusions or prerequisites. The purpose is self-evident, but no alternative guidance is offered.

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

generate_charges_recuperablesGenerate the recoverable charges list / charges recuperables (PDF)AInspect

Generate the list of recoverable charges (decret 87-713). Few or no fields required. FR: charges recuperables. Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior3/5

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

Since there are no annotations, the description carries the full burden. It usefully discloses that the tool returns a link to view/download the PDF and that few fields are needed, which informs the agent about the primary behavior. However, it does not mention any side effects, authentication requirements, or how the payload is used, leaving some behavioral ambiguity.

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?

The description is compact and front-loaded with the core action and subject, followed by the return-link behavior and a French translation. Every sentence contributes distinct information, and there is no redundancy or filler.

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

Completeness3/5

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

For a simple generation tool, the description covers the purpose, input minimalism, and return format adequately. However, the lack of concrete payload field guidance and the absence of an output schema make it incomplete for an agent to reliably invoke the tool, especially when optional fields might be needed.

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

Parameters2/5

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

The input schema's single 'payload' parameter is an opaque object that points back to the description for field details, but the description only says 'few or no fields required' without listing any possible field names, formats, or examples. This leaves the agent without enough information to correctly populate the payload if any fields are needed.

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 action ('Generate') and the resource ('list of recoverable charges'), with a legal reference (decret 87-713). It distinguishes this tool from sibling PDF generation tools by its specific subject matter and explicitly mentions the output is a link to a PDF.

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

Usage Guidelines3/5

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

The description implies usage for creating a recoverable charges list but does not explicitly compare it to sibling tools or state when not to use it. The note 'Few or no fields required' offers some input guidance, but there is no mention of alternatives or exclusion criteria.

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

generate_congeGenerate a notice to quit / conge (PDF)AInspect

Generate a notice-to-quit letter (landlord or tenant). Fields: landlord_name, tenant_name, property_address, reason, effective_date. FR: lettre de conge / preavis. Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior3/5

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

With no annotations, the description carries the full disclosure burden. It discloses that the tool returns a link to view/download the PDF, which is a key behavioral trait. However, it does not mention side effects, permissions, or whether the operation is read-only or creates persistent data. The description is somewhat transparent but lacks depth on potential side effects.

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?

The description is highly concise, with no redundant words. It front-loads the purpose, then lists fields, provides a French translation, and concludes with the behavior. Every sentence serves a clear function, making it efficient and well-structured.

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 simple document-generation tool with no output schema, the description adequately covers the return value (a link to a PDF). It also differentiates from siblings by specifying the document type and relevant fields. It falls short of explaining potential error conditions or required field formats, but these are not critical for basic usage.

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 input schema only defines a generic 'payload' object with no internal properties, so the description compensates by listing the expected fields (landlord_name, tenant_name, property_address, reason, effective_date). This adds critical meaning beyond the schema. However, it does not specify data types or formats (e.g., date format for effective_date), leaving some ambiguity.

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 generates a notice-to-quit letter (lettre de conge / preavis), specifying both landlord and tenant contexts. It lists the exact fields involved, distinguishing it from sibling tools that generate other document types (e.g., etat des lieux, avenant). The verb 'generate' plus the specific resource makes the purpose unambiguous.

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

Usage Guidelines3/5

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

The description implies use when a notice-to-quit is needed, but it does not explicitly state when to use this tool over alternatives like generate_resiliation_amiable or generate_notice_information. There are no exclusions or alternative recommendations provided, so the guidance is inferred rather than explicit.

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

generate_etat_des_lieuxGenerate an inventory / etat des lieux (PDF)AInspect

Generate a semi-filled, print-and-complete inventory report (decret 2016-382). Fields: landlord_name, property_type, tenant_names, rooms, property_address. FR: etat des lieux. Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses key behaviors: output is a link to display/download a PDF, the report is semi-filled, and it references the legal decree. This adds useful context beyond a simple 'generate' statement, though it omits details like authentication requirements or whether any data is stored.

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 core purpose, followed by field list and return-behavior note. It is appropriately sized for the tool's complexity, with no major redundancy, though the French phrase for the return link adds a slightly mixed-language style.

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 simple schema and no output schema, the description provides sufficient context: purpose, fields, output format (PDF link), and legal basis. It lacks explicit error handling or details on which fields are pre-filled, but overall it covers the essential operational aspects for a generation tool.

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 only defines a generic 'payload' object with no predefined properties, so the description's enumeration of fields (landlord_name, property_type, tenant_names, rooms, property_address) is essential for the agent to construct valid input. This compensates for the opaque schema, though it lacks types or constraints for these fields.

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 it generates a semi-filled, print-and-complete inventory report (etat des lieux) under decree 2016-382, with specific fields listed. This distinguishes it from sibling tools like generate_inventaire_mobilier, which handles furniture inventory, and other generate_* tools.

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

Usage Guidelines3/5

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

The description implies usage context by noting the report is 'print-and-complete,' suggesting it's for creating a PDF to be manually finished. However, it does not explicitly state when to use this tool versus alternatives (e.g., for move-in/move-out inspections) or mention any exclusions.

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

generate_grille_vetusteGenerate a wear-and-tear grid / grille de vetuste (PDF)AInspect

Generate a wear-and-tear (vetuste) grid. Few or no fields required. FR: grille de vetuste. Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior4/5

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

With no annotations provided, the description carries the burden of behavioral disclosure. It uniquely reveals that the tool returns a link to open/download the PDF rather than the PDF directly, which is a non-obvious behavior. It also notes the minimal input requirement. However, it does not detail any potential side effects or data persistence, but for a generation tool this is adequate.

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?

The description is concise, consisting of two effective sentences. It front-loads the core purpose and then adds the crucial output detail (PDF link). The French translation is useful for the target audience. No unnecessary words.

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

Completeness3/5

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

The tool's complexity is low (one arbitrary payload parameter), no output schema, and no annotations. The description explains the output and minimal input requirement, but it lacks specific field information for the payload, which is essential for generating the desired grid. This leaves a gap in completeness despite the simple nature of the tool.

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

Parameters2/5

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

The schema's only parameter 'payload' is described as 'see the tool description for fields,' but the tool description merely says 'Few or no fields required' without enumerating any actual field names or formats. The description adds no concrete meaning beyond the schema's circular reference, leaving the user without guidance on what to include in the payload.

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 generates a wear-and-tear (vetuste) grid, which is a specific resource and action. It also mentions the output is a PDF link, adding further clarity. This distinguishes it from sibling tools like generate_etat_des_lieux or generate_inventaire_mobilier.

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

Usage Guidelines3/5

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

The description implies usage by stating 'Few or no fields required,' suggesting a lightweight tool, but it does not explicitly specify when to use this tool over alternatives or mention any exclusions. Sibling tools are not referenced, so usage guidance is only implicit.

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

generate_inventaire_mobilierGenerate a furniture inventory / inventaire du mobilier (PDF)AInspect

Generate a furniture inventory (furnished lease). Fields: property_address, rooms/items. FR: inventaire du mobilier (bail meuble). Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior3/5

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

With no annotations, the description carries the burden of disclosing behavior. It discloses the output (a link to view/download the PDF) and required fields (property_address, rooms/items), which is useful. However, it omits details such as error handling, input validation, or any side effects, leaving gaps in transparency.

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?

The description is concise, with three sentences covering purpose, fields, and output behavior. Each sentence earns its place, and the French translation, while slightly redundant with the title, does not add unnecessary bulk.

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 no output schema and a single generic parameter, the description covers purpose, fields, and output link, which is sufficient for a PDF generation tool. It could be more complete by detailing the field structure and explicitly differentiating from sibling tools, but it is largely adequate.

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 input schema defines only a generic 'payload' object with no nested properties, so the description's mention of 'property_address' and 'rooms/items' adds crucial meaning. However, 'rooms/items' is vague and lacks an explicit structure, preventing a higher score.

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 generates a furniture inventory for a furnished lease, using the specific verb 'generate' and resource 'furniture inventory'. It is easily distinguished from sibling tools like generate_etat_des_lieux, which deals with condition inventory, not furniture.

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

Usage Guidelines3/5

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

The description implies usage for furnished leases and lists fields, but it does not explicitly state when to use this tool versus alternatives like generate_etat_des_lieux. No exclusions or alternative recommendations are provided, so guidance is only implicit.

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

generate_notice_informationGenerate the mandatory info notice / notice d'information (PDF)AInspect

Generate the lease's mandatory information notice (loi ALUR). Fields: lease_type. FR: notice d'information annexe du bail. Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior3/5

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

The description discloses that the tool returns a link to display/download the PDF, which is a useful behavioral detail. However, it does not mention any side effects, required prior steps, or permissions, and annotations are absent, so the full safety profile is unclear.

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?

The description is compact and front-loaded, stating the core purpose in the first sentence and including the field and output in subsequent text. Every sentence serves a distinct purpose without waste.

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

Completeness3/5

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

For a simple generation tool with one nested parameter and no output schema, the description covers the basic purpose and output, but lacks details on lease_type semantics and usage context. It is minimally complete but leaves room for misinterpretation.

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

Parameters2/5

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

The description mentions 'Fields: lease_type' but gives no details about allowed values, requiredness, or format. The schema's payload description only points back to the tool description, so the agent receives minimal semantic value for parameter construction.

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 tool's function: generating the mandatory information notice (loi ALUR) for a lease. It also provides the French name, distinguishing it from other generate_* siblings like generate_conge or generate_quittance.

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

Usage Guidelines3/5

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

The description implies usage when a lease's mandatory information notice is needed, but it does not explicitly state when to use this tool over alternatives or any exclusions. No guidance on prerequisites or context is provided.

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

generate_quittanceGenerate a rent receipt / quittance de loyer (PDF)AInspect

Generate a rent receipt (or a partial-payment receipt). Fields: landlord_name, landlord_address, tenant_name, property_address, month (e.g. 'avril 2026'), rent, charges, paid. FR: quittance de loyer. Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior4/5

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

The description discloses the key output behavior: it returns a link to view/download the PDF. It also clarifies the tool handles partial payments. With no annotations, this is a meaningful disclosure, though it omits potential side effects or validation behavior.

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?

Three concise sentences front-load the purpose, enumerate fields, and include return behavior. No redundancy, and the French hint is a useful localization note.

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 and the simple one-payload schema, the description covers the main details: what to pass, an example format, and what comes back. It could add required-field or numeric-format details, but it is largely complete for agent use.

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 input schema only defines an opaque payload object, so the description is the sole source of field semantics. It lists all expected field names and gives an example for 'month,' adding substantial value. However, it lacks types and requiredness info.

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?

Clearly states it generates a rent receipt (quittance de loyer) and even mentions partial-payment receipts, naming a specific document type that distinguishes it from sibling generation tools.

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

Usage Guidelines3/5

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

The intended use is evident from the purpose, but there is no explicit guidance on when to use this versus other similar generation tools, nor any discussion of exclusions or alternatives.

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

generate_relance_impayeGenerate an unpaid-rent reminder / relance impaye (PDF)AInspect

Generate an unpaid-rent reminder letter. Fields: landlord_name, tenant_name, property_address, amount_due, period. FR: relance / mise en demeure loyer impaye. Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior3/5

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

With no annotations provided, the description carries the burden. It discloses a key behavior: 'Renvoie un lien a ouvrir pour afficher/telecharger le PDF' (returns a link to open/download the PDF). However, it does not mention any side effects, permissions, or whether the document is stored. This is partial but useful.

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?

The description is two succinct sentences, immediately front-loaded with the main purpose. It includes a field list, a French note, and the return behavior without unnecessary elaboration.

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

Completeness3/5

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

For a document generation tool with an opaque payload schema, the description provides essential field names and the return link behavior. However, it omits field formats (e.g., date/currency), required vs. optional status, and any additional processing details, leaving some ambiguity 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?

The schema only defines a generic 'payload' object with no child properties, so the description compensates by listing the actual fields: landlord_name, tenant_name, property_address, amount_due, period. This adds meaning beyond the schema, though it lacks types/formats for those fields.

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 'Generate an unpaid-rent reminder letter' with a specific verb and resource, and the title adds 'PDF'. This uniquely identifies the tool among siblings like generate_quittance or generate_conge, which serve different document types.

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

Usage Guidelines3/5

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

Usage context is implied by 'unpaid-rent reminder' (use when a tenant has failed to pay rent), but there is no explicit guidance on when to use this vs. alternative tools, nor any mention of prerequisites or exclusions. The sibling list is not referenced.

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

generate_reparations_locativesGenerate the tenant repairs list / reparations locatives (PDF)AInspect

Generate the list of repairs chargeable to the tenant (decret 87-712). Few or no fields required. FR: liste des reparations locatives. Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior3/5

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

No annotations are provided, so the description carries the burden. It discloses that 'few or no fields required' and that it 'returns a link to open/download the PDF', which is useful behavioral information. However, it does not explain whether a persistent resource is created, how the payload is used, or any side effects, leaving gaps in transparency.

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?

The description is two concise, front-loaded sentences: the first states the core purpose and legal basis, the second clarifies input requirements and return behavior. There is no redundant filler, and the French translation is a helpful addition rather than waste.

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

Completeness3/5

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

The description covers the tool's purpose, legal reference, minimal input requirement, and output (a link to a PDF). However, the payload parameter is left unexplained, which is a significant gap given the empty schema and no output schema. This makes the tool usable only in the most basic cases where no fields are needed.

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

Parameters2/5

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

The schema defines a single `payload` object with no properties, and its description points back to the tool description. The tool description only says 'few or no fields required', but it does not enumerate any acceptable fields or provide examples. This leaves the agent without concrete guidance on how to populate the payload, despite high schema coverage.

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 generates 'the list of repairs chargeable to the tenant (decret 87-712)' which is a specific document, and the title confirms it produces a PDF. This distinguishes it from sibling tools like generate_quittance or generate_etat_des_lieux.

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

Usage Guidelines3/5

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

The description implies the tool is used when a tenant repairs list is needed, but it provides no explicit guidance on when to use it versus alternatives, nor does it mention exclusions or prerequisites. The specificity of the document makes the usage obvious, but the description lacks direct comparative guidance.

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

generate_resiliation_amiableGenerate a mutual lease termination / resiliation amiable (PDF)AInspect

Generate a mutual lease-termination agreement. Fields: landlord_name, tenant_name, property_address, end_date. FR: resiliation amiable du bail. Renvoie un lien a ouvrir pour afficher/telecharger le PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
payloadYesObjet contenant les champs du document (voir la description du tool).
Behavior3/5

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

With no annotations provided, the description carries full burden. It discloses the key output behavior: returns a link to view/download the PDF. However, it does not mention authentication needs, potential errors, or whether this is a read-only operation. The disclosure is minimal but present.

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?

The description is three concise sentences: English purpose, fields list, output behavior. No fluff, effectively front-loaded, and every sentence earns its place.

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 straightforward PDF generation tool with 4 fields and no output schema, the description covers the essentials: input fields and output link. It lacks details on link expiration or language, but these are not critical. Could mention when not to use, but overall adequate given simplicity.

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's payload is an empty object with a pointer to the tool description. The description adds value by enumerating the four fields: landlord_name, tenant_name, property_address, end_date. This is the primary source of parameter meaning, exceeding the baseline for 100% schema coverage.

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 opens with a specific verb+resource: 'Generate a mutual lease-termination agreement.' This clearly distinguishes it from siblings like generate_conge (notice to quit) or generate_avenant (amendment). The French translation adds further clarity for multilingual contexts.

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

Usage Guidelines3/5

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

The description implies usage for creating a mutual lease termination but does not explicitly state when to use this tool versus alternatives like generate_conge. No exclusions or conditions are mentioned, leaving the agent to infer based on tool name.

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

get_reference_rentLoyer de reference (encadrement) d'un quartierAInspect

Return the reference rent (EUR/m2), its upper/lower bounds and data freshness for a rent-controlled quarter, by room count, construction period and furnishing. The 'quarter' is a geographic rent-control zone (e.g. 'Halles'). FR: loyer de reference de l'encadrement des loyers.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearYesAnnee de reference, ex : '2024'
quarterYesNom du quartier / zone d'encadrement, ex : 'Halles'
room_countYesNombre de pieces principales (1-20)
is_furnishedYesLe logement est-il meuble ?
construction_periodYesPeriode de construction, ex : 'avant 1946', '1946-1970', '1971-1990', 'apres 1990'
Behavior3/5

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

With no annotations, the description carries the burden of behavioral disclosure. It mentions the return values (reference rent, bounds, data freshness) and clarifies the quarterly zone concept, but it does not explain behavior for edge cases (e.g., non-rent-controlled quarters, missing data) or any side effects (likely none as a read operation). This is adequate but not rich.

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?

The description is two concise sentences. The first sentence packs the core action and output, the second disambiguates a key term. No filler or repetition; every word earns its place.

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 read-only lookup tool, the description sufficiently covers the return values (reference rent, bounds, freshness) and all parameters are documented in the schema. It lacks an explicit tie to the rent-control workflow (e.g., after verifying eligibility with check_rent_control), but the information provided is adequate for correct invocation. The absence of an output schema is compensated by naming the outputs directly.

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%, with each parameter already having a description. The tool description adds little beyond restating the dimensions ('by room count, construction period and furnishing') and elaborating on 'quarter'. Since the schema handles parameter meaning, the description provides marginal extra value, warranting the baseline score of 3.

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 starts with a specific verb ('Return') and clearly states the resource ('reference rent (EUR/m2), its upper/lower bounds and data freshness') for a rent-controlled quarter. It also clarifies the ambiguous term 'quarter' as a geographic rent-control zone with an example ('Halles'), effectively distinguishing from siblings like check_rent_control.

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

Usage Guidelines3/5

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

The description implies use when you need reference rent values for a rent-controlled quarter and specifies the dimensions (room count, construction period, furnishing), but it does not explicitly say when to use this tool versus alternatives like check_rent_control or simulate_irl. No exclusions or alternative tool references are provided.

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

simulate_irlSimuler une revision de loyer (IRL)AInspect

Compute the revised rent after annual indexation from two IRL index values (French rent revision, art. 17-1 loi 89-462); returns new rent, % change, monthly/annual increase. FR: revision de loyer / augmentation de loyer via l'IRL.

ParametersJSON Schema
NameRequiredDescriptionDefault
current_rentYesLoyer mensuel actuel, en euros
new_irl_valueYesValeur de l'IRL du nouveau trimestre
old_irl_valueYesValeur de l'IRL du trimestre de reference
effective_dateYesDate d'effet de la revision, format YYYY-MM-DD
new_irl_quarterYesNouveau trimestre IRL, ex : 'T2-2024'
old_irl_quarterYesTrimestre IRL de reference, ex : 'T2-2023'
Behavior4/5

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

With no annotations provided, the description carries the full burden. It states the operation ('Compute') and outputs ('returns new rent, % change, monthly/annual increase'), making clear this is a read-only calculation. The legal context adds useful behavioral framing, though edge cases or validation rules are not discussed.

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?

Description is two sentences, front-loaded with the main verb, and includes a helpful French translation snippet. Every word earns its place with no redundancy.

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

Completeness3/5

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

The tool has 6 required params and no output schema, but the description sufficiently explains purpose and return values. However, it does not differentiate from the sibling simulate_irl_by_quarters, leaving potential ambiguity about which tool to invoke. Adding a note about direct value input vs quarter lookup would make it more 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?

Input schema covers all 6 parameters with detailed descriptions (100% coverage), so the baseline is 3. The description adds context that two IRL values are used but does not elaborate on formats or relationships beyond the schema. No need for more given the schema richness.

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 specifies the action ('Compute'), the resource ('revised rent after annual indexation'), and the input nature ('from two IRL index values'). It also cites the legal article (art. 17-1 loi 89-462) and distinguishes from sibling simulate_irl_by_quarters by emphasizing direct index values rather than quarter references.

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

Usage Guidelines3/5

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

The description implies usage when you have two IRL values to compute a revised rent, but it does not explicitly state when to use this tool versus alternatives like simulate_irl_by_quarters. No exclusions or alternative recommendations are provided.

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

simulate_irl_by_quartersSimuler une revision de loyer (IRL, valeurs automatiques)AInspect

Like simulate_irl, but the server resolves the official INSEE IRL values itself: give only the rent, the two quarters and the region. Prefer this when you don't know the exact IRL values. FR: revision de loyer IRL, valeurs INSEE automatiques.

ParametersJSON Schema
NameRequiredDescriptionDefault
regionYesRegion : 'metropole', 'corse' ou 'dom'
current_rentYesLoyer mensuel actuel, en euros
effective_dateYesDate d'effet, format YYYY-MM-DD
new_irl_quarterYesNouveau trimestre IRL, ex : 'T2-2024'
old_irl_quarterYesTrimestre IRL de reference, ex : 'T2-2023'
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses the key behavior that the server resolves INSEE values automatically, which adds value. However, it does not describe side effects, response format, error handling, or any prerequisites beyond inputs. For a simulation tool this is acceptable but incomplete.

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?

The description is two sentences, front-loaded with the core behavior and usage, and ends with a brief French label. Every sentence earns its place, with no redundant elaboration. The brevity aids quick scanning.

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 simulation tool with 5 well-described parameters and no output schema, the description covers the key context: what it does differently, what inputs to provide, and when to prefer it. It lacks return-value details, but the reference to 'simulate_irl' and the simulation nature make this acceptable for selection and invocation.

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 only restates the parameters as 'the rent, the two quarters and the region' without adding format details, relationships, or examples. It does not clarify old vs. new quarters beyond what the schema already provides.

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 simulates a rent revision (loyer) using automatic INSEE IRL values, and explicitly distinguishes it from the sibling 'simulate_irl' by noting the server resolves official values itself. The verb 'simulate' and resource 'revision de loyer IRL' are specific, and the contrast with the sibling clarifies its unique scope.

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 gives an explicit usage trigger: 'Prefer this when you don't know the exact IRL values.' It also contrasts with 'simulate_irl' ('Like simulate_irl, but...'), helping the agent choose between the two. This provides clear when-to-use guidance and an alternative.

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

simulate_rental_yieldSimuler le rendement locatifAInspect

Compute gross/net rental yield of a rental investment, per-regime taxation (micro-foncier, reel, LMNP...), cashflow and the recommended tax regime. FR: rendement locatif, rentabilite, fiscalite.

ParametersJSON Schema
NameRequiredDescriptionDefault
furnishingYesLocation : 'unfurnished' (vide), 'furnished_long_term' (meuble), 'furnished_seasonal' (saisonnier)
notary_feesYesFrais de notaire, en euros
tmi_percentYesTranche marginale d'imposition, en % (0, 11, 30, 41, 45)
monthly_rentYesLoyer mensuel, en euros
annual_chargesYesCharges annuelles (copro, taxe fonciere, gestion...), en euros
purchase_priceYesPrix d'achat du bien, en euros
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses the main computations (gross/net yield, cashflow, recommended tax regime) but does not mention assumptions, limitations, or that it is a read-only calculation. This is moderate transparency—sufficient for a simulation tool but lacking methodological caveats.

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?

The description is a single, focused sentence that front-loads the core function ('Compute gross/net rental yield') and lists key outputs. The French keyword suffix is a minor addition that aids localization without adding unnecessary bulk. No fluff or redundancy.

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

Completeness3/5

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

With six required parameters and no output schema, the description clearly states what is computed but does not specify the return format, units, or potential edge cases (e.g., invalid inputs). It covers the essential purpose but leaves gaps for an agent needing more operational detail.

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 description coverage is 100%, but the description adds meaning beyond raw field names by linking parameters to the tool's purpose: it explains that per-regime taxation depends on furnishing type and TMI, and that cashflow incorporates rent and charges. This enriches the schema's baseline description.

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 'Compute' and clearly identifies the resource: gross/net rental yield, per-regime taxation, cashflow, and recommended tax regime. This distinguishes it from sibling tools like simulate_irl, which focus on rent index adjustments. The French keywords reinforce the purpose without ambiguity.

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 implies this tool is for analyzing rental investment profitability, which is distinct from other simulation siblings. While it does not explicitly state 'use this instead of X', the context is clear from the name and content. No exclusions or alternatives are mentioned, but the purpose is self-evident.

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

Discussions

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

Related MCP Servers

  • F
    license
    -
    quality
    D
    maintenance
    Enables users to generate rental agreements and receipts as PDFs through an AI-powered WhatsApp bot. Provides stamp duty information lookup and handles rental document creation with customizable templates.
  • 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
    1
    AGPL 3.0
  • A
    license
    -
    quality
    C
    maintenance
    Enables users to find and contact building tradespeople in France, and lets independent tradespeople create free profiles.
    Apache 2.0

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.