Install
$ agentstack add skill-realtyapi-realtyapi-skills-comparative-market-analysis ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Comparative Market Analysis (CMA)
Overview
Estimate what a property is worth by triangulating three sources: comparable sales, the portal valuation/estimate, and local market trends. Produce a value range with explicit reasoning — not a single magic number.
Use [realtyapi-api](../realtyapi-api/SKILL.md) for auth and endpoint discovery. This skill builds on property-research (subject details) and adds rigor on comps.
When to Use
- "What should I list this house for?"
- "Run a CMA on 123 Main St."
- "What are the comps and what's it worth?"
- Pre-listing pricing, offer strategy, or a sanity check on an asking price.
Workflow
- Subject property — fetch full details by address/URL (beds, baths, size, lot,
year, condition signals). This anchors the comparison.
- Comparables — pull comps/similar/nearby sold homes. Filter to genuinely
comparable ones: similar size (±~15–20%), type, and recent sales (ideally last 3–6 months) in the same area. Drop outliers and explain why.
- Portal valuation — pull the estimate/valuation (
zestimate*,estimates). - Market trend — pull area market data (
housing_market,market*,
housingMarketTrends): direction and $/sqft trend.
- Derive the range — base it on comp $/sqft applied to the subject's size,
cross-checked against the portal estimate, then nudge for trend and condition. Present a low–high range and a most-likely figure.
- Show your work in the report.
Output Format
# CMA: {address}
Subject: {beds}bd/{baths}ba · {size} sqft · {type} · built {year} · {source/link}
## Estimated Value
**{low} – {high}** (most likely: {point})
- Basis: comp median $/sqft {x} × {size} sqft, adjusted for {trend/condition}
- Portal estimate (cross-check): {value} ({source})
## Comparable Sales
| Address | Sold | Price | Beds/Baths | Size | $/sqft | Dist | Adj. notes |
|---------|------|------:|-----------|-----:|-------:|-----:|-----------|
## Market Context
- Trend: {rising/flat/falling} · Median $/sqft: {} · Days on market: {}
## Confidence & Caveats
- Confidence: {high/med/low} — {# of comps, recency, dispersion}
- Not an appraisal; based on public data and model estimates.
Common Pitfalls
- Reject bad comps (wrong size/type, stale sales, different sub-market) — quality
over quantity. State how many comps survived.
- Don't blindly trust the portal estimate; use it as a cross-check, not the answer.
- Always give a range; flag low confidence when comps are thin or scattered.
- Use sold prices for comps, not active list prices, where possible.
- This is a CMA, not a licensed appraisal — say so.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: realtyapi
- Source: realtyapi/realtyapi-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.