Skip to main content
Glama

SavingsLast retirement calculators

How long will my money last

how_long_will_money_last
Read-onlyIdempotent

Month-by-month drawdown of a retirement balance: how many years the money lasts at a monthly withdrawal that rises with inflation, the age it runs out, the odds of being alive then, and the most that could be withdrawn to last 20, 25 or 30 years. Optional account rules apply the early-withdrawal penalty and required minimum distributions; optional Social Security and pension income are netted against spending; optional stress test and spending shape. The same engine as savingslast.com, and the result carries a link to the page with these inputs filled in.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ageNoCurrent age. Optional; enables the run-out age, the survival odds, the account rules (penalty before 59 1/2, RMDs from 73) and the Social Security start age.
accountNoApply an account type's withdrawal rules: the 10% early-withdrawal penalty before 59 1/2 for a 401(k), 403(b), TSP, IRA, SEP or SIMPLE IRA; none for a governmental 457(b) or under the rule of 55; tax-free withdrawals for a Roth IRA; the 20% non-medical penalty before 65 for an HSA; required minimum distributions from 73 where they apply. Default none.
balanceYesStarting balance in dollars.
tax_rateNoTax on withdrawals in percent, 0 to 50. Withdrawals are grossed up so the after-tax amount matches. Default 0. Ignored for Roth and HSA accounts.
inflationNoAnnual inflation in percent, -5 to 15. Default 2.5. The withdrawal rises at this rate so spending power stays level.
stress_testNoApply a bad start: -20%, -10% and 0% returns in the first three years, then the average. Default false.
annual_returnNoExpected annual return in percent, -10 to 20. Default 5.
spending_shapeNoinflation: spending rises with inflation (default). level: fixed dollars. decline: rises with inflation until 75, then one point a year slower.
pension_monthlyNoPension or annuity in dollars a month, netted against spending. Default 0.
monthly_withdrawalYesAmount taken out each month today, in dollars, after tax. Enter what savings must cover, or enter total spending and give the Social Security and pension separately.
social_security_monthlyNoSocial Security benefit in dollars a month, netted against spending. Rises with inflation. Default 0.
social_security_from_ageNoAge the Social Security benefit starts. Needs age. Default: from now.
pension_rises_with_inflationNoWhether the pension has a cost-of-living increase. Default false.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already mark the tool read-only and idempotent; the description adds that it runs a month-by-month projection, applies optional account rules, and returns a link to a savingslast.com page with the same inputs. It also discloses that income is netted against spending and that a stress test changes return assumptions, which an agent would not learn from annotations or the schema alone.

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 sentences front-load the core result and then layer optional behaviors and the external link. No sentence is filler; the description stays compact despite a 13-parameter tool.

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 complex calculator with no output schema, the description enumerates the key return values and groups the optional parameter families coherently, while the schema supplies per-parameter details. It does not state the underlying mortality/return assumptions or the exact format of the results, but what an agent needs to select and invoke the tool is present.

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 structured descriptions already carry most parameter meaning. The description adds value by grouping optional parameters into behaviors—account rules (early-withdrawal penalty, RMDs), Social Security/pension netting, stress test, and spending shape—making the optional fields' joint purpose easier to grasp.

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 names a concrete calculation ('Month-by-month drawdown of a retirement balance') and enumerates distinctive outputs: years until exhausted, run-out age, survival odds, and sustainable withdrawal ceilings for 20/25/30 years. This makes the tool's role clear even though it does not explicitly contrast it with sibling tools like sustainable_withdrawal.

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 conveys when to use it—for retirement drawdown projections with optional account rules, Social Security/pension offsets, stress tests, and spending shapes—and these feature cues imply use cases. However, it never names an alternative tool or states when not to use this one, so differentiation from siblings is left to inference.

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