Real estate analysis tools with property data extraction, FHA compliance scanning, investment metrics calculation, and multimodal AI analysis. Integrated with x402 micropayments on Base L2.
Three tools with solid descriptions (50-200 chars) and complete input schemas. All parameters are typed and described. Tool names follow verb_noun convention (normalize_, check_, calculate_). Schemas use proper JSON Schema with required fields and optional parameters with smart defaults. However, output schemas are only documented in discovery extensions (examples), not in the tool definitions themselves. Error handling and recovery guidance are absent. No tool annotations (readOnlyHint, idempotentHint) despite all being read-only operations.
Calculate rental property investment metrics for deal analysis. Use when evaluating whether a property is a good investment — computes cap rate, cash-on-cash return, DSCR, GRM, monthly cashflow, and NOI from purchase price, rent, and down payment. Optional inputs have smart defaults for quick screening.
Scan real estate listing text for Fair Housing Act violations before publication. Use when drafting or reviewing property marketing copy to catch discriminatory language across all 7 federal protected classes (Race, Color, Religion, National Origin, Sex, Familial Status, Disability). Returns flagged phrases with categories and a cleaned rewrite.
Extract structured property data from messy real estate listing text. Use when you have unstructured MLS remarks, listing descriptions, or agent notes and need parsed fields like address, bedrooms, bathrooms, price, and property type. Handles free-form text — no specific format required.
Output schemas documented only in discovery extensions, not in tool definitions. LLMs cannot see what fields to expect from tool responses.
No error handling or recovery guidance. Tools lack descriptions of failure modes, invalid input handling, or what the LLM should do if a call fails.
Tool annotations missing. All three tools are read-only (no side effects), but lack readOnlyHint annotation to signal this to the LLM.
Parameter descriptions lack format/constraint details. E.g., 'down_payment_percent' says '0-100' but should specify 'integer or decimal' and whether 20 means 20% or 0.20.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 65 | 2025-06-18+ | v2 |
No pagination or result limits documented. If normalize_property or check_fha_compliance process very long text, response size is unbounded.