Server definition
- Hash
- sha256:6854777018daec1c75ec2d0ba0f7a52d820edd6c9b5cac1da2543c3cbdfaef29
- What it is
- What a remote MCP server returned when asked what it offers: 7 tools
The blob, as servednamed by its sha256
{
"instructions": "Free deterministic money calculators (option expiry risk, debt avalanche, cash runway, subscription audit, effective hourly rate, invoice aging). Inputs are not stored.",
"tools": [
{
"description": "Months of cash runway for a household or freelance practice — hard runway (committed income only) and working runway, against honest burn including paying yourself.",
"inputSchema": {
"properties": {
"cash_on_hand": {
"type": "number"
},
"monthly_expenses": {
"type": "number"
},
"monthly_income_committed": {
"type": "number"
},
"monthly_income_probable": {
"type": "number"
},
"owner_draw": {
"description": "what you pay yourself monthly",
"type": "number"
}
},
"required": [
"cash_on_hand",
"monthly_expenses"
],
"type": "object"
},
"name": "cash_runway",
"outputSchema": null
},
{
"description": "Debt payoff plan: avalanche order (highest APR first), month-by-month simulation to a debt-free date, interest vs minimums-only, and what one extra $50/mo buys. All math local and deterministic.",
"inputSchema": {
"properties": {
"debts": {
"items": {
"properties": {
"apr": {
"description": "annual % e.g. 24.99",
"type": "number"
},
"balance": {
"type": "number"
},
"minimum": {
"type": "number"
},
"name": {
"type": "string"
}
},
"required": [
"name",
"balance",
"apr",
"minimum"
],
"type": "object"
},
"type": "array"
},
"extra_monthly": {
"description": "extra dollars/month beyond minimums",
"type": "number"
}
},
"required": [
"debts"
],
"type": "object"
},
"name": "debt_avalanche_plan",
"outputSchema": null
},
{
"description": "Should you consolidate credit cards with a personal loan? Compares paying the cards directly (same monthly amount, highest rate first, 0% promo aware) against up to two loan offers, including origination fees, shortfall/extra cash, and early payoff — shows interest+fees by payoff month and the month a fee offer stops being the better deal. Deterministic arithmetic; no credit data.",
"inputSchema": {
"properties": {
"cards": {
"items": {
"properties": {
"apr": {
"description": "annual %, e.g. 27",
"type": "number"
},
"apr_after_promo": {
"description": "APR % after the promo ends",
"type": "number"
},
"balance": {
"type": "number"
},
"name": {
"type": "string"
},
"promo_months_left": {
"description": "months left on a 0% promo, if any",
"type": "integer"
}
},
"required": [
"balance",
"apr"
],
"type": "object"
},
"type": "array"
},
"monthly_budget": {
"description": "monthly amount for the keep-the-cards comparison; defaults to offer A's payment",
"type": "number"
},
"offers": {
"items": {
"properties": {
"amount": {
"type": "number"
},
"fee_is_percent": {
"type": "boolean"
},
"interest_rate": {
"description": "interest rate % (NOT the APR, which already includes the fee)",
"type": "number"
},
"origination_fee": {
"type": "number"
},
"term_months": {
"type": "integer"
}
},
"required": [
"amount",
"interest_rate",
"term_months"
],
"type": "object"
},
"maxItems": 2,
"type": "array"
},
"payoff_months": {
"description": "when you expect to pay everything off; defaults to the full term",
"type": "integer"
}
},
"required": [
"cards",
"offers"
],
"type": "object"
},
"name": "debt_consolidation_check",
"outputSchema": null
},
{
"description": "Freelancers: real $/hr per client — dollars actually collected divided by ALL hours logged (unbilled favors included). Exposes which clients quietly pay half your rate.",
"inputSchema": {
"properties": {
"collected": {
"items": {
"properties": {
"amount": {
"type": "number"
},
"client": {
"type": "string"
}
},
"required": [
"client",
"amount"
],
"type": "object"
},
"type": "array"
},
"work_entries": {
"items": {
"properties": {
"client": {
"type": "string"
},
"hours": {
"type": "number"
}
},
"required": [
"client",
"hours"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"work_entries",
"collected"
],
"type": "object"
},
"name": "effective_hourly_rate",
"outputSchema": null
},
{
"description": "Invoice aging buckets with the right chase action per invoice (friendly nudge → firm ask → escalation plan) based on how late each one is.",
"inputSchema": {
"properties": {
"invoices": {
"items": {
"properties": {
"amount": {
"type": "number"
},
"client": {
"type": "string"
},
"due": {
"description": "YYYY-MM-DD",
"type": "string"
},
"paid": {
"type": "boolean"
}
},
"required": [
"amount",
"due"
],
"type": "object"
},
"type": "array"
},
"today": {
"description": "YYYY-MM-DD, defaults to server date",
"type": "string"
}
},
"required": [
"invoices"
],
"type": "object"
},
"name": "invoice_aging",
"outputSchema": null
},
{
"description": "What happens to an account if a single-leg US equity option finishes in the money at expiration: auto-exercise under the OCC $0.01 rule, the resulting long or short share position, whether a margin, cash, or IRA account can hold it (50% Reg T, $2,000 minimum for shorts, no shorts in cash/IRA), P&L and break-even, the trap zone (exercised but still losing), and pin risk near the strike. Optionally tests the price minus and plus an expected move. Deterministic arithmetic on your inputs; no market data.",
"inputSchema": {
"properties": {
"account_equity": {
"description": "optional margin account equity, to check the requirement",
"type": "number"
},
"account_type": {
"description": "Default margin.",
"enum": [
"margin",
"cash",
"ira"
],
"type": "string"
},
"cash_available": {
"description": "optional settled cash, to check a share purchase",
"type": "number"
},
"contracts": {
"description": "number of contracts (100 shares each). Default 1.",
"type": "integer"
},
"expected_move": {
"description": "optional dollar move to also test down and up, e.g. the at-the-money straddle price",
"type": "number"
},
"premium": {
"description": "per-share price paid (long) or received (short), e.g. 0.48",
"type": "number"
},
"right": {
"enum": [
"call",
"put"
],
"type": "string"
},
"shares_owned": {
"description": "shares of the underlying already held; negative if already short. Default 0.",
"type": "integer"
},
"side": {
"description": "long = you bought the option; short = you sold/wrote it. Default long.",
"enum": [
"long",
"short"
],
"type": "string"
},
"strike": {
"type": "number"
},
"underlying_price": {
"description": "stock price to test at expiration",
"type": "number"
}
},
"required": [
"right",
"strike",
"underlying_price"
],
"type": "object"
},
"name": "option_expiry_risk",
"outputSchema": null
},
{
"description": "Find recurring charges in a transaction list — subscriptions, price-similar repeats — ranked by annual cost. Send 90+ days of (date, amount, description) rows for best results.",
"inputSchema": {
"properties": {
"transactions": {
"items": {
"properties": {
"amount": {
"type": "number"
},
"date": {
"type": "string"
},
"description": {
"type": "string"
}
},
"required": [
"amount",
"description"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"transactions"
],
"type": "object"
},
"name": "subscription_audit",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:6854777018daec1c75ec2d0ba0f7a52d820edd6c9b5cac1da2543c3cbdfaef29 | sha256sum