QuantCalc Retirement Engine
REMOTE · MCP.QUANTCALC.APP · SCANNED OCT 7
Retirement Monte Carlo with a tax-aware withdrawal-order and Roth-conversion recommendation.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security74
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability62
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1780 tokens (~356/item across 5 items; 5 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management73
- Stability observed for 22 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 5 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 5 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities60
- Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
How do I install the QuantCalc Retirement Engine MCP server?
QuantCalc Retirement Engine is a hosted endpoint at https://mcp.quantcalc.app/, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.quantcalc.app
claude mcp add --transport http app-quantcalc-retirement-engine 'https://mcp.quantcalc.app/'
{
"mcpServers": {
"app-quantcalc-retirement-engine": {
"url": "https://mcp.quantcalc.app/"
}
}
} {
"servers": {
"app-quantcalc-retirement-engine": {
"type": "http",
"url": "https://mcp.quantcalc.app/"
}
}
} [mcp_servers.app-quantcalc-retirement-engine] url = "https://mcp.quantcalc.app/"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"app-quantcalc-retirement-engine": {
"type": "remote",
"url": "https://mcp.quantcalc.app/",
"enabled": true
}
}
} openclaw mcp add app-quantcalc-retirement-engine --url 'https://mcp.quantcalc.app/' --transport streamable-http
mcp_servers:
app-quantcalc-retirement-engine:
url: "https://mcp.quantcalc.app/" {
"McpServers": {
"app-quantcalc-retirement-engine": {
"Transport": "http",
"Url": "https://mcp.quantcalc.app/"
}
}
} assistant mcp add app-quantcalc-retirement-engine -t streamable-http -u 'https://mcp.quantcalc.app/'
{
"mcpServers": {
"app-quantcalc-retirement-engine": {
"type": "http",
"url": "https://mcp.quantcalc.app/"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 5 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 63 to 67. That category is still filling its 30-day observation window: 19 days of observed history at the previous scan, 20 at this one. The score rises as the window fills, whether or not the server changes.
- 3 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 57 to 60. That category is still filling its 30-day observation window: 17 days of observed history at the previous scan, 18 at this one. The score rises as the window fills, whether or not the server changes.
- 1 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 50 to 53. That category is still filling its 30-day observation window: 15 days of observed history at the previous scan, 16 at this one. The score rises as the window fills, whether or not the server changes.
- 29 Sept 26 +1
- Schema quality: 321 → 356 ▼ functional
- “run_tax_aware_projection” added an optional parameter “birth_month” cosmetic
- “run_tax_aware_projection” added an optional parameter “birth_year” cosmetic
- “run_tax_aware_projection” reworded the description of “medicare_start_age” cosmetic
- 28 Sept 26 +7
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.
- 25 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 24 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 27 to 30. That category is still filling its 30-day observation window: 8 days of observed history at the previous scan, 9 at this one. The score rises as the window fills, whether or not the server changes.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 7 Oct 2026 · Probed https://mcp.quantcalc.app
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=quantcalc.app | CN=WE1,O=Google Trust Services,C=US | 27 Sept 2026 | 26 Dec 2026 | ECDSA 256 | ECDSA-SHA256 | 5e9426a26fe0d7fb13a6eb44610ff574 |
| SANs: quantcalc.app, *.quantcalc.app | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.quantcalc.app. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| app. | present | 23684 | 8 | Verified |
| quantcalc.app. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.quantcalc.app | Verified | 200 | |
| http (plaintext) | http://mcp.quantcalc.app | HTTPS enforced | 301 | https://mcp.quantcalc.app/ |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
compare_return_assumptions Compare published return assumptions ~349
Runs the same plan against several published capital market assumption sets and returns the success rate and median outcome under each, showing how far the answer moves with the return forecast used.
| Name | Type | Req | Description |
|---|---|---|---|
| allocations | array | – | Percentages summing to 100: [US stocks, international stocks, bonds, real estate, cash]. Default [60,10,25,5,0]. |
| annual_spending | number | yes | Planned yearly spending in today's dollars, before income tax (this tool runs the standard engine, which does not model tax). |
| current_age | integer | yes | Current age of the primary person. |
| current_savings | number | yes | Total invested portfolio today, in dollars. |
| inflation_rate | number | – | Annual inflation as a percent, e.g. 2.5. Default 2.5. |
| life_expectancy | integer | – | Age the plan must last until. Default 92. |
| monthly_contribution | number | – | Monthly savings until retirement. Default 0. |
| pension | number | – | Yearly pension income. Default 0. |
| pension_start_age | integer | – | Age the pension starts. Default 65. |
| retirement_age | integer | – | Age work income stops. Defaults to current age. |
| returns_source | string | – | Which published return set to use (see list_return_assumption_sources). Default jpmorgan. |
| social_security | number | – | Yearly Social Security in today's dollars. Default 0 — and 0 is reported as an explicit assumption, not hidden. |
| sources | array | – | Source ids to compare. Defaults to all. |
| ss_start_age | integer | – | Age Social Security starts. Default 67. |
No output schema declared.
No examples provided.
explain_methodology What the engine models, and what it does not ~40
Returns what the QuantCalc engine models and what it deliberately leaves out, including the tax provisions that are out of scope, and links to the published methodology.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_return_assumption_sources List available return assumption sets ~36
Returns the published capital market assumption sets the engine carries and which components each publisher provides (returns, volatilities, correlations).
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
run_retirement_projection Run a retirement projection ~374
Runs a Monte Carlo retirement projection on the QuantCalc engine and returns the success rate, the ending-portfolio distribution, and the assumptions that produced them. The result states the return model that ran, the number of paths, and the income assumptions it used, including when there are none. Income tax is not modelled by this tool; run_tax_aware_projection models it.
| Name | Type | Req | Description |
|---|---|---|---|
| allocations | array | – | Percentages summing to 100: [US stocks, international stocks, bonds, real estate, cash]. Default [60,10,25,5,0]. |
| annual_spending | number | yes | Planned yearly spending in today's dollars, before income tax (this tool runs the standard engine, which does not model tax). |
| current_age | integer | yes | Current age of the primary person. |
| current_savings | number | yes | Total invested portfolio today, in dollars. |
| inflation_rate | number | – | Annual inflation as a percent, e.g. 2.5. Default 2.5. |
| life_expectancy | integer | – | Age the plan must last until. Default 92. |
| monthly_contribution | number | – | Monthly savings until retirement. Default 0. |
| pension | number | – | Yearly pension income. Default 0. |
| pension_start_age | integer | – | Age the pension starts. Default 65. |
| retirement_age | integer | – | Age work income stops. Defaults to current age. |
| returns_source | string | – | Which published return set to use (see list_return_assumption_sources). Default jpmorgan. |
| social_security | number | – | Yearly Social Security in today's dollars. Default 0 — and 0 is reported as an explicit assumption, not hidden. |
| ss_start_age | integer | – | Age Social Security starts. Default 67. |
No output schema declared.
No examples provided.
run_tax_aware_projection Tax-aware projection with the recommended withdrawal order ~981
Runs the retirement projection with the household's accounts split by tax type and returns the withdrawal order and Roth-conversion programme the engine selected, its present-value advantage and range against drawing traditional first, and the after-tax success rate. Federal and state income tax (50 states and DC), Social Security taxability, required minimum distributions, Medicare IRMAA surcharges and the early-withdrawal penalty are paid from the portfolio year by year; spending is what the household keeps after tax. The result states every assumption it used, including the defaults for inputs that were not given, and what the engine does not model.
| Name | Type | Req | Description |
|---|---|---|---|
| allocations | array | – | Percentages summing to 100: [US stocks, international stocks, bonds, real estate, cash]. Default [60,10,25,5,0]. |
| annual_qcd | number | – | Yearly qualified charitable distribution from the traditional account, in today's dollars, counted against required minimum distributions. Default 0. |
| annual_spending | number | yes | Planned yearly spending in today's dollars, after tax: what the household keeps. The engine withdraws enough each year to fund this plus that year's federal, state, Medicare-surcharge and penalty tax. |
| birth_month | integer | – | Month of birth, 1-12, optional. Times the half-year rules: the early-withdrawal penalty ends at 59 and a half, charitable distributions start at 70 and a half, Medicare starts in the birthday month.… |
| birth_year | integer | – | Year of birth, optional. Must match current_age: 2026 minus current_age, or 2025 minus current_age when this year's birthday is still to come (then every tax rule uses the age reached in each calenda… |
| cost_basis_ratio | number | – | Percentage of the taxable account that is cost basis, 0-100. Default 40, and the result says so when it is assumed. |
| current_age | integer | yes | Current age of the primary person. |
| filing_status | string | yes | Federal filing status: single, married filing jointly (mfj), married filing separately (mfs) or head of household (hoh). |
| inflation_rate | number | – | Annual inflation as a percent, e.g. 2.5. Default 2.5. |
| life_expectancy | integer | – | Age the plan must last until. Default 92. |
| medicare_start_age | integer | – | Age Medicare (and its IRMAA income surcharges) begins. Default 65. The year it begins is charged only for the months from the birthday month. |
| monthly_contribution | number | – | Monthly savings until retirement. Default 0. |
| pension | number | – | Yearly pension income. Default 0. |
| pension_start_age | integer | – | Age the pension starts. Default 65. |
| retirement_age | integer | – | Age work income stops. Defaults to current age. |
| returns_source | string | – | Which published return set to use (see list_return_assumption_sources). Default jpmorgan. |
| roth_balance | number | yes | Roth IRA and Roth 401(k) balance today, in dollars. 0 if none. |
| roth_conversion | object | – | The household's own Roth-conversion plan: a fixed amount per year between two ages. When given, the engine applies it on every path and searches withdrawal orders around it instead of searching its o… |
| social_security | number | – | Yearly Social Security in today's dollars. Default 0 — and 0 is reported as an explicit assumption, not hidden. |
| spouse_age | integer | – | Spouse's current age, for married filing jointly: sets the second aged deduction and Medicare surcharge. Default: the same as current_age, stated in the result. |
| ss_start_age | integer | – | Age Social Security starts. Default 67. |
| state | string | – | Two-letter state of residence (or DC) for state income tax with that state's retirement-income rules. When absent the result states that no state tax was modelled. |
| tax_exempt_interest | number | – | Yearly municipal-bond interest, which counts toward Social Security taxability and IRMAA income but is not itself taxed. Default 0. |
| taxable_balance | number | yes | Taxable brokerage and savings today, in dollars. 0 if none. The three balances together are the portfolio. |
| traditional_balance | number | yes | Pre-tax retirement accounts today (traditional IRA, 401(k), 403(b)), in dollars. 0 if none. |
No output schema declared.
No examples provided.
What is the QuantCalc Retirement Engine MCP server?
QuantCalc Retirement Engine is an MCP server listed in the public MCP registry as app.quantcalc/retirement-engine. Retirement Monte Carlo with a tax-aware withdrawal-order and Roth-conversion recommendation. This page covers its hosted endpoint (https://mcp.quantcalc.app).
Is the QuantCalc Retirement Engine MCP server safe to use?
QuantCalc Retirement Engine scores 77 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the QuantCalc Retirement Engine MCP server expose?
QuantCalc Retirement Engine exposes 5 tools: run_retirement_projection, run_tax_aware_projection, compare_return_assumptions, list_return_assumption_sources, explain_methodology. Their descriptions and schemas cost roughly 1,780 tokens of context every time the server is loaded.
Does the QuantCalc Retirement Engine MCP server require authentication?
No. We connected to QuantCalc Retirement Engine without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the QuantCalc Retirement Engine MCP server still maintained?
QuantCalc Retirement Engine is still listed as active in the MCP registry. We last reached this channel on 7 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.