Server definition
- Hash
- sha256:7a1c3fed2b58f572446dc7dd71388bef46d8b32befca3996967443438b43ba12
- What it is
- What a remote MCP server returned when asked what it offers: 4 tools
The blob, as servednamed by its sha256
{
"instructions": "REIzer runs a deterministic real-estate underwriting engine: the same inputs always produce the same result. analyze_deal / best_use / solve_max_offer / list_strategies are free and need no key. Rates and percents are fractions (0.0675 = 6.75%). analyze_deal responses include a shareable report_url the user can open. Two further tools (pull_comps, str_market_data) return licensed market data and appear only when the connection carries a REIzer API key. Output is a software estimate, not financial, investment, tax or legal advice — figures are projections to verify, not recommendations. Docs: https://reizer.io/docs/api/",
"tools": [
{
"description": "Underwrite a real-estate investment deal and get a 0-100 score, verdict, cash flow, cap rate, DSCR, stress tests, break-even thresholds, and a shareable report link. Strategies: ltr (long-term rental), str (short-term rental), brrr, multifamily, flip (fix-n-flip), newc (new construction). All rates/percents are FRACTIONS (0.0675 = 6.75%). Omitted operating inputs are filled with documented defaults and listed in assumptions.estimated_fields. Output is a software estimate, not financial, investment, tax or legal advice — figures are projections to verify, not recommendations. Free, no key; the response includes a shareable report_url.",
"inputSchema": {
"properties": {
"inputs": {
"additionalProperties": true,
"description": "Deal inputs in camelCase engine keys. Anything omitted gets a documented default, listed back under assumptions.estimated_fields. Minimum: price + the strategy's income driver (marketRent / adr+occupancy / units / arv / land+build). Call list_strategies for the full per-strategy schema.",
"properties": {
"adr": {
"description": "Average nightly rate in dollars. Required for str.",
"type": "number"
},
"arv": {
"description": "After-repair value in dollars. Required for brrr and flip.",
"type": "number"
},
"btsArv": {
"description": "Finished build-to-sell value in dollars. Required for newc.",
"type": "number"
},
"buildPsf": {
"description": "Build cost per square foot in dollars. Required for newc.",
"type": "number"
},
"downPct": {
"description": "Down payment. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Optional — a documented default applies.",
"type": "number"
},
"insurance": {
"description": "Annual insurance in dollars. Optional.",
"type": "number"
},
"landPrice": {
"description": "Land acquisition cost in dollars. Required for newc.",
"type": "number"
},
"livingSqft": {
"description": "Heated living area in square feet. Required for newc.",
"type": "number"
},
"marketRent": {
"description": "Expected monthly rent in dollars. Required for ltr and brrr.",
"type": "number"
},
"occupancy": {
"description": "Expected occupancy. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Required for str.",
"type": "number"
},
"price": {
"description": "Purchase price in dollars. Required for every strategy except newc.",
"type": "number"
},
"rate": {
"description": "Annual interest rate. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Optional.",
"type": "number"
},
"rehabBudget": {
"description": "Renovation budget in dollars. Required for brrr and flip.",
"type": "number"
},
"taxes": {
"description": "Annual property taxes in dollars. Optional.",
"type": "number"
},
"term": {
"description": "Loan term in years. Optional.",
"type": "number"
},
"units": {
"description": "Multifamily rent roll — {unitCount, avgRent, marketRent?} or an array of unit objects. Required for multifamily.",
"type": "object"
},
"vacancyPct": {
"description": "Vacancy allowance. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Optional.",
"type": "number"
}
},
"type": "object"
},
"strategy": {
"description": "Investment strategy to analyze.",
"enum": [
"ltr",
"str",
"brrr",
"multifamily",
"flip",
"newc"
],
"type": "string"
}
},
"required": [
"strategy",
"inputs"
],
"type": "object"
},
"name": "analyze_deal",
"outputSchema": {
"additionalProperties": true,
"properties": {
"assumptions": {
"additionalProperties": true,
"description": "estimated_fields lists every input REIzer defaulted.",
"type": "object"
},
"breakdown": {
"description": "Ordered cash-flow / profit waterfall rows {label, amount, kind}; outflows are negative.",
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array"
},
"data_note": {
"description": "REIzer data tools that can refine this analysis (needs an API key).",
"type": "string"
},
"disclaimer": {
"description": "Not financial advice — software estimate only.",
"type": "string"
},
"inputs_used": {
"additionalProperties": true,
"description": "The resolved input set the analysis ran on — caller values plus documented defaults.",
"type": "object"
},
"levers": {
"description": "Top input changes that would each add ~$1,000/yr cash flow (STR).",
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array"
},
"metrics": {
"additionalProperties": true,
"description": "Headline metrics for this strategy.",
"type": "object"
},
"report_url": {
"description": "Shareable public report page (30 days).",
"type": "string"
},
"score": {
"description": "0-100 deal score.",
"type": "number"
},
"sensitivity": {
"description": "Which input drivers move the result most — {driver, range, low_impact, high_impact, swing}, sorted by swing (STR).",
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array"
},
"strategy": {
"type": "string"
},
"stress": {
"description": "Stress scenarios, each with a verdict.",
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array"
},
"summary": {
"description": "Deterministic one-paragraph summary.",
"type": "string"
},
"thresholds": {
"additionalProperties": true,
"type": [
"object",
"null"
]
},
"upfront": {
"description": "Cash-into-the-deal / project-cost stack rows {label, amount, kind}.",
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array"
},
"verdict": {
"description": "Strong (85+) / Solid (70+) / Workable (50+) / Risky (25+) / Run Away.",
"type": "string"
}
},
"required": [
"strategy",
"score",
"verdict",
"metrics",
"summary"
],
"type": "object"
}
},
{
"description": "Screen ONE property across every strategy the provided inputs qualify for and rank them by deal score — answers \"what is the best use of this property?\". Provide a superset of inputs (price, marketRent, adr, occupancy, rehabBudget, arv, units, …); strategies missing inputs are skipped with reasons. All rates/percents are FRACTIONS (0.0675 = 6.75%). Omitted operating inputs are filled with documented defaults and listed in assumptions.estimated_fields. Free, no key.",
"inputSchema": {
"properties": {
"inputs": {
"additionalProperties": true,
"description": "Deal inputs in camelCase engine keys. Anything omitted gets a documented default, listed back under assumptions.estimated_fields. Send a SUPERSET across strategies — whatever you know. Strategies missing their required fields are skipped with a reason rather than failing the call.",
"properties": {
"adr": {
"description": "Average nightly rate in dollars. Required for str.",
"type": "number"
},
"arv": {
"description": "After-repair value in dollars. Required for brrr and flip.",
"type": "number"
},
"btsArv": {
"description": "Finished build-to-sell value in dollars. Required for newc.",
"type": "number"
},
"buildPsf": {
"description": "Build cost per square foot in dollars. Required for newc.",
"type": "number"
},
"downPct": {
"description": "Down payment. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Optional — a documented default applies.",
"type": "number"
},
"insurance": {
"description": "Annual insurance in dollars. Optional.",
"type": "number"
},
"landPrice": {
"description": "Land acquisition cost in dollars. Required for newc.",
"type": "number"
},
"livingSqft": {
"description": "Heated living area in square feet. Required for newc.",
"type": "number"
},
"marketRent": {
"description": "Expected monthly rent in dollars. Required for ltr and brrr.",
"type": "number"
},
"occupancy": {
"description": "Expected occupancy. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Required for str.",
"type": "number"
},
"price": {
"description": "Purchase price in dollars. Required for every strategy except newc.",
"type": "number"
},
"rate": {
"description": "Annual interest rate. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Optional.",
"type": "number"
},
"rehabBudget": {
"description": "Renovation budget in dollars. Required for brrr and flip.",
"type": "number"
},
"taxes": {
"description": "Annual property taxes in dollars. Optional.",
"type": "number"
},
"term": {
"description": "Loan term in years. Optional.",
"type": "number"
},
"units": {
"description": "Multifamily rent roll — {unitCount, avgRent, marketRent?} or an array of unit objects. Required for multifamily.",
"type": "object"
},
"vacancyPct": {
"description": "Vacancy allowance. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Optional.",
"type": "number"
}
},
"type": "object"
}
},
"required": [
"inputs"
],
"type": "object"
},
"name": "best_use",
"outputSchema": {
"additionalProperties": true,
"properties": {
"best_use": {
"description": "Highest-scoring strategy id.",
"type": "string"
},
"data_note": {
"description": "REIzer data tools that can refine this analysis (needs an API key).",
"type": "string"
},
"disclaimer": {
"description": "Not financial advice — software estimate only.",
"type": "string"
},
"note": {
"type": "string"
},
"ranked": {
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array"
},
"skipped": {
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array"
}
},
"required": [
"best_use",
"ranked"
],
"type": "object"
}
},
{
"description": "List every supported strategy with its required and optional input fields. Call this first when unsure which inputs a strategy needs. Free, no key.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "list_strategies",
"outputSchema": {
"additionalProperties": true,
"properties": {
"strategies": {
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array"
}
},
"required": [
"strategies"
],
"type": "object"
}
},
{
"description": "Reverse-solve the Maximum Allowable Offer: the highest purchase price that still meets every return target (defaults: CoC 8%, DSCR 1.20, cash flow ≥ 0; flip: 10% after-tax margin + 15% annualized ROI). Returns the MAO, the binding constraint, and per-target price ceilings. Strategies: ltr, str, brrr, multifamily, flip. Provide the deal inputs WITHOUT committing to a price (use arv or an asking price as reference). Override targets via the targets object. All rates/percents are FRACTIONS (0.0675 = 6.75%). Omitted operating inputs are filled with documented defaults and listed in assumptions.estimated_fields. Free, no key.",
"inputSchema": {
"properties": {
"inputs": {
"additionalProperties": true,
"description": "Deal inputs in camelCase engine keys. Anything omitted gets a documented default, listed back under assumptions.estimated_fields. price is optional here — the asking price or ARV anchors the price-derived defaults while the solver searches.",
"properties": {
"adr": {
"description": "Average nightly rate in dollars. Required for str.",
"type": "number"
},
"arv": {
"description": "After-repair value in dollars. Required for brrr and flip.",
"type": "number"
},
"btsArv": {
"description": "Finished build-to-sell value in dollars. Required for newc.",
"type": "number"
},
"buildPsf": {
"description": "Build cost per square foot in dollars. Required for newc.",
"type": "number"
},
"downPct": {
"description": "Down payment. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Optional — a documented default applies.",
"type": "number"
},
"insurance": {
"description": "Annual insurance in dollars. Optional.",
"type": "number"
},
"landPrice": {
"description": "Land acquisition cost in dollars. Required for newc.",
"type": "number"
},
"livingSqft": {
"description": "Heated living area in square feet. Required for newc.",
"type": "number"
},
"marketRent": {
"description": "Expected monthly rent in dollars. Required for ltr and brrr.",
"type": "number"
},
"occupancy": {
"description": "Expected occupancy. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Required for str.",
"type": "number"
},
"price": {
"description": "Purchase price in dollars. Required for every strategy except newc.",
"type": "number"
},
"rate": {
"description": "Annual interest rate. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Optional.",
"type": "number"
},
"rehabBudget": {
"description": "Renovation budget in dollars. Required for brrr and flip.",
"type": "number"
},
"taxes": {
"description": "Annual property taxes in dollars. Optional.",
"type": "number"
},
"term": {
"description": "Loan term in years. Optional.",
"type": "number"
},
"units": {
"description": "Multifamily rent roll — {unitCount, avgRent, marketRent?} or an array of unit objects. Required for multifamily.",
"type": "object"
},
"vacancyPct": {
"description": "Vacancy allowance. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Optional.",
"type": "number"
}
},
"type": "object"
},
"strategy": {
"enum": [
"ltr",
"str",
"brrr",
"multifamily",
"flip"
],
"type": "string"
},
"targets": {
"additionalProperties": true,
"description": "Return targets the price must still satisfy. Omit to use each strategy's defaults.",
"properties": {
"afterTaxAnnualROI": {
"description": "Flip: minimum annualized after-tax ROI. Expressed as a FRACTION (0.0675 = 6.75%), never a percent.",
"type": "number"
},
"afterTaxMargin": {
"description": "Flip: minimum after-tax profit margin. Expressed as a FRACTION (0.0675 = 6.75%), never a percent.",
"type": "number"
},
"capitalRecovery": {
"description": "BRRRR: minimum share of invested cash returned at refi. Expressed as a FRACTION (0.0675 = 6.75%), never a percent.",
"type": "number"
},
"cocReturn": {
"description": "Minimum cash-on-cash return. Expressed as a FRACTION (0.0675 = 6.75%), never a percent.",
"type": "number"
},
"dscr": {
"description": "Minimum debt-service coverage ratio, e.g. 1.25.",
"type": "number"
},
"monthlyCF": {
"description": "Minimum monthly cash flow in dollars.",
"type": "number"
}
},
"type": "object"
}
},
"required": [
"strategy",
"inputs"
],
"type": "object"
},
"name": "solve_max_offer",
"outputSchema": {
"additionalProperties": true,
"properties": {
"binding_constraint": {
"additionalProperties": true,
"type": "object"
},
"ceilings_per_target": {
"additionalProperties": true,
"type": "object"
},
"disclaimer": {
"description": "Not financial advice — software estimate only.",
"type": "string"
},
"mao": {
"description": "Maximum allowable offer in dollars.",
"type": "number"
},
"metrics_at_mao": {
"additionalProperties": true,
"type": "object"
},
"strategy": {
"type": "string"
},
"summary": {
"type": "string"
}
},
"required": [
"mao",
"summary"
],
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:7a1c3fed2b58f572446dc7dd71388bef46d8b32befca3996967443438b43ba12 | sha256sum