Skip to main content
Glama

QuantCalc Retirement Engine

401(k), 403(b), 457(b), TSP or SIMPLE IRA deferral limit at an age (2026; 2027 projected)

retirement_plan_deferral_savings
Read-only

Returns the 2026 or 2027 elective-deferral limit for a 401(k), 403(b), governmental 457(b), the TSP or a SIMPLE IRA at an age: the base limit, the age-50 and ages 60-63 catch-ups, the SIMPLE higher limit, a non-governmental 457(b) without a catch-up, the part of the catch-up the Roth catch-up wage rule sends in as Roth, and the amount a deferral is figured on when it is over the limit or over the wages. It states that a deferral saves no Social Security or Medicare tax. The limits are the website's contribution-limit pages' own figures (the 2027 limits are projections under the statutory indexing formula until the IRS publishes its 2027 limits notice, labelled as such). Not tax advice.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "plan": "<plan>",
      "age": "<age>",
      "wages": "<wages>"
    },
    "name": "retirement_plan_deferral_savings"
  }
}

Input Schema

NameRequiredDescriptionDefault
ageYesYour age on December 31 of the tax year (18-110): sets the catch-up (50+, and the higher catch-up in the years you turn 60 to 63).
planYesThe workplace plan: 401(k), 403(b), governmental 457(b), the TSP, or a SIMPLE IRA.
wagesYesYour wages before the contribution (more than 0): the deferral comes out of them.
amountNoThe pre-tax deferral for the year. Default: your full limit at your age. Over the limit or over your wages it is figured on the lower.
tax_yearNo2026 (default) or 2027. 2027: the limits and phase-out ranges are the 2027 pages' PROJECTIONS under each limit's statutory indexing formula (the IRS's 2027 retirement-plan limits notice is not out yet), labelled as such. Stated in the result.
roth_catchupNoNot for simple: true when your prior-year Social Security wages from this employer were over the year's threshold, so the catch-up must go in as Roth (no tax saved now). Default: whether wages are over the threshold, stated in the result.
higher_limit_simpleNosimple only: the employer uses the SECURE 2.0 higher-limit SIMPLE.
non_governmental_457No457b only: a tax-exempt (non-governmental) employer's 457(b), which has no catch-up.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • removedInput schema / properties / filing_status
      Removed value: -{
      -  "description": "Filing status: single, married filing jointly (mfj), married filing separately (mfs) or head of household (hoh).",
      -  "enum": [
      -    "single",
      -    "mfj",
      -    "mfs",
      -    "hoh"
      -  ],
      -  "type": "string"
      -}
    • removedInput schema / properties / spouse_age
      Removed value: -{
      -  "description": "Joint return only: the spouse's age. Default: the same as age.",
      -  "type": "integer"
      -}
    • removedInput schema / properties / spouse_wages
      Removed value: -{
      -  "description": "Joint return only: the spouse's own wages. Default 0.",
      -  "type": "number"
      -}
    • removedInput schema / properties / state
      Removed value: -{
      -  "description": "Optional two-letter state of residence, or DC: adds the state tax saving (licence needed). Without it no state saving is figured.",
      -  "type": "string"
      -}
    • changedInput schema / properties / tax_year / description
      Previous value: -"2026 (default) or 2027. 2027: the limits and phase-out ranges are the 2027 pages' PROJECTIONS under each limit's statutory indexing formula (the IRS's 2027 retirement-plan limits notice is not out yet), labelled as such; the tax on the IRS's published 2027 amounts (Rev. Proc. 2026-35); the state line on each state's 2026 rules, labelled. Stated in the result."New value: +"2026 (default) or 2027. 2027: the limits and phase-out ranges are the 2027 pages' PROJECTIONS under each limit's statutory indexing formula (the IRS's 2027 retirement-plan limits notice is not out yet), labelled as such. Stated in the result."
    • changedInput schema / required
      Previous value: -[
      -  "plan",
      -  "age",
      -  "wages",
      -  "filing_status"
      -]New value: +[
      +  "plan",
      +  "age",
      +  "wages"
      +]
  2. Changed2 schema fields changed
    • changedInput schema / properties / filing_status / description
      Previous value: -"2026 filing status: single, married filing jointly (mfj), married filing separately (mfs) or head of household (hoh)."New value: +"Filing status: single, married filing jointly (mfj), married filing separately (mfs) or head of household (hoh)."
    • changedInput schema / properties / tax_year / description
      Previous value: -"2026 (default) or 2027. 2027 uses the 2027 pages' figures (projected until the IRS publishes them) and the engine's 2027 federal return (the IRS's published 2027 brackets, Rev. Proc. 2026-35); stated in the result."New value: +"2026 (default) or 2027. 2027: the limits and phase-out ranges are the 2027 pages' PROJECTIONS under each limit's statutory indexing formula (the IRS's 2027 retirement-plan limits notice is not out yet), labelled as such; the tax on the IRS's published 2027 amounts (Rev. Proc. 2026-35); the state line on each state's 2026 rules, labelled. Stated in the result."
  3. Changed1 schema field changed
    • changedInput schema / properties / tax_year / description
      Previous value: -"2026 (default) or 2027. 2027 uses the 2027 pages' figures (projected until the IRS publishes them) and the engine's projected federal return; stated in the result."New value: +"2026 (default) or 2027. 2027 uses the 2027 pages' figures (projected until the IRS publishes them) and the engine's 2027 federal return (the IRS's published 2027 brackets, Rev. Proc. 2026-35); stated in the result."
  4. Added

TDQS

A4.1/5.0
Behavior5/5

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

Beyond the readOnlyHint/openWorldHint annotations, the description discloses material behavior: the 2027 figures are projections under each limit's statutory indexing formula until the IRS publishes its notice and are labelled as such; a non-governmental 457(b) has no catch-up; the Roth catch-up wage rule determines how much of the catch-up must go in as Roth; and a deferral saves no Social Security or Medicare tax. These are non-obvious facts an agent cannot derive from the schema or annotations.

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

Conciseness4/5

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

The key fact — what limit is returned for which plans and years — is front-loaded in the first clause, and the caveats (projection status, not tax advice) are placed at the end where they belong. The middle is one very long enumerated sentence that is dense and hard to parse, but given eight parameters and a complex tax domain, most clauses carry real information.

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

Completeness4/5

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

With no output schema, the description carries the burden of describing the result, and it does enumerate the components returned (base limit, catch-ups, SIMPLE higher limit, Roth catch-up portion, the amount a deferral is figured on). It also states that the tax year and projection status are reflected in the result. Minor gaps remain, such as whether the response is a single figure set or a structured breakdown.

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 (age, plan, wages, amount, tax_year, roth_catchup, higher_limit_simple, non_governmental_457) is already documented in the schema, including the age-60-63 catch-up and the projection caveat. The description largely restates these in prose rather than adding new semantics, so the baseline of 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 opens with a specific verb and resource: 'Returns the 2026 or 2027 elective-deferral limit for a 401(k), 403(b), governmental 457(b), the TSP or a SIMPLE IRA at an age.' Enumerating the plan types and the computed sub-amounts (base limit, age-50 catch-up, ages 60-63 catch-up, SIMPLE higher limit, Roth catch-up portion) makes the tool clearly distinguishable from the sibling IRA deduction tool without opening any schema.

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 is only implied by the parameter set: an agent can infer this applies to workplace-plan deferral limits for a given age and wage level. There is no explicit when-to-use/when-not statement, no mention of the sibling tools (e.g., ira_deduction_and_roth_limit, calculate_rmd), and no prerequisites such as filing status requirements. 'Not tax advice' is a disclaimer, not guidance.

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.