How-to · 3 steps

How to value a property
with Monid.

Give this to your agent
$set up https://monid.ai/SKILL.md, then value <address> for me and show the cost of each step

and let it take it from there.

›value this listing and tell me what it competes with
#JobWhat came backCost
1Find it41 listings for one city
2The detail$524,900, 4 bed, 2,314 sqft
3The Zestimatenull, and billed anyway
4Sold comps41 comps, no sold price
5Rentals8 houses, $1,995 to $3,200
6Competition87 active in the same zip
7The rate30-year fixed at 7.75%
8Second sourcehomes.com, 3x the detail
9Totalten calls, two free fails
one listing · 41 comps · 87 competitors · today's rateagent running$0.33

Real run, 2026-09-24. A public for-sale listing, named by zip only.

Step 1

Set up Monid.

One line. It installs the CLI and asks for an API key from app.monid.ai. New accounts start with $1.00.

Say this to your agent
>set up https://monid.ai/SKILL.md
Step 2

Pick what you need. Say it in one sentence.

Click a job. Paste the sentence, fill in the brackets.

What this property actually is

Say this to your agent
>search <zip> with monid and find <address> in the rows: there is no address lookup in this aisle, the search takes a location and a page and nothing else. then try the detail call for its zpid, and if it 502s take price, beds and baths from the search row you already have
What the agent runsdone
zillow /get_property_details$0.01
zillow /search_homes_for_sale$0.05
homes.com /get_property_details$0.03
What came backzip 78729 · 2026-09-24
the subject: A four-bed in zip 78729
the subject

A four-bed in zip 78729

$524,900Active · 4 bed · 2 bath · 2,314 sqft
the listing$524,900 · four bed, two bath · 2,314 sqft on a quarter-acre cul-de-sac lot
the historylisted at $549,900 in July, so it has already come down $25,000
the detail call is unreliableon a second zip it 502'd on all three live properties across ten minutes and three backoffs, and succeeded only on an unrelated property and on the zpid printed in its own documentation
and it holds the two fields you needed it forsquare footage and the price history are exactly what the search row does not carry, so when it fails those are the two things you cannot get
the shapedetails take a zpid only, no address and no coordinates, so the search comes first
the cheaper onezillow's detail is $0.01; homes.com's is $0.03 and wants the full listing url
$0.01per property, after the search

What the automated valuation says

Say this to your agent
>take the zestimate out of the search row you already paid for: it is there on most rows. only call the dedicated endpoint if it is missing, and expect it to fail: on a second zip it 502'd on all three live properties and the one that answered returned nulls and billed anyway
What the agent runsdone
zillow /get_zestimate$0.03
What came backzip 78729 · 2026-09-24
the answernull, for both the sale estimate and the rent estimate
the bill$0.03, because the call succeeded: HTTP 200 and a success status with no number in it
the patternordinary listings on the same page had estimates; the boosted one did not
it is free in the searchon a second zip the estimate was already present on 35 of 41 search rows, so the dedicated $0.03 call is usually paying again for a field you have
and it mostly does not answerthat endpoint 502'd on all three live properties tried; the single call that returned 200 carried a success status with every estimate field null and billed $0.03
what to dotreat a null as an answer, not an error, and fall through to the sold comps
$0.03per property

What sold nearby, and for what

Say this to your agent
>pull the recently sold homes in <zip> with monid and read the sold price from the listings array, where the field is soldPrice. the other array in the same response calls it price and has no soldPrice at all, so reading the wrong one gives you undefined on every row
What the agent runsdone
zillow /search_recently_sold$0.05
What came backzip 78729 · 2026-09-24
Asking against the sold compsUS dollars
lowest comp$346,900
highest comp$478,100
asking$524,900
the set41 sales in the zip between July and September 2026
the rangeestimates from $346,900 to $478,100 on homes of 1,587 to 2,871 square feet
two arrays, two field nameson a second zip the sold price was populated on 41 of 41 rows in one array and 488 of 500 in the other, but the first calls it soldPrice with no price and the second calls it price with no soldPrice; read the wrong array and you get undefined every time
do not substitute the assessmentan earlier version of this page told readers to use the tax assessed value instead. Against real sold prices its median error was 58.9% and its worst 242.7%, wrong in both directions, so no multiplier corrects it
and the estimate is circular hereon sold rows the automated estimate sat within one percent of the sold price on 34 of 37, so using it as an independent check of that same sale tells you nothing
the older note, kepton the first zip this page ran, the sold price did come back empty on 41 of 41 rows, so check the array and the field before concluding either way
the readagainst that range, a $524,900 asking price sits above every comp in its own zip
$0.05per zip, 41 comps

What it would rent for

