{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_w7p5uftqjpnh","handle":"nestegg-calculators","url":"https://wellknown.network/agents/nestegg-calculators","links":{"self":"https://wellknown.network/agents/nestegg-calculators/record.json","html":"https://wellknown.network/agents/nestegg-calculators","markdown":"https://wellknown.network/agents/nestegg-calculators/record.md","api":"https://wellknown.network/api/v1/agents/nestegg-calculators","status":"https://wellknown.network/api/v1/agents/nestegg-calculators/status","claim":"https://wellknown.network/agents/nestegg-calculators/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/nestegg-calculators/claim.json","badge":"https://wellknown.network/agents/nestegg-calculators/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/nestegg-calculators/history","tools":"https://wellknown.network/api/v1/agents/nestegg-calculators/tools"},"ard":{"identifier":"urn:air:nestegg.money:server:nestegg-calculators","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"nestegg-calculators","summary":"90+ pure finance calculators: loans, investing, bonds, options, tax. Stateless, stores nothing.","description":"90+ pure finance calculators: loans, investing, bonds, options, tax. Stateless, stores nothing.","publisher":{"name":"VladimirWrites","url":null},"homepage":null,"repository":"https://github.com/VladimirWrites/nestegg.money","version":"1.4.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://nestegg.money/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-07-02T22:50:38.425443Z","publishedAt":"2026-07-02T22:50:38.425443Z","registryName":"io.github.VladimirWrites/nestegg-calculators"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"commerce.payments","name":"Payments","confidence":1,"provenance":"derived"},{"slug":"commerce.ecommerce","name":"E-commerce Operations","confidence":0.918,"provenance":"derived"},{"slug":"finance.accounting","name":"Accounting","confidence":0.807,"provenance":"derived"},{"slug":"finance.markets","name":"Markets & Trading","confidence":0.54,"provenance":"derived"},{"slug":"commerce.pricing","name":"Pricing & Quotes","confidence":0.525,"provenance":"derived"},{"slug":"content.writing","name":"Writing & Editing","confidence":0.51,"provenance":"derived"},{"slug":"documents.conversion","name":"Document Conversion","confidence":0.51,"provenance":"derived"}],"categories":["commerce","content","documents","finance"],"language":"fr"},"observed":{"status":"live","statusReason":"Responded 3h ago.","lastOkAt":"2026-10-11T05:24:38.222Z","lastProbedAt":"2026-10-11T05:24:38.222Z","statusComputedAt":"2026-10-11T05:26:50.700Z","reliability30d":{"probes":109,"successRate":1,"p50Ms":23,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":108,"ok":108,"authBoundaryOk":0,"serviceOk":108,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-11T05:24:38.222Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":9,"error":null,"detail":{"tools":[{"name":"amortization","description":"Monthly loan amortization schedule and summary. Supports dated extra principal payments and a rate-fixed period. detail controls output size: 'summary' (default"},{"name":"loan-payoff","description":"Time and interest saved by paying a fixed extra amount every month on a loan, versus the baseline schedule."},{"name":"future-value","description":"Future value of a single lump sum compounded annually."},{"name":"contributions","description":"Future value of a fixed monthly contribution, optionally stepping up each year."},{"name":"cagr","description":"Compound annual growth rate between two values over a number of years. Returns a decimal (0.07 means 7%)."},{"name":"savings-rate","description":"Fraction of income saved (savings divided by income). Returns a decimal."},{"name":"fx-convert","description":"Convert an amount using a rate supplied by the caller (units of target currency per unit of source). No rate is ever looked up."},{"name":"depreciate","description":"Value after compounding down (or up) at a yearly percentage rate over a number of years. This is the method the app uses for long-term assets."},{"name":"straight-line-depreciation","description":"Straight-line depreciation: value falling evenly to a salvage value over a useful life."},{"name":"fire-number","description":"FIRE target nest egg from annual spend and a safe withdrawal rate (default 4%), plus the gap from today and the years to reach it given optional savings and gro"},{"name":"required-contribution","description":"Inverse of contributions: the fixed monthly amount needed to reach a target future value over a number of months, given an optional starting balance."},{"name":"inflation-adjust","description":"Convert a nominal amount to today's purchasing power (real), or with toNominal inflate a real amount forward, at a given annual inflation rate."},{"name":"effective-rate","description":"Convert a nominal annual rate to the effective annual rate (APY) for a compounding frequency, or with toNominal recover the nominal rate from an APY."},{"name":"npv","description":"Net present value of a cashflow series (index 0 is today; outflows negative) discounted at a per-period rate."},{"name":"irr","description":"Internal rate of return: the per-period rate that zeroes the NPV of a cashflow series. Returns a percent, or null when the series never crosses zero."},{"name":"refi-breakeven","description":"Refinance break-even: monthly saving, whole months to recoup closing costs, and (if remainingMonths given) the net saving over the remaining term."},{"name":"emergency-fund","description":"Months of runway: liquid savings divided by monthly expenses."},{"name":"mortgage-affordability","description":"Maximum loan and home price the income supports: the DTI cap on gross monthly income (less existing debts) sets the payment, whose present value at the rate and"},{"name":"debt-payoff","description":"Multi-debt payoff plan under a fixed monthly budget. method 'avalanche' (highest rate first) minimizes interest; 'snowball' (smallest balance first) clears acco"},{"name":"portfolio-longevity","description":"How many years a balance lasts while withdrawing from it: the balance grows each year, then the withdrawal (optionally stepping up) is taken. Returns the deplet"},{"name":"present-value","description":"Present value of a single future amount discounted annually. The inverse of future-value."},{"name":"required-return","description":"Annual return needed to grow a starting value to a target over a number of years, optionally with a fixed annual contribution. With no contribution this equals "},{"name":"yield-to-maturity","description":"Bond yield to maturity: the nominal annual yield that prices a bond at the given price, with periodic coupons and face returned at maturity. Solved numerically."},{"name":"tax-from-brackets","description":"Progressive tax from caller-supplied brackets. No jurisdiction, year, or rates are baked in: pass the brackets yourself. Returns total tax, effective rate, and "},{"name":"margin-markup","description":"Convert between margin and markup. Supply any one of cost/price plus one of marginPct/markupPct (or both cost and price); returns cost, price, profit, marginPct"},{"name":"compound-interest","description":"Compound growth at any frequency, with an optional contribution each period (paid at period end). Generalizes future-value (periodsPerYear 1) and contributions "},{"name":"de-gross-to-net","description":"German net (Netto) salary from gross (Brutto). No tax tables are baked in: look up the current year's statutory figures and pass them in. Income tax (Lohnsteuer"},{"name":"de-net-salary","description":"Exact German net (Netto) salary from annual gross (Brutto) for tax years 2023-2026. Income tax and Soli follow the official BMF Programmablaufplan for the year "},{"name":"de-abgeltungsteuer","description":"German flat tax on capital income (Abgeltungsteuer, §32d EStG) for tax years 2023-2026 with the year's Sparerpauschbetrag built in. 25% above the allowance, Sol"},{"name":"de-kindergeld","description":"German child benefit (Kindergeld) for 2023-2026: the year's flat monthly amount per child (uniform since 2023), as monthly and annual totals."},{"name":"de-midijob","description":"German Midijob / Uebergangsbereich (paragraph 20 Abs. 2a SGB IV) for 2023-2026: classifies a monthly pay as Minijob / Midijob / regular against the year's thres"},{"name":"de-rentenpunkte","description":"German pension points (Entgeltpunkte, paragraph 63 SGB VI) for 2023-2026: points earned from an annual gross via the year's Durchschnittsentgelt (capped at the "},{"name":"vat","description":"Value-added tax (MwSt/USt, sales tax) on a price. By default adds the tax to a net price; with inclusive=true treats the amount as gross and extracts the tax. T"},{"name":"roi","description":"Return on investment: total percent gain, plus the annualized rate when a holding period in years is given."},{"name":"real-return","description":"Real (inflation-adjusted) return from a nominal rate via the Fisher relation: (1+nominal)/(1+inflation) - 1."},{"name":"return-stats","description":"Mean, sample variance, and sample standard deviation (n-1) of a series of returns. Pass percents to get a percent stdev (volatility)."},{"name":"sharpe-ratio","description":"Sharpe ratio: excess mean return per unit of volatility, (mean - riskFree) / stdev. Null when volatility is undefined or zero."},{"name":"max-drawdown","description":"Maximum drawdown of a value series: the largest peak-to-trough decline, as a positive percent."},{"name":"holding-period-return","description":"Holding-period return: (income + capital gain) / starting value, in percent."},{"name":"fee-drag","description":"Effect of an annual fee: the compounded balance at the gross rate vs net of the fee, and the amount lost to fees."},{"name":"dollar-cost-averaging","description":"Dollar-cost averaging: buying a fixed amount each period at the given prices. Returns units accumulated, total invested, average cost, and final value at the la"},{"name":"bond-price","description":"Price of a coupon bond given a yield: present value of the coupons plus the face at maturity."},{"name":"current-yield","description":"Current yield: the annual coupon as a percent of the bond's current price."},{"name":"bond-duration","description":"Macaulay duration (PV-weighted average time of cashflows, in years) and modified duration (price sensitivity to yield)."},{"name":"convexity","description":"Bond convexity (years^2): the curvature of price with respect to yield, used alongside duration."},{"name":"zero-coupon-price","description":"Price of a zero-coupon bond: face value discounted to today at the yield."},{"name":"accrued-interest","description":"Accrued interest since the last coupon: the annual coupon pro-rated by days elapsed over the day-count basis."},{"name":"black-scholes","description":"Black-Scholes price of a European call or put option, plus d1/d2. Volatility and rates in percent; optional continuous dividend yield."},{"name":"option-greeks","description":"Black-Scholes greeks for a European option: delta, gamma, vega (per 1% vol), theta (per day), rho (per 1% rate)."},{"name":"put-call-parity","description":"Put-call parity: given one option price, returns both. Provide call or put, plus spot, strike, years, and the rate."},{"name":"option-breakeven","description":"Break-even underlying price at expiry: strike + premium for a call, strike - premium for a put."},{"name":"intrinsic-time-value","description":"Split an option premium into intrinsic value (in-the-money amount) and time value."},{"name":"annuity-pv","description":"Present value of an ordinary annuity (level payment at each period end). rate is the per-period rate in percent."},{"name":"annuity-fv","description":"Future value of an ordinary annuity. rate is the per-period rate in percent."},{"name":"annuity-payment","description":"The level payment that amortizes a present value over n periods (the loan-payment formula). rate is per period."},{"name":"perpetuity","description":"Present value of a level or growing perpetuity: payment / (rate - growth). Null when growth is not below the rate."},{"name":"rule-of-72","description":"Years to double: the rule-of-72 estimate (72/rate) and the exact figure (ln2 / ln(1+rate))."},{"name":"payback-period","description":"Simple payback period: periods until cumulative cashflows recover the initial cost, interpolated within the crossing period. Null if never."},{"name":"discounted-payback","description":"Discounted payback period: like payback-period but each cashflow is discounted at the per-period rate."},{"name":"mirr","description":"Modified internal rate of return: negatives financed at financeRate, positives reinvested at reinvestRate. Percents in and out."},{"name":"xnpv","description":"Date-aware net present value: each amount discounted by its fractional years (act/365) from the first cashflow's date. Annual rate in percent."},{"name":"xirr","description":"Date-aware internal rate of return: the annual rate that zeroes the XNPV of irregular dated cashflows. Null if no rate fits."},{"name":"loan-apr","description":"Effective APR including upfront fees: the note-rate payment priced against the net proceeds (amount - fees). Annual percent."},{"name":"interest-only-payment","description":"Interest-only monthly payment on a balance."},{"name":"balloon-loan","description":"Balloon loan: payment based on a long amortization, with the balloon being the balance still due after the shorter balloon term."},{"name":"ltv","description":"Loan-to-value ratio, percent (loan / property value)."},{"name":"dti","description":"Debt-to-income ratio, percent (monthly debt / gross monthly income)."},{"name":"credit-card-payoff","description":"Months to clear a credit-card balance at a fixed monthly payment, plus interest paid. Null when the payment can't cover the first month's interest."},{"name":"points-breakeven","description":"Mortgage points break-even: the upfront cost to buy down the rate, the monthly payment saving, and the whole months to recoup it."},{"name":"biweekly-payoff","description":"Biweekly mortgage acceleration: paying half the monthly payment every two weeks. Returns the biweekly payment and the months and interest saved."},{"name":"cap-rate","description":"Capitalization rate: net operating income as a percent of property value."},{"name":"cash-on-cash","description":"Cash-on-cash return: annual pre-tax cash flow as a percent of the cash invested."},{"name":"noi","description":"Net operating income: gross rental income less vacancy and operating expenses."},{"name":"gross-rent-multiplier","description":"Gross rent multiplier: price divided by gross annual rent."},{"name":"dscr","description":"Debt service coverage ratio: net operating income divided by annual debt service."},{"name":"wacc","description":"Weighted average cost of capital: equity and after-tax debt weighted by the capital structure. Percents in and out."},{"name":"break-even-units","description":"Break-even volume: fixed costs divided by the per-unit contribution (price - variable cost), plus the revenue at that volume."},{"name":"contribution-margin","description":"Contribution margin per unit and as a percent of price."},{"name":"current-ratio","description":"Current ratio: current assets over current liabilities."},{"name":"quick-ratio","description":"Quick (acid-test) ratio: (current assets - inventory) over current liabilities."},{"name":"roe","description":"Return on equity, percent: net income over shareholders' equity."},{"name":"roa","description":"Return on assets, percent: net income over total assets."},{"name":"declining-balance-depreciation","description":"Declining-balance depreciation: a fixed percent of the reducing book value, for a given year. Returns that year's depreciation and the remaining book value."},{"name":"double-declining-depreciation","description":"Double-declining-balance depreciation: 2/usefulYears of the book value each year, not falling below salvage."},{"name":"sum-of-years-digits","description":"Sum-of-the-years'-digits depreciation: the depreciable base weighted toward the early years."},{"name":"units-of-production-depreciation","description":"Units-of-production depreciation: the depreciable base spread over total expected units, charged by the units used this period."},{"name":"net-worth","description":"Net worth: assets minus liabilities."},{"name":"budget-50-30-20","description":"The 50/30/20 budget split of monthly income into needs, wants, and savings."},{"name":"tip-split","description":"Tip and split: the tip amount, the total, and the per-person share."},{"name":"discount","description":"A single percentage discount: the amount off and the final price."},{"name":"successive-discounts","description":"Stacked discounts applied in order: the final price and the effective single discount rate."},{"name":"percentage-change","description":"Percentage change from one value to another. Null when the starting value is zero."},{"name":"unit-price","description":"Unit price: price divided by quantity (for comparing pack sizes). Null when quantity is zero."},{"name":"hourly-to-salary","description":"Annualize an hourly rate (and the monthly equivalent)."},{"name":"salary-to-hourly","description":"Hourly rate implied by an annual salary."},{"name":"after-tax-yield","description":"After-tax yield: a yield reduced by the tax rate. Percents in and out."},{"name":"tax-equivalent-yield","description":"Tax-equivalent yield: the taxable yield that matches a tax-free (e.g. muni) yield. Percents in and out."},{"name":"coast-fire","description":"Coast FIRE: whether the current nest egg, left to grow untouched to retirement, already reaches the FIRE target. Returns the target, the projected balance, whet"},{"name":"barista-fire","description":"Barista FIRE: the nest egg needed when part-time income covers part of the spending, so the portfolio only funds the remainder at the safe withdrawal rate."}],"toolCount":99,"toolsHash":"bebe06ccd5a058bdea97f40fb55a8a2d3d69162fa9f89e06c2c1527d8e6d2fc6","serverName":"nestegg-calculators","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T22:22:07.510Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":20,"error":null,"detail":{"tools":[{"name":"amortization","description":"Monthly loan amortization schedule and summary. Supports dated extra principal payments and a rate-fixed period. detail controls output size: 'summary' (default"},{"name":"loan-payoff","description":"Time and interest saved by paying a fixed extra amount every month on a loan, versus the baseline schedule."},{"name":"future-value","description":"Future value of a single lump sum compounded annually."},{"name":"contributions","description":"Future value of a fixed monthly contribution, optionally stepping up each year."},{"name":"cagr","description":"Compound annual growth rate between two values over a number of years. Returns a decimal (0.07 means 7%)."},{"name":"savings-rate","description":"Fraction of income saved (savings divided by income). Returns a decimal."},{"name":"fx-convert","description":"Convert an amount using a rate supplied by the caller (units of target currency per unit of source). No rate is ever looked up."},{"name":"depreciate","description":"Value after compounding down (or up) at a yearly percentage rate over a number of years. This is the method the app uses for long-term assets."},{"name":"straight-line-depreciation","description":"Straight-line depreciation: value falling evenly to a salvage value over a useful life."},{"name":"fire-number","description":"FIRE target nest egg from annual spend and a safe withdrawal rate (default 4%), plus the gap from today and the years to reach it given optional savings and gro"},{"name":"required-contribution","description":"Inverse of contributions: the fixed monthly amount needed to reach a target future value over a number of months, given an optional starting balance."},{"name":"inflation-adjust","description":"Convert a nominal amount to today's purchasing power (real), or with toNominal inflate a real amount forward, at a given annual inflation rate."},{"name":"effective-rate","description":"Convert a nominal annual rate to the effective annual rate (APY) for a compounding frequency, or with toNominal recover the nominal rate from an APY."},{"name":"npv","description":"Net present value of a cashflow series (index 0 is today; outflows negative) discounted at a per-period rate."},{"name":"irr","description":"Internal rate of return: the per-period rate that zeroes the NPV of a cashflow series. Returns a percent, or null when the series never crosses zero."},{"name":"refi-breakeven","description":"Refinance break-even: monthly saving, whole months to recoup closing costs, and (if remainingMonths given) the net saving over the remaining term."},{"name":"emergency-fund","description":"Months of runway: liquid savings divided by monthly expenses."},{"name":"mortgage-affordability","description":"Maximum loan and home price the income supports: the DTI cap on gross monthly income (less existing debts) sets the payment, whose present value at the rate and"},{"name":"debt-payoff","description":"Multi-debt payoff plan under a fixed monthly budget. method 'avalanche' (highest rate first) minimizes interest; 'snowball' (smallest balance first) clears acco"},{"name":"portfolio-longevity","description":"How many years a balance lasts while withdrawing from it: the balance grows each year, then the withdrawal (optionally stepping up) is taken. Returns the deplet"},{"name":"present-value","description":"Present value of a single future amount discounted annually. The inverse of future-value."},{"name":"required-return","description":"Annual return needed to grow a starting value to a target over a number of years, optionally with a fixed annual contribution. With no contribution this equals "},{"name":"yield-to-maturity","description":"Bond yield to maturity: the nominal annual yield that prices a bond at the given price, with periodic coupons and face returned at maturity. Solved numerically."},{"name":"tax-from-brackets","description":"Progressive tax from caller-supplied brackets. No jurisdiction, year, or rates are baked in: pass the brackets yourself. Returns total tax, effective rate, and "},{"name":"margin-markup","description":"Convert between margin and markup. Supply any one of cost/price plus one of marginPct/markupPct (or both cost and price); returns cost, price, profit, marginPct"},{"name":"compound-interest","description":"Compound growth at any frequency, with an optional contribution each period (paid at period end). Generalizes future-value (periodsPerYear 1) and contributions "},{"name":"de-gross-to-net","description":"German net (Netto) salary from gross (Brutto). No tax tables are baked in: look up the current year's statutory figures and pass them in. Income tax (Lohnsteuer"},{"name":"de-net-salary","description":"Exact German net (Netto) salary from annual gross (Brutto) for tax years 2023-2026. Income tax and Soli follow the official BMF Programmablaufplan for the year "},{"name":"de-abgeltungsteuer","description":"German flat tax on capital income (Abgeltungsteuer, §32d EStG) for tax years 2023-2026 with the year's Sparerpauschbetrag built in. 25% above the allowance, Sol"},{"name":"de-kindergeld","description":"German child benefit (Kindergeld) for 2023-2026: the year's flat monthly amount per child (uniform since 2023), as monthly and annual totals."},{"name":"de-midijob","description":"German Midijob / Uebergangsbereich (paragraph 20 Abs. 2a SGB IV) for 2023-2026: classifies a monthly pay as Minijob / Midijob / regular against the year's thres"},{"name":"de-rentenpunkte","description":"German pension points (Entgeltpunkte, paragraph 63 SGB VI) for 2023-2026: points earned from an annual gross via the year's Durchschnittsentgelt (capped at the "},{"name":"vat","description":"Value-added tax (MwSt/USt, sales tax) on a price. By default adds the tax to a net price; with inclusive=true treats the amount as gross and extracts the tax. T"},{"name":"roi","description":"Return on investment: total percent gain, plus the annualized rate when a holding period in years is given."},{"name":"real-return","description":"Real (inflation-adjusted) return from a nominal rate via the Fisher relation: (1+nominal)/(1+inflation) - 1."},{"name":"return-stats","description":"Mean, sample variance, and sample standard deviation (n-1) of a series of returns. Pass percents to get a percent stdev (volatility)."},{"name":"sharpe-ratio","description":"Sharpe ratio: excess mean return per unit of volatility, (mean - riskFree) / stdev. Null when volatility is undefined or zero."},{"name":"max-drawdown","description":"Maximum drawdown of a value series: the largest peak-to-trough decline, as a positive percent."},{"name":"holding-period-return","description":"Holding-period return: (income + capital gain) / starting value, in percent."},{"name":"fee-drag","description":"Effect of an annual fee: the compounded balance at the gross rate vs net of the fee, and the amount lost to fees."},{"name":"dollar-cost-averaging","description":"Dollar-cost averaging: buying a fixed amount each period at the given prices. Returns units accumulated, total invested, average cost, and final value at the la"},{"name":"bond-price","description":"Price of a coupon bond given a yield: present value of the coupons plus the face at maturity."},{"name":"current-yield","description":"Current yield: the annual coupon as a percent of the bond's current price."},{"name":"bond-duration","description":"Macaulay duration (PV-weighted average time of cashflows, in years) and modified duration (price sensitivity to yield)."},{"name":"convexity","description":"Bond convexity (years^2): the curvature of price with respect to yield, used alongside duration."},{"name":"zero-coupon-price","description":"Price of a zero-coupon bond: face value discounted to today at the yield."},{"name":"accrued-interest","description":"Accrued interest since the last coupon: the annual coupon pro-rated by days elapsed over the day-count basis."},{"name":"black-scholes","description":"Black-Scholes price of a European call or put option, plus d1/d2. Volatility and rates in percent; optional continuous dividend yield."},{"name":"option-greeks","description":"Black-Scholes greeks for a European option: delta, gamma, vega (per 1% vol), theta (per day), rho (per 1% rate)."},{"name":"put-call-parity","description":"Put-call parity: given one option price, returns both. Provide call or put, plus spot, strike, years, and the rate."},{"name":"option-breakeven","description":"Break-even underlying price at expiry: strike + premium for a call, strike - premium for a put."},{"name":"intrinsic-time-value","description":"Split an option premium into intrinsic value (in-the-money amount) and time value."},{"name":"annuity-pv","description":"Present value of an ordinary annuity (level payment at each period end). rate is the per-period rate in percent."},{"name":"annuity-fv","description":"Future value of an ordinary annuity. rate is the per-period rate in percent."},{"name":"annuity-payment","description":"The level payment that amortizes a present value over n periods (the loan-payment formula). rate is per period."},{"name":"perpetuity","description":"Present value of a level or growing perpetuity: payment / (rate - growth). Null when growth is not below the rate."},{"name":"rule-of-72","description":"Years to double: the rule-of-72 estimate (72/rate) and the exact figure (ln2 / ln(1+rate))."},{"name":"payback-period","description":"Simple payback period: periods until cumulative cashflows recover the initial cost, interpolated within the crossing period. Null if never."},{"name":"discounted-payback","description":"Discounted payback period: like payback-period but each cashflow is discounted at the per-period rate."},{"name":"mirr","description":"Modified internal rate of return: negatives financed at financeRate, positives reinvested at reinvestRate. Percents in and out."},{"name":"xnpv","description":"Date-aware net present value: each amount discounted by its fractional years (act/365) from the first cashflow's date. Annual rate in percent."},{"name":"xirr","description":"Date-aware internal rate of return: the annual rate that zeroes the XNPV of irregular dated cashflows. Null if no rate fits."},{"name":"loan-apr","description":"Effective APR including upfront fees: the note-rate payment priced against the net proceeds (amount - fees). Annual percent."},{"name":"interest-only-payment","description":"Interest-only monthly payment on a balance."},{"name":"balloon-loan","description":"Balloon loan: payment based on a long amortization, with the balloon being the balance still due after the shorter balloon term."},{"name":"ltv","description":"Loan-to-value ratio, percent (loan / property value)."},{"name":"dti","description":"Debt-to-income ratio, percent (monthly debt / gross monthly income)."},{"name":"credit-card-payoff","description":"Months to clear a credit-card balance at a fixed monthly payment, plus interest paid. Null when the payment can't cover the first month's interest."},{"name":"points-breakeven","description":"Mortgage points break-even: the upfront cost to buy down the rate, the monthly payment saving, and the whole months to recoup it."},{"name":"biweekly-payoff","description":"Biweekly mortgage acceleration: paying half the monthly payment every two weeks. Returns the biweekly payment and the months and interest saved."},{"name":"cap-rate","description":"Capitalization rate: net operating income as a percent of property value."},{"name":"cash-on-cash","description":"Cash-on-cash return: annual pre-tax cash flow as a percent of the cash invested."},{"name":"noi","description":"Net operating income: gross rental income less vacancy and operating expenses."},{"name":"gross-rent-multiplier","description":"Gross rent multiplier: price divided by gross annual rent."},{"name":"dscr","description":"Debt service coverage ratio: net operating income divided by annual debt service."},{"name":"wacc","description":"Weighted average cost of capital: equity and after-tax debt weighted by the capital structure. Percents in and out."},{"name":"break-even-units","description":"Break-even volume: fixed costs divided by the per-unit contribution (price - variable cost), plus the revenue at that volume."},{"name":"contribution-margin","description":"Contribution margin per unit and as a percent of price."},{"name":"current-ratio","description":"Current ratio: current assets over current liabilities."},{"name":"quick-ratio","description":"Quick (acid-test) ratio: (current assets - inventory) over current liabilities."},{"name":"roe","description":"Return on equity, percent: net income over shareholders' equity."},{"name":"roa","description":"Return on assets, percent: net income over total assets."},{"name":"declining-balance-depreciation","description":"Declining-balance depreciation: a fixed percent of the reducing book value, for a given year. Returns that year's depreciation and the remaining book value."},{"name":"double-declining-depreciation","description":"Double-declining-balance depreciation: 2/usefulYears of the book value each year, not falling below salvage."},{"name":"sum-of-years-digits","description":"Sum-of-the-years'-digits depreciation: the depreciable base weighted toward the early years."},{"name":"units-of-production-depreciation","description":"Units-of-production depreciation: the depreciable base spread over total expected units, charged by the units used this period."},{"name":"net-worth","description":"Net worth: assets minus liabilities."},{"name":"budget-50-30-20","description":"The 50/30/20 budget split of monthly income into needs, wants, and savings."},{"name":"tip-split","description":"Tip and split: the tip amount, the total, and the per-person share."},{"name":"discount","description":"A single percentage discount: the amount off and the final price."},{"name":"successive-discounts","description":"Stacked discounts applied in order: the final price and the effective single discount rate."},{"name":"percentage-change","description":"Percentage change from one value to another. Null when the starting value is zero."},{"name":"unit-price","description":"Unit price: price divided by quantity (for comparing pack sizes). Null when quantity is zero."},{"name":"hourly-to-salary","description":"Annualize an hourly rate (and the monthly equivalent)."},{"name":"salary-to-hourly","description":"Hourly rate implied by an annual salary."},{"name":"after-tax-yield","description":"After-tax yield: a yield reduced by the tax rate. Percents in and out."},{"name":"tax-equivalent-yield","description":"Tax-equivalent yield: the taxable yield that matches a tax-free (e.g. muni) yield. Percents in and out."},{"name":"coast-fire","description":"Coast FIRE: whether the current nest egg, left to grow untouched to retirement, already reaches the FIRE target. Returns the target, the projected balance, whet"},{"name":"barista-fire","description":"Barista FIRE: the nest egg needed when part-time income covers part of the spending, so the portfolio only funds the remainder at the safe withdrawal rate."}],"toolCount":99,"toolsHash":"bebe06ccd5a058bdea97f40fb55a8a2d3d69162fa9f89e06c2c1527d8e6d2fc6","serverName":"nestegg-calculators","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T16:32:08.531Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":36,"error":null,"detail":{"tools":[{"name":"amortization","description":"Monthly loan amortization schedule and summary. Supports dated extra principal payments and a rate-fixed period. detail controls output size: 'summary' (default"},{"name":"loan-payoff","description":"Time and interest saved by paying a fixed extra amount every month on a loan, versus the baseline schedule."},{"name":"future-value","description":"Future value of a single lump sum compounded annually."},{"name":"contributions","description":"Future value of a fixed monthly contribution, optionally stepping up each year."},{"name":"cagr","description":"Compound annual growth rate between two values over a number of years. Returns a decimal (0.07 means 7%)."},{"name":"savings-rate","description":"Fraction of income saved (savings divided by income). Returns a decimal."},{"name":"fx-convert","description":"Convert an amount using a rate supplied by the caller (units of target currency per unit of source). No rate is ever looked up."},{"name":"depreciate","description":"Value after compounding down (or up) at a yearly percentage rate over a number of years. This is the method the app uses for long-term assets."},{"name":"straight-line-depreciation","description":"Straight-line depreciation: value falling evenly to a salvage value over a useful life."},{"name":"fire-number","description":"FIRE target nest egg from annual spend and a safe withdrawal rate (default 4%), plus the gap from today and the years to reach it given optional savings and gro"},{"name":"required-contribution","description":"Inverse of contributions: the fixed monthly amount needed to reach a target future value over a number of months, given an optional starting balance."},{"name":"inflation-adjust","description":"Convert a nominal amount to today's purchasing power (real), or with toNominal inflate a real amount forward, at a given annual inflation rate."},{"name":"effective-rate","description":"Convert a nominal annual rate to the effective annual rate (APY) for a compounding frequency, or with toNominal recover the nominal rate from an APY."},{"name":"npv","description":"Net present value of a cashflow series (index 0 is today; outflows negative) discounted at a per-period rate."},{"name":"irr","description":"Internal rate of return: the per-period rate that zeroes the NPV of a cashflow series. Returns a percent, or null when the series never crosses zero."},{"name":"refi-breakeven","description":"Refinance break-even: monthly saving, whole months to recoup closing costs, and (if remainingMonths given) the net saving over the remaining term."},{"name":"emergency-fund","description":"Months of runway: liquid savings divided by monthly expenses."},{"name":"mortgage-affordability","description":"Maximum loan and home price the income supports: the DTI cap on gross monthly income (less existing debts) sets the payment, whose present value at the rate and"},{"name":"debt-payoff","description":"Multi-debt payoff plan under a fixed monthly budget. method 'avalanche' (highest rate first) minimizes interest; 'snowball' (smallest balance first) clears acco"},{"name":"portfolio-longevity","description":"How many years a balance lasts while withdrawing from it: the balance grows each year, then the withdrawal (optionally stepping up) is taken. Returns the deplet"},{"name":"present-value","description":"Present value of a single future amount discounted annually. The inverse of future-value."},{"name":"required-return","description":"Annual return needed to grow a starting value to a target over a number of years, optionally with a fixed annual contribution. With no contribution this equals "},{"name":"yield-to-maturity","description":"Bond yield to maturity: the nominal annual yield that prices a bond at the given price, with periodic coupons and face returned at maturity. Solved numerically."},{"name":"tax-from-brackets","description":"Progressive tax from caller-supplied brackets. No jurisdiction, year, or rates are baked in: pass the brackets yourself. Returns total tax, effective rate, and "},{"name":"margin-markup","description":"Convert between margin and markup. Supply any one of cost/price plus one of marginPct/markupPct (or both cost and price); returns cost, price, profit, marginPct"},{"name":"compound-interest","description":"Compound growth at any frequency, with an optional contribution each period (paid at period end). Generalizes future-value (periodsPerYear 1) and contributions "},{"name":"de-gross-to-net","description":"German net (Netto) salary from gross (Brutto). No tax tables are baked in: look up the current year's statutory figures and pass them in. Income tax (Lohnsteuer"},{"name":"de-net-salary","description":"Exact German net (Netto) salary from annual gross (Brutto) for tax years 2023-2026. Income tax and Soli follow the official BMF Programmablaufplan for the year "},{"name":"de-abgeltungsteuer","description":"German flat tax on capital income (Abgeltungsteuer, §32d EStG) for tax years 2023-2026 with the year's Sparerpauschbetrag built in. 25% above the allowance, Sol"},{"name":"de-kindergeld","description":"German child benefit (Kindergeld) for 2023-2026: the year's flat monthly amount per child (uniform since 2023), as monthly and annual totals."},{"name":"de-midijob","description":"German Midijob / Uebergangsbereich (paragraph 20 Abs. 2a SGB IV) for 2023-2026: classifies a monthly pay as Minijob / Midijob / regular against the year's thres"},{"name":"de-rentenpunkte","description":"German pension points (Entgeltpunkte, paragraph 63 SGB VI) for 2023-2026: points earned from an annual gross via the year's Durchschnittsentgelt (capped at the "},{"name":"vat","description":"Value-added tax (MwSt/USt, sales tax) on a price. By default adds the tax to a net price; with inclusive=true treats the amount as gross and extracts the tax. T"},{"name":"roi","description":"Return on investment: total percent gain, plus the annualized rate when a holding period in years is given."},{"name":"real-return","description":"Real (inflation-adjusted) return from a nominal rate via the Fisher relation: (1+nominal)/(1+inflation) - 1."},{"name":"return-stats","description":"Mean, sample variance, and sample standard deviation (n-1) of a series of returns. Pass percents to get a percent stdev (volatility)."},{"name":"sharpe-ratio","description":"Sharpe ratio: excess mean return per unit of volatility, (mean - riskFree) / stdev. Null when volatility is undefined or zero."},{"name":"max-drawdown","description":"Maximum drawdown of a value series: the largest peak-to-trough decline, as a positive percent."},{"name":"holding-period-return","description":"Holding-period return: (income + capital gain) / starting value, in percent."},{"name":"fee-drag","description":"Effect of an annual fee: the compounded balance at the gross rate vs net of the fee, and the amount lost to fees."},{"name":"dollar-cost-averaging","description":"Dollar-cost averaging: buying a fixed amount each period at the given prices. Returns units accumulated, total invested, average cost, and final value at the la"},{"name":"bond-price","description":"Price of a coupon bond given a yield: present value of the coupons plus the face at maturity."},{"name":"current-yield","description":"Current yield: the annual coupon as a percent of the bond's current price."},{"name":"bond-duration","description":"Macaulay duration (PV-weighted average time of cashflows, in years) and modified duration (price sensitivity to yield)."},{"name":"convexity","description":"Bond convexity (years^2): the curvature of price with respect to yield, used alongside duration."},{"name":"zero-coupon-price","description":"Price of a zero-coupon bond: face value discounted to today at the yield."},{"name":"accrued-interest","description":"Accrued interest since the last coupon: the annual coupon pro-rated by days elapsed over the day-count basis."},{"name":"black-scholes","description":"Black-Scholes price of a European call or put option, plus d1/d2. Volatility and rates in percent; optional continuous dividend yield."},{"name":"option-greeks","description":"Black-Scholes greeks for a European option: delta, gamma, vega (per 1% vol), theta (per day), rho (per 1% rate)."},{"name":"put-call-parity","description":"Put-call parity: given one option price, returns both. Provide call or put, plus spot, strike, years, and the rate."},{"name":"option-breakeven","description":"Break-even underlying price at expiry: strike + premium for a call, strike - premium for a put."},{"name":"intrinsic-time-value","description":"Split an option premium into intrinsic value (in-the-money amount) and time value."},{"name":"annuity-pv","description":"Present value of an ordinary annuity (level payment at each period end). rate is the per-period rate in percent."},{"name":"annuity-fv","description":"Future value of an ordinary annuity. rate is the per-period rate in percent."},{"name":"annuity-payment","description":"The level payment that amortizes a present value over n periods (the loan-payment formula). rate is per period."},{"name":"perpetuity","description":"Present value of a level or growing perpetuity: payment / (rate - growth). Null when growth is not below the rate."},{"name":"rule-of-72","description":"Years to double: the rule-of-72 estimate (72/rate) and the exact figure (ln2 / ln(1+rate))."},{"name":"payback-period","description":"Simple payback period: periods until cumulative cashflows recover the initial cost, interpolated within the crossing period. Null if never."},{"name":"discounted-payback","description":"Discounted payback period: like payback-period but each cashflow is discounted at the per-period rate."},{"name":"mirr","description":"Modified internal rate of return: negatives financed at financeRate, positives reinvested at reinvestRate. Percents in and out."},{"name":"xnpv","description":"Date-aware net present value: each amount discounted by its fractional years (act/365) from the first cashflow's date. Annual rate in percent."},{"name":"xirr","description":"Date-aware internal rate of return: the annual rate that zeroes the XNPV of irregular dated cashflows. Null if no rate fits."},{"name":"loan-apr","description":"Effective APR including upfront fees: the note-rate payment priced against the net proceeds (amount - fees). Annual percent."},{"name":"interest-only-payment","description":"Interest-only monthly payment on a balance."},{"name":"balloon-loan","description":"Balloon loan: payment based on a long amortization, with the balloon being the balance still due after the shorter balloon term."},{"name":"ltv","description":"Loan-to-value ratio, percent (loan / property value)."},{"name":"dti","description":"Debt-to-income ratio, percent (monthly debt / gross monthly income)."},{"name":"credit-card-payoff","description":"Months to clear a credit-card balance at a fixed monthly payment, plus interest paid. Null when the payment can't cover the first month's interest."},{"name":"points-breakeven","description":"Mortgage points break-even: the upfront cost to buy down the rate, the monthly payment saving, and the whole months to recoup it."},{"name":"biweekly-payoff","description":"Biweekly mortgage acceleration: paying half the monthly payment every two weeks. Returns the biweekly payment and the months and interest saved."},{"name":"cap-rate","description":"Capitalization rate: net operating income as a percent of property value."},{"name":"cash-on-cash","description":"Cash-on-cash return: annual pre-tax cash flow as a percent of the cash invested."},{"name":"noi","description":"Net operating income: gross rental income less vacancy and operating expenses."},{"name":"gross-rent-multiplier","description":"Gross rent multiplier: price divided by gross annual rent."},{"name":"dscr","description":"Debt service coverage ratio: net operating income divided by annual debt service."},{"name":"wacc","description":"Weighted average cost of capital: equity and after-tax debt weighted by the capital structure. Percents in and out."},{"name":"break-even-units","description":"Break-even volume: fixed costs divided by the per-unit contribution (price - variable cost), plus the revenue at that volume."},{"name":"contribution-margin","description":"Contribution margin per unit and as a percent of price."},{"name":"current-ratio","description":"Current ratio: current assets over current liabilities."},{"name":"quick-ratio","description":"Quick (acid-test) ratio: (current assets - inventory) over current liabilities."},{"name":"roe","description":"Return on equity, percent: net income over shareholders' equity."},{"name":"roa","description":"Return on assets, percent: net income over total assets."},{"name":"declining-balance-depreciation","description":"Declining-balance depreciation: a fixed percent of the reducing book value, for a given year. Returns that year's depreciation and the remaining book value."},{"name":"double-declining-depreciation","description":"Double-declining-balance depreciation: 2/usefulYears of the book value each year, not falling below salvage."},{"name":"sum-of-years-digits","description":"Sum-of-the-years'-digits depreciation: the depreciable base weighted toward the early years."},{"name":"units-of-production-depreciation","description":"Units-of-production depreciation: the depreciable base spread over total expected units, charged by the units used this period."},{"name":"net-worth","description":"Net worth: assets minus liabilities."},{"name":"budget-50-30-20","description":"The 50/30/20 budget split of monthly income into needs, wants, and savings."},{"name":"tip-split","description":"Tip and split: the tip amount, the total, and the per-person share."},{"name":"discount","description":"A single percentage discount: the amount off and the final price."},{"name":"successive-discounts","description":"Stacked discounts applied in order: the final price and the effective single discount rate."},{"name":"percentage-change","description":"Percentage change from one value to another. Null when the starting value is zero."},{"name":"unit-price","description":"Unit price: price divided by quantity (for comparing pack sizes). Null when quantity is zero."},{"name":"hourly-to-salary","description":"Annualize an hourly rate (and the monthly equivalent)."},{"name":"salary-to-hourly","description":"Hourly rate implied by an annual salary."},{"name":"after-tax-yield","description":"After-tax yield: a yield reduced by the tax rate. Percents in and out."},{"name":"tax-equivalent-yield","description":"Tax-equivalent yield: the taxable yield that matches a tax-free (e.g. muni) yield. Percents in and out."},{"name":"coast-fire","description":"Coast FIRE: whether the current nest egg, left to grow untouched to retirement, already reaches the FIRE target. Returns the target, the projected balance, whet"},{"name":"barista-fire","description":"Barista FIRE: the nest egg needed when part-time income covers part of the spending, so the portfolio only funds the remainder at the safe withdrawal rate."}],"toolCount":99,"toolsHash":"bebe06ccd5a058bdea97f40fb55a8a2d3d69162fa9f89e06c2c1527d8e6d2fc6","serverName":"nestegg-calculators","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T10:28:39.979Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":18,"error":null,"detail":{"tools":[{"name":"amortization","description":"Monthly loan amortization schedule and summary. Supports dated extra principal payments and a rate-fixed period. detail controls output size: 'summary' (default"},{"name":"loan-payoff","description":"Time and interest saved by paying a fixed extra amount every month on a loan, versus the baseline schedule."},{"name":"future-value","description":"Future value of a single lump sum compounded annually."},{"name":"contributions","description":"Future value of a fixed monthly contribution, optionally stepping up each year."},{"name":"cagr","description":"Compound annual growth rate between two values over a number of years. Returns a decimal (0.07 means 7%)."},{"name":"savings-rate","description":"Fraction of income saved (savings divided by income). Returns a decimal."},{"name":"fx-convert","description":"Convert an amount using a rate supplied by the caller (units of target currency per unit of source). No rate is ever looked up."},{"name":"depreciate","description":"Value after compounding down (or up) at a yearly percentage rate over a number of years. This is the method the app uses for long-term assets."},{"name":"straight-line-depreciation","description":"Straight-line depreciation: value falling evenly to a salvage value over a useful life."},{"name":"fire-number","description":"FIRE target nest egg from annual spend and a safe withdrawal rate (default 4%), plus the gap from today and the years to reach it given optional savings and gro"},{"name":"required-contribution","description":"Inverse of contributions: the fixed monthly amount needed to reach a target future value over a number of months, given an optional starting balance."},{"name":"inflation-adjust","description":"Convert a nominal amount to today's purchasing power (real), or with toNominal inflate a real amount forward, at a given annual inflation rate."},{"name":"effective-rate","description":"Convert a nominal annual rate to the effective annual rate (APY) for a compounding frequency, or with toNominal recover the nominal rate from an APY."},{"name":"npv","description":"Net present value of a cashflow series (index 0 is today; outflows negative) discounted at a per-period rate."},{"name":"irr","description":"Internal rate of return: the per-period rate that zeroes the NPV of a cashflow series. Returns a percent, or null when the series never crosses zero."},{"name":"refi-breakeven","description":"Refinance break-even: monthly saving, whole months to recoup closing costs, and (if remainingMonths given) the net saving over the remaining term."},{"name":"emergency-fund","description":"Months of runway: liquid savings divided by monthly expenses."},{"name":"mortgage-affordability","description":"Maximum loan and home price the income supports: the DTI cap on gross monthly income (less existing debts) sets the payment, whose present value at the rate and"},{"name":"debt-payoff","description":"Multi-debt payoff plan under a fixed monthly budget. method 'avalanche' (highest rate first) minimizes interest; 'snowball' (smallest balance first) clears acco"},{"name":"portfolio-longevity","description":"How many years a balance lasts while withdrawing from it: the balance grows each year, then the withdrawal (optionally stepping up) is taken. Returns the deplet"},{"name":"present-value","description":"Present value of a single future amount discounted annually. The inverse of future-value."},{"name":"required-return","description":"Annual return needed to grow a starting value to a target over a number of years, optionally with a fixed annual contribution. With no contribution this equals "},{"name":"yield-to-maturity","description":"Bond yield to maturity: the nominal annual yield that prices a bond at the given price, with periodic coupons and face returned at maturity. Solved numerically."},{"name":"tax-from-brackets","description":"Progressive tax from caller-supplied brackets. No jurisdiction, year, or rates are baked in: pass the brackets yourself. Returns total tax, effective rate, and "},{"name":"margin-markup","description":"Convert between margin and markup. Supply any one of cost/price plus one of marginPct/markupPct (or both cost and price); returns cost, price, profit, marginPct"},{"name":"compound-interest","description":"Compound growth at any frequency, with an optional contribution each period (paid at period end). Generalizes future-value (periodsPerYear 1) and contributions "},{"name":"de-gross-to-net","description":"German net (Netto) salary from gross (Brutto). No tax tables are baked in: look up the current year's statutory figures and pass them in. Income tax (Lohnsteuer"},{"name":"de-net-salary","description":"Exact German net (Netto) salary from annual gross (Brutto) for tax years 2023-2026. Income tax and Soli follow the official BMF Programmablaufplan for the year "},{"name":"de-abgeltungsteuer","description":"German flat tax on capital income (Abgeltungsteuer, §32d EStG) for tax years 2023-2026 with the year's Sparerpauschbetrag built in. 25% above the allowance, Sol"},{"name":"de-kindergeld","description":"German child benefit (Kindergeld) for 2023-2026: the year's flat monthly amount per child (uniform since 2023), as monthly and annual totals."},{"name":"de-midijob","description":"German Midijob / Uebergangsbereich (paragraph 20 Abs. 2a SGB IV) for 2023-2026: classifies a monthly pay as Minijob / Midijob / regular against the year's thres"},{"name":"de-rentenpunkte","description":"German pension points (Entgeltpunkte, paragraph 63 SGB VI) for 2023-2026: points earned from an annual gross via the year's Durchschnittsentgelt (capped at the "},{"name":"vat","description":"Value-added tax (MwSt/USt, sales tax) on a price. By default adds the tax to a net price; with inclusive=true treats the amount as gross and extracts the tax. T"},{"name":"roi","description":"Return on investment: total percent gain, plus the annualized rate when a holding period in years is given."},{"name":"real-return","description":"Real (inflation-adjusted) return from a nominal rate via the Fisher relation: (1+nominal)/(1+inflation) - 1."},{"name":"return-stats","description":"Mean, sample variance, and sample standard deviation (n-1) of a series of returns. Pass percents to get a percent stdev (volatility)."},{"name":"sharpe-ratio","description":"Sharpe ratio: excess mean return per unit of volatility, (mean - riskFree) / stdev. Null when volatility is undefined or zero."},{"name":"max-drawdown","description":"Maximum drawdown of a value series: the largest peak-to-trough decline, as a positive percent."},{"name":"holding-period-return","description":"Holding-period return: (income + capital gain) / starting value, in percent."},{"name":"fee-drag","description":"Effect of an annual fee: the compounded balance at the gross rate vs net of the fee, and the amount lost to fees."},{"name":"dollar-cost-averaging","description":"Dollar-cost averaging: buying a fixed amount each period at the given prices. Returns units accumulated, total invested, average cost, and final value at the la"},{"name":"bond-price","description":"Price of a coupon bond given a yield: present value of the coupons plus the face at maturity."},{"name":"current-yield","description":"Current yield: the annual coupon as a percent of the bond's current price."},{"name":"bond-duration","description":"Macaulay duration (PV-weighted average time of cashflows, in years) and modified duration (price sensitivity to yield)."},{"name":"convexity","description":"Bond convexity (years^2): the curvature of price with respect to yield, used alongside duration."},{"name":"zero-coupon-price","description":"Price of a zero-coupon bond: face value discounted to today at the yield."},{"name":"accrued-interest","description":"Accrued interest since the last coupon: the annual coupon pro-rated by days elapsed over the day-count basis."},{"name":"black-scholes","description":"Black-Scholes price of a European call or put option, plus d1/d2. Volatility and rates in percent; optional continuous dividend yield."},{"name":"option-greeks","description":"Black-Scholes greeks for a European option: delta, gamma, vega (per 1% vol), theta (per day), rho (per 1% rate)."},{"name":"put-call-parity","description":"Put-call parity: given one option price, returns both. Provide call or put, plus spot, strike, years, and the rate."},{"name":"option-breakeven","description":"Break-even underlying price at expiry: strike + premium for a call, strike - premium for a put."},{"name":"intrinsic-time-value","description":"Split an option premium into intrinsic value (in-the-money amount) and time value."},{"name":"annuity-pv","description":"Present value of an ordinary annuity (level payment at each period end). rate is the per-period rate in percent."},{"name":"annuity-fv","description":"Future value of an ordinary annuity. rate is the per-period rate in percent."},{"name":"annuity-payment","description":"The level payment that amortizes a present value over n periods (the loan-payment formula). rate is per period."},{"name":"perpetuity","description":"Present value of a level or growing perpetuity: payment / (rate - growth). Null when growth is not below the rate."},{"name":"rule-of-72","description":"Years to double: the rule-of-72 estimate (72/rate) and the exact figure (ln2 / ln(1+rate))."},{"name":"payback-period","description":"Simple payback period: periods until cumulative cashflows recover the initial cost, interpolated within the crossing period. Null if never."},{"name":"discounted-payback","description":"Discounted payback period: like payback-period but each cashflow is discounted at the per-period rate."},{"name":"mirr","description":"Modified internal rate of return: negatives financed at financeRate, positives reinvested at reinvestRate. Percents in and out."},{"name":"xnpv","description":"Date-aware net present value: each amount discounted by its fractional years (act/365) from the first cashflow's date. Annual rate in percent."},{"name":"xirr","description":"Date-aware internal rate of return: the annual rate that zeroes the XNPV of irregular dated cashflows. Null if no rate fits."},{"name":"loan-apr","description":"Effective APR including upfront fees: the note-rate payment priced against the net proceeds (amount - fees). Annual percent."},{"name":"interest-only-payment","description":"Interest-only monthly payment on a balance."},{"name":"balloon-loan","description":"Balloon loan: payment based on a long amortization, with the balloon being the balance still due after the shorter balloon term."},{"name":"ltv","description":"Loan-to-value ratio, percent (loan / property value)."},{"name":"dti","description":"Debt-to-income ratio, percent (monthly debt / gross monthly income)."},{"name":"credit-card-payoff","description":"Months to clear a credit-card balance at a fixed monthly payment, plus interest paid. Null when the payment can't cover the first month's interest."},{"name":"points-breakeven","description":"Mortgage points break-even: the upfront cost to buy down the rate, the monthly payment saving, and the whole months to recoup it."},{"name":"biweekly-payoff","description":"Biweekly mortgage acceleration: paying half the monthly payment every two weeks. Returns the biweekly payment and the months and interest saved."},{"name":"cap-rate","description":"Capitalization rate: net operating income as a percent of property value."},{"name":"cash-on-cash","description":"Cash-on-cash return: annual pre-tax cash flow as a percent of the cash invested."},{"name":"noi","description":"Net operating income: gross rental income less vacancy and operating expenses."},{"name":"gross-rent-multiplier","description":"Gross rent multiplier: price divided by gross annual rent."},{"name":"dscr","description":"Debt service coverage ratio: net operating income divided by annual debt service."},{"name":"wacc","description":"Weighted average cost of capital: equity and after-tax debt weighted by the capital structure. Percents in and out."},{"name":"break-even-units","description":"Break-even volume: fixed costs divided by the per-unit contribution (price - variable cost), plus the revenue at that volume."},{"name":"contribution-margin","description":"Contribution margin per unit and as a percent of price."},{"name":"current-ratio","description":"Current ratio: current assets over current liabilities."},{"name":"quick-ratio","description":"Quick (acid-test) ratio: (current assets - inventory) over current liabilities."},{"name":"roe","description":"Return on equity, percent: net income over shareholders' equity."},{"name":"roa","description":"Return on assets, percent: net income over total assets."},{"name":"declining-balance-depreciation","description":"Declining-balance depreciation: a fixed percent of the reducing book value, for a given year. Returns that year's depreciation and the remaining book value."},{"name":"double-declining-depreciation","description":"Double-declining-balance depreciation: 2/usefulYears of the book value each year, not falling below salvage."},{"name":"sum-of-years-digits","description":"Sum-of-the-years'-digits depreciation: the depreciable base weighted toward the early years."},{"name":"units-of-production-depreciation","description":"Units-of-production depreciation: the depreciable base spread over total expected units, charged by the units used this period."},{"name":"net-worth","description":"Net worth: assets minus liabilities."},{"name":"budget-50-30-20","description":"The 50/30/20 budget split of monthly income into needs, wants, and savings."},{"name":"tip-split","description":"Tip and split: the tip amount, the total, and the per-person share."},{"name":"discount","description":"A single percentage discount: the amount off and the final price."},{"name":"successive-discounts","description":"Stacked discounts applied in order: the final price and the effective single discount rate."},{"name":"percentage-change","description":"Percentage change from one value to another. Null when the starting value is zero."},{"name":"unit-price","description":"Unit price: price divided by quantity (for comparing pack sizes). Null when quantity is zero."},{"name":"hourly-to-salary","description":"Annualize an hourly rate (and the monthly equivalent)."},{"name":"salary-to-hourly","description":"Hourly rate implied by an annual salary."},{"name":"after-tax-yield","description":"After-tax yield: a yield reduced by the tax rate. Percents in and out."},{"name":"tax-equivalent-yield","description":"Tax-equivalent yield: the taxable yield that matches a tax-free (e.g. muni) yield. Percents in and out."},{"name":"coast-fire","description":"Coast FIRE: whether the current nest egg, left to grow untouched to retirement, already reaches the FIRE target. Returns the target, the projected balance, whet"},{"name":"barista-fire","description":"Barista FIRE: the nest egg needed when part-time income covers part of the spending, so the portfolio only funds the remainder at the safe withdrawal rate."}],"toolCount":99,"toolsHash":"bebe06ccd5a058bdea97f40fb55a8a2d3d69162fa9f89e06c2c1527d8e6d2fc6","serverName":"nestegg-calculators","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T03:25:26.878Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":10,"error":null,"detail":{"tools":[{"name":"amortization","description":"Monthly loan amortization schedule and summary. Supports dated extra principal payments and a rate-fixed period. detail controls output size: 'summary' (default"},{"name":"loan-payoff","description":"Time and interest saved by paying a fixed extra amount every month on a loan, versus the baseline schedule."},{"name":"future-value","description":"Future value of a single lump sum compounded annually."},{"name":"contributions","description":"Future value of a fixed monthly contribution, optionally stepping up each year."},{"name":"cagr","description":"Compound annual growth rate between two values over a number of years. Returns a decimal (0.07 means 7%)."},{"name":"savings-rate","description":"Fraction of income saved (savings divided by income). Returns a decimal."},{"name":"fx-convert","description":"Convert an amount using a rate supplied by the caller (units of target currency per unit of source). No rate is ever looked up."},{"name":"depreciate","description":"Value after compounding down (or up) at a yearly percentage rate over a number of years. This is the method the app uses for long-term assets."},{"name":"straight-line-depreciation","description":"Straight-line depreciation: value falling evenly to a salvage value over a useful life."},{"name":"fire-number","description":"FIRE target nest egg from annual spend and a safe withdrawal rate (default 4%), plus the gap from today and the years to reach it given optional savings and gro"},{"name":"required-contribution","description":"Inverse of contributions: the fixed monthly amount needed to reach a target future value over a number of months, given an optional starting balance."},{"name":"inflation-adjust","description":"Convert a nominal amount to today's purchasing power (real), or with toNominal inflate a real amount forward, at a given annual inflation rate."},{"name":"effective-rate","description":"Convert a nominal annual rate to the effective annual rate (APY) for a compounding frequency, or with toNominal recover the nominal rate from an APY."},{"name":"npv","description":"Net present value of a cashflow series (index 0 is today; outflows negative) discounted at a per-period rate."},{"name":"irr","description":"Internal rate of return: the per-period rate that zeroes the NPV of a cashflow series. Returns a percent, or null when the series never crosses zero."},{"name":"refi-breakeven","description":"Refinance break-even: monthly saving, whole months to recoup closing costs, and (if remainingMonths given) the net saving over the remaining term."},{"name":"emergency-fund","description":"Months of runway: liquid savings divided by monthly expenses."},{"name":"mortgage-affordability","description":"Maximum loan and home price the income supports: the DTI cap on gross monthly income (less existing debts) sets the payment, whose present value at the rate and"},{"name":"debt-payoff","description":"Multi-debt payoff plan under a fixed monthly budget. method 'avalanche' (highest rate first) minimizes interest; 'snowball' (smallest balance first) clears acco"},{"name":"portfolio-longevity","description":"How many years a balance lasts while withdrawing from it: the balance grows each year, then the withdrawal (optionally stepping up) is taken. Returns the deplet"},{"name":"present-value","description":"Present value of a single future amount discounted annually. The inverse of future-value."},{"name":"required-return","description":"Annual return needed to grow a starting value to a target over a number of years, optionally with a fixed annual contribution. With no contribution this equals "},{"name":"yield-to-maturity","description":"Bond yield to maturity: the nominal annual yield that prices a bond at the given price, with periodic coupons and face returned at maturity. Solved numerically."},{"name":"tax-from-brackets","description":"Progressive tax from caller-supplied brackets. No jurisdiction, year, or rates are baked in: pass the brackets yourself. Returns total tax, effective rate, and "},{"name":"margin-markup","description":"Convert between margin and markup. Supply any one of cost/price plus one of marginPct/markupPct (or both cost and price); returns cost, price, profit, marginPct"},{"name":"compound-interest","description":"Compound growth at any frequency, with an optional contribution each period (paid at period end). Generalizes future-value (periodsPerYear 1) and contributions "},{"name":"de-gross-to-net","description":"German net (Netto) salary from gross (Brutto). No tax tables are baked in: look up the current year's statutory figures and pass them in. Income tax (Lohnsteuer"},{"name":"de-net-salary","description":"Exact German net (Netto) salary from annual gross (Brutto) for tax years 2023-2026. Income tax and Soli follow the official BMF Programmablaufplan for the year "},{"name":"de-abgeltungsteuer","description":"German flat tax on capital income (Abgeltungsteuer, §32d EStG) for tax years 2023-2026 with the year's Sparerpauschbetrag built in. 25% above the allowance, Sol"},{"name":"de-kindergeld","description":"German child benefit (Kindergeld) for 2023-2026: the year's flat monthly amount per child (uniform since 2023), as monthly and annual totals."},{"name":"de-midijob","description":"German Midijob / Uebergangsbereich (paragraph 20 Abs. 2a SGB IV) for 2023-2026: classifies a monthly pay as Minijob / Midijob / regular against the year's thres"},{"name":"de-rentenpunkte","description":"German pension points (Entgeltpunkte, paragraph 63 SGB VI) for 2023-2026: points earned from an annual gross via the year's Durchschnittsentgelt (capped at the "},{"name":"vat","description":"Value-added tax (MwSt/USt, sales tax) on a price. By default adds the tax to a net price; with inclusive=true treats the amount as gross and extracts the tax. T"},{"name":"roi","description":"Return on investment: total percent gain, plus the annualized rate when a holding period in years is given."},{"name":"real-return","description":"Real (inflation-adjusted) return from a nominal rate via the Fisher relation: (1+nominal)/(1+inflation) - 1."},{"name":"return-stats","description":"Mean, sample variance, and sample standard deviation (n-1) of a series of returns. Pass percents to get a percent stdev (volatility)."},{"name":"sharpe-ratio","description":"Sharpe ratio: excess mean return per unit of volatility, (mean - riskFree) / stdev. Null when volatility is undefined or zero."},{"name":"max-drawdown","description":"Maximum drawdown of a value series: the largest peak-to-trough decline, as a positive percent."},{"name":"holding-period-return","description":"Holding-period return: (income + capital gain) / starting value, in percent."},{"name":"fee-drag","description":"Effect of an annual fee: the compounded balance at the gross rate vs net of the fee, and the amount lost to fees."},{"name":"dollar-cost-averaging","description":"Dollar-cost averaging: buying a fixed amount each period at the given prices. Returns units accumulated, total invested, average cost, and final value at the la"},{"name":"bond-price","description":"Price of a coupon bond given a yield: present value of the coupons plus the face at maturity."},{"name":"current-yield","description":"Current yield: the annual coupon as a percent of the bond's current price."},{"name":"bond-duration","description":"Macaulay duration (PV-weighted average time of cashflows, in years) and modified duration (price sensitivity to yield)."},{"name":"convexity","description":"Bond convexity (years^2): the curvature of price with respect to yield, used alongside duration."},{"name":"zero-coupon-price","description":"Price of a zero-coupon bond: face value discounted to today at the yield."},{"name":"accrued-interest","description":"Accrued interest since the last coupon: the annual coupon pro-rated by days elapsed over the day-count basis."},{"name":"black-scholes","description":"Black-Scholes price of a European call or put option, plus d1/d2. Volatility and rates in percent; optional continuous dividend yield."},{"name":"option-greeks","description":"Black-Scholes greeks for a European option: delta, gamma, vega (per 1% vol), theta (per day), rho (per 1% rate)."},{"name":"put-call-parity","description":"Put-call parity: given one option price, returns both. Provide call or put, plus spot, strike, years, and the rate."},{"name":"option-breakeven","description":"Break-even underlying price at expiry: strike + premium for a call, strike - premium for a put."},{"name":"intrinsic-time-value","description":"Split an option premium into intrinsic value (in-the-money amount) and time value."},{"name":"annuity-pv","description":"Present value of an ordinary annuity (level payment at each period end). rate is the per-period rate in percent."},{"name":"annuity-fv","description":"Future value of an ordinary annuity. rate is the per-period rate in percent."},{"name":"annuity-payment","description":"The level payment that amortizes a present value over n periods (the loan-payment formula). rate is per period."},{"name":"perpetuity","description":"Present value of a level or growing perpetuity: payment / (rate - growth). Null when growth is not below the rate."},{"name":"rule-of-72","description":"Years to double: the rule-of-72 estimate (72/rate) and the exact figure (ln2 / ln(1+rate))."},{"name":"payback-period","description":"Simple payback period: periods until cumulative cashflows recover the initial cost, interpolated within the crossing period. Null if never."},{"name":"discounted-payback","description":"Discounted payback period: like payback-period but each cashflow is discounted at the per-period rate."},{"name":"mirr","description":"Modified internal rate of return: negatives financed at financeRate, positives reinvested at reinvestRate. Percents in and out."},{"name":"xnpv","description":"Date-aware net present value: each amount discounted by its fractional years (act/365) from the first cashflow's date. Annual rate in percent."},{"name":"xirr","description":"Date-aware internal rate of return: the annual rate that zeroes the XNPV of irregular dated cashflows. Null if no rate fits."},{"name":"loan-apr","description":"Effective APR including upfront fees: the note-rate payment priced against the net proceeds (amount - fees). Annual percent."},{"name":"interest-only-payment","description":"Interest-only monthly payment on a balance."},{"name":"balloon-loan","description":"Balloon loan: payment based on a long amortization, with the balloon being the balance still due after the shorter balloon term."},{"name":"ltv","description":"Loan-to-value ratio, percent (loan / property value)."},{"name":"dti","description":"Debt-to-income ratio, percent (monthly debt / gross monthly income)."},{"name":"credit-card-payoff","description":"Months to clear a credit-card balance at a fixed monthly payment, plus interest paid. Null when the payment can't cover the first month's interest."},{"name":"points-breakeven","description":"Mortgage points break-even: the upfront cost to buy down the rate, the monthly payment saving, and the whole months to recoup it."},{"name":"biweekly-payoff","description":"Biweekly mortgage acceleration: paying half the monthly payment every two weeks. Returns the biweekly payment and the months and interest saved."},{"name":"cap-rate","description":"Capitalization rate: net operating income as a percent of property value."},{"name":"cash-on-cash","description":"Cash-on-cash return: annual pre-tax cash flow as a percent of the cash invested."},{"name":"noi","description":"Net operating income: gross rental income less vacancy and operating expenses."},{"name":"gross-rent-multiplier","description":"Gross rent multiplier: price divided by gross annual rent."},{"name":"dscr","description":"Debt service coverage ratio: net operating income divided by annual debt service."},{"name":"wacc","description":"Weighted average cost of capital: equity and after-tax debt weighted by the capital structure. Percents in and out."},{"name":"break-even-units","description":"Break-even volume: fixed costs divided by the per-unit contribution (price - variable cost), plus the revenue at that volume."},{"name":"contribution-margin","description":"Contribution margin per unit and as a percent of price."},{"name":"current-ratio","description":"Current ratio: current assets over current liabilities."},{"name":"quick-ratio","description":"Quick (acid-test) ratio: (current assets - inventory) over current liabilities."},{"name":"roe","description":"Return on equity, percent: net income over shareholders' equity."},{"name":"roa","description":"Return on assets, percent: net income over total assets."},{"name":"declining-balance-depreciation","description":"Declining-balance depreciation: a fixed percent of the reducing book value, for a given year. Returns that year's depreciation and the remaining book value."},{"name":"double-declining-depreciation","description":"Double-declining-balance depreciation: 2/usefulYears of the book value each year, not falling below salvage."},{"name":"sum-of-years-digits","description":"Sum-of-the-years'-digits depreciation: the depreciable base weighted toward the early years."},{"name":"units-of-production-depreciation","description":"Units-of-production depreciation: the depreciable base spread over total expected units, charged by the units used this period."},{"name":"net-worth","description":"Net worth: assets minus liabilities."},{"name":"budget-50-30-20","description":"The 50/30/20 budget split of monthly income into needs, wants, and savings."},{"name":"tip-split","description":"Tip and split: the tip amount, the total, and the per-person share."},{"name":"discount","description":"A single percentage discount: the amount off and the final price."},{"name":"successive-discounts","description":"Stacked discounts applied in order: the final price and the effective single discount rate."},{"name":"percentage-change","description":"Percentage change from one value to another. Null when the starting value is zero."},{"name":"unit-price","description":"Unit price: price divided by quantity (for comparing pack sizes). Null when quantity is zero."},{"name":"hourly-to-salary","description":"Annualize an hourly rate (and the monthly equivalent)."},{"name":"salary-to-hourly","description":"Hourly rate implied by an annual salary."},{"name":"after-tax-yield","description":"After-tax yield: a yield reduced by the tax rate. Percents in and out."},{"name":"tax-equivalent-yield","description":"Tax-equivalent yield: the taxable yield that matches a tax-free (e.g. muni) yield. Percents in and out."},{"name":"coast-fire","description":"Coast FIRE: whether the current nest egg, left to grow untouched to retirement, already reaches the FIRE target. Returns the target, the projected balance, whet"},{"name":"barista-fire","description":"Barista FIRE: the nest egg needed when part-time income covers part of the spending, so the portfolio only funds the remainder at the safe withdrawal rate."}],"toolCount":99,"toolsHash":"bebe06ccd5a058bdea97f40fb55a8a2d3d69162fa9f89e06c2c1527d8e6d2fc6","serverName":"nestegg-calculators","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T20:30:15.328Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":15,"error":null,"detail":{"tools":[{"name":"amortization","description":"Monthly loan amortization schedule and summary. Supports dated extra principal payments and a rate-fixed period. detail controls output size: 'summary' (default"},{"name":"loan-payoff","description":"Time and interest saved by paying a fixed extra amount every month on a loan, versus the baseline schedule."},{"name":"future-value","description":"Future value of a single lump sum compounded annually."},{"name":"contributions","description":"Future value of a fixed monthly contribution, optionally stepping up each year."},{"name":"cagr","description":"Compound annual growth rate between two values over a number of years. Returns a decimal (0.07 means 7%)."},{"name":"savings-rate","description":"Fraction of income saved (savings divided by income). Returns a decimal."},{"name":"fx-convert","description":"Convert an amount using a rate supplied by the caller (units of target currency per unit of source). No rate is ever looked up."},{"name":"depreciate","description":"Value after compounding down (or up) at a yearly percentage rate over a number of years. This is the method the app uses for long-term assets."},{"name":"straight-line-depreciation","description":"Straight-line depreciation: value falling evenly to a salvage value over a useful life."},{"name":"fire-number","description":"FIRE target nest egg from annual spend and a safe withdrawal rate (default 4%), plus the gap from today and the years to reach it given optional savings and gro"},{"name":"required-contribution","description":"Inverse of contributions: the fixed monthly amount needed to reach a target future value over a number of months, given an optional starting balance."},{"name":"inflation-adjust","description":"Convert a nominal amount to today's purchasing power (real), or with toNominal inflate a real amount forward, at a given annual inflation rate."},{"name":"effective-rate","description":"Convert a nominal annual rate to the effective annual rate (APY) for a compounding frequency, or with toNominal recover the nominal rate from an APY."},{"name":"npv","description":"Net present value of a cashflow series (index 0 is today; outflows negative) discounted at a per-period rate."},{"name":"irr","description":"Internal rate of return: the per-period rate that zeroes the NPV of a cashflow series. Returns a percent, or null when the series never crosses zero."},{"name":"refi-breakeven","description":"Refinance break-even: monthly saving, whole months to recoup closing costs, and (if remainingMonths given) the net saving over the remaining term."},{"name":"emergency-fund","description":"Months of runway: liquid savings divided by monthly expenses."},{"name":"mortgage-affordability","description":"Maximum loan and home price the income supports: the DTI cap on gross monthly income (less existing debts) sets the payment, whose present value at the rate and"},{"name":"debt-payoff","description":"Multi-debt payoff plan under a fixed monthly budget. method 'avalanche' (highest rate first) minimizes interest; 'snowball' (smallest balance first) clears acco"},{"name":"portfolio-longevity","description":"How many years a balance lasts while withdrawing from it: the balance grows each year, then the withdrawal (optionally stepping up) is taken. Returns the deplet"},{"name":"present-value","description":"Present value of a single future amount discounted annually. The inverse of future-value."},{"name":"required-return","description":"Annual return needed to grow a starting value to a target over a number of years, optionally with a fixed annual contribution. With no contribution this equals "},{"name":"yield-to-maturity","description":"Bond yield to maturity: the nominal annual yield that prices a bond at the given price, with periodic coupons and face returned at maturity. Solved numerically."},{"name":"tax-from-brackets","description":"Progressive tax from caller-supplied brackets. No jurisdiction, year, or rates are baked in: pass the brackets yourself. Returns total tax, effective rate, and "},{"name":"margin-markup","description":"Convert between margin and markup. Supply any one of cost/price plus one of marginPct/markupPct (or both cost and price); returns cost, price, profit, marginPct"},{"name":"compound-interest","description":"Compound growth at any frequency, with an optional contribution each period (paid at period end). Generalizes future-value (periodsPerYear 1) and contributions "},{"name":"de-gross-to-net","description":"German net (Netto) salary from gross (Brutto). No tax tables are baked in: look up the current year's statutory figures and pass them in. Income tax (Lohnsteuer"},{"name":"de-net-salary","description":"Exact German net (Netto) salary from annual gross (Brutto) for tax years 2023-2026. Income tax and Soli follow the official BMF Programmablaufplan for the year "},{"name":"de-abgeltungsteuer","description":"German flat tax on capital income (Abgeltungsteuer, §32d EStG) for tax years 2023-2026 with the year's Sparerpauschbetrag built in. 25% above the allowance, Sol"},{"name":"de-kindergeld","description":"German child benefit (Kindergeld) for 2023-2026: the year's flat monthly amount per child (uniform since 2023), as monthly and annual totals."},{"name":"de-midijob","description":"German Midijob / Uebergangsbereich (paragraph 20 Abs. 2a SGB IV) for 2023-2026: classifies a monthly pay as Minijob / Midijob / regular against the year's thres"},{"name":"de-rentenpunkte","description":"German pension points (Entgeltpunkte, paragraph 63 SGB VI) for 2023-2026: points earned from an annual gross via the year's Durchschnittsentgelt (capped at the "},{"name":"vat","description":"Value-added tax (MwSt/USt, sales tax) on a price. By default adds the tax to a net price; with inclusive=true treats the amount as gross and extracts the tax. T"},{"name":"roi","description":"Return on investment: total percent gain, plus the annualized rate when a holding period in years is given."},{"name":"real-return","description":"Real (inflation-adjusted) return from a nominal rate via the Fisher relation: (1+nominal)/(1+inflation) - 1."},{"name":"return-stats","description":"Mean, sample variance, and sample standard deviation (n-1) of a series of returns. Pass percents to get a percent stdev (volatility)."},{"name":"sharpe-ratio","description":"Sharpe ratio: excess mean return per unit of volatility, (mean - riskFree) / stdev. Null when volatility is undefined or zero."},{"name":"max-drawdown","description":"Maximum drawdown of a value series: the largest peak-to-trough decline, as a positive percent."},{"name":"holding-period-return","description":"Holding-period return: (income + capital gain) / starting value, in percent."},{"name":"fee-drag","description":"Effect of an annual fee: the compounded balance at the gross rate vs net of the fee, and the amount lost to fees."},{"name":"dollar-cost-averaging","description":"Dollar-cost averaging: buying a fixed amount each period at the given prices. Returns units accumulated, total invested, average cost, and final value at the la"},{"name":"bond-price","description":"Price of a coupon bond given a yield: present value of the coupons plus the face at maturity."},{"name":"current-yield","description":"Current yield: the annual coupon as a percent of the bond's current price."},{"name":"bond-duration","description":"Macaulay duration (PV-weighted average time of cashflows, in years) and modified duration (price sensitivity to yield)."},{"name":"convexity","description":"Bond convexity (years^2): the curvature of price with respect to yield, used alongside duration."},{"name":"zero-coupon-price","description":"Price of a zero-coupon bond: face value discounted to today at the yield."},{"name":"accrued-interest","description":"Accrued interest since the last coupon: the annual coupon pro-rated by days elapsed over the day-count basis."},{"name":"black-scholes","description":"Black-Scholes price of a European call or put option, plus d1/d2. Volatility and rates in percent; optional continuous dividend yield."},{"name":"option-greeks","description":"Black-Scholes greeks for a European option: delta, gamma, vega (per 1% vol), theta (per day), rho (per 1% rate)."},{"name":"put-call-parity","description":"Put-call parity: given one option price, returns both. Provide call or put, plus spot, strike, years, and the rate."},{"name":"option-breakeven","description":"Break-even underlying price at expiry: strike + premium for a call, strike - premium for a put."},{"name":"intrinsic-time-value","description":"Split an option premium into intrinsic value (in-the-money amount) and time value."},{"name":"annuity-pv","description":"Present value of an ordinary annuity (level payment at each period end). rate is the per-period rate in percent."},{"name":"annuity-fv","description":"Future value of an ordinary annuity. rate is the per-period rate in percent."},{"name":"annuity-payment","description":"The level payment that amortizes a present value over n periods (the loan-payment formula). rate is per period."},{"name":"perpetuity","description":"Present value of a level or growing perpetuity: payment / (rate - growth). Null when growth is not below the rate."},{"name":"rule-of-72","description":"Years to double: the rule-of-72 estimate (72/rate) and the exact figure (ln2 / ln(1+rate))."},{"name":"payback-period","description":"Simple payback period: periods until cumulative cashflows recover the initial cost, interpolated within the crossing period. Null if never."},{"name":"discounted-payback","description":"Discounted payback period: like payback-period but each cashflow is discounted at the per-period rate."},{"name":"mirr","description":"Modified internal rate of return: negatives financed at financeRate, positives reinvested at reinvestRate. Percents in and out."},{"name":"xnpv","description":"Date-aware net present value: each amount discounted by its fractional years (act/365) from the first cashflow's date. Annual rate in percent."},{"name":"xirr","description":"Date-aware internal rate of return: the annual rate that zeroes the XNPV of irregular dated cashflows. Null if no rate fits."},{"name":"loan-apr","description":"Effective APR including upfront fees: the note-rate payment priced against the net proceeds (amount - fees). Annual percent."},{"name":"interest-only-payment","description":"Interest-only monthly payment on a balance."},{"name":"balloon-loan","description":"Balloon loan: payment based on a long amortization, with the balloon being the balance still due after the shorter balloon term."},{"name":"ltv","description":"Loan-to-value ratio, percent (loan / property value)."},{"name":"dti","description":"Debt-to-income ratio, percent (monthly debt / gross monthly income)."},{"name":"credit-card-payoff","description":"Months to clear a credit-card balance at a fixed monthly payment, plus interest paid. Null when the payment can't cover the first month's interest."},{"name":"points-breakeven","description":"Mortgage points break-even: the upfront cost to buy down the rate, the monthly payment saving, and the whole months to recoup it."},{"name":"biweekly-payoff","description":"Biweekly mortgage acceleration: paying half the monthly payment every two weeks. Returns the biweekly payment and the months and interest saved."},{"name":"cap-rate","description":"Capitalization rate: net operating income as a percent of property value."},{"name":"cash-on-cash","description":"Cash-on-cash return: annual pre-tax cash flow as a percent of the cash invested."},{"name":"noi","description":"Net operating income: gross rental income less vacancy and operating expenses."},{"name":"gross-rent-multiplier","description":"Gross rent multiplier: price divided by gross annual rent."},{"name":"dscr","description":"Debt service coverage ratio: net operating income divided by annual debt service."},{"name":"wacc","description":"Weighted average cost of capital: equity and after-tax debt weighted by the capital structure. Percents in and out."},{"name":"break-even-units","description":"Break-even volume: fixed costs divided by the per-unit contribution (price - variable cost), plus the revenue at that volume."},{"name":"contribution-margin","description":"Contribution margin per unit and as a percent of price."},{"name":"current-ratio","description":"Current ratio: current assets over current liabilities."},{"name":"quick-ratio","description":"Quick (acid-test) ratio: (current assets - inventory) over current liabilities."},{"name":"roe","description":"Return on equity, percent: net income over shareholders' equity."},{"name":"roa","description":"Return on assets, percent: net income over total assets."},{"name":"declining-balance-depreciation","description":"Declining-balance depreciation: a fixed percent of the reducing book value, for a given year. Returns that year's depreciation and the remaining book value."},{"name":"double-declining-depreciation","description":"Double-declining-balance depreciation: 2/usefulYears of the book value each year, not falling below salvage."},{"name":"sum-of-years-digits","description":"Sum-of-the-years'-digits depreciation: the depreciable base weighted toward the early years."},{"name":"units-of-production-depreciation","description":"Units-of-production depreciation: the depreciable base spread over total expected units, charged by the units used this period."},{"name":"net-worth","description":"Net worth: assets minus liabilities."},{"name":"budget-50-30-20","description":"The 50/30/20 budget split of monthly income into needs, wants, and savings."},{"name":"tip-split","description":"Tip and split: the tip amount, the total, and the per-person share."},{"name":"discount","description":"A single percentage discount: the amount off and the final price."},{"name":"successive-discounts","description":"Stacked discounts applied in order: the final price and the effective single discount rate."},{"name":"percentage-change","description":"Percentage change from one value to another. Null when the starting value is zero."},{"name":"unit-price","description":"Unit price: price divided by quantity (for comparing pack sizes). Null when quantity is zero."},{"name":"hourly-to-salary","description":"Annualize an hourly rate (and the monthly equivalent)."},{"name":"salary-to-hourly","description":"Hourly rate implied by an annual salary."},{"name":"after-tax-yield","description":"After-tax yield: a yield reduced by the tax rate. Percents in and out."},{"name":"tax-equivalent-yield","description":"Tax-equivalent yield: the taxable yield that matches a tax-free (e.g. muni) yield. Percents in and out."},{"name":"coast-fire","description":"Coast FIRE: whether the current nest egg, left to grow untouched to retirement, already reaches the FIRE target. Returns the target, the projected balance, whet"},{"name":"barista-fire","description":"Barista FIRE: the nest egg needed when part-time income covers part of the spending, so the portfolio only funds the remainder at the safe withdrawal rate."}],"toolCount":99,"toolsHash":"bebe06ccd5a058bdea97f40fb55a8a2d3d69162fa9f89e06c2c1527d8e6d2fc6","serverName":"nestegg-calculators","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T14:31:56.041Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":23,"error":null,"detail":{"tools":[{"name":"amortization","description":"Monthly loan amortization schedule and summary. Supports dated extra principal payments and a rate-fixed period. detail controls output size: 'summary' (default"},{"name":"loan-payoff","description":"Time and interest saved by paying a fixed extra amount every month on a loan, versus the baseline schedule."},{"name":"future-value","description":"Future value of a single lump sum compounded annually."},{"name":"contributions","description":"Future value of a fixed monthly contribution, optionally stepping up each year."},{"name":"cagr","description":"Compound annual growth rate between two values over a number of years. Returns a decimal (0.07 means 7%)."},{"name":"savings-rate","description":"Fraction of income saved (savings divided by income). Returns a decimal."},{"name":"fx-convert","description":"Convert an amount using a rate supplied by the caller (units of target currency per unit of source). No rate is ever looked up."},{"name":"depreciate","description":"Value after compounding down (or up) at a yearly percentage rate over a number of years. This is the method the app uses for long-term assets."},{"name":"straight-line-depreciation","description":"Straight-line depreciation: value falling evenly to a salvage value over a useful life."},{"name":"fire-number","description":"FIRE target nest egg from annual spend and a safe withdrawal rate (default 4%), plus the gap from today and the years to reach it given optional savings and gro"},{"name":"required-contribution","description":"Inverse of contributions: the fixed monthly amount needed to reach a target future value over a number of months, given an optional starting balance."},{"name":"inflation-adjust","description":"Convert a nominal amount to today's purchasing power (real), or with toNominal inflate a real amount forward, at a given annual inflation rate."},{"name":"effective-rate","description":"Convert a nominal annual rate to the effective annual rate (APY) for a compounding frequency, or with toNominal recover the nominal rate from an APY."},{"name":"npv","description":"Net present value of a cashflow series (index 0 is today; outflows negative) discounted at a per-period rate."},{"name":"irr","description":"Internal rate of return: the per-period rate that zeroes the NPV of a cashflow series. Returns a percent, or null when the series never crosses zero."},{"name":"refi-breakeven","description":"Refinance break-even: monthly saving, whole months to recoup closing costs, and (if remainingMonths given) the net saving over the remaining term."},{"name":"emergency-fund","description":"Months of runway: liquid savings divided by monthly expenses."},{"name":"mortgage-affordability","description":"Maximum loan and home price the income supports: the DTI cap on gross monthly income (less existing debts) sets the payment, whose present value at the rate and"},{"name":"debt-payoff","description":"Multi-debt payoff plan under a fixed monthly budget. method 'avalanche' (highest rate first) minimizes interest; 'snowball' (smallest balance first) clears acco"},{"name":"portfolio-longevity","description":"How many years a balance lasts while withdrawing from it: the balance grows each year, then the withdrawal (optionally stepping up) is taken. Returns the deplet"},{"name":"present-value","description":"Present value of a single future amount discounted annually. The inverse of future-value."},{"name":"required-return","description":"Annual return needed to grow a starting value to a target over a number of years, optionally with a fixed annual contribution. With no contribution this equals "},{"name":"yield-to-maturity","description":"Bond yield to maturity: the nominal annual yield that prices a bond at the given price, with periodic coupons and face returned at maturity. Solved numerically."},{"name":"tax-from-brackets","description":"Progressive tax from caller-supplied brackets. No jurisdiction, year, or rates are baked in: pass the brackets yourself. Returns total tax, effective rate, and "},{"name":"margin-markup","description":"Convert between margin and markup. Supply any one of cost/price plus one of marginPct/markupPct (or both cost and price); returns cost, price, profit, marginPct"},{"name":"compound-interest","description":"Compound growth at any frequency, with an optional contribution each period (paid at period end). Generalizes future-value (periodsPerYear 1) and contributions "},{"name":"de-gross-to-net","description":"German net (Netto) salary from gross (Brutto). No tax tables are baked in: look up the current year's statutory figures and pass them in. Income tax (Lohnsteuer"},{"name":"de-net-salary","description":"Exact German net (Netto) salary from annual gross (Brutto) for tax years 2023-2026. Income tax and Soli follow the official BMF Programmablaufplan for the year "},{"name":"de-abgeltungsteuer","description":"German flat tax on capital income (Abgeltungsteuer, §32d EStG) for tax years 2023-2026 with the year's Sparerpauschbetrag built in. 25% above the allowance, Sol"},{"name":"de-kindergeld","description":"German child benefit (Kindergeld) for 2023-2026: the year's flat monthly amount per child (uniform since 2023), as monthly and annual totals."},{"name":"de-midijob","description":"German Midijob / Uebergangsbereich (paragraph 20 Abs. 2a SGB IV) for 2023-2026: classifies a monthly pay as Minijob / Midijob / regular against the year's thres"},{"name":"de-rentenpunkte","description":"German pension points (Entgeltpunkte, paragraph 63 SGB VI) for 2023-2026: points earned from an annual gross via the year's Durchschnittsentgelt (capped at the "},{"name":"vat","description":"Value-added tax (MwSt/USt, sales tax) on a price. By default adds the tax to a net price; with inclusive=true treats the amount as gross and extracts the tax. T"},{"name":"roi","description":"Return on investment: total percent gain, plus the annualized rate when a holding period in years is given."},{"name":"real-return","description":"Real (inflation-adjusted) return from a nominal rate via the Fisher relation: (1+nominal)/(1+inflation) - 1."},{"name":"return-stats","description":"Mean, sample variance, and sample standard deviation (n-1) of a series of returns. Pass percents to get a percent stdev (volatility)."},{"name":"sharpe-ratio","description":"Sharpe ratio: excess mean return per unit of volatility, (mean - riskFree) / stdev. Null when volatility is undefined or zero."},{"name":"max-drawdown","description":"Maximum drawdown of a value series: the largest peak-to-trough decline, as a positive percent."},{"name":"holding-period-return","description":"Holding-period return: (income + capital gain) / starting value, in percent."},{"name":"fee-drag","description":"Effect of an annual fee: the compounded balance at the gross rate vs net of the fee, and the amount lost to fees."},{"name":"dollar-cost-averaging","description":"Dollar-cost averaging: buying a fixed amount each period at the given prices. Returns units accumulated, total invested, average cost, and final value at the la"},{"name":"bond-price","description":"Price of a coupon bond given a yield: present value of the coupons plus the face at maturity."},{"name":"current-yield","description":"Current yield: the annual coupon as a percent of the bond's current price."},{"name":"bond-duration","description":"Macaulay duration (PV-weighted average time of cashflows, in years) and modified duration (price sensitivity to yield)."},{"name":"convexity","description":"Bond convexity (years^2): the curvature of price with respect to yield, used alongside duration."},{"name":"zero-coupon-price","description":"Price of a zero-coupon bond: face value discounted to today at the yield."},{"name":"accrued-interest","description":"Accrued interest since the last coupon: the annual coupon pro-rated by days elapsed over the day-count basis."},{"name":"black-scholes","description":"Black-Scholes price of a European call or put option, plus d1/d2. Volatility and rates in percent; optional continuous dividend yield."},{"name":"option-greeks","description":"Black-Scholes greeks for a European option: delta, gamma, vega (per 1% vol), theta (per day), rho (per 1% rate)."},{"name":"put-call-parity","description":"Put-call parity: given one option price, returns both. Provide call or put, plus spot, strike, years, and the rate."},{"name":"option-breakeven","description":"Break-even underlying price at expiry: strike + premium for a call, strike - premium for a put."},{"name":"intrinsic-time-value","description":"Split an option premium into intrinsic value (in-the-money amount) and time value."},{"name":"annuity-pv","description":"Present value of an ordinary annuity (level payment at each period end). rate is the per-period rate in percent."},{"name":"annuity-fv","description":"Future value of an ordinary annuity. rate is the per-period rate in percent."},{"name":"annuity-payment","description":"The level payment that amortizes a present value over n periods (the loan-payment formula). rate is per period."},{"name":"perpetuity","description":"Present value of a level or growing perpetuity: payment / (rate - growth). Null when growth is not below the rate."},{"name":"rule-of-72","description":"Years to double: the rule-of-72 estimate (72/rate) and the exact figure (ln2 / ln(1+rate))."},{"name":"payback-period","description":"Simple payback period: periods until cumulative cashflows recover the initial cost, interpolated within the crossing period. Null if never."},{"name":"discounted-payback","description":"Discounted payback period: like payback-period but each cashflow is discounted at the per-period rate."},{"name":"mirr","description":"Modified internal rate of return: negatives financed at financeRate, positives reinvested at reinvestRate. Percents in and out."},{"name":"xnpv","description":"Date-aware net present value: each amount discounted by its fractional years (act/365) from the first cashflow's date. Annual rate in percent."},{"name":"xirr","description":"Date-aware internal rate of return: the annual rate that zeroes the XNPV of irregular dated cashflows. Null if no rate fits."},{"name":"loan-apr","description":"Effective APR including upfront fees: the note-rate payment priced against the net proceeds (amount - fees). Annual percent."},{"name":"interest-only-payment","description":"Interest-only monthly payment on a balance."},{"name":"balloon-loan","description":"Balloon loan: payment based on a long amortization, with the balloon being the balance still due after the shorter balloon term."},{"name":"ltv","description":"Loan-to-value ratio, percent (loan / property value)."},{"name":"dti","description":"Debt-to-income ratio, percent (monthly debt / gross monthly income)."},{"name":"credit-card-payoff","description":"Months to clear a credit-card balance at a fixed monthly payment, plus interest paid. Null when the payment can't cover the first month's interest."},{"name":"points-breakeven","description":"Mortgage points break-even: the upfront cost to buy down the rate, the monthly payment saving, and the whole months to recoup it."},{"name":"biweekly-payoff","description":"Biweekly mortgage acceleration: paying half the monthly payment every two weeks. Returns the biweekly payment and the months and interest saved."},{"name":"cap-rate","description":"Capitalization rate: net operating income as a percent of property value."},{"name":"cash-on-cash","description":"Cash-on-cash return: annual pre-tax cash flow as a percent of the cash invested."},{"name":"noi","description":"Net operating income: gross rental income less vacancy and operating expenses."},{"name":"gross-rent-multiplier","description":"Gross rent multiplier: price divided by gross annual rent."},{"name":"dscr","description":"Debt service coverage ratio: net operating income divided by annual debt service."},{"name":"wacc","description":"Weighted average cost of capital: equity and after-tax debt weighted by the capital structure. Percents in and out."},{"name":"break-even-units","description":"Break-even volume: fixed costs divided by the per-unit contribution (price - variable cost), plus the revenue at that volume."},{"name":"contribution-margin","description":"Contribution margin per unit and as a percent of price."},{"name":"current-ratio","description":"Current ratio: current assets over current liabilities."},{"name":"quick-ratio","description":"Quick (acid-test) ratio: (current assets - inventory) over current liabilities."},{"name":"roe","description":"Return on equity, percent: net income over shareholders' equity."},{"name":"roa","description":"Return on assets, percent: net income over total assets."},{"name":"declining-balance-depreciation","description":"Declining-balance depreciation: a fixed percent of the reducing book value, for a given year. Returns that year's depreciation and the remaining book value."},{"name":"double-declining-depreciation","description":"Double-declining-balance depreciation: 2/usefulYears of the book value each year, not falling below salvage."},{"name":"sum-of-years-digits","description":"Sum-of-the-years'-digits depreciation: the depreciable base weighted toward the early years."},{"name":"units-of-production-depreciation","description":"Units-of-production depreciation: the depreciable base spread over total expected units, charged by the units used this period."},{"name":"net-worth","description":"Net worth: assets minus liabilities."},{"name":"budget-50-30-20","description":"The 50/30/20 budget split of monthly income into needs, wants, and savings."},{"name":"tip-split","description":"Tip and split: the tip amount, the total, and the per-person share."},{"name":"discount","description":"A single percentage discount: the amount off and the final price."},{"name":"successive-discounts","description":"Stacked discounts applied in order: the final price and the effective single discount rate."},{"name":"percentage-change","description":"Percentage change from one value to another. Null when the starting value is zero."},{"name":"unit-price","description":"Unit price: price divided by quantity (for comparing pack sizes). Null when quantity is zero."},{"name":"hourly-to-salary","description":"Annualize an hourly rate (and the monthly equivalent)."},{"name":"salary-to-hourly","description":"Hourly rate implied by an annual salary."},{"name":"after-tax-yield","description":"After-tax yield: a yield reduced by the tax rate. Percents in and out."},{"name":"tax-equivalent-yield","description":"Tax-equivalent yield: the taxable yield that matches a tax-free (e.g. muni) yield. Percents in and out."},{"name":"coast-fire","description":"Coast FIRE: whether the current nest egg, left to grow untouched to retirement, already reaches the FIRE target. Returns the target, the projected balance, whet"},{"name":"barista-fire","description":"Barista FIRE: the nest egg needed when part-time income covers part of the spending, so the portfolio only funds the remainder at the safe withdrawal rate."}],"toolCount":99,"toolsHash":"bebe06ccd5a058bdea97f40fb55a8a2d3d69162fa9f89e06c2c1527d8e6d2fc6","serverName":"nestegg-calculators","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T08:27:44.113Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":17,"error":null,"detail":{"tools":[{"name":"amortization","description":"Monthly loan amortization schedule and summary. Supports dated extra principal payments and a rate-fixed period. detail controls output size: 'summary' (default"},{"name":"loan-payoff","description":"Time and interest saved by paying a fixed extra amount every month on a loan, versus the baseline schedule."},{"name":"future-value","description":"Future value of a single lump sum compounded annually."},{"name":"contributions","description":"Future value of a fixed monthly contribution, optionally stepping up each year."},{"name":"cagr","description":"Compound annual growth rate between two values over a number of years. Returns a decimal (0.07 means 7%)."},{"name":"savings-rate","description":"Fraction of income saved (savings divided by income). Returns a decimal."},{"name":"fx-convert","description":"Convert an amount using a rate supplied by the caller (units of target currency per unit of source). No rate is ever looked up."},{"name":"depreciate","description":"Value after compounding down (or up) at a yearly percentage rate over a number of years. This is the method the app uses for long-term assets."},{"name":"straight-line-depreciation","description":"Straight-line depreciation: value falling evenly to a salvage value over a useful life."},{"name":"fire-number","description":"FIRE target nest egg from annual spend and a safe withdrawal rate (default 4%), plus the gap from today and the years to reach it given optional savings and gro"},{"name":"required-contribution","description":"Inverse of contributions: the fixed monthly amount needed to reach a target future value over a number of months, given an optional starting balance."},{"name":"inflation-adjust","description":"Convert a nominal amount to today's purchasing power (real), or with toNominal inflate a real amount forward, at a given annual inflation rate."},{"name":"effective-rate","description":"Convert a nominal annual rate to the effective annual rate (APY) for a compounding frequency, or with toNominal recover the nominal rate from an APY."},{"name":"npv","description":"Net present value of a cashflow series (index 0 is today; outflows negative) discounted at a per-period rate."},{"name":"irr","description":"Internal rate of return: the per-period rate that zeroes the NPV of a cashflow series. Returns a percent, or null when the series never crosses zero."},{"name":"refi-breakeven","description":"Refinance break-even: monthly saving, whole months to recoup closing costs, and (if remainingMonths given) the net saving over the remaining term."},{"name":"emergency-fund","description":"Months of runway: liquid savings divided by monthly expenses."},{"name":"mortgage-affordability","description":"Maximum loan and home price the income supports: the DTI cap on gross monthly income (less existing debts) sets the payment, whose present value at the rate and"},{"name":"debt-payoff","description":"Multi-debt payoff plan under a fixed monthly budget. method 'avalanche' (highest rate first) minimizes interest; 'snowball' (smallest balance first) clears acco"},{"name":"portfolio-longevity","description":"How many years a balance lasts while withdrawing from it: the balance grows each year, then the withdrawal (optionally stepping up) is taken. Returns the deplet"},{"name":"present-value","description":"Present value of a single future amount discounted annually. The inverse of future-value."},{"name":"required-return","description":"Annual return needed to grow a starting value to a target over a number of years, optionally with a fixed annual contribution. With no contribution this equals "},{"name":"yield-to-maturity","description":"Bond yield to maturity: the nominal annual yield that prices a bond at the given price, with periodic coupons and face returned at maturity. Solved numerically."},{"name":"tax-from-brackets","description":"Progressive tax from caller-supplied brackets. No jurisdiction, year, or rates are baked in: pass the brackets yourself. Returns total tax, effective rate, and "},{"name":"margin-markup","description":"Convert between margin and markup. Supply any one of cost/price plus one of marginPct/markupPct (or both cost and price); returns cost, price, profit, marginPct"},{"name":"compound-interest","description":"Compound growth at any frequency, with an optional contribution each period (paid at period end). Generalizes future-value (periodsPerYear 1) and contributions "},{"name":"de-gross-to-net","description":"German net (Netto) salary from gross (Brutto). No tax tables are baked in: look up the current year's statutory figures and pass them in. Income tax (Lohnsteuer"},{"name":"de-net-salary","description":"Exact German net (Netto) salary from annual gross (Brutto) for tax years 2023-2026. Income tax and Soli follow the official BMF Programmablaufplan for the year "},{"name":"de-abgeltungsteuer","description":"German flat tax on capital income (Abgeltungsteuer, §32d EStG) for tax years 2023-2026 with the year's Sparerpauschbetrag built in. 25% above the allowance, Sol"},{"name":"de-kindergeld","description":"German child benefit (Kindergeld) for 2023-2026: the year's flat monthly amount per child (uniform since 2023), as monthly and annual totals."},{"name":"de-midijob","description":"German Midijob / Uebergangsbereich (paragraph 20 Abs. 2a SGB IV) for 2023-2026: classifies a monthly pay as Minijob / Midijob / regular against the year's thres"},{"name":"de-rentenpunkte","description":"German pension points (Entgeltpunkte, paragraph 63 SGB VI) for 2023-2026: points earned from an annual gross via the year's Durchschnittsentgelt (capped at the "},{"name":"vat","description":"Value-added tax (MwSt/USt, sales tax) on a price. By default adds the tax to a net price; with inclusive=true treats the amount as gross and extracts the tax. T"},{"name":"roi","description":"Return on investment: total percent gain, plus the annualized rate when a holding period in years is given."},{"name":"real-return","description":"Real (inflation-adjusted) return from a nominal rate via the Fisher relation: (1+nominal)/(1+inflation) - 1."},{"name":"return-stats","description":"Mean, sample variance, and sample standard deviation (n-1) of a series of returns. Pass percents to get a percent stdev (volatility)."},{"name":"sharpe-ratio","description":"Sharpe ratio: excess mean return per unit of volatility, (mean - riskFree) / stdev. Null when volatility is undefined or zero."},{"name":"max-drawdown","description":"Maximum drawdown of a value series: the largest peak-to-trough decline, as a positive percent."},{"name":"holding-period-return","description":"Holding-period return: (income + capital gain) / starting value, in percent."},{"name":"fee-drag","description":"Effect of an annual fee: the compounded balance at the gross rate vs net of the fee, and the amount lost to fees."},{"name":"dollar-cost-averaging","description":"Dollar-cost averaging: buying a fixed amount each period at the given prices. Returns units accumulated, total invested, average cost, and final value at the la"},{"name":"bond-price","description":"Price of a coupon bond given a yield: present value of the coupons plus the face at maturity."},{"name":"current-yield","description":"Current yield: the annual coupon as a percent of the bond's current price."},{"name":"bond-duration","description":"Macaulay duration (PV-weighted average time of cashflows, in years) and modified duration (price sensitivity to yield)."},{"name":"convexity","description":"Bond convexity (years^2): the curvature of price with respect to yield, used alongside duration."},{"name":"zero-coupon-price","description":"Price of a zero-coupon bond: face value discounted to today at the yield."},{"name":"accrued-interest","description":"Accrued interest since the last coupon: the annual coupon pro-rated by days elapsed over the day-count basis."},{"name":"black-scholes","description":"Black-Scholes price of a European call or put option, plus d1/d2. Volatility and rates in percent; optional continuous dividend yield."},{"name":"option-greeks","description":"Black-Scholes greeks for a European option: delta, gamma, vega (per 1% vol), theta (per day), rho (per 1% rate)."},{"name":"put-call-parity","description":"Put-call parity: given one option price, returns both. Provide call or put, plus spot, strike, years, and the rate."},{"name":"option-breakeven","description":"Break-even underlying price at expiry: strike + premium for a call, strike - premium for a put."},{"name":"intrinsic-time-value","description":"Split an option premium into intrinsic value (in-the-money amount) and time value."},{"name":"annuity-pv","description":"Present value of an ordinary annuity (level payment at each period end). rate is the per-period rate in percent."},{"name":"annuity-fv","description":"Future value of an ordinary annuity. rate is the per-period rate in percent."},{"name":"annuity-payment","description":"The level payment that amortizes a present value over n periods (the loan-payment formula). rate is per period."},{"name":"perpetuity","description":"Present value of a level or growing perpetuity: payment / (rate - growth). Null when growth is not below the rate."},{"name":"rule-of-72","description":"Years to double: the rule-of-72 estimate (72/rate) and the exact figure (ln2 / ln(1+rate))."},{"name":"payback-period","description":"Simple payback period: periods until cumulative cashflows recover the initial cost, interpolated within the crossing period. Null if never."},{"name":"discounted-payback","description":"Discounted payback period: like payback-period but each cashflow is discounted at the per-period rate."},{"name":"mirr","description":"Modified internal rate of return: negatives financed at financeRate, positives reinvested at reinvestRate. Percents in and out."},{"name":"xnpv","description":"Date-aware net present value: each amount discounted by its fractional years (act/365) from the first cashflow's date. Annual rate in percent."},{"name":"xirr","description":"Date-aware internal rate of return: the annual rate that zeroes the XNPV of irregular dated cashflows. Null if no rate fits."},{"name":"loan-apr","description":"Effective APR including upfront fees: the note-rate payment priced against the net proceeds (amount - fees). Annual percent."},{"name":"interest-only-payment","description":"Interest-only monthly payment on a balance."},{"name":"balloon-loan","description":"Balloon loan: payment based on a long amortization, with the balloon being the balance still due after the shorter balloon term."},{"name":"ltv","description":"Loan-to-value ratio, percent (loan / property value)."},{"name":"dti","description":"Debt-to-income ratio, percent (monthly debt / gross monthly income)."},{"name":"credit-card-payoff","description":"Months to clear a credit-card balance at a fixed monthly payment, plus interest paid. Null when the payment can't cover the first month's interest."},{"name":"points-breakeven","description":"Mortgage points break-even: the upfront cost to buy down the rate, the monthly payment saving, and the whole months to recoup it."},{"name":"biweekly-payoff","description":"Biweekly mortgage acceleration: paying half the monthly payment every two weeks. Returns the biweekly payment and the months and interest saved."},{"name":"cap-rate","description":"Capitalization rate: net operating income as a percent of property value."},{"name":"cash-on-cash","description":"Cash-on-cash return: annual pre-tax cash flow as a percent of the cash invested."},{"name":"noi","description":"Net operating income: gross rental income less vacancy and operating expenses."},{"name":"gross-rent-multiplier","description":"Gross rent multiplier: price divided by gross annual rent."},{"name":"dscr","description":"Debt service coverage ratio: net operating income divided by annual debt service."},{"name":"wacc","description":"Weighted average cost of capital: equity and after-tax debt weighted by the capital structure. Percents in and out."},{"name":"break-even-units","description":"Break-even volume: fixed costs divided by the per-unit contribution (price - variable cost), plus the revenue at that volume."},{"name":"contribution-margin","description":"Contribution margin per unit and as a percent of price."},{"name":"current-ratio","description":"Current ratio: current assets over current liabilities."},{"name":"quick-ratio","description":"Quick (acid-test) ratio: (current assets - inventory) over current liabilities."},{"name":"roe","description":"Return on equity, percent: net income over shareholders' equity."},{"name":"roa","description":"Return on assets, percent: net income over total assets."},{"name":"declining-balance-depreciation","description":"Declining-balance depreciation: a fixed percent of the reducing book value, for a given year. Returns that year's depreciation and the remaining book value."},{"name":"double-declining-depreciation","description":"Double-declining-balance depreciation: 2/usefulYears of the book value each year, not falling below salvage."},{"name":"sum-of-years-digits","description":"Sum-of-the-years'-digits depreciation: the depreciable base weighted toward the early years."},{"name":"units-of-production-depreciation","description":"Units-of-production depreciation: the depreciable base spread over total expected units, charged by the units used this period."},{"name":"net-worth","description":"Net worth: assets minus liabilities."},{"name":"budget-50-30-20","description":"The 50/30/20 budget split of monthly income into needs, wants, and savings."},{"name":"tip-split","description":"Tip and split: the tip amount, the total, and the per-person share."},{"name":"discount","description":"A single percentage discount: the amount off and the final price."},{"name":"successive-discounts","description":"Stacked discounts applied in order: the final price and the effective single discount rate."},{"name":"percentage-change","description":"Percentage change from one value to another. Null when the starting value is zero."},{"name":"unit-price","description":"Unit price: price divided by quantity (for comparing pack sizes). Null when quantity is zero."},{"name":"hourly-to-salary","description":"Annualize an hourly rate (and the monthly equivalent)."},{"name":"salary-to-hourly","description":"Hourly rate implied by an annual salary."},{"name":"after-tax-yield","description":"After-tax yield: a yield reduced by the tax rate. Percents in and out."},{"name":"tax-equivalent-yield","description":"Tax-equivalent yield: the taxable yield that matches a tax-free (e.g. muni) yield. Percents in and out."},{"name":"coast-fire","description":"Coast FIRE: whether the current nest egg, left to grow untouched to retirement, already reaches the FIRE target. Returns the target, the projected balance, whet"},{"name":"barista-fire","description":"Barista FIRE: the nest egg needed when part-time income covers part of the spending, so the portfolio only funds the remainder at the safe withdrawal rate."}],"toolCount":99,"toolsHash":"bebe06ccd5a058bdea97f40fb55a8a2d3d69162fa9f89e06c2c1527d8e6d2fc6","serverName":"nestegg-calculators","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T01:26:01.793Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":11,"error":null,"detail":{"tools":[{"name":"amortization","description":"Monthly loan amortization schedule and summary. Supports dated extra principal payments and a rate-fixed period. detail controls output size: 'summary' (default"},{"name":"loan-payoff","description":"Time and interest saved by paying a fixed extra amount every month on a loan, versus the baseline schedule."},{"name":"future-value","description":"Future value of a single lump sum compounded annually."},{"name":"contributions","description":"Future value of a fixed monthly contribution, optionally stepping up each year."},{"name":"cagr","description":"Compound annual growth rate between two values over a number of years. Returns a decimal (0.07 means 7%)."},{"name":"savings-rate","description":"Fraction of income saved (savings divided by income). Returns a decimal."},{"name":"fx-convert","description":"Convert an amount using a rate supplied by the caller (units of target currency per unit of source). No rate is ever looked up."},{"name":"depreciate","description":"Value after compounding down (or up) at a yearly percentage rate over a number of years. This is the method the app uses for long-term assets."},{"name":"straight-line-depreciation","description":"Straight-line depreciation: value falling evenly to a salvage value over a useful life."},{"name":"fire-number","description":"FIRE target nest egg from annual spend and a safe withdrawal rate (default 4%), plus the gap from today and the years to reach it given optional savings and gro"},{"name":"required-contribution","description":"Inverse of contributions: the fixed monthly amount needed to reach a target future value over a number of months, given an optional starting balance."},{"name":"inflation-adjust","description":"Convert a nominal amount to today's purchasing power (real), or with toNominal inflate a real amount forward, at a given annual inflation rate."},{"name":"effective-rate","description":"Convert a nominal annual rate to the effective annual rate (APY) for a compounding frequency, or with toNominal recover the nominal rate from an APY."},{"name":"npv","description":"Net present value of a cashflow series (index 0 is today; outflows negative) discounted at a per-period rate."},{"name":"irr","description":"Internal rate of return: the per-period rate that zeroes the NPV of a cashflow series. Returns a percent, or null when the series never crosses zero."},{"name":"refi-breakeven","description":"Refinance break-even: monthly saving, whole months to recoup closing costs, and (if remainingMonths given) the net saving over the remaining term."},{"name":"emergency-fund","description":"Months of runway: liquid savings divided by monthly expenses."},{"name":"mortgage-affordability","description":"Maximum loan and home price the income supports: the DTI cap on gross monthly income (less existing debts) sets the payment, whose present value at the rate and"},{"name":"debt-payoff","description":"Multi-debt payoff plan under a fixed monthly budget. method 'avalanche' (highest rate first) minimizes interest; 'snowball' (smallest balance first) clears acco"},{"name":"portfolio-longevity","description":"How many years a balance lasts while withdrawing from it: the balance grows each year, then the withdrawal (optionally stepping up) is taken. Returns the deplet"},{"name":"present-value","description":"Present value of a single future amount discounted annually. The inverse of future-value."},{"name":"required-return","description":"Annual return needed to grow a starting value to a target over a number of years, optionally with a fixed annual contribution. With no contribution this equals "},{"name":"yield-to-maturity","description":"Bond yield to maturity: the nominal annual yield that prices a bond at the given price, with periodic coupons and face returned at maturity. Solved numerically."},{"name":"tax-from-brackets","description":"Progressive tax from caller-supplied brackets. No jurisdiction, year, or rates are baked in: pass the brackets yourself. Returns total tax, effective rate, and "},{"name":"margin-markup","description":"Convert between margin and markup. Supply any one of cost/price plus one of marginPct/markupPct (or both cost and price); returns cost, price, profit, marginPct"},{"name":"compound-interest","description":"Compound growth at any frequency, with an optional contribution each period (paid at period end). Generalizes future-value (periodsPerYear 1) and contributions "},{"name":"de-gross-to-net","description":"German net (Netto) salary from gross (Brutto). No tax tables are baked in: look up the current year's statutory figures and pass them in. Income tax (Lohnsteuer"},{"name":"de-net-salary","description":"Exact German net (Netto) salary from annual gross (Brutto) for tax years 2023-2026. Income tax and Soli follow the official BMF Programmablaufplan for the year "},{"name":"de-abgeltungsteuer","description":"German flat tax on capital income (Abgeltungsteuer, §32d EStG) for tax years 2023-2026 with the year's Sparerpauschbetrag built in. 25% above the allowance, Sol"},{"name":"de-kindergeld","description":"German child benefit (Kindergeld) for 2023-2026: the year's flat monthly amount per child (uniform since 2023), as monthly and annual totals."},{"name":"de-midijob","description":"German Midijob / Uebergangsbereich (paragraph 20 Abs. 2a SGB IV) for 2023-2026: classifies a monthly pay as Minijob / Midijob / regular against the year's thres"},{"name":"de-rentenpunkte","description":"German pension points (Entgeltpunkte, paragraph 63 SGB VI) for 2023-2026: points earned from an annual gross via the year's Durchschnittsentgelt (capped at the "},{"name":"vat","description":"Value-added tax (MwSt/USt, sales tax) on a price. By default adds the tax to a net price; with inclusive=true treats the amount as gross and extracts the tax. T"},{"name":"roi","description":"Return on investment: total percent gain, plus the annualized rate when a holding period in years is given."},{"name":"real-return","description":"Real (inflation-adjusted) return from a nominal rate via the Fisher relation: (1+nominal)/(1+inflation) - 1."},{"name":"return-stats","description":"Mean, sample variance, and sample standard deviation (n-1) of a series of returns. Pass percents to get a percent stdev (volatility)."},{"name":"sharpe-ratio","description":"Sharpe ratio: excess mean return per unit of volatility, (mean - riskFree) / stdev. Null when volatility is undefined or zero."},{"name":"max-drawdown","description":"Maximum drawdown of a value series: the largest peak-to-trough decline, as a positive percent."},{"name":"holding-period-return","description":"Holding-period return: (income + capital gain) / starting value, in percent."},{"name":"fee-drag","description":"Effect of an annual fee: the compounded balance at the gross rate vs net of the fee, and the amount lost to fees."},{"name":"dollar-cost-averaging","description":"Dollar-cost averaging: buying a fixed amount each period at the given prices. Returns units accumulated, total invested, average cost, and final value at the la"},{"name":"bond-price","description":"Price of a coupon bond given a yield: present value of the coupons plus the face at maturity."},{"name":"current-yield","description":"Current yield: the annual coupon as a percent of the bond's current price."},{"name":"bond-duration","description":"Macaulay duration (PV-weighted average time of cashflows, in years) and modified duration (price sensitivity to yield)."},{"name":"convexity","description":"Bond convexity (years^2): the curvature of price with respect to yield, used alongside duration."},{"name":"zero-coupon-price","description":"Price of a zero-coupon bond: face value discounted to today at the yield."},{"name":"accrued-interest","description":"Accrued interest since the last coupon: the annual coupon pro-rated by days elapsed over the day-count basis."},{"name":"black-scholes","description":"Black-Scholes price of a European call or put option, plus d1/d2. Volatility and rates in percent; optional continuous dividend yield."},{"name":"option-greeks","description":"Black-Scholes greeks for a European option: delta, gamma, vega (per 1% vol), theta (per day), rho (per 1% rate)."},{"name":"put-call-parity","description":"Put-call parity: given one option price, returns both. Provide call or put, plus spot, strike, years, and the rate."},{"name":"option-breakeven","description":"Break-even underlying price at expiry: strike + premium for a call, strike - premium for a put."},{"name":"intrinsic-time-value","description":"Split an option premium into intrinsic value (in-the-money amount) and time value."},{"name":"annuity-pv","description":"Present value of an ordinary annuity (level payment at each period end). rate is the per-period rate in percent."},{"name":"annuity-fv","description":"Future value of an ordinary annuity. rate is the per-period rate in percent."},{"name":"annuity-payment","description":"The level payment that amortizes a present value over n periods (the loan-payment formula). rate is per period."},{"name":"perpetuity","description":"Present value of a level or growing perpetuity: payment / (rate - growth). Null when growth is not below the rate."},{"name":"rule-of-72","description":"Years to double: the rule-of-72 estimate (72/rate) and the exact figure (ln2 / ln(1+rate))."},{"name":"payback-period","description":"Simple payback period: periods until cumulative cashflows recover the initial cost, interpolated within the crossing period. Null if never."},{"name":"discounted-payback","description":"Discounted payback period: like payback-period but each cashflow is discounted at the per-period rate."},{"name":"mirr","description":"Modified internal rate of return: negatives financed at financeRate, positives reinvested at reinvestRate. Percents in and out."},{"name":"xnpv","description":"Date-aware net present value: each amount discounted by its fractional years (act/365) from the first cashflow's date. Annual rate in percent."},{"name":"xirr","description":"Date-aware internal rate of return: the annual rate that zeroes the XNPV of irregular dated cashflows. Null if no rate fits."},{"name":"loan-apr","description":"Effective APR including upfront fees: the note-rate payment priced against the net proceeds (amount - fees). Annual percent."},{"name":"interest-only-payment","description":"Interest-only monthly payment on a balance."},{"name":"balloon-loan","description":"Balloon loan: payment based on a long amortization, with the balloon being the balance still due after the shorter balloon term."},{"name":"ltv","description":"Loan-to-value ratio, percent (loan / property value)."},{"name":"dti","description":"Debt-to-income ratio, percent (monthly debt / gross monthly income)."},{"name":"credit-card-payoff","description":"Months to clear a credit-card balance at a fixed monthly payment, plus interest paid. Null when the payment can't cover the first month's interest."},{"name":"points-breakeven","description":"Mortgage points break-even: the upfront cost to buy down the rate, the monthly payment saving, and the whole months to recoup it."},{"name":"biweekly-payoff","description":"Biweekly mortgage acceleration: paying half the monthly payment every two weeks. Returns the biweekly payment and the months and interest saved."},{"name":"cap-rate","description":"Capitalization rate: net operating income as a percent of property value."},{"name":"cash-on-cash","description":"Cash-on-cash return: annual pre-tax cash flow as a percent of the cash invested."},{"name":"noi","description":"Net operating income: gross rental income less vacancy and operating expenses."},{"name":"gross-rent-multiplier","description":"Gross rent multiplier: price divided by gross annual rent."},{"name":"dscr","description":"Debt service coverage ratio: net operating income divided by annual debt service."},{"name":"wacc","description":"Weighted average cost of capital: equity and after-tax debt weighted by the capital structure. Percents in and out."},{"name":"break-even-units","description":"Break-even volume: fixed costs divided by the per-unit contribution (price - variable cost), plus the revenue at that volume."},{"name":"contribution-margin","description":"Contribution margin per unit and as a percent of price."},{"name":"current-ratio","description":"Current ratio: current assets over current liabilities."},{"name":"quick-ratio","description":"Quick (acid-test) ratio: (current assets - inventory) over current liabilities."},{"name":"roe","description":"Return on equity, percent: net income over shareholders' equity."},{"name":"roa","description":"Return on assets, percent: net income over total assets."},{"name":"declining-balance-depreciation","description":"Declining-balance depreciation: a fixed percent of the reducing book value, for a given year. Returns that year's depreciation and the remaining book value."},{"name":"double-declining-depreciation","description":"Double-declining-balance depreciation: 2/usefulYears of the book value each year, not falling below salvage."},{"name":"sum-of-years-digits","description":"Sum-of-the-years'-digits depreciation: the depreciable base weighted toward the early years."},{"name":"units-of-production-depreciation","description":"Units-of-production depreciation: the depreciable base spread over total expected units, charged by the units used this period."},{"name":"net-worth","description":"Net worth: assets minus liabilities."},{"name":"budget-50-30-20","description":"The 50/30/20 budget split of monthly income into needs, wants, and savings."},{"name":"tip-split","description":"Tip and split: the tip amount, the total, and the per-person share."},{"name":"discount","description":"A single percentage discount: the amount off and the final price."},{"name":"successive-discounts","description":"Stacked discounts applied in order: the final price and the effective single discount rate."},{"name":"percentage-change","description":"Percentage change from one value to another. Null when the starting value is zero."},{"name":"unit-price","description":"Unit price: price divided by quantity (for comparing pack sizes). Null when quantity is zero."},{"name":"hourly-to-salary","description":"Annualize an hourly rate (and the monthly equivalent)."},{"name":"salary-to-hourly","description":"Hourly rate implied by an annual salary."},{"name":"after-tax-yield","description":"After-tax yield: a yield reduced by the tax rate. Percents in and out."},{"name":"tax-equivalent-yield","description":"Tax-equivalent yield: the taxable yield that matches a tax-free (e.g. muni) yield. Percents in and out."},{"name":"coast-fire","description":"Coast FIRE: whether the current nest egg, left to grow untouched to retirement, already reaches the FIRE target. Returns the target, the projected balance, whet"},{"name":"barista-fire","description":"Barista FIRE: the nest egg needed when part-time income covers part of the spending, so the portfolio only funds the remainder at the safe withdrawal rate."}],"toolCount":99,"toolsHash":"bebe06ccd5a058bdea97f40fb55a8a2d3d69162fa9f89e06c2c1527d8e6d2fc6","serverName":"nestegg-calculators","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T19:22:40.677Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":44,"error":null,"detail":{"tools":[{"name":"amortization","description":"Monthly loan amortization schedule and summary. Supports dated extra principal payments and a rate-fixed period. detail controls output size: 'summary' (default"},{"name":"loan-payoff","description":"Time and interest saved by paying a fixed extra amount every month on a loan, versus the baseline schedule."},{"name":"future-value","description":"Future value of a single lump sum compounded annually."},{"name":"contributions","description":"Future value of a fixed monthly contribution, optionally stepping up each year."},{"name":"cagr","description":"Compound annual growth rate between two values over a number of years. Returns a decimal (0.07 means 7%)."},{"name":"savings-rate","description":"Fraction of income saved (savings divided by income). Returns a decimal."},{"name":"fx-convert","description":"Convert an amount using a rate supplied by the caller (units of target currency per unit of source). No rate is ever looked up."},{"name":"depreciate","description":"Value after compounding down (or up) at a yearly percentage rate over a number of years. This is the method the app uses for long-term assets."},{"name":"straight-line-depreciation","description":"Straight-line depreciation: value falling evenly to a salvage value over a useful life."},{"name":"fire-number","description":"FIRE target nest egg from annual spend and a safe withdrawal rate (default 4%), plus the gap from today and the years to reach it given optional savings and gro"},{"name":"required-contribution","description":"Inverse of contributions: the fixed monthly amount needed to reach a target future value over a number of months, given an optional starting balance."},{"name":"inflation-adjust","description":"Convert a nominal amount to today's purchasing power (real), or with toNominal inflate a real amount forward, at a given annual inflation rate."},{"name":"effective-rate","description":"Convert a nominal annual rate to the effective annual rate (APY) for a compounding frequency, or with toNominal recover the nominal rate from an APY."},{"name":"npv","description":"Net present value of a cashflow series (index 0 is today; outflows negative) discounted at a per-period rate."},{"name":"irr","description":"Internal rate of return: the per-period rate that zeroes the NPV of a cashflow series. Returns a percent, or null when the series never crosses zero."},{"name":"refi-breakeven","description":"Refinance break-even: monthly saving, whole months to recoup closing costs, and (if remainingMonths given) the net saving over the remaining term."},{"name":"emergency-fund","description":"Months of runway: liquid savings divided by monthly expenses."},{"name":"mortgage-affordability","description":"Maximum loan and home price the income supports: the DTI cap on gross monthly income (less existing debts) sets the payment, whose present value at the rate and"},{"name":"debt-payoff","description":"Multi-debt payoff plan under a fixed monthly budget. method 'avalanche' (highest rate first) minimizes interest; 'snowball' (smallest balance first) clears acco"},{"name":"portfolio-longevity","description":"How many years a balance lasts while withdrawing from it: the balance grows each year, then the withdrawal (optionally stepping up) is taken. Returns the deplet"},{"name":"present-value","description":"Present value of a single future amount discounted annually. The inverse of future-value."},{"name":"required-return","description":"Annual return needed to grow a starting value to a target over a number of years, optionally with a fixed annual contribution. With no contribution this equals "},{"name":"yield-to-maturity","description":"Bond yield to maturity: the nominal annual yield that prices a bond at the given price, with periodic coupons and face returned at maturity. Solved numerically."},{"name":"tax-from-brackets","description":"Progressive tax from caller-supplied brackets. No jurisdiction, year, or rates are baked in: pass the brackets yourself. Returns total tax, effective rate, and "},{"name":"margin-markup","description":"Convert between margin and markup. Supply any one of cost/price plus one of marginPct/markupPct (or both cost and price); returns cost, price, profit, marginPct"},{"name":"compound-interest","description":"Compound growth at any frequency, with an optional contribution each period (paid at period end). Generalizes future-value (periodsPerYear 1) and contributions "},{"name":"de-gross-to-net","description":"German net (Netto) salary from gross (Brutto). No tax tables are baked in: look up the current year's statutory figures and pass them in. Income tax (Lohnsteuer"},{"name":"de-net-salary","description":"Exact German net (Netto) salary from annual gross (Brutto) for tax years 2023-2026. Income tax and Soli follow the official BMF Programmablaufplan for the year "},{"name":"de-abgeltungsteuer","description":"German flat tax on capital income (Abgeltungsteuer, §32d EStG) for tax years 2023-2026 with the year's Sparerpauschbetrag built in. 25% above the allowance, Sol"},{"name":"de-kindergeld","description":"German child benefit (Kindergeld) for 2023-2026: the year's flat monthly amount per child (uniform since 2023), as monthly and annual totals."},{"name":"de-midijob","description":"German Midijob / Uebergangsbereich (paragraph 20 Abs. 2a SGB IV) for 2023-2026: classifies a monthly pay as Minijob / Midijob / regular against the year's thres"},{"name":"de-rentenpunkte","description":"German pension points (Entgeltpunkte, paragraph 63 SGB VI) for 2023-2026: points earned from an annual gross via the year's Durchschnittsentgelt (capped at the "},{"name":"vat","description":"Value-added tax (MwSt/USt, sales tax) on a price. By default adds the tax to a net price; with inclusive=true treats the amount as gross and extracts the tax. T"},{"name":"roi","description":"Return on investment: total percent gain, plus the annualized rate when a holding period in years is given."},{"name":"real-return","description":"Real (inflation-adjusted) return from a nominal rate via the Fisher relation: (1+nominal)/(1+inflation) - 1."},{"name":"return-stats","description":"Mean, sample variance, and sample standard deviation (n-1) of a series of returns. Pass percents to get a percent stdev (volatility)."},{"name":"sharpe-ratio","description":"Sharpe ratio: excess mean return per unit of volatility, (mean - riskFree) / stdev. Null when volatility is undefined or zero."},{"name":"max-drawdown","description":"Maximum drawdown of a value series: the largest peak-to-trough decline, as a positive percent."},{"name":"holding-period-return","description":"Holding-period return: (income + capital gain) / starting value, in percent."},{"name":"fee-drag","description":"Effect of an annual fee: the compounded balance at the gross rate vs net of the fee, and the amount lost to fees."},{"name":"dollar-cost-averaging","description":"Dollar-cost averaging: buying a fixed amount each period at the given prices. Returns units accumulated, total invested, average cost, and final value at the la"},{"name":"bond-price","description":"Price of a coupon bond given a yield: present value of the coupons plus the face at maturity."},{"name":"current-yield","description":"Current yield: the annual coupon as a percent of the bond's current price."},{"name":"bond-duration","description":"Macaulay duration (PV-weighted average time of cashflows, in years) and modified duration (price sensitivity to yield)."},{"name":"convexity","description":"Bond convexity (years^2): the curvature of price with respect to yield, used alongside duration."},{"name":"zero-coupon-price","description":"Price of a zero-coupon bond: face value discounted to today at the yield."},{"name":"accrued-interest","description":"Accrued interest since the last coupon: the annual coupon pro-rated by days elapsed over the day-count basis."},{"name":"black-scholes","description":"Black-Scholes price of a European call or put option, plus d1/d2. Volatility and rates in percent; optional continuous dividend yield."},{"name":"option-greeks","description":"Black-Scholes greeks for a European option: delta, gamma, vega (per 1% vol), theta (per day), rho (per 1% rate)."},{"name":"put-call-parity","description":"Put-call parity: given one option price, returns both. Provide call or put, plus spot, strike, years, and the rate."},{"name":"option-breakeven","description":"Break-even underlying price at expiry: strike + premium for a call, strike - premium for a put."},{"name":"intrinsic-time-value","description":"Split an option premium into intrinsic value (in-the-money amount) and time value."},{"name":"annuity-pv","description":"Present value of an ordinary annuity (level payment at each period end). rate is the per-period rate in percent."},{"name":"annuity-fv","description":"Future value of an ordinary annuity. rate is the per-period rate in percent."},{"name":"annuity-payment","description":"The level payment that amortizes a present value over n periods (the loan-payment formula). rate is per period."},{"name":"perpetuity","description":"Present value of a level or growing perpetuity: payment / (rate - growth). Null when growth is not below the rate."},{"name":"rule-of-72","description":"Years to double: the rule-of-72 estimate (72/rate) and the exact figure (ln2 / ln(1+rate))."},{"name":"payback-period","description":"Simple payback period: periods until cumulative cashflows recover the initial cost, interpolated within the crossing period. Null if never."},{"name":"discounted-payback","description":"Discounted payback period: like payback-period but each cashflow is discounted at the per-period rate."},{"name":"mirr","description":"Modified internal rate of return: negatives financed at financeRate, positives reinvested at reinvestRate. Percents in and out."},{"name":"xnpv","description":"Date-aware net present value: each amount discounted by its fractional years (act/365) from the first cashflow's date. Annual rate in percent."},{"name":"xirr","description":"Date-aware internal rate of return: the annual rate that zeroes the XNPV of irregular dated cashflows. Null if no rate fits."},{"name":"loan-apr","description":"Effective APR including upfront fees: the note-rate payment priced against the net proceeds (amount - fees). Annual percent."},{"name":"interest-only-payment","description":"Interest-only monthly payment on a balance."},{"name":"balloon-loan","description":"Balloon loan: payment based on a long amortization, with the balloon being the balance still due after the shorter balloon term."},{"name":"ltv","description":"Loan-to-value ratio, percent (loan / property value)."},{"name":"dti","description":"Debt-to-income ratio, percent (monthly debt / gross monthly income)."},{"name":"credit-card-payoff","description":"Months to clear a credit-card balance at a fixed monthly payment, plus interest paid. Null when the payment can't cover the first month's interest."},{"name":"points-breakeven","description":"Mortgage points break-even: the upfront cost to buy down the rate, the monthly payment saving, and the whole months to recoup it."},{"name":"biweekly-payoff","description":"Biweekly mortgage acceleration: paying half the monthly payment every two weeks. Returns the biweekly payment and the months and interest saved."},{"name":"cap-rate","description":"Capitalization rate: net operating income as a percent of property value."},{"name":"cash-on-cash","description":"Cash-on-cash return: annual pre-tax cash flow as a percent of the cash invested."},{"name":"noi","description":"Net operating income: gross rental income less vacancy and operating expenses."},{"name":"gross-rent-multiplier","description":"Gross rent multiplier: price divided by gross annual rent."},{"name":"dscr","description":"Debt service coverage ratio: net operating income divided by annual debt service."},{"name":"wacc","description":"Weighted average cost of capital: equity and after-tax debt weighted by the capital structure. Percents in and out."},{"name":"break-even-units","description":"Break-even volume: fixed costs divided by the per-unit contribution (price - variable cost), plus the revenue at that volume."},{"name":"contribution-margin","description":"Contribution margin per unit and as a percent of price."},{"name":"current-ratio","description":"Current ratio: current assets over current liabilities."},{"name":"quick-ratio","description":"Quick (acid-test) ratio: (current assets - inventory) over current liabilities."},{"name":"roe","description":"Return on equity, percent: net income over shareholders' equity."},{"name":"roa","description":"Return on assets, percent: net income over total assets."},{"name":"declining-balance-depreciation","description":"Declining-balance depreciation: a fixed percent of the reducing book value, for a given year. Returns that year's depreciation and the remaining book value."},{"name":"double-declining-depreciation","description":"Double-declining-balance depreciation: 2/usefulYears of the book value each year, not falling below salvage."},{"name":"sum-of-years-digits","description":"Sum-of-the-years'-digits depreciation: the depreciable base weighted toward the early years."},{"name":"units-of-production-depreciation","description":"Units-of-production depreciation: the depreciable base spread over total expected units, charged by the units used this period."},{"name":"net-worth","description":"Net worth: assets minus liabilities."},{"name":"budget-50-30-20","description":"The 50/30/20 budget split of monthly income into needs, wants, and savings."},{"name":"tip-split","description":"Tip and split: the tip amount, the total, and the per-person share."},{"name":"discount","description":"A single percentage discount: the amount off and the final price."},{"name":"successive-discounts","description":"Stacked discounts applied in order: the final price and the effective single discount rate."},{"name":"percentage-change","description":"Percentage change from one value to another. Null when the starting value is zero."},{"name":"unit-price","description":"Unit price: price divided by quantity (for comparing pack sizes). Null when quantity is zero."},{"name":"hourly-to-salary","description":"Annualize an hourly rate (and the monthly equivalent)."},{"name":"salary-to-hourly","description":"Hourly rate implied by an annual salary."},{"name":"after-tax-yield","description":"After-tax yield: a yield reduced by the tax rate. Percents in and out."},{"name":"tax-equivalent-yield","description":"Tax-equivalent yield: the taxable yield that matches a tax-free (e.g. muni) yield. Percents in and out."},{"name":"coast-fire","description":"Coast FIRE: whether the current nest egg, left to grow untouched to retirement, already reaches the FIRE target. Returns the target, the projected balance, whet"},{"name":"barista-fire","description":"Barista FIRE: the nest egg needed when part-time income covers part of the spending, so the portfolio only funds the remainder at the safe withdrawal rate."}],"toolCount":99,"toolsHash":"bebe06ccd5a058bdea97f40fb55a8a2d3d69162fa9f89e06c2c1527d8e6d2fc6","serverName":"nestegg-calculators","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"amortization","description":"Monthly loan amortization schedule and summary. Supports dated extra principal payments and a rate-fixed period. detail controls output size: 'summary' (default"},{"name":"loan-payoff","description":"Time and interest saved by paying a fixed extra amount every month on a loan, versus the baseline schedule."},{"name":"future-value","description":"Future value of a single lump sum compounded annually."},{"name":"contributions","description":"Future value of a fixed monthly contribution, optionally stepping up each year."},{"name":"cagr","description":"Compound annual growth rate between two values over a number of years. Returns a decimal (0.07 means 7%)."},{"name":"savings-rate","description":"Fraction of income saved (savings divided by income). Returns a decimal."},{"name":"fx-convert","description":"Convert an amount using a rate supplied by the caller (units of target currency per unit of source). No rate is ever looked up."},{"name":"depreciate","description":"Value after compounding down (or up) at a yearly percentage rate over a number of years. This is the method the app uses for long-term assets."},{"name":"straight-line-depreciation","description":"Straight-line depreciation: value falling evenly to a salvage value over a useful life."},{"name":"fire-number","description":"FIRE target nest egg from annual spend and a safe withdrawal rate (default 4%), plus the gap from today and the years to reach it given optional savings and gro"},{"name":"required-contribution","description":"Inverse of contributions: the fixed monthly amount needed to reach a target future value over a number of months, given an optional starting balance."},{"name":"inflation-adjust","description":"Convert a nominal amount to today's purchasing power (real), or with toNominal inflate a real amount forward, at a given annual inflation rate."},{"name":"effective-rate","description":"Convert a nominal annual rate to the effective annual rate (APY) for a compounding frequency, or with toNominal recover the nominal rate from an APY."},{"name":"npv","description":"Net present value of a cashflow series (index 0 is today; outflows negative) discounted at a per-period rate."},{"name":"irr","description":"Internal rate of return: the per-period rate that zeroes the NPV of a cashflow series. Returns a percent, or null when the series never crosses zero."},{"name":"refi-breakeven","description":"Refinance break-even: monthly saving, whole months to recoup closing costs, and (if remainingMonths given) the net saving over the remaining term."},{"name":"emergency-fund","description":"Months of runway: liquid savings divided by monthly expenses."},{"name":"mortgage-affordability","description":"Maximum loan and home price the income supports: the DTI cap on gross monthly income (less existing debts) sets the payment, whose present value at the rate and"},{"name":"debt-payoff","description":"Multi-debt payoff plan under a fixed monthly budget. method 'avalanche' (highest rate first) minimizes interest; 'snowball' (smallest balance first) clears acco"},{"name":"portfolio-longevity","description":"How many years a balance lasts while withdrawing from it: the balance grows each year, then the withdrawal (optionally stepping up) is taken. Returns the deplet"},{"name":"present-value","description":"Present value of a single future amount discounted annually. The inverse of future-value."},{"name":"required-return","description":"Annual return needed to grow a starting value to a target over a number of years, optionally with a fixed annual contribution. With no contribution this equals "},{"name":"yield-to-maturity","description":"Bond yield to maturity: the nominal annual yield that prices a bond at the given price, with periodic coupons and face returned at maturity. Solved numerically."},{"name":"tax-from-brackets","description":"Progressive tax from caller-supplied brackets. No jurisdiction, year, or rates are baked in: pass the brackets yourself. Returns total tax, effective rate, and "},{"name":"margin-markup","description":"Convert between margin and markup. Supply any one of cost/price plus one of marginPct/markupPct (or both cost and price); returns cost, price, profit, marginPct"},{"name":"compound-interest","description":"Compound growth at any frequency, with an optional contribution each period (paid at period end). Generalizes future-value (periodsPerYear 1) and contributions "},{"name":"de-gross-to-net","description":"German net (Netto) salary from gross (Brutto). No tax tables are baked in: look up the current year's statutory figures and pass them in. Income tax (Lohnsteuer"},{"name":"de-net-salary","description":"Exact German net (Netto) salary from annual gross (Brutto) for tax years 2023-2026. Income tax and Soli follow the official BMF Programmablaufplan for the year "},{"name":"de-abgeltungsteuer","description":"German flat tax on capital income (Abgeltungsteuer, §32d EStG) for tax years 2023-2026 with the year's Sparerpauschbetrag built in. 25% above the allowance, Sol"},{"name":"de-kindergeld","description":"German child benefit (Kindergeld) for 2023-2026: the year's flat monthly amount per child (uniform since 2023), as monthly and annual totals."},{"name":"de-midijob","description":"German Midijob / Uebergangsbereich (paragraph 20 Abs. 2a SGB IV) for 2023-2026: classifies a monthly pay as Minijob / Midijob / regular against the year's thres"},{"name":"de-rentenpunkte","description":"German pension points (Entgeltpunkte, paragraph 63 SGB VI) for 2023-2026: points earned from an annual gross via the year's Durchschnittsentgelt (capped at the "},{"name":"vat","description":"Value-added tax (MwSt/USt, sales tax) on a price. By default adds the tax to a net price; with inclusive=true treats the amount as gross and extracts the tax. T"},{"name":"roi","description":"Return on investment: total percent gain, plus the annualized rate when a holding period in years is given."},{"name":"real-return","description":"Real (inflation-adjusted) return from a nominal rate via the Fisher relation: (1+nominal)/(1+inflation) - 1."},{"name":"return-stats","description":"Mean, sample variance, and sample standard deviation (n-1) of a series of returns. Pass percents to get a percent stdev (volatility)."},{"name":"sharpe-ratio","description":"Sharpe ratio: excess mean return per unit of volatility, (mean - riskFree) / stdev. Null when volatility is undefined or zero."},{"name":"max-drawdown","description":"Maximum drawdown of a value series: the largest peak-to-trough decline, as a positive percent."},{"name":"holding-period-return","description":"Holding-period return: (income + capital gain) / starting value, in percent."},{"name":"fee-drag","description":"Effect of an annual fee: the compounded balance at the gross rate vs net of the fee, and the amount lost to fees."},{"name":"dollar-cost-averaging","description":"Dollar-cost averaging: buying a fixed amount each period at the given prices. Returns units accumulated, total invested, average cost, and final value at the la"},{"name":"bond-price","description":"Price of a coupon bond given a yield: present value of the coupons plus the face at maturity."},{"name":"current-yield","description":"Current yield: the annual coupon as a percent of the bond's current price."},{"name":"bond-duration","description":"Macaulay duration (PV-weighted average time of cashflows, in years) and modified duration (price sensitivity to yield)."},{"name":"convexity","description":"Bond convexity (years^2): the curvature of price with respect to yield, used alongside duration."},{"name":"zero-coupon-price","description":"Price of a zero-coupon bond: face value discounted to today at the yield."},{"name":"accrued-interest","description":"Accrued interest since the last coupon: the annual coupon pro-rated by days elapsed over the day-count basis."},{"name":"black-scholes","description":"Black-Scholes price of a European call or put option, plus d1/d2. Volatility and rates in percent; optional continuous dividend yield."},{"name":"option-greeks","description":"Black-Scholes greeks for a European option: delta, gamma, vega (per 1% vol), theta (per day), rho (per 1% rate)."},{"name":"put-call-parity","description":"Put-call parity: given one option price, returns both. Provide call or put, plus spot, strike, years, and the rate."},{"name":"option-breakeven","description":"Break-even underlying price at expiry: strike + premium for a call, strike - premium for a put."},{"name":"intrinsic-time-value","description":"Split an option premium into intrinsic value (in-the-money amount) and time value."},{"name":"annuity-pv","description":"Present value of an ordinary annuity (level payment at each period end). rate is the per-period rate in percent."},{"name":"annuity-fv","description":"Future value of an ordinary annuity. rate is the per-period rate in percent."},{"name":"annuity-payment","description":"The level payment that amortizes a present value over n periods (the loan-payment formula). rate is per period."},{"name":"perpetuity","description":"Present value of a level or growing perpetuity: payment / (rate - growth). Null when growth is not below the rate."},{"name":"rule-of-72","description":"Years to double: the rule-of-72 estimate (72/rate) and the exact figure (ln2 / ln(1+rate))."},{"name":"payback-period","description":"Simple payback period: periods until cumulative cashflows recover the initial cost, interpolated within the crossing period. Null if never."},{"name":"discounted-payback","description":"Discounted payback period: like payback-period but each cashflow is discounted at the per-period rate."},{"name":"mirr","description":"Modified internal rate of return: negatives financed at financeRate, positives reinvested at reinvestRate. Percents in and out."},{"name":"xnpv","description":"Date-aware net present value: each amount discounted by its fractional years (act/365) from the first cashflow's date. Annual rate in percent."},{"name":"xirr","description":"Date-aware internal rate of return: the annual rate that zeroes the XNPV of irregular dated cashflows. Null if no rate fits."},{"name":"loan-apr","description":"Effective APR including upfront fees: the note-rate payment priced against the net proceeds (amount - fees). Annual percent."},{"name":"interest-only-payment","description":"Interest-only monthly payment on a balance."},{"name":"balloon-loan","description":"Balloon loan: payment based on a long amortization, with the balloon being the balance still due after the shorter balloon term."},{"name":"ltv","description":"Loan-to-value ratio, percent (loan / property value)."},{"name":"dti","description":"Debt-to-income ratio, percent (monthly debt / gross monthly income)."},{"name":"credit-card-payoff","description":"Months to clear a credit-card balance at a fixed monthly payment, plus interest paid. Null when the payment can't cover the first month's interest."},{"name":"points-breakeven","description":"Mortgage points break-even: the upfront cost to buy down the rate, the monthly payment saving, and the whole months to recoup it."},{"name":"biweekly-payoff","description":"Biweekly mortgage acceleration: paying half the monthly payment every two weeks. Returns the biweekly payment and the months and interest saved."},{"name":"cap-rate","description":"Capitalization rate: net operating income as a percent of property value."},{"name":"cash-on-cash","description":"Cash-on-cash return: annual pre-tax cash flow as a percent of the cash invested."},{"name":"noi","description":"Net operating income: gross rental income less vacancy and operating expenses."},{"name":"gross-rent-multiplier","description":"Gross rent multiplier: price divided by gross annual rent."},{"name":"dscr","description":"Debt service coverage ratio: net operating income divided by annual debt service."},{"name":"wacc","description":"Weighted average cost of capital: equity and after-tax debt weighted by the capital structure. Percents in and out."},{"name":"break-even-units","description":"Break-even volume: fixed costs divided by the per-unit contribution (price - variable cost), plus the revenue at that volume."},{"name":"contribution-margin","description":"Contribution margin per unit and as a percent of price."},{"name":"current-ratio","description":"Current ratio: current assets over current liabilities."},{"name":"quick-ratio","description":"Quick (acid-test) ratio: (current assets - inventory) over current liabilities."},{"name":"roe","description":"Return on equity, percent: net income over shareholders' equity."},{"name":"roa","description":"Return on assets, percent: net income over total assets."},{"name":"declining-balance-depreciation","description":"Declining-balance depreciation: a fixed percent of the reducing book value, for a given year. Returns that year's depreciation and the remaining book value."},{"name":"double-declining-depreciation","description":"Double-declining-balance depreciation: 2/usefulYears of the book value each year, not falling below salvage."},{"name":"sum-of-years-digits","description":"Sum-of-the-years'-digits depreciation: the depreciable base weighted toward the early years."},{"name":"units-of-production-depreciation","description":"Units-of-production depreciation: the depreciable base spread over total expected units, charged by the units used this period."},{"name":"net-worth","description":"Net worth: assets minus liabilities."},{"name":"budget-50-30-20","description":"The 50/30/20 budget split of monthly income into needs, wants, and savings."},{"name":"tip-split","description":"Tip and split: the tip amount, the total, and the per-person share."},{"name":"discount","description":"A single percentage discount: the amount off and the final price."},{"name":"successive-discounts","description":"Stacked discounts applied in order: the final price and the effective single discount rate."},{"name":"percentage-change","description":"Percentage change from one value to another. Null when the starting value is zero."},{"name":"unit-price","description":"Unit price: price divided by quantity (for comparing pack sizes). Null when quantity is zero."},{"name":"hourly-to-salary","description":"Annualize an hourly rate (and the monthly equivalent)."},{"name":"salary-to-hourly","description":"Hourly rate implied by an annual salary."},{"name":"after-tax-yield","description":"After-tax yield: a yield reduced by the tax rate. Percents in and out."},{"name":"tax-equivalent-yield","description":"Tax-equivalent yield: the taxable yield that matches a tax-free (e.g. muni) yield. Percents in and out."},{"name":"coast-fire","description":"Coast FIRE: whether the current nest egg, left to grow untouched to retirement, already reaches the FIRE target. Returns the target, the projected balance, whet"},{"name":"barista-fire","description":"Barista FIRE: the nest egg needed when part-time income covers part of the spending, so the portfolio only funds the remainder at the safe withdrawal rate."}],"package":null,"toolSurface":{"id":"ts_cegm9h9p5sd8","endpointId":"ep_6rhmfera2t2s","hash":"bebe06ccd5a058bdea97f40fb55a8a2d3d69162fa9f89e06c2c1527d8e6d2fc6","toolCount":99,"serverName":"nestegg-calculators","serverVersion":"1.0.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-12T16:25:57.116Z","lastSeenAt":"2026-10-11T05:24:38.225Z","observations":104,"toolNames":["amortization","loan-payoff","future-value","contributions","cagr","savings-rate","fx-convert","depreciate","straight-line-depreciation","fire-number","required-contribution","inflation-adjust","effective-rate","npv","irr","refi-breakeven","emergency-fund","mortgage-affordability","debt-payoff","portfolio-longevity","present-value","required-return","yield-to-maturity","tax-from-brackets","margin-markup","compound-interest","de-gross-to-net","de-net-salary","de-abgeltungsteuer","de-kindergeld","de-midijob","de-rentenpunkte","vat","roi","real-return","return-stats","sharpe-ratio","max-drawdown","holding-period-return","fee-drag","dollar-cost-averaging","bond-price","current-yield","bond-duration","convexity","zero-coupon-price","accrued-interest","black-scholes","option-greeks","put-call-parity","option-breakeven","intrinsic-time-value","annuity-pv","annuity-fv","annuity-payment","perpetuity","rule-of-72","payback-period","discounted-payback","mirr","xnpv","xirr","loan-apr","interest-only-payment","balloon-loan","ltv","dti","credit-card-payoff","points-breakeven","biweekly-payoff","cap-rate","cash-on-cash","noi","gross-rent-multiplier","dscr","wacc","break-even-units","contribution-margin","current-ratio","quick-ratio","roe","roa","declining-balance-depreciation","double-declining-depreciation","sum-of-years-digits","units-of-production-depreciation","net-worth","budget-50-30-20","tip-split","discount","successive-discounts","percentage-change","unit-price","hourly-to-salary","salary-to-hourly","after-tax-yield","tax-equivalent-yield","coast-fire","barista-fire"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_6rhmfera2t2s","url":"https://nestegg.money/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-11T05:24:38.231Z","auth":{"observedAt":"2026-10-11T05:24:38.241Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-11T05:24:38.253Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"nestegg.money","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-08-18T10:17:19.000Z","validTo":"2026-11-16T11:17:16.000Z","daysToExpiry":36,"sanCount":2,"fingerprint256":"FD:0F:8D:40:39:83:08:2B:C2:8F:5E:85:09:8D:A2:35:7F:5A:92:66:C4:CE:C7:7D:DC:C8:1F:22:DF:BA:7A:7A"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.VladimirWrites/nestegg-calculators","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.VladimirWrites%2Fnestegg-calculators","firstSeenAt":"2026-09-06T07:20:22.375Z","fetchedAt":"2026-10-10T03:19:15.150Z","normalizedAt":"2026-10-10T03:19:15.150Z"}]},"firstSeenAt":"2026-09-06T07:20:22.375Z","updatedAt":"2026-10-11T05:27:35.517Z"}