{"name":"com.retirecrunch/calculators","slug":"retirecrunch-calculators","title":null,"description":"FIRE & retirement calculators + a multi-currency portfolio rebalancer (exact buy/sell trades).","url":"https://mcp.market/server/retirecrunch-calculators","rating":null,"grade":"C","score":57,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":5,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-09-27T08:41:41.600Z","last_ok_at":"2026-09-27T08:41:41.600Z","latency_ms":1018},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/malagodia/fire","website":null,"version":"0.2.0","remotes":[{"type":"streamable-http","url":"https://mcp.retirecrunch.com/mcp"}],"packages":[],"tools":[{"name":"calculate_coast_fire","description":"Compute the Coast FIRE milestone — the capital required today such that, with no further contributions, a portfolio compounds to the user's retirement target by their target age.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"current_age":{"type":"integer","minimum":18,"maximum":80},"target_retirement_age":{"type":"integer","minimum":30,"maximum":100},"current_savings":{"type":"number","minimum":0},"annual_expenses_in_retirement":{"type":"number","minimum":1},"currency":{"type":"string","enum":["USD","EUR","GBP","CHF","JPY","CAD","AUD","DKK"],"default":"USD"},"expected_return_rate":{"type":"number","minimum":0,"maximum":30,"default":7},"inflation_rate":{"type":"number","minimum":0,"maximum":30,"default":3},"safe_withdrawal_rate":{"type":"number","minimum":1,"maximum":10,"default":4},"monthly_savings":{"type":"number","minimum":0,"default":0},"portfolio_volatility":{"type":"number","minimum":0,"maximum":50,"default":0}},"required":["current_age","target_retirement_age","current_savings","annual_expenses_in_retirement"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"calculate_fire_target","description":"Estimate the savings target needed for Financial Independence / Early Retirement. Runs Monte Carlo simulation and returns the probability the portfolio survives the planning horizon.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"annual_expense":{"type":"number","minimum":0,"maximum":100000000,"description":"Projected annual spending in retirement (in selected currency)."},"years":{"type":"integer","minimum":1,"maximum":100,"description":"Planning horizon in years."},"current_savings":{"type":"number","minimum":0,"default":0,"description":"Current liquid + invested assets."},"currency":{"type":"string","enum":["USD","EUR","GBP","CHF","JPY","CAD","AUD","DKK"],"default":"USD"},"portfolio_return_rate":{"type":"number","minimum":0,"maximum":30,"default":5,"description":"Expected real annual return %."},"portfolio_volatility":{"type":"number","minimum":0,"maximum":50,"default":12,"description":"Annual return standard deviation %."},"apply_inflation":{"type":"boolean","default":true},"inflation_rate":{"type":"number","minimum":0,"maximum":30,"default":3}},"required":["annual_expense","years"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"compute_swiss_property_tax","description":"Estimate the Swiss cantonal real-estate capital gains tax (Grundstückgewinnsteuer) for a property sale. Covers all 26 cantons with holding-period adjustments and Ersatzbeschaffung (replacement-residence) deferral. Educational estimate; commune surcharges and value-enhancing-improvement deductions are not modeled.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"canton":{"type":"string","enum":["ZH","BE","LU","UR","SZ","OW","NW","GL","ZG","FR","SO","BS","BL","SH","AR","AI","SG","GR","AG","TG","TI","VD","VS","NE","GE","JU"],"description":"Canton code (ZH, BE, ..., JU)."},"sale_price":{"type":"number","minimum":0},"purchase_price":{"type":"number","minimum":0},"years_held":{"type":"number","minimum":0},"ersatzbeschaffung":{"type":"boolean","default":false,"description":"Reinvest proceeds into a replacement primary residence."},"ersatzbeschaffung_amount":{"type":"number","minimum":0,"default":0,"description":"Amount reinvested (caps the tax deferral)."}},"required":["canton","sale_price","purchase_price","years_held"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"get_portfolio_returns","description":"Return RetireCrunch's historical portfolio return profiles for a currency. Each profile is a (return %, volatility %) pair derived from real index data — useful for grounding the assumptions in calculate_fire_target / project_wealth_plan in something defensible rather than guessing.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"currency":{"type":"string","enum":["USD","EUR","GBP","CHF","JPY","CAD","AUD","DKK"],"description":"Currency code; the historical return profiles are denominated in this currency."}},"required":["currency"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"project_wealth_plan","description":"Run RetireCrunch's full year-by-year Wealth Plan projection for a household. Models earned income, pensions, expenses, portfolio growth, optional growth→income phase switch, mortgage amortization, optional property sale, and region-aware tax (US uses 2026 federal+state brackets; other regions use a flat rate). Returns a compact summary with 5-year milestones by default, or the full annual array when yearly_detail=true.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"region":{"type":"string","enum":["US","CH","GB","EU","JP","GENERIC"],"default":"GENERIC","description":"Country regime — drives tax model (US uses bracket-based federal/state; others a flat rate)."},"currency":{"type":"string","enum":["USD","EUR","GBP","CHF","JPY","CAD","AUD","DKK"],"default":"USD"},"start_year":{"type":"integer","minimum":1900,"maximum":2200,"description":"First year of the projection (typically the current year)."},"retirement_year":{"type":"integer","minimum":1900,"maximum":2200,"description":"Year retirement begins."},"plan_horizon_years":{"type":"integer","minimum":1,"maximum":80,"default":50,"description":"Total years to project from start_year."},"current_earned_income":{"type":"number","minimum":0,"default":0,"description":"Annual gross earned income today."},"current_living_costs":{"type":"number","minimum":0,"default":0,"description":"Annual general living expenses today."},"current_housing_expenses":{"type":"number","minimum":0,"default":0,"description":"Annual housing expenses today."},"current_other_expenses":{"type":"number","minimum":0,"default":0,"description":"Annual other expenses today."},"estimated_tax_rate":{"type":"number","minimum":0,"maximum":60,"default":20,"description":"Pre-retirement effective tax rate (%)."},"post_retirement_tax_rate":{"type":"number","minimum":0,"maximum":60,"default":10,"description":"Post-retirement effective tax rate (%)."},"current_liquidity":{"type":"number","minimum":0,"default":0},"current_investment_portfolio":{"type":"number","minimum":0,"default":0},"current_property":{"type":"number","minimum":0,"default":0},"current_mortgage":{"type":"number","minimum":0,"default":0},"inflation_rate":{"type":"number","minimum":0,"maximum":20,"default":2,"description":"Annual inflation %."},"portfolio_return_rate":{"type":"number","minimum":0,"maximum":30,"default":5,"description":"Annual real portfolio return %."},"portfolio_volatility":{"type":"number","minimum":0,"maximum":50,"default":0,"description":"Return std dev %; 0 = deterministic."},"portfolio_switch_enabled":{"type":"boolean","default":true},"portfolio_switch_year":{"type":"integer","minimum":1900,"maximum":2200,"description":"Year to switch from growth to income phase. Defaults to retirement_year if omitted."},"income_yield_rate":{"type":"number","minimum":0,"maximum":20,"default":3.5,"description":"Annual yield % during the income phase."},"household_type":{"type":"string","enum":["single","couple"],"default":"single"},"partner_early_death_years_before_end":{"type":"integer","minimum":0,"maximum":10,"default":5},"partner_survivor_expense_factor":{"type":"number","minimum":0.3,"maximum":1,"default":0.7},"property_sale_enabled":{"type":"boolean","default":false},"property_sale_year":{"type":"integer","minimum":1900,"maximum":2200},"property_sale_destination":{"type":"string","enum":["liquidity","investmentPortfolio"],"default":"liquidity"},"yearly_detail":{"type":"boolean","default":false,"description":"When true, include the full year-by-year array in the response. When false (default), return a compact summary plus 5-year milestones."}},"required":["start_year","retirement_year"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"rebalance_portfolio","description":"Rebalance a multi-currency portfolio: given holdings, per-holding (or per-asset-class) target weights, cash and FX rates, return the exact BUY/SELL trades to reach the targets, the per-currency cash movements (flagging foreign-cash overdrafts), and a summary. Planning math only — no transaction costs or taxes.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"base_currency":{"type":"string","default":"USD","description":"Base currency the portfolio is valued in."},"fx_rates":{"type":"object","additionalProperties":{"type":"number","exclusiveMinimum":0},"default":{},"description":"Value of 1 unit of each currency in the base currency (base currency itself is 1)."},"available_cash":{"type":"object","additionalProperties":{"type":"number"},"default":{},"description":"Cash held per currency, keyed by ISO code."},"holdings":{"type":"array","items":{"type":"object","properties":{"symbol":{"type":"string","description":"Ticker symbol."},"name":{"type":"string","description":"Human-readable instrument name."},"quantity":{"type":"number","description":"Units/shares held."},"price":{"type":"number","minimum":0,"description":"Current price per unit, in the holding currency."},"cost_basis":{"type":"number","minimum":0,"default":0,"description":"Average acquisition price per unit (for P/L only)."},"currency":{"type":"string","description":"ISO currency code the instrument trades in (e.g. \"USD\")."},"asset_class":{"type":"string","default":"Equity","description":"Equity, Bond, Cash, Real estate, Commodity, Alternative, Crypto or Other."},"risk_level":{"type":"string","default":"Medium","description":"Low, Medium or High."},"target_pct":{"type":"number","minimum":0,"maximum":100,"description":"Target weight as % of the whole portfolio (incl. cash)."},"locked":{"type":"boolean","default":false,"description":"Pin to current weight — never traded."}},"required":["symbol","quantity","price","currency","target_pct"],"additionalProperties":false},"minItems":1,"description":"The portfolio holdings to rebalance."},"class_targets":{"type":"object","additionalProperties":{"type":"number","minimum":0,"maximum":100},"description":"Optional per-asset-class goal % (incl. \"Cash\"). When given, unlocked holdings are retargeted to hit each class goal before computing trades."}},"required":["holdings"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}}],"scan":{"score":57,"grade":"C","scanned_at":"2026-09-27T05:27:31.616Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-27T05:27:31.647Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 780ms"]},"poisoning":{"score":15,"max":15,"notes":["6 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 1 write-action tools with no auth"]},"maintenance":{"score":3,"max":15,"notes":["repository not readable: repo not found"]},"identity":{"score":2,"max":10,"notes":["no repository or website to verify"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://mcp.retirecrunch.com/mcp","reachable":true,"authRequired":false,"latencyMs":780,"serverInfo":{"name":"retirecrunch-mcp","version":"0.1.0"}}],"packages":[],"repo":{"found":false,"owner":"malagodia","repo":"fire","error":"repo not found"},"icon":{"url":"https://retirecrunch.com/favicon-v3.svg","source":"site"},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":5}}}},"grade_history":[],"reviews":[]}