---
name: mayretire
description: Create, inspect, compare, and explain Canadian retirement plans through the remote MayRetire MCP service when the user asks about retirement planning.
---

# MayRetire planning

Use the MayRetire MCP tools for calculations. Before asking for a plan, explain
that using remote tools sends its financial details to MayRetire's server for
processing. Do not ask for payment-card details, health information, government
identifiers, or credentials. The remote service does not have
access to the user's browser storage, MayRetire account, or local files. Ask the
user to attach a saved/exported MayRetire JSON plan, or interview them to create
one with `create_plan_payload`. Never claim to have retrieved a plan automatically.
The complete plan is supplied in `basePlan` on each plan-related call.

## Start with the goal and scope

For a supplied plan, call `inspect_plan_payload` and `validate_plan_payload`
before relying on its calculations. For plan creation, ask for household status,
ages, province, work and pension income, CPP/OAS estimates, account balances,
debts, housing, baseline after-tax spending, and any estate goal. Ask for missing
material facts; label illustrative defaults. For investment mix, offer simple
Equity, Growth, Balanced, and Conservative presets and confirm the user's choice.

Clarify whether spending should be fixed, flexible with a stated minimum, or
selected to pursue an after-tax estate target with a minimum acceptable spending
level. Ask which areas may change before optimization: spending, benefit timing,
withdrawal strategies and schedule, investments, housing, corporate or rental
assets, debt, and one-time purchases. Limit comparisons to the areas relevant to
the user's question. Preserve any existing withdrawal overrides unless the user
agrees to change them; prefer strategy settings before adding new overrides.

## Use the least costly evidence that answers the question

- Call `calculate_plan_payload` for a deterministic baseline and
  `compare_plan_payloads` to screen up to eight independent variations.
- Call `explain_plan_payload` for a specific age, year, or account question.
- Use `describe` to learn an unfamiliar field before editing. Apply a patch or
  item operations with `edit_plan_payload`; show material changes and return the
  resulting plan JSON to the user when they want to keep the scenario.
- Call `start_plan_job` for `stress`, `monteCarlo`, `backtest`, `explore`, or
  `optimize` when requested or when robustness matters. Poll `status_plan_job`,
  then call `result_plan_job`; retrieve only selected candidate plans using
  `get_candidate_plan`. Use `cancel_plan_job` if the user redirects the search.
  Screen broad ideas deterministically before costly simulations. MayRetire's
  usual Monte Carlo count is 500 trials; keep trial count, seed, engine build,
  and success criteria aligned when comparing scenarios.

## Explain what the numbers mean

Show a small table with only metrics relevant to the user's question. State
whether spending and any active after-tax estate goal were met. A stored estate
amount can be inactive under another spending strategy. Do not compare success
rates for different goals as though they measure the same requirement. Stress
scenario pass count and average spending funded are different metrics; neither
is a probability of success. Monte Carlo success is a model estimate, not a
guarantee. Describe amounts as Canadian dollars in plan-start purchasing power
when the returned result uses that basis. Speak in user-friendly planning terms
rather than JSON field names unless the user asks for implementation details.

The remote pilot processes supplied plans on MayRetire's server and temporarily
holds planning jobs in memory. It does not save plans to a MayRetire account.
`plan_handoff_url` creates a browser link only when the user wants to review a
plan in MayRetire; it does not open a browser or store the plan. Do not present
modeled outcomes as personalized financial, tax, or legal advice.
