Skip to main content
Glama

Casatoo

Simulate a Portugal mortgage

casatoo_simulate_mortgage
Read-onlyIdempotent

Estimate Portugal residential purchase costs with the same logic as the Casatoo calculator: 2026 mainland/island IMT, youth relief, stamp duty, loan payment, savings shortfall, effort rate, rate scenarios and annual amortisation. Anonymous, read-only, no account or location lookup needed. EUR amounts; TAN is percent. Omitted fields use published illustrative defaults, not known facts about the user. Include assumptions when presenting results.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
priceNoPurchase price in EUR. Residential property only.
yearsNoTerm in years; rounds to the nearest whole year, halves upwards. Bank eligibility is not assessed.
regionNoMainland Portugal or Madeira/Azores tax tables.mainland
savingsNoSavings allocated to this purchase, including taxes and fees, in EUR.
tax_valueNoVPT in EUR. Zero if unknown; taxes use the higher of this and price.
other_debtNoExisting monthly loan payments in EUR, included in effort rate.
annual_rateNoConstant annual nominal rate (TAN), percent, not TAEG.
young_buyerNoTrue only if every buyer qualifies for IMT Jovem: age up to 35, not IRS-dependent, first primary home, no residential ownership in prior three years.
monthly_costsNoMonthly insurance and ownership costs in EUR, added to housing budget only.
purchase_typeNoPrimary permanent residence or secondary/rental residential property.primary
monthly_incomeNoNet monthly household income in EUR. Zero means effort rate is unavailable.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
currencyYes
tax_yearYes
assumptionsYes
rate_scenariosYes
annual_scheduleYes
effort_rate_availableYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already provide readOnlyHint, idempotentHint, and destructiveHint, but the description adds valuable behavioral context: anonymity, no account/location lookup, EUR units, TAN as percent, and the critical caveat that omitted fields use published illustrative defaults rather than known user facts. This goes meaningfully beyond the annotations and helps the agent set correct expectations.

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?

Four sentences, each earning its place: the first states the core purpose and outputs, the second clarifies privacy/read-only nature, the third resolves unit ambiguity, and the fourth flags the default-value behavior and instructs the agent to include assumptions. The description is dense but well-organized and free of filler.

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 an 11-parameter simulation with an output schema, the description covers what the tool does, the scope of costs, key behavioral caveats (defaults, units, anonymity), and what to include when presenting results. Since an output schema exists, return-value detail is not needed in the description, so nothing essential is missing.

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, but the description adds cross-cutting parameter semantics: all monetary amounts are in EUR, annual_rate is in percent TAN rather than TAEG, and omitted inputs fall back to illustrative defaults. This complements the per-parameter schema descriptions and reduces the chance of unit or default misreadings.

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 ('Estimate') with a precise resource ('Portugal residential purchase costs') and enumerates the exact outputs (IMT, youth relief, stamp duty, loan payment, savings shortfall, effort rate, rate scenarios, annual amortisation). This clearly differentiates it from sibling tools like casatoo_search_listings and casatoo_get_listing, which are about finding and viewing listings.

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 communicates clear context for when to use the tool: estimating purchase costs with Casatoo's logic, anonymously, without account or location lookup. It implies this is for illustrative calculations rather than obtaining real user-specific data, but it does not explicitly name alternatives or state 'use this when...' versus other tools.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources