Financial simulator for Indian salaries: loans, taxes, SIPs and 50-year FIRE plans.
Fi-Plan is a remote MCP server published at www.fi-plan.in. It has been probed 6 times since 9/12/2026. It answered in 6 of them (100.0%), a near-uninterrupted record. Median response time is 1,269 ms, a delay an agent will notice. It offers a narrow, focused set of 4 tools. On the protocol side it still runs 2025-11-25 and has not moved to the newer spec.
Can an LLM agent pick the right tool here — names, descriptions and parameter clarity are assessed.
simulate_plan — Ambiguous parameter requirements between plan_id and plan_jsonloan_amortization — Truncated description about prepayments parameterasset_projection — Incomplete parameter explanations for class presetsloan_refinance — Unclear breakeven_month calculation methodologyRisk: low
tools/list structure, inputSchema validity, and a functional smoke test — the components of the 0-100 score.
Tools the server advertised in the latest measurement — measured, not catalog-claimed.
simulate_planApplies an ordered list of scenario patches to a DEEP COPY of the plan (never persisted) and returns the resulting snapshot plus applied_patches. Pass plan_id to load the plan server-side (preferred — never paste plan_json); plan_json is accepted for portability. Pass summary=true for the compact view; add milestones=true for long durations to get yearly points + totals instead of every month. Patches support add_income, add_expense, add_cashflow_change, add_loan, update_loan (loan_id plus any of title, principal_amount, interest_rate, start_month, end_month, deposit_to_bank, type, ref_id, prepayments), add_fdp (fdp: { start_month, end_month, s, e, i } with s + e + i = 100 — or the legacy { amount, interest_rate, tenure } fixed-deposit shape) and set_account_balance — nested ({"op":"add_ca
plan_idstringplan_jsonobjectpatchesarraydurationnumbersummarybooleanmilestonesbooleanloan_amortizationPure calculation of EMI and a month-by-month amortization schedule for a loan of amount at annual interest_rate over tenure months. Returns opening/closing balance, interest, principal and running totals per month. Pass optional prepayments to model extra principal payments beyond the EMI (each {start_month, amount, frequency: 'm'|'q'|'y'|null, step_pct?} — null frequency = one-time lump, step_pct = % the amount grows by each recurrence): the EMI stays constant, the loan shortens, and the result becomes { schedule, payoff_month, total_interest_paid, total_prepaid, interest_saved } instead of a plain array. NOTE: here start_month is loan-relative (1 = the loan's first EMI month); on a persisted loan the same fields are plan-absolute months.
amountnumberrequiredinterest_ratenumberrequiredtenurenumberrequiredprepaymentsarrayloan_refinancePure what-if: closes the loan at refinance_month (outstanding balance settled) and restarts it at new_rate over new_tenure months. Returns outstanding balance, old vs new EMI, remaining interest vs new total interest, interest_saved, net_savings (after optional foreclosure_charge) and breakeven_months (null when the new EMI is not lower). Read-only — to persist, update the old loan's end_month and add the new loan.
amountnumberrequiredinterest_ratenumberrequiredtenureintegerrequiredrefinance_monthintegerrequirednew_ratenumberrequirednew_tenureintegerrequiredforeclosure_chargenumberasset_projectionPure calculator for one asset (no plan needed): monthly value, invested, growth, income and TDS over duration months. Pass asset parameters (principal, growth_rate, yield_rate, income_frequency, income_mode, maturity_month, sale_month, sip) — class presets are NOT applied automatically, so pass explicit rates. TDS on FD interest follows the stored rules for the assessment_year. Returns rows plus closing value and totals.
titlestringasset_classstringcategorystringprincipalnumberrequiredpurchase_monthintegergrowth_ratenumberrequiredyield_ratenumberincome_frequencystringincome_modestringcompoundingstringmaturity_monthintegersale_monthintegerrentobjectsipobjectdurationintegerassessment_yearstringDerived by comparing consecutive probes — changes in era, protocol version, build and reachability.
Add this badge to your README — it updates automatically as measurements change.
[](https://mcpmetrics.io/servers/io-github-ompurwar-fi-plan)<a href="https://mcpmetrics.io/servers/io-github-ompurwar-fi-plan"><img src="https://mcpmetrics.io/badge/io.github.ompurwar/fi-plan/era.svg" alt="mcpmetrics"></a>You are seeing the last 7 days. Sign up for the full history. Which check failed and why is in the dashboard.
Sign up free to seeThe catalog entries whose name and description are closest to this one, found with the same index the search box uses.
Indian national year band
Structured visual plans and PR recaps with diagrams, prototypes, annotations, and sharing
Whether the current UTC year is a leap year
Give your AI cited financial data. This is a Model Context Protocol server for the Akyla Financial Data API: as-reported US-equity fundamentals sourced straight from SEC inline-XBRL filings, plus live quotes, full financial statements, valuation comps, and a screener over ~5k US stocks.
Financial statements, metrics, dividends, and price data for public companies.
Unix day-of-year from seconds
| Run | Era | Modern | ms | Legacy | ms | Versions |
|---|---|---|---|---|---|---|
| 2026-09-13 01:33:33 | Legacy | 400 | 774 | 200 | 2544 | 2025-11-25 |
| 2026-09-12 23:31:36 | Legacy | 400 | 972 | 200 | 1036 | 2025-11-25 |
| 2026-09-12 21:29:15 | Legacy | 400 | 1269 | 200 | 2751 | 2025-11-25 |
| 2026-09-12 19:27:29 | Legacy | 400 | 1190 | 200 | 720 | 2025-11-25 |
| 2026-09-12 17:24:09 | Legacy | 400 | 2355 | 200 | 792 | 2025-11-25 |
| 2026-09-12 15:21:42 | Legacy | 400 | 2585 | 200 | 2298 | 2025-11-25 |
Each block is one measurement round. Green: working response. Amber: responded but the server was returning errors (5xx). Red: no response at all.
Each cell is one probe run. Faded cells are incomplete probes — one leg did not answer, so the era is inconclusive.
The two probe legs separately: modern server/discover and legacy initialize.
Comments
Sign in to write a comment
No comments yet. Be the first.