cove-fi
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@cove-fiRun a scenario with retirement year 2048"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
cove-fi
Cove FI (@walensis/cove-fi) is a deterministic, annual retirement /
financial-independence projection engine — plan files in, a year-by-year
net-worth projection out, with a CLI and an MCP server so you can run it
from a terminal or just talk to it from Claude Desktop, Claude Code, or
Cursor. It's the Project module of the Cove suite (Balance → Plan →
Project), but works entirely standalone.
Cove for YNAB manages this month's money; Cove FI projects the next forty years. Each works alone; together they talk.
Quickstart
npm install -g @walensis/cove-fi # or: npx @walensis/cove-fi <command>
cove-fi init my-plan.toml # scaffold a starter plan
# edit birth_year, salary amount, and retirement_year in my-plan.toml
cove-fi run my-plan.toml # project it
cove-fi scenario my-plan.toml --retirement-year 2048 # try a scenarioSet an income's end = "retirement" (the scaffolded salary already is) and
it ends automatically the year before retirement_year — including under a
--retirement-year scenario override, which moves it too.
Full walkthrough, MCP setup, and command reference:
packages/cove-fi/README.md.
Related MCP server: banktivity-mcp
Onboarding
Wire up the MCP server (see docs/clients/ for
Claude Desktop, Claude Code, and Cursor setup), then just say "set up my
retirement plan." Clients that surface MCP prompts can run the onboard
guided flow directly; everywhere else, just asking works — the tools are
self-describing. Either path checks for existing plans, offers YNAB
seeding, walks you through the rest by hand, and finishes with a
projection, a Monte Carlo run, and a save.
Plans are discovered from ~/.cove-fi/plans (override with
COVE_FI_PLANS). YNAB seeding (via @walensis/ynab-client) needs
COVE_FI_YNAB_TOKEN or YNAB_TOKEN set to a YNAB Personal Access Token;
without one, seed_from_ynab just says so instead of erroring. Seeding is
always propose-only — it never writes to your plan on its own, it
returns numbers for you to confirm before they go into create_plan or
update_plan.
Docs
docs/ASSUMPTIONS.md— every default value and its citationdocs/SEMANTICS.md— the engine's rules: the contribution waterfall, drawdown order, sentinels, and moredocs/VALIDATION.md— how the engine is validated against published research and primary sourcesdocs/clients/— MCP setup for Claude Desktop, Claude Code, and Cursor
Validation
The engine is validated against published research and primary sources —
closed-form math, cross-plan invariants, IRS-table pins, and a Monte Carlo
benchmark against the Trinity-study withdrawal-rate literature. See
docs/VALIDATION.md for the full methodology,
citations, and an honest accounting of current limitations.
As of 0.4, accounts can carry their own nominal return or default by tax
class instead of a single global rate, and opting a cash account into
either taxes its growth as ordinary income each year, like real interest.
Monte Carlo gives cash sleeves the same honest treatment: they follow a
historical T-bill path correlated with the same sampled market years
instead of riding the equity path like every other account, so cash-heavy
plans get narrower percentile bands. coast_year is now a true CoastFIRE
expectations test — does each account's current balance, grown at its own
rate to retirement_year, already clear fi_multiple x projected
retirement spending — rather than a trailing-spend heuristic.
As of 0.6, if you ever seeded a plan's income from take-home deposits
(a YNAB export, a paycheck amount, anything post-tax), that plan has been
taxing already-taxed money — cove-fi plans always store GROSS income, and
there is no in-engine gross-up to fix it for you. Run the new
income_gross_from_net calculator (propose-only; the onboarding flow now
calls it automatically) to convert take-home to gross before it goes into
create_plan/update_plan. Two more trust tools land alongside it:
get_engine_info (a version/capabilities handshake, callable before any
plan is loaded) and audit_cash_flow (a per-year income/expense/tax table
built over an opt-in engine detail, flagging duplicate line names and
fund_from funding shortfalls) — see docs/SEMANTICS.md's Income is
always gross and Cash-flow audit sections. Nothing about the projection
engine itself changed this release; every existing plan's numbers are
unaffected.
As of 0.5, unknown scenario override keys are a validation error instead
of a silent no-op (a typo used to run silently as an unmodified base
plan — see docs/SEMANTICS.md's Scenario overrides section if you were
relying on one before this release), and contribution rungs can be named
so a scenario can stop, scale, or exempt them individually — --contributions-end 2043 --contributions-keep hsa,match clamps every other rung's cutoff to
2043 while leaving the HSA and employer-match rungs untouched. Accounts can
also be flagged earmarked: true (a house fund, an education fund) to pull
their balance out of net_worth, FI/coast/depletion, and the retirement
drawdown entirely — reported separately as earmarked_net_worth — while
still being spendable for their actual purpose via an expense's fund_from.
Roadmap
0.2 — Monte Carlo simulation (historical block-bootstrap returns)
0.3 — conversational onboarding (guided interview, plan discovery, propose-only YNAB seeding). Shipped.
0.4 — per-account/per-tax-class return overrides, gated cash-interest taxation, correlated T-bill Monte Carlo cash sleeves, true CoastFIRE
coast_year. Shipped.0.5 — strict scenario override validation, named contribution rungs with stop/scale/keep overrides, earmarked assets. Shipped.
0.6 — the net-income trap:
income_gross_from_netcalculator,get_engine_infohandshake, opt-in engine detail,audit_cash_flow. This release.Next — integrations (third-party import/export), bond series/portfolio mixes
License
MIT — see LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for generating rough-draft project plans from natural-language prompts.
Savvly MCP: query fund data, model projections, and compare against alternative retirement products.
MCP server exposing the Backtest360 engine API as tools for AI agents.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Related MCP Servers
- AlicenseAqualityBmaintenanceMCP server for ProjectionLab — export, snapshot, and restore your financial plans. Includes a built-in FIRE advisor knowledge base.51711MIT
- AlicenseNot gradedqualityFmaintenanceMCP server for accessing and managing Banktivity personal finance data, enabling account, transaction, and budget operations through natural language.3MIT
- FlicenseNot gradedqualityBmaintenanceMCP server for personal finance management. Enables natural language expense logging, budgeting, recurring charge detection, and statement import with deterministic local calculations.
- AlicenseNot gradedqualityCmaintenanceA simulation engine for retirement planning, accessible via an MCP server that allows AI agents to create financial plans, manage income, expenses, loans, taxes, and portfolios, and run Monte Carlo simulations.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/walensis-labs/cove-fi'
If you have feedback or need assistance with the MCP directory API, please join our Discord server