Say this to your agent
>pull the rentals in <zip> with monid and keep only rows that carry a home type: roughly half are buildings with no type, no beds and no price. note that the price field holds a MONTHLY RENT on these rows and a SALE PRICE on the for-sale rows, so convert before you compute a yield or you will report it twelve times too high
What the agent runsdone
zillow /search_homes_for_rent$0.03
homes.com /search_properties_for_rent$0.02
What came backzip 78729 · 2026-09-24
the houseseight single-family rentals between $1,995 and $3,200 a month
the yieldabout 5.5% gross, the $2,414 average against the $524,900 asking price
the noisemost of the 41 results are apartment complexes and have to be filtered out
the same field, two unitsthe price field is a monthly rent on rental rows and a sale price on for-sale rows, under the same name, so the naive division returns a gross yield of about 1200%
and half the rows have nothingon a second zip only 22 of 41 rows carried a home type at all and only four were single-family houses; the other nineteen were buildings with no type, no beds and no price
the trapa complex's zpid field is a lat and lon glued together, not an id you can reuse
$0.03per zip, 41 rentals

What it is competing with

Say this to your agent
>search the for-sale listings in <zip> with monid and tell me which count you used: the response carries three different totals and the rank changes by a dozen places depending on which array you rank within. do not filter on the status field: every row carries the same value
What the agent runsdone
zillow /search_homes_for_sale$0.05
homes.com /search_properties_for_sale$0.01
What came backzip 78729 · 2026-09-24
also for sale: Another in zip 78729
also for sale

Another in zip 78729

$549,000Active · 4 bed · 2,472 sqft
also for sale: Another in zip 78729
also for sale

Another in zip 78729

$680,000Active · 5 bed · 3,154 sqft
the market87 active listings in the one zip code, 41 of them on the first page
the shapea bare zip is a valid location for zillow and returns zip-scoped results
the second sourcehomes.com 502s on any zip in the location string, and the failure is free
there are three totalson a second zip the response reported 104, and its two arrays held 103 and 41 rows, so the same property ranked 10th of 41 or 22nd of 102 depending on which you counted
the status field does not filterevery row came back with the same for-sale status, so the variation that matters is in a different field entirely
and one field is a placeholderdays on market was real in one array and minus one on all 41 rows of the other
the read87 competitors is the number that decides whether $25,000 off was enough
$0.05per zip, 87 active

What the payment would be

Say this to your agent
>get today's mortgage rates with monid and work out the monthly principal and interest at 80% loan to value on this price
What the agent runsdone
zillow /get_mortgage_rates$0.05
What came backzip 78729 · 2026-09-24
today30-year fixed conventional 7.75%, APR 7.932%
the others15-year 7.00% · 30-year FHA 7.50% · 30-year jumbo 6.875%
the paymentabout $3,009 a month of principal and interest on a $419,920 loan
the shapethis one needs no parameters at all: an empty body returns every product
$0.05per call, every product

The same job on commercial

Say this to your agent
>search loopnet listings in <market> with monid, then pull the one that matches my brief and its broker
What the agent runsdone
loopnet /search_listings · not run$0.05
loopnet /get_broker_profile · not run$0.01
loopnet /search_brokers · not run$0.01
What it returnsshape of the answer
returnslistings with asking price, size and use class, then the broker behind one
why separatecommercial comps do not come from the residential endpoints and cost the same $0.05
not runthis page's subject is a house, so the shape here is from the catalog, not a run
$0.05per search · catalog rate
Step 3

Take the cheapest route with Monid.

The $0.01 detail and a zip search answer most of it. The $0.05 calls and the valuation that can return nothing come last.

Detail · $0.01 a property
Property details$0.01price, beds, sqft
Second source$0.03wants the full url
Value it · cheapest first
Rental comps$0.03
Zestimate$0.03
Homes.com detail$0.03
Recently sold$0.05
Active listings$0.05
Price the payment
Mortgage rates$0.05
Commercial comps$0.05if it is not a house · catalog rate
Back to you
rowvalued bycost
1the asking price$0.01
2Zestimate$0.12
3Recently sold$0.2
4the asking price$0.01
5Active listings$0.25
5 of 5 rows$0.59
Say this to your agent
>value <address> with monid, cheapest source first: the detail, then the comps, then today's rate, and show the cost per step
“take the estimate from the search”it is already on most search rows, and the dedicated call billed $0.03 to return nulls
“a zip is a location”zillow takes a bare zip; homes.com 502s on any zip at all, for free
“read the right array”one array calls it soldPrice and the other calls it price, so the wrong one is undefined on every row
“the rate needs nothing”one call with an empty body returns every mortgage product

One key. 1,700+ tools.

Real estate is one shelf of it.

Listings, comps, rateszillow · $0.01 to $0.05
A second opinionhomes.com · $0.01 to $0.03
Commercial and brokersloopnet · $0.01 to $0.05
Used car valuescarfax · $0.01 / call
Dealer inventorycars.com · $0.01 to $0.03
Auction historybid.cars · $0.01 to $0.02
Book values and ratingskbb · $0.01 / call
Vehicle detailsedmunds · $0.01 / call
Local climate historyweather underground · $0.01 to $0.02
Forecast by locationaccuweather · $0.01 to $0.05
Air qualityiqair · $0.01 / call
Fuel prices by metroaaa · $0.01 to $0.02
State statutesvaquill · to $0.06

+ 1,700 more across 55 providers

Browse the catalog →