Skip to main content
Glama

Retirement Atlas

Retirement income gap

calculate_retirement_income_gap
Read-onlyIdempotent

Retirement income gap for one of 35 countries (nl, se, dk, no, fi, is, cz, at, ch, pt, us, cn, de, jp, in, fr, it, ca, br, ru, kr, mx, es, id, tr, sa, pl, be, ar, ie, ae, sg, il, th, nz): from accessible savings, monthly saving, retirement spending and up to three pension streams the user enters (after tax, in today's money), the savings at retirement, the capital needed, the capital gap, the first-year monthly gap and the age the money runs out. It does not calculate national pension entitlements. All fields are required; amounts in the country's currency (see list_retirement_calculators), rates in percent per year; use monthly 0 for unused pension streams.

Input Schema

NameRequiredDescriptionDefault
ageYesCurrent age; whole years.
endAgeYesProjection end age; must exceed retirement age; whole years.
balanceYesAccessible savings in country currency; exclude capital behind entered pension payments
countryYesCountry code from list_retirement_calculators (not uk or au, which have their own tools).
incomesYesExactly three user-supplied pension streams. Use zero monthly amount for unused streams. No entitlement or tax estimation.
spendingYesMonthly retirement spending in today's country currency
inflationYesAnnual inflation, percent
netReturnYesNominal annual return after taxes and fees, percent; inflation is deducted by the model
monthlySavingYesMonthly savings in today's country currency
retirementAgeYesWork-stop age; at least current age; not an entitlement age; whole years.
include_projectionNoAlso return annual cash-flow rows (default false: a compact summary).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, and the description adds useful behavioral constraints: all fields are required, national pension entitlements are out of scope, and currency/rate/unused-stream conventions apply. It does not discuss error handling or response format, but those are secondary for a deterministic calculator with annotations covering the safety profile.

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

Conciseness3/5

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

The description is front-loaded with the core purpose and avoids unnecessary narrative, but it spends substantial space enumerating all 35 country codes that are already available in the country enum. The single long sentence is dense and includes redundant structured-field content, which weakens conciseness.

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 tool with no output schema, the description supplies the missing return-value context by listing the computed outputs and explains the country scope, required inputs, currency/rate conventions, and calculation limitations. Nothing essential for correct invocation is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so every parameter is already documented in the schema, including the country enum, numeric ranges, and nested income object fields. The description reinforces conventions such as after-tax today's-money amounts, percent-per-year rates, and zero monthly income for unused streams, but mostly repeats schema text and says 'up to three' pension streams while the schema requires exactly three.

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 states that it computes a retirement income gap for one of 35 countries from accessible savings, monthly saving, retirement spending, and up to three pension streams, and it enumerates the returned outputs such as savings at retirement, capital needed, capital gap, first-year monthly gap, and depletion age. The country scope differentiates it from the UK/Australia-specific sibling tools, though those siblings are not explicitly named in the description.

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: one of 35 listed countries, amounts in the country's currency, rates in percent per year, all fields required, and monthly 0 for unused pension streams. It also states that it does not calculate national pension entitlements. It stops short of explicitly naming calculate_australia_super or calculate_uk_pension_drawdown as the alternatives for those countries.

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