@opentabs-dev/opentabs-plugin-zillow 0.0.74

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/README.md +159 -0
  2. package/dist/adapter.iife.js +15211 -0
  3. package/dist/adapter.iife.js.map +7 -0
  4. package/dist/index.d.ts +14 -0
  5. package/dist/index.d.ts.map +1 -0
  6. package/dist/index.js +47 -0
  7. package/dist/index.js.map +1 -0
  8. package/dist/tools/get-current-user.d.ts +14 -0
  9. package/dist/tools/get-current-user.d.ts.map +1 -0
  10. package/dist/tools/get-current-user.js +19 -0
  11. package/dist/tools/get-current-user.js.map +1 -0
  12. package/dist/tools/get-market-overview.d.ts +10 -0
  13. package/dist/tools/get-market-overview.d.ts.map +1 -0
  14. package/dist/tools/get-market-overview.js +70 -0
  15. package/dist/tools/get-market-overview.js.map +1 -0
  16. package/dist/tools/get-saved-homes.d.ts +6 -0
  17. package/dist/tools/get-saved-homes.d.ts.map +1 -0
  18. package/dist/tools/get-saved-homes.js +30 -0
  19. package/dist/tools/get-saved-homes.js.map +1 -0
  20. package/dist/tools/schemas.d.ts +99 -0
  21. package/dist/tools/schemas.d.ts.map +1 -0
  22. package/dist/tools/schemas.js +101 -0
  23. package/dist/tools/schemas.js.map +1 -0
  24. package/dist/tools/search-by-address.d.ts +32 -0
  25. package/dist/tools/search-by-address.d.ts.map +1 -0
  26. package/dist/tools/search-by-address.js +49 -0
  27. package/dist/tools/search-by-address.js.map +1 -0
  28. package/dist/tools/search-by-owner.d.ts +51 -0
  29. package/dist/tools/search-by-owner.d.ts.map +1 -0
  30. package/dist/tools/search-by-owner.js +78 -0
  31. package/dist/tools/search-by-owner.js.map +1 -0
  32. package/dist/tools/search-for-rent.d.ts +56 -0
  33. package/dist/tools/search-for-rent.d.ts.map +1 -0
  34. package/dist/tools/search-for-rent.js +86 -0
  35. package/dist/tools/search-for-rent.js.map +1 -0
  36. package/dist/tools/search-for-sale.d.ts +68 -0
  37. package/dist/tools/search-for-sale.d.ts.map +1 -0
  38. package/dist/tools/search-for-sale.js +98 -0
  39. package/dist/tools/search-for-sale.js.map +1 -0
  40. package/dist/tools/search-foreclosures.d.ts +49 -0
  41. package/dist/tools/search-foreclosures.d.ts.map +1 -0
  42. package/dist/tools/search-foreclosures.js +75 -0
  43. package/dist/tools/search-foreclosures.js.map +1 -0
  44. package/dist/tools/search-locations.d.ts +18 -0
  45. package/dist/tools/search-locations.d.ts.map +1 -0
  46. package/dist/tools/search-locations.js +23 -0
  47. package/dist/tools/search-locations.js.map +1 -0
  48. package/dist/tools/search-new-construction.d.ts +51 -0
  49. package/dist/tools/search-new-construction.d.ts.map +1 -0
  50. package/dist/tools/search-new-construction.js +78 -0
  51. package/dist/tools/search-new-construction.js.map +1 -0
  52. package/dist/tools/search-open-houses.d.ts +41 -0
  53. package/dist/tools/search-open-houses.d.ts.map +1 -0
  54. package/dist/tools/search-open-houses.js +59 -0
  55. package/dist/tools/search-open-houses.js.map +1 -0
  56. package/dist/tools/search-recently-sold.d.ts +52 -0
  57. package/dist/tools/search-recently-sold.d.ts.map +1 -0
  58. package/dist/tools/search-recently-sold.js +82 -0
  59. package/dist/tools/search-recently-sold.js.map +1 -0
  60. package/dist/tools.json +2056 -0
  61. package/dist/zillow-api.d.ts +143 -0
  62. package/dist/zillow-api.d.ts.map +1 -0
  63. package/dist/zillow-api.js +82 -0
  64. package/dist/zillow-api.js.map +1 -0
  65. package/package.json +55 -0
@@ -0,0 +1,2056 @@
1
+ {
2
+ "sdkVersion": "0.0.74",
3
+ "iconSvg": "<svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path fill=\"#006AFF\" d=\"M12.006 0L1.086 8.627v3.868c3.386-2.013 11.219-5.13 14.763-6.015.11-.024.16.005.227.078.372.427 1.586 1.899 1.916 2.301a.128.128 0 0 1-.03.195 43.607 43.607 0 0 0-6.67 6.527c-.03.037-.006.043.012.03 2.642-1.134 8.828-2.94 11.622-3.452V8.627zm-.48 11.177c-2.136.708-8.195 3.307-10.452 4.576V24h21.852v-7.936c-2.99.506-11.902 3.16-15.959 5.246a.183.183 0 0 1-.23-.036l-2.044-2.429c-.055-.061-.062-.098.011-.208 1.574-2.3 4.789-5.899 6.833-7.418.042-.03.031-.06-.012-.042Z\"/></svg>",
4
+ "iconInactiveSvg": "<svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path fill=\"#999999\" d=\"M12.006 0L1.086 8.627v3.868c3.386-2.013 11.219-5.13 14.763-6.015.11-.024.16.005.227.078.372.427 1.586 1.899 1.916 2.301a.128.128 0 0 1-.03.195 43.607 43.607 0 0 0-6.67 6.527c-.03.037-.006.043.012.03 2.642-1.134 8.828-2.94 11.622-3.452V8.627zm-.48 11.177c-2.136.708-8.195 3.307-10.452 4.576V24h21.852v-7.936c-2.99.506-11.902 3.16-15.959 5.246a.183.183 0 0 1-.23-.036l-2.044-2.429c-.055-.061-.062-.098.011-.208 1.574-2.3 4.789-5.899 6.833-7.418.042-.03.031-.06-.012-.042Z\"/></svg>",
5
+ "iconDarkSvg": "<svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path fill=\"#006AFF\" d=\"M12.006 0L1.086 8.627v3.868c3.386-2.013 11.219-5.13 14.763-6.015.11-.024.16.005.227.078.372.427 1.586 1.899 1.916 2.301a.128.128 0 0 1-.03.195 43.607 43.607 0 0 0-6.67 6.527c-.03.037-.006.043.012.03 2.642-1.134 8.828-2.94 11.622-3.452V8.627zm-.48 11.177c-2.136.708-8.195 3.307-10.452 4.576V24h21.852v-7.936c-2.99.506-11.902 3.16-15.959 5.246a.183.183 0 0 1-.23-.036l-2.044-2.429c-.055-.061-.062-.098.011-.208 1.574-2.3 4.789-5.899 6.833-7.418.042-.03.031-.06-.012-.042Z\"/></svg>",
6
+ "iconDarkInactiveSvg": "<svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path fill=\"#999999\" d=\"M12.006 0L1.086 8.627v3.868c3.386-2.013 11.219-5.13 14.763-6.015.11-.024.16.005.227.078.372.427 1.586 1.899 1.916 2.301a.128.128 0 0 1-.03.195 43.607 43.607 0 0 0-6.67 6.527c-.03.037-.006.043.012.03 2.642-1.134 8.828-2.94 11.622-3.452V8.627zm-.48 11.177c-2.136.708-8.195 3.307-10.452 4.576V24h21.852v-7.936c-2.99.506-11.902 3.16-15.959 5.246a.183.183 0 0 1-.23-.036l-2.044-2.429c-.055-.061-.062-.098.011-.208 1.574-2.3 4.789-5.899 6.833-7.418.042-.03.031-.06-.012-.042Z\"/></svg>",
7
+ "tools": [
8
+ {
9
+ "name": "get_current_user",
10
+ "displayName": "Get Current User",
11
+ "description": "Get the currently authenticated Zillow user profile including email, name, saved homes count, and agent status.",
12
+ "summary": "Get the current Zillow user profile",
13
+ "icon": "user",
14
+ "group": "Account",
15
+ "input_schema": {
16
+ "type": "object",
17
+ "properties": {},
18
+ "additionalProperties": false
19
+ },
20
+ "output_schema": {
21
+ "type": "object",
22
+ "properties": {
23
+ "user": {
24
+ "type": "object",
25
+ "properties": {
26
+ "is_logged_in": {
27
+ "type": "boolean",
28
+ "description": "Whether the user is logged in"
29
+ },
30
+ "email": {
31
+ "type": "string",
32
+ "description": "User email address"
33
+ },
34
+ "display_name": {
35
+ "type": "string",
36
+ "description": "User display name"
37
+ },
38
+ "full_name": {
39
+ "type": "string",
40
+ "description": "User full name"
41
+ },
42
+ "guid": {
43
+ "type": "string",
44
+ "description": "Global user ID"
45
+ },
46
+ "zuid": {
47
+ "type": "string",
48
+ "description": "Zillow user ID"
49
+ },
50
+ "saved_homes_count": {
51
+ "type": "number",
52
+ "description": "Number of saved homes"
53
+ },
54
+ "is_agent": {
55
+ "type": "boolean",
56
+ "description": "Whether the user is a real estate agent"
57
+ }
58
+ },
59
+ "required": [
60
+ "is_logged_in",
61
+ "email",
62
+ "display_name",
63
+ "full_name",
64
+ "guid",
65
+ "zuid",
66
+ "saved_homes_count",
67
+ "is_agent"
68
+ ],
69
+ "additionalProperties": false
70
+ }
71
+ },
72
+ "required": [
73
+ "user"
74
+ ],
75
+ "additionalProperties": false
76
+ }
77
+ },
78
+ {
79
+ "name": "search_locations",
80
+ "displayName": "Search Locations",
81
+ "description": "Search for cities, ZIP codes, neighborhoods, and addresses on Zillow. Returns location suggestions with region IDs that can be used with search tools. Use this to resolve a location name to a region_id before calling search_for_sale, search_for_rent, or search_recently_sold.",
82
+ "summary": "Search for cities, ZIP codes, neighborhoods, and addresses",
83
+ "icon": "map-pin",
84
+ "group": "Search",
85
+ "input_schema": {
86
+ "type": "object",
87
+ "properties": {
88
+ "query": {
89
+ "type": "string",
90
+ "minLength": 1,
91
+ "description": "Location search text (e.g., \"San Francisco\", \"94107\", \"Mission District\")"
92
+ }
93
+ },
94
+ "required": [
95
+ "query"
96
+ ],
97
+ "additionalProperties": false
98
+ },
99
+ "output_schema": {
100
+ "type": "object",
101
+ "properties": {
102
+ "locations": {
103
+ "type": "array",
104
+ "items": {
105
+ "type": "object",
106
+ "properties": {
107
+ "display": {
108
+ "type": "string",
109
+ "description": "Display text for the location"
110
+ },
111
+ "type": {
112
+ "type": "string",
113
+ "description": "Result type (Region, Address)"
114
+ },
115
+ "city": {
116
+ "type": "string",
117
+ "description": "City name"
118
+ },
119
+ "state": {
120
+ "type": "string",
121
+ "description": "State abbreviation"
122
+ },
123
+ "county": {
124
+ "type": "string",
125
+ "description": "County name"
126
+ },
127
+ "region_id": {
128
+ "type": "number",
129
+ "description": "Zillow region ID (use with search tools)"
130
+ },
131
+ "region_type": {
132
+ "type": "string",
133
+ "description": "Region type (city, zipcode, neighborhood, county)"
134
+ },
135
+ "latitude": {
136
+ "type": "number",
137
+ "description": "Latitude coordinate"
138
+ },
139
+ "longitude": {
140
+ "type": "number",
141
+ "description": "Longitude coordinate"
142
+ },
143
+ "zpid": {
144
+ "type": "number",
145
+ "description": "Zillow property ID (for address results, 0 otherwise)"
146
+ }
147
+ },
148
+ "required": [
149
+ "display",
150
+ "type",
151
+ "city",
152
+ "state",
153
+ "county",
154
+ "region_id",
155
+ "region_type",
156
+ "latitude",
157
+ "longitude",
158
+ "zpid"
159
+ ],
160
+ "additionalProperties": false
161
+ },
162
+ "description": "Matching locations"
163
+ }
164
+ },
165
+ "required": [
166
+ "locations"
167
+ ],
168
+ "additionalProperties": false
169
+ }
170
+ },
171
+ {
172
+ "name": "search_for_sale",
173
+ "displayName": "Search For Sale",
174
+ "description": "Search for properties currently for sale on Zillow. Requires either a region_id (from search_locations) or map_bounds. Supports filtering by price, beds, baths, square footage, home type, and more. Returns up to 41 results per page with pagination support.",
175
+ "summary": "Search properties for sale",
176
+ "icon": "home",
177
+ "group": "Search",
178
+ "input_schema": {
179
+ "type": "object",
180
+ "properties": {
181
+ "region_id": {
182
+ "description": "Zillow region ID (from search_locations). Required if map_bounds is not provided.",
183
+ "type": "integer",
184
+ "minimum": -9007199254740991,
185
+ "maximum": 9007199254740991
186
+ },
187
+ "region_type": {
188
+ "description": "Region type: \"city\", \"county\", \"zipcode\", \"neighborhood\" (default \"city\")",
189
+ "type": "string"
190
+ },
191
+ "map_bounds": {
192
+ "description": "Map bounding box. Required if region_id is not provided.",
193
+ "type": "object",
194
+ "properties": {
195
+ "west": {
196
+ "type": "number",
197
+ "description": "Western longitude"
198
+ },
199
+ "east": {
200
+ "type": "number",
201
+ "description": "Eastern longitude"
202
+ },
203
+ "south": {
204
+ "type": "number",
205
+ "description": "Southern latitude"
206
+ },
207
+ "north": {
208
+ "type": "number",
209
+ "description": "Northern latitude"
210
+ }
211
+ },
212
+ "required": [
213
+ "west",
214
+ "east",
215
+ "south",
216
+ "north"
217
+ ],
218
+ "additionalProperties": false
219
+ },
220
+ "min_price": {
221
+ "description": "Minimum price in dollars",
222
+ "type": "number"
223
+ },
224
+ "max_price": {
225
+ "description": "Maximum price in dollars",
226
+ "type": "number"
227
+ },
228
+ "min_beds": {
229
+ "description": "Minimum bedrooms",
230
+ "type": "integer",
231
+ "minimum": -9007199254740991,
232
+ "maximum": 9007199254740991
233
+ },
234
+ "max_beds": {
235
+ "description": "Maximum bedrooms",
236
+ "type": "integer",
237
+ "minimum": -9007199254740991,
238
+ "maximum": 9007199254740991
239
+ },
240
+ "min_baths": {
241
+ "description": "Minimum bathrooms",
242
+ "type": "integer",
243
+ "minimum": -9007199254740991,
244
+ "maximum": 9007199254740991
245
+ },
246
+ "min_sqft": {
247
+ "description": "Minimum square footage",
248
+ "type": "number"
249
+ },
250
+ "max_sqft": {
251
+ "description": "Maximum square footage",
252
+ "type": "number"
253
+ },
254
+ "home_type": {
255
+ "description": "Property type filter",
256
+ "type": "string",
257
+ "enum": [
258
+ "single_family",
259
+ "condo",
260
+ "townhouse",
261
+ "multi_family",
262
+ "lot_land",
263
+ "manufactured"
264
+ ]
265
+ },
266
+ "sort": {
267
+ "description": "Sort order (default \"globalrelevanceex\" = Homes for You). \"days\"=Newest, \"pricea\"=Price low-high, \"priced\"=Price high-low, \"zest\"=Zestimate high-low",
268
+ "type": "string",
269
+ "enum": [
270
+ "globalrelevanceex",
271
+ "days",
272
+ "pricea",
273
+ "priced",
274
+ "zest",
275
+ "zesta",
276
+ "size",
277
+ "lot",
278
+ "beds",
279
+ "baths"
280
+ ]
281
+ },
282
+ "page": {
283
+ "description": "Page number (default 1)",
284
+ "type": "integer",
285
+ "minimum": 1,
286
+ "maximum": 9007199254740991
287
+ }
288
+ },
289
+ "additionalProperties": false
290
+ },
291
+ "output_schema": {
292
+ "type": "object",
293
+ "properties": {
294
+ "total": {
295
+ "type": "number",
296
+ "description": "Total number of matching listings"
297
+ },
298
+ "listings": {
299
+ "type": "array",
300
+ "items": {
301
+ "type": "object",
302
+ "properties": {
303
+ "zpid": {
304
+ "type": "string",
305
+ "description": "Zillow property ID"
306
+ },
307
+ "address": {
308
+ "type": "string",
309
+ "description": "Full address"
310
+ },
311
+ "street": {
312
+ "type": "string",
313
+ "description": "Street address"
314
+ },
315
+ "city": {
316
+ "type": "string",
317
+ "description": "City"
318
+ },
319
+ "state": {
320
+ "type": "string",
321
+ "description": "State abbreviation"
322
+ },
323
+ "zipcode": {
324
+ "type": "string",
325
+ "description": "ZIP code"
326
+ },
327
+ "price": {
328
+ "type": "string",
329
+ "description": "Formatted price (e.g., \"$500,000\" or \"$4,085/mo\")"
330
+ },
331
+ "price_raw": {
332
+ "type": "number",
333
+ "description": "Numeric price in dollars"
334
+ },
335
+ "beds": {
336
+ "type": "number",
337
+ "description": "Number of bedrooms"
338
+ },
339
+ "baths": {
340
+ "type": "number",
341
+ "description": "Number of bathrooms"
342
+ },
343
+ "sqft": {
344
+ "type": "number",
345
+ "description": "Living area in square feet"
346
+ },
347
+ "status": {
348
+ "type": "string",
349
+ "description": "Listing status (FOR_SALE, FOR_RENT, RECENTLY_SOLD)"
350
+ },
351
+ "status_text": {
352
+ "type": "string",
353
+ "description": "Human-readable status (e.g., \"Condo for sale\")"
354
+ },
355
+ "home_type": {
356
+ "type": "string",
357
+ "description": "Property type (SINGLE_FAMILY, CONDO, TOWNHOUSE, etc.)"
358
+ },
359
+ "days_on_zillow": {
360
+ "type": "number",
361
+ "description": "Days listed on Zillow"
362
+ },
363
+ "zestimate": {
364
+ "type": "number",
365
+ "description": "Zillow Zestimate value in dollars (0 if unavailable)"
366
+ },
367
+ "rent_zestimate": {
368
+ "type": "number",
369
+ "description": "Estimated monthly rent in dollars (0 if unavailable)"
370
+ },
371
+ "tax_assessed_value": {
372
+ "type": "number",
373
+ "description": "Tax assessed value in dollars (0 if unavailable)"
374
+ },
375
+ "latitude": {
376
+ "type": "number",
377
+ "description": "Latitude coordinate"
378
+ },
379
+ "longitude": {
380
+ "type": "number",
381
+ "description": "Longitude coordinate"
382
+ },
383
+ "image_url": {
384
+ "type": "string",
385
+ "description": "Primary listing photo URL"
386
+ },
387
+ "detail_url": {
388
+ "type": "string",
389
+ "description": "URL to the property detail page on Zillow"
390
+ },
391
+ "is_saved": {
392
+ "type": "boolean",
393
+ "description": "Whether the property is saved to the user's favorites"
394
+ },
395
+ "has_3d_model": {
396
+ "type": "boolean",
397
+ "description": "Whether a 3D virtual tour is available"
398
+ }
399
+ },
400
+ "required": [
401
+ "zpid",
402
+ "address",
403
+ "street",
404
+ "city",
405
+ "state",
406
+ "zipcode",
407
+ "price",
408
+ "price_raw",
409
+ "beds",
410
+ "baths",
411
+ "sqft",
412
+ "status",
413
+ "status_text",
414
+ "home_type",
415
+ "days_on_zillow",
416
+ "zestimate",
417
+ "rent_zestimate",
418
+ "tax_assessed_value",
419
+ "latitude",
420
+ "longitude",
421
+ "image_url",
422
+ "detail_url",
423
+ "is_saved",
424
+ "has_3d_model"
425
+ ],
426
+ "additionalProperties": false
427
+ },
428
+ "description": "Property listings"
429
+ }
430
+ },
431
+ "required": [
432
+ "total",
433
+ "listings"
434
+ ],
435
+ "additionalProperties": false
436
+ }
437
+ },
438
+ {
439
+ "name": "search_for_rent",
440
+ "displayName": "Search For Rent",
441
+ "description": "Search for rental properties on Zillow. Requires either a region_id (from search_locations) or map_bounds. Supports filtering by price, beds, baths, and more. Returns up to 41 results per page.",
442
+ "summary": "Search rental properties",
443
+ "icon": "building",
444
+ "group": "Search",
445
+ "input_schema": {
446
+ "type": "object",
447
+ "properties": {
448
+ "region_id": {
449
+ "description": "Zillow region ID (from search_locations). Required if map_bounds is not provided.",
450
+ "type": "integer",
451
+ "minimum": -9007199254740991,
452
+ "maximum": 9007199254740991
453
+ },
454
+ "region_type": {
455
+ "description": "Region type: \"city\", \"county\", \"zipcode\", \"neighborhood\" (default \"city\")",
456
+ "type": "string"
457
+ },
458
+ "map_bounds": {
459
+ "description": "Map bounding box. Required if region_id is not provided.",
460
+ "type": "object",
461
+ "properties": {
462
+ "west": {
463
+ "type": "number",
464
+ "description": "Western longitude"
465
+ },
466
+ "east": {
467
+ "type": "number",
468
+ "description": "Eastern longitude"
469
+ },
470
+ "south": {
471
+ "type": "number",
472
+ "description": "Southern latitude"
473
+ },
474
+ "north": {
475
+ "type": "number",
476
+ "description": "Northern latitude"
477
+ }
478
+ },
479
+ "required": [
480
+ "west",
481
+ "east",
482
+ "south",
483
+ "north"
484
+ ],
485
+ "additionalProperties": false
486
+ },
487
+ "min_price": {
488
+ "description": "Minimum monthly rent in dollars",
489
+ "type": "number"
490
+ },
491
+ "max_price": {
492
+ "description": "Maximum monthly rent in dollars",
493
+ "type": "number"
494
+ },
495
+ "min_beds": {
496
+ "description": "Minimum bedrooms",
497
+ "type": "integer",
498
+ "minimum": -9007199254740991,
499
+ "maximum": 9007199254740991
500
+ },
501
+ "min_baths": {
502
+ "description": "Minimum bathrooms",
503
+ "type": "integer",
504
+ "minimum": -9007199254740991,
505
+ "maximum": 9007199254740991
506
+ },
507
+ "min_sqft": {
508
+ "description": "Minimum square footage",
509
+ "type": "number"
510
+ },
511
+ "max_sqft": {
512
+ "description": "Maximum square footage",
513
+ "type": "number"
514
+ },
515
+ "sort": {
516
+ "description": "Sort order (default \"globalrelevanceex\"). \"days\"=Newest, \"pricea\"=Price low-high, \"priced\"=Price high-low",
517
+ "type": "string",
518
+ "enum": [
519
+ "globalrelevanceex",
520
+ "days",
521
+ "pricea",
522
+ "priced",
523
+ "size",
524
+ "beds",
525
+ "baths"
526
+ ]
527
+ },
528
+ "page": {
529
+ "description": "Page number (default 1)",
530
+ "type": "integer",
531
+ "minimum": 1,
532
+ "maximum": 9007199254740991
533
+ }
534
+ },
535
+ "additionalProperties": false
536
+ },
537
+ "output_schema": {
538
+ "type": "object",
539
+ "properties": {
540
+ "total": {
541
+ "type": "number",
542
+ "description": "Total number of matching rentals"
543
+ },
544
+ "listings": {
545
+ "type": "array",
546
+ "items": {
547
+ "type": "object",
548
+ "properties": {
549
+ "zpid": {
550
+ "type": "string",
551
+ "description": "Zillow property ID"
552
+ },
553
+ "address": {
554
+ "type": "string",
555
+ "description": "Full address"
556
+ },
557
+ "street": {
558
+ "type": "string",
559
+ "description": "Street address"
560
+ },
561
+ "city": {
562
+ "type": "string",
563
+ "description": "City"
564
+ },
565
+ "state": {
566
+ "type": "string",
567
+ "description": "State abbreviation"
568
+ },
569
+ "zipcode": {
570
+ "type": "string",
571
+ "description": "ZIP code"
572
+ },
573
+ "price": {
574
+ "type": "string",
575
+ "description": "Formatted price (e.g., \"$500,000\" or \"$4,085/mo\")"
576
+ },
577
+ "price_raw": {
578
+ "type": "number",
579
+ "description": "Numeric price in dollars"
580
+ },
581
+ "beds": {
582
+ "type": "number",
583
+ "description": "Number of bedrooms"
584
+ },
585
+ "baths": {
586
+ "type": "number",
587
+ "description": "Number of bathrooms"
588
+ },
589
+ "sqft": {
590
+ "type": "number",
591
+ "description": "Living area in square feet"
592
+ },
593
+ "status": {
594
+ "type": "string",
595
+ "description": "Listing status (FOR_SALE, FOR_RENT, RECENTLY_SOLD)"
596
+ },
597
+ "status_text": {
598
+ "type": "string",
599
+ "description": "Human-readable status (e.g., \"Condo for sale\")"
600
+ },
601
+ "home_type": {
602
+ "type": "string",
603
+ "description": "Property type (SINGLE_FAMILY, CONDO, TOWNHOUSE, etc.)"
604
+ },
605
+ "days_on_zillow": {
606
+ "type": "number",
607
+ "description": "Days listed on Zillow"
608
+ },
609
+ "zestimate": {
610
+ "type": "number",
611
+ "description": "Zillow Zestimate value in dollars (0 if unavailable)"
612
+ },
613
+ "rent_zestimate": {
614
+ "type": "number",
615
+ "description": "Estimated monthly rent in dollars (0 if unavailable)"
616
+ },
617
+ "tax_assessed_value": {
618
+ "type": "number",
619
+ "description": "Tax assessed value in dollars (0 if unavailable)"
620
+ },
621
+ "latitude": {
622
+ "type": "number",
623
+ "description": "Latitude coordinate"
624
+ },
625
+ "longitude": {
626
+ "type": "number",
627
+ "description": "Longitude coordinate"
628
+ },
629
+ "image_url": {
630
+ "type": "string",
631
+ "description": "Primary listing photo URL"
632
+ },
633
+ "detail_url": {
634
+ "type": "string",
635
+ "description": "URL to the property detail page on Zillow"
636
+ },
637
+ "is_saved": {
638
+ "type": "boolean",
639
+ "description": "Whether the property is saved to the user's favorites"
640
+ },
641
+ "has_3d_model": {
642
+ "type": "boolean",
643
+ "description": "Whether a 3D virtual tour is available"
644
+ }
645
+ },
646
+ "required": [
647
+ "zpid",
648
+ "address",
649
+ "street",
650
+ "city",
651
+ "state",
652
+ "zipcode",
653
+ "price",
654
+ "price_raw",
655
+ "beds",
656
+ "baths",
657
+ "sqft",
658
+ "status",
659
+ "status_text",
660
+ "home_type",
661
+ "days_on_zillow",
662
+ "zestimate",
663
+ "rent_zestimate",
664
+ "tax_assessed_value",
665
+ "latitude",
666
+ "longitude",
667
+ "image_url",
668
+ "detail_url",
669
+ "is_saved",
670
+ "has_3d_model"
671
+ ],
672
+ "additionalProperties": false
673
+ },
674
+ "description": "Rental listings"
675
+ }
676
+ },
677
+ "required": [
678
+ "total",
679
+ "listings"
680
+ ],
681
+ "additionalProperties": false
682
+ }
683
+ },
684
+ {
685
+ "name": "search_recently_sold",
686
+ "displayName": "Search Recently Sold",
687
+ "description": "Search for recently sold properties on Zillow. Useful for market research and comp analysis. Requires either a region_id (from search_locations) or map_bounds. Returns sale prices, dates, and property details.",
688
+ "summary": "Search recently sold properties",
689
+ "icon": "badge-check",
690
+ "group": "Search",
691
+ "input_schema": {
692
+ "type": "object",
693
+ "properties": {
694
+ "region_id": {
695
+ "description": "Zillow region ID (from search_locations). Required if map_bounds is not provided.",
696
+ "type": "integer",
697
+ "minimum": -9007199254740991,
698
+ "maximum": 9007199254740991
699
+ },
700
+ "region_type": {
701
+ "description": "Region type: \"city\", \"county\", \"zipcode\", \"neighborhood\" (default \"city\")",
702
+ "type": "string"
703
+ },
704
+ "map_bounds": {
705
+ "description": "Map bounding box. Required if region_id is not provided.",
706
+ "type": "object",
707
+ "properties": {
708
+ "west": {
709
+ "type": "number",
710
+ "description": "Western longitude"
711
+ },
712
+ "east": {
713
+ "type": "number",
714
+ "description": "Eastern longitude"
715
+ },
716
+ "south": {
717
+ "type": "number",
718
+ "description": "Southern latitude"
719
+ },
720
+ "north": {
721
+ "type": "number",
722
+ "description": "Northern latitude"
723
+ }
724
+ },
725
+ "required": [
726
+ "west",
727
+ "east",
728
+ "south",
729
+ "north"
730
+ ],
731
+ "additionalProperties": false
732
+ },
733
+ "min_price": {
734
+ "description": "Minimum sale price in dollars",
735
+ "type": "number"
736
+ },
737
+ "max_price": {
738
+ "description": "Maximum sale price in dollars",
739
+ "type": "number"
740
+ },
741
+ "min_beds": {
742
+ "description": "Minimum bedrooms",
743
+ "type": "integer",
744
+ "minimum": -9007199254740991,
745
+ "maximum": 9007199254740991
746
+ },
747
+ "min_baths": {
748
+ "description": "Minimum bathrooms",
749
+ "type": "integer",
750
+ "minimum": -9007199254740991,
751
+ "maximum": 9007199254740991
752
+ },
753
+ "sort": {
754
+ "description": "Sort order (default \"globalrelevanceex\"). \"days\"=Most recent, \"pricea\"=Price low-high, \"priced\"=Price high-low",
755
+ "type": "string",
756
+ "enum": [
757
+ "globalrelevanceex",
758
+ "days",
759
+ "pricea",
760
+ "priced",
761
+ "size"
762
+ ]
763
+ },
764
+ "page": {
765
+ "description": "Page number (default 1)",
766
+ "type": "integer",
767
+ "minimum": 1,
768
+ "maximum": 9007199254740991
769
+ }
770
+ },
771
+ "additionalProperties": false
772
+ },
773
+ "output_schema": {
774
+ "type": "object",
775
+ "properties": {
776
+ "total": {
777
+ "type": "number",
778
+ "description": "Total number of recently sold properties"
779
+ },
780
+ "listings": {
781
+ "type": "array",
782
+ "items": {
783
+ "type": "object",
784
+ "properties": {
785
+ "zpid": {
786
+ "type": "string",
787
+ "description": "Zillow property ID"
788
+ },
789
+ "address": {
790
+ "type": "string",
791
+ "description": "Full address"
792
+ },
793
+ "street": {
794
+ "type": "string",
795
+ "description": "Street address"
796
+ },
797
+ "city": {
798
+ "type": "string",
799
+ "description": "City"
800
+ },
801
+ "state": {
802
+ "type": "string",
803
+ "description": "State abbreviation"
804
+ },
805
+ "zipcode": {
806
+ "type": "string",
807
+ "description": "ZIP code"
808
+ },
809
+ "price": {
810
+ "type": "string",
811
+ "description": "Formatted price (e.g., \"$500,000\" or \"$4,085/mo\")"
812
+ },
813
+ "price_raw": {
814
+ "type": "number",
815
+ "description": "Numeric price in dollars"
816
+ },
817
+ "beds": {
818
+ "type": "number",
819
+ "description": "Number of bedrooms"
820
+ },
821
+ "baths": {
822
+ "type": "number",
823
+ "description": "Number of bathrooms"
824
+ },
825
+ "sqft": {
826
+ "type": "number",
827
+ "description": "Living area in square feet"
828
+ },
829
+ "status": {
830
+ "type": "string",
831
+ "description": "Listing status (FOR_SALE, FOR_RENT, RECENTLY_SOLD)"
832
+ },
833
+ "status_text": {
834
+ "type": "string",
835
+ "description": "Human-readable status (e.g., \"Condo for sale\")"
836
+ },
837
+ "home_type": {
838
+ "type": "string",
839
+ "description": "Property type (SINGLE_FAMILY, CONDO, TOWNHOUSE, etc.)"
840
+ },
841
+ "days_on_zillow": {
842
+ "type": "number",
843
+ "description": "Days listed on Zillow"
844
+ },
845
+ "zestimate": {
846
+ "type": "number",
847
+ "description": "Zillow Zestimate value in dollars (0 if unavailable)"
848
+ },
849
+ "rent_zestimate": {
850
+ "type": "number",
851
+ "description": "Estimated monthly rent in dollars (0 if unavailable)"
852
+ },
853
+ "tax_assessed_value": {
854
+ "type": "number",
855
+ "description": "Tax assessed value in dollars (0 if unavailable)"
856
+ },
857
+ "latitude": {
858
+ "type": "number",
859
+ "description": "Latitude coordinate"
860
+ },
861
+ "longitude": {
862
+ "type": "number",
863
+ "description": "Longitude coordinate"
864
+ },
865
+ "image_url": {
866
+ "type": "string",
867
+ "description": "Primary listing photo URL"
868
+ },
869
+ "detail_url": {
870
+ "type": "string",
871
+ "description": "URL to the property detail page on Zillow"
872
+ },
873
+ "is_saved": {
874
+ "type": "boolean",
875
+ "description": "Whether the property is saved to the user's favorites"
876
+ },
877
+ "has_3d_model": {
878
+ "type": "boolean",
879
+ "description": "Whether a 3D virtual tour is available"
880
+ }
881
+ },
882
+ "required": [
883
+ "zpid",
884
+ "address",
885
+ "street",
886
+ "city",
887
+ "state",
888
+ "zipcode",
889
+ "price",
890
+ "price_raw",
891
+ "beds",
892
+ "baths",
893
+ "sqft",
894
+ "status",
895
+ "status_text",
896
+ "home_type",
897
+ "days_on_zillow",
898
+ "zestimate",
899
+ "rent_zestimate",
900
+ "tax_assessed_value",
901
+ "latitude",
902
+ "longitude",
903
+ "image_url",
904
+ "detail_url",
905
+ "is_saved",
906
+ "has_3d_model"
907
+ ],
908
+ "additionalProperties": false
909
+ },
910
+ "description": "Recently sold listings"
911
+ }
912
+ },
913
+ "required": [
914
+ "total",
915
+ "listings"
916
+ ],
917
+ "additionalProperties": false
918
+ }
919
+ },
920
+ {
921
+ "name": "search_open_houses",
922
+ "displayName": "Search Open Houses",
923
+ "description": "Search for properties with upcoming open houses in a given area. Requires either a region_id (from search_locations) or map_bounds.",
924
+ "summary": "Find properties with open houses",
925
+ "icon": "door-open",
926
+ "group": "Search",
927
+ "input_schema": {
928
+ "type": "object",
929
+ "properties": {
930
+ "region_id": {
931
+ "description": "Zillow region ID (from search_locations). Required if map_bounds is not provided.",
932
+ "type": "integer",
933
+ "minimum": -9007199254740991,
934
+ "maximum": 9007199254740991
935
+ },
936
+ "region_type": {
937
+ "description": "Region type: \"city\", \"county\", \"zipcode\", \"neighborhood\" (default \"city\")",
938
+ "type": "string"
939
+ },
940
+ "map_bounds": {
941
+ "description": "Map bounding box. Required if region_id is not provided.",
942
+ "type": "object",
943
+ "properties": {
944
+ "west": {
945
+ "type": "number",
946
+ "description": "Western longitude"
947
+ },
948
+ "east": {
949
+ "type": "number",
950
+ "description": "Eastern longitude"
951
+ },
952
+ "south": {
953
+ "type": "number",
954
+ "description": "Southern latitude"
955
+ },
956
+ "north": {
957
+ "type": "number",
958
+ "description": "Northern latitude"
959
+ }
960
+ },
961
+ "required": [
962
+ "west",
963
+ "east",
964
+ "south",
965
+ "north"
966
+ ],
967
+ "additionalProperties": false
968
+ },
969
+ "page": {
970
+ "description": "Page number (default 1)",
971
+ "type": "integer",
972
+ "minimum": 1,
973
+ "maximum": 9007199254740991
974
+ }
975
+ },
976
+ "additionalProperties": false
977
+ },
978
+ "output_schema": {
979
+ "type": "object",
980
+ "properties": {
981
+ "total": {
982
+ "type": "number",
983
+ "description": "Total listings with open houses"
984
+ },
985
+ "listings": {
986
+ "type": "array",
987
+ "items": {
988
+ "type": "object",
989
+ "properties": {
990
+ "zpid": {
991
+ "type": "string",
992
+ "description": "Zillow property ID"
993
+ },
994
+ "address": {
995
+ "type": "string",
996
+ "description": "Full address"
997
+ },
998
+ "street": {
999
+ "type": "string",
1000
+ "description": "Street address"
1001
+ },
1002
+ "city": {
1003
+ "type": "string",
1004
+ "description": "City"
1005
+ },
1006
+ "state": {
1007
+ "type": "string",
1008
+ "description": "State abbreviation"
1009
+ },
1010
+ "zipcode": {
1011
+ "type": "string",
1012
+ "description": "ZIP code"
1013
+ },
1014
+ "price": {
1015
+ "type": "string",
1016
+ "description": "Formatted price (e.g., \"$500,000\" or \"$4,085/mo\")"
1017
+ },
1018
+ "price_raw": {
1019
+ "type": "number",
1020
+ "description": "Numeric price in dollars"
1021
+ },
1022
+ "beds": {
1023
+ "type": "number",
1024
+ "description": "Number of bedrooms"
1025
+ },
1026
+ "baths": {
1027
+ "type": "number",
1028
+ "description": "Number of bathrooms"
1029
+ },
1030
+ "sqft": {
1031
+ "type": "number",
1032
+ "description": "Living area in square feet"
1033
+ },
1034
+ "status": {
1035
+ "type": "string",
1036
+ "description": "Listing status (FOR_SALE, FOR_RENT, RECENTLY_SOLD)"
1037
+ },
1038
+ "status_text": {
1039
+ "type": "string",
1040
+ "description": "Human-readable status (e.g., \"Condo for sale\")"
1041
+ },
1042
+ "home_type": {
1043
+ "type": "string",
1044
+ "description": "Property type (SINGLE_FAMILY, CONDO, TOWNHOUSE, etc.)"
1045
+ },
1046
+ "days_on_zillow": {
1047
+ "type": "number",
1048
+ "description": "Days listed on Zillow"
1049
+ },
1050
+ "zestimate": {
1051
+ "type": "number",
1052
+ "description": "Zillow Zestimate value in dollars (0 if unavailable)"
1053
+ },
1054
+ "rent_zestimate": {
1055
+ "type": "number",
1056
+ "description": "Estimated monthly rent in dollars (0 if unavailable)"
1057
+ },
1058
+ "tax_assessed_value": {
1059
+ "type": "number",
1060
+ "description": "Tax assessed value in dollars (0 if unavailable)"
1061
+ },
1062
+ "latitude": {
1063
+ "type": "number",
1064
+ "description": "Latitude coordinate"
1065
+ },
1066
+ "longitude": {
1067
+ "type": "number",
1068
+ "description": "Longitude coordinate"
1069
+ },
1070
+ "image_url": {
1071
+ "type": "string",
1072
+ "description": "Primary listing photo URL"
1073
+ },
1074
+ "detail_url": {
1075
+ "type": "string",
1076
+ "description": "URL to the property detail page on Zillow"
1077
+ },
1078
+ "is_saved": {
1079
+ "type": "boolean",
1080
+ "description": "Whether the property is saved to the user's favorites"
1081
+ },
1082
+ "has_3d_model": {
1083
+ "type": "boolean",
1084
+ "description": "Whether a 3D virtual tour is available"
1085
+ }
1086
+ },
1087
+ "required": [
1088
+ "zpid",
1089
+ "address",
1090
+ "street",
1091
+ "city",
1092
+ "state",
1093
+ "zipcode",
1094
+ "price",
1095
+ "price_raw",
1096
+ "beds",
1097
+ "baths",
1098
+ "sqft",
1099
+ "status",
1100
+ "status_text",
1101
+ "home_type",
1102
+ "days_on_zillow",
1103
+ "zestimate",
1104
+ "rent_zestimate",
1105
+ "tax_assessed_value",
1106
+ "latitude",
1107
+ "longitude",
1108
+ "image_url",
1109
+ "detail_url",
1110
+ "is_saved",
1111
+ "has_3d_model"
1112
+ ],
1113
+ "additionalProperties": false
1114
+ },
1115
+ "description": "Properties with open houses"
1116
+ }
1117
+ },
1118
+ "required": [
1119
+ "total",
1120
+ "listings"
1121
+ ],
1122
+ "additionalProperties": false
1123
+ }
1124
+ },
1125
+ {
1126
+ "name": "search_new_construction",
1127
+ "displayName": "Search New Construction",
1128
+ "description": "Search for new construction properties on Zillow. Requires either a region_id (from search_locations) or map_bounds. Filters to new construction homes including those coming soon.",
1129
+ "summary": "Find new construction homes",
1130
+ "icon": "hammer",
1131
+ "group": "Search",
1132
+ "input_schema": {
1133
+ "type": "object",
1134
+ "properties": {
1135
+ "region_id": {
1136
+ "description": "Zillow region ID (from search_locations). Required if map_bounds is not provided.",
1137
+ "type": "integer",
1138
+ "minimum": -9007199254740991,
1139
+ "maximum": 9007199254740991
1140
+ },
1141
+ "region_type": {
1142
+ "description": "Region type: \"city\", \"county\", \"zipcode\", \"neighborhood\" (default \"city\")",
1143
+ "type": "string"
1144
+ },
1145
+ "map_bounds": {
1146
+ "description": "Map bounding box. Required if region_id is not provided.",
1147
+ "type": "object",
1148
+ "properties": {
1149
+ "west": {
1150
+ "type": "number",
1151
+ "description": "Western longitude"
1152
+ },
1153
+ "east": {
1154
+ "type": "number",
1155
+ "description": "Eastern longitude"
1156
+ },
1157
+ "south": {
1158
+ "type": "number",
1159
+ "description": "Southern latitude"
1160
+ },
1161
+ "north": {
1162
+ "type": "number",
1163
+ "description": "Northern latitude"
1164
+ }
1165
+ },
1166
+ "required": [
1167
+ "west",
1168
+ "east",
1169
+ "south",
1170
+ "north"
1171
+ ],
1172
+ "additionalProperties": false
1173
+ },
1174
+ "min_price": {
1175
+ "description": "Minimum price in dollars",
1176
+ "type": "number"
1177
+ },
1178
+ "max_price": {
1179
+ "description": "Maximum price in dollars",
1180
+ "type": "number"
1181
+ },
1182
+ "min_beds": {
1183
+ "description": "Minimum bedrooms",
1184
+ "type": "integer",
1185
+ "minimum": -9007199254740991,
1186
+ "maximum": 9007199254740991
1187
+ },
1188
+ "sort": {
1189
+ "description": "Sort order (default \"globalrelevanceex\")",
1190
+ "type": "string",
1191
+ "enum": [
1192
+ "globalrelevanceex",
1193
+ "days",
1194
+ "pricea",
1195
+ "priced",
1196
+ "size"
1197
+ ]
1198
+ },
1199
+ "page": {
1200
+ "description": "Page number (default 1)",
1201
+ "type": "integer",
1202
+ "minimum": 1,
1203
+ "maximum": 9007199254740991
1204
+ }
1205
+ },
1206
+ "additionalProperties": false
1207
+ },
1208
+ "output_schema": {
1209
+ "type": "object",
1210
+ "properties": {
1211
+ "total": {
1212
+ "type": "number",
1213
+ "description": "Total new construction listings"
1214
+ },
1215
+ "listings": {
1216
+ "type": "array",
1217
+ "items": {
1218
+ "type": "object",
1219
+ "properties": {
1220
+ "zpid": {
1221
+ "type": "string",
1222
+ "description": "Zillow property ID"
1223
+ },
1224
+ "address": {
1225
+ "type": "string",
1226
+ "description": "Full address"
1227
+ },
1228
+ "street": {
1229
+ "type": "string",
1230
+ "description": "Street address"
1231
+ },
1232
+ "city": {
1233
+ "type": "string",
1234
+ "description": "City"
1235
+ },
1236
+ "state": {
1237
+ "type": "string",
1238
+ "description": "State abbreviation"
1239
+ },
1240
+ "zipcode": {
1241
+ "type": "string",
1242
+ "description": "ZIP code"
1243
+ },
1244
+ "price": {
1245
+ "type": "string",
1246
+ "description": "Formatted price (e.g., \"$500,000\" or \"$4,085/mo\")"
1247
+ },
1248
+ "price_raw": {
1249
+ "type": "number",
1250
+ "description": "Numeric price in dollars"
1251
+ },
1252
+ "beds": {
1253
+ "type": "number",
1254
+ "description": "Number of bedrooms"
1255
+ },
1256
+ "baths": {
1257
+ "type": "number",
1258
+ "description": "Number of bathrooms"
1259
+ },
1260
+ "sqft": {
1261
+ "type": "number",
1262
+ "description": "Living area in square feet"
1263
+ },
1264
+ "status": {
1265
+ "type": "string",
1266
+ "description": "Listing status (FOR_SALE, FOR_RENT, RECENTLY_SOLD)"
1267
+ },
1268
+ "status_text": {
1269
+ "type": "string",
1270
+ "description": "Human-readable status (e.g., \"Condo for sale\")"
1271
+ },
1272
+ "home_type": {
1273
+ "type": "string",
1274
+ "description": "Property type (SINGLE_FAMILY, CONDO, TOWNHOUSE, etc.)"
1275
+ },
1276
+ "days_on_zillow": {
1277
+ "type": "number",
1278
+ "description": "Days listed on Zillow"
1279
+ },
1280
+ "zestimate": {
1281
+ "type": "number",
1282
+ "description": "Zillow Zestimate value in dollars (0 if unavailable)"
1283
+ },
1284
+ "rent_zestimate": {
1285
+ "type": "number",
1286
+ "description": "Estimated monthly rent in dollars (0 if unavailable)"
1287
+ },
1288
+ "tax_assessed_value": {
1289
+ "type": "number",
1290
+ "description": "Tax assessed value in dollars (0 if unavailable)"
1291
+ },
1292
+ "latitude": {
1293
+ "type": "number",
1294
+ "description": "Latitude coordinate"
1295
+ },
1296
+ "longitude": {
1297
+ "type": "number",
1298
+ "description": "Longitude coordinate"
1299
+ },
1300
+ "image_url": {
1301
+ "type": "string",
1302
+ "description": "Primary listing photo URL"
1303
+ },
1304
+ "detail_url": {
1305
+ "type": "string",
1306
+ "description": "URL to the property detail page on Zillow"
1307
+ },
1308
+ "is_saved": {
1309
+ "type": "boolean",
1310
+ "description": "Whether the property is saved to the user's favorites"
1311
+ },
1312
+ "has_3d_model": {
1313
+ "type": "boolean",
1314
+ "description": "Whether a 3D virtual tour is available"
1315
+ }
1316
+ },
1317
+ "required": [
1318
+ "zpid",
1319
+ "address",
1320
+ "street",
1321
+ "city",
1322
+ "state",
1323
+ "zipcode",
1324
+ "price",
1325
+ "price_raw",
1326
+ "beds",
1327
+ "baths",
1328
+ "sqft",
1329
+ "status",
1330
+ "status_text",
1331
+ "home_type",
1332
+ "days_on_zillow",
1333
+ "zestimate",
1334
+ "rent_zestimate",
1335
+ "tax_assessed_value",
1336
+ "latitude",
1337
+ "longitude",
1338
+ "image_url",
1339
+ "detail_url",
1340
+ "is_saved",
1341
+ "has_3d_model"
1342
+ ],
1343
+ "additionalProperties": false
1344
+ },
1345
+ "description": "New construction listings"
1346
+ }
1347
+ },
1348
+ "required": [
1349
+ "total",
1350
+ "listings"
1351
+ ],
1352
+ "additionalProperties": false
1353
+ }
1354
+ },
1355
+ {
1356
+ "name": "search_foreclosures",
1357
+ "displayName": "Search Foreclosures",
1358
+ "description": "Search for foreclosure and pre-foreclosure properties on Zillow. Requires either a region_id (from search_locations) or map_bounds.",
1359
+ "summary": "Find foreclosure properties",
1360
+ "icon": "alert-triangle",
1361
+ "group": "Search",
1362
+ "input_schema": {
1363
+ "type": "object",
1364
+ "properties": {
1365
+ "region_id": {
1366
+ "description": "Zillow region ID (from search_locations). Required if map_bounds is not provided.",
1367
+ "type": "integer",
1368
+ "minimum": -9007199254740991,
1369
+ "maximum": 9007199254740991
1370
+ },
1371
+ "region_type": {
1372
+ "description": "Region type: \"city\", \"county\", \"zipcode\", \"neighborhood\" (default \"city\")",
1373
+ "type": "string"
1374
+ },
1375
+ "map_bounds": {
1376
+ "description": "Map bounding box. Required if region_id is not provided.",
1377
+ "type": "object",
1378
+ "properties": {
1379
+ "west": {
1380
+ "type": "number",
1381
+ "description": "Western longitude"
1382
+ },
1383
+ "east": {
1384
+ "type": "number",
1385
+ "description": "Eastern longitude"
1386
+ },
1387
+ "south": {
1388
+ "type": "number",
1389
+ "description": "Southern latitude"
1390
+ },
1391
+ "north": {
1392
+ "type": "number",
1393
+ "description": "Northern latitude"
1394
+ }
1395
+ },
1396
+ "required": [
1397
+ "west",
1398
+ "east",
1399
+ "south",
1400
+ "north"
1401
+ ],
1402
+ "additionalProperties": false
1403
+ },
1404
+ "min_price": {
1405
+ "description": "Minimum price in dollars",
1406
+ "type": "number"
1407
+ },
1408
+ "max_price": {
1409
+ "description": "Maximum price in dollars",
1410
+ "type": "number"
1411
+ },
1412
+ "sort": {
1413
+ "description": "Sort order (default \"globalrelevanceex\")",
1414
+ "type": "string",
1415
+ "enum": [
1416
+ "globalrelevanceex",
1417
+ "days",
1418
+ "pricea",
1419
+ "priced"
1420
+ ]
1421
+ },
1422
+ "page": {
1423
+ "description": "Page number (default 1)",
1424
+ "type": "integer",
1425
+ "minimum": 1,
1426
+ "maximum": 9007199254740991
1427
+ }
1428
+ },
1429
+ "additionalProperties": false
1430
+ },
1431
+ "output_schema": {
1432
+ "type": "object",
1433
+ "properties": {
1434
+ "total": {
1435
+ "type": "number",
1436
+ "description": "Total foreclosure listings"
1437
+ },
1438
+ "listings": {
1439
+ "type": "array",
1440
+ "items": {
1441
+ "type": "object",
1442
+ "properties": {
1443
+ "zpid": {
1444
+ "type": "string",
1445
+ "description": "Zillow property ID"
1446
+ },
1447
+ "address": {
1448
+ "type": "string",
1449
+ "description": "Full address"
1450
+ },
1451
+ "street": {
1452
+ "type": "string",
1453
+ "description": "Street address"
1454
+ },
1455
+ "city": {
1456
+ "type": "string",
1457
+ "description": "City"
1458
+ },
1459
+ "state": {
1460
+ "type": "string",
1461
+ "description": "State abbreviation"
1462
+ },
1463
+ "zipcode": {
1464
+ "type": "string",
1465
+ "description": "ZIP code"
1466
+ },
1467
+ "price": {
1468
+ "type": "string",
1469
+ "description": "Formatted price (e.g., \"$500,000\" or \"$4,085/mo\")"
1470
+ },
1471
+ "price_raw": {
1472
+ "type": "number",
1473
+ "description": "Numeric price in dollars"
1474
+ },
1475
+ "beds": {
1476
+ "type": "number",
1477
+ "description": "Number of bedrooms"
1478
+ },
1479
+ "baths": {
1480
+ "type": "number",
1481
+ "description": "Number of bathrooms"
1482
+ },
1483
+ "sqft": {
1484
+ "type": "number",
1485
+ "description": "Living area in square feet"
1486
+ },
1487
+ "status": {
1488
+ "type": "string",
1489
+ "description": "Listing status (FOR_SALE, FOR_RENT, RECENTLY_SOLD)"
1490
+ },
1491
+ "status_text": {
1492
+ "type": "string",
1493
+ "description": "Human-readable status (e.g., \"Condo for sale\")"
1494
+ },
1495
+ "home_type": {
1496
+ "type": "string",
1497
+ "description": "Property type (SINGLE_FAMILY, CONDO, TOWNHOUSE, etc.)"
1498
+ },
1499
+ "days_on_zillow": {
1500
+ "type": "number",
1501
+ "description": "Days listed on Zillow"
1502
+ },
1503
+ "zestimate": {
1504
+ "type": "number",
1505
+ "description": "Zillow Zestimate value in dollars (0 if unavailable)"
1506
+ },
1507
+ "rent_zestimate": {
1508
+ "type": "number",
1509
+ "description": "Estimated monthly rent in dollars (0 if unavailable)"
1510
+ },
1511
+ "tax_assessed_value": {
1512
+ "type": "number",
1513
+ "description": "Tax assessed value in dollars (0 if unavailable)"
1514
+ },
1515
+ "latitude": {
1516
+ "type": "number",
1517
+ "description": "Latitude coordinate"
1518
+ },
1519
+ "longitude": {
1520
+ "type": "number",
1521
+ "description": "Longitude coordinate"
1522
+ },
1523
+ "image_url": {
1524
+ "type": "string",
1525
+ "description": "Primary listing photo URL"
1526
+ },
1527
+ "detail_url": {
1528
+ "type": "string",
1529
+ "description": "URL to the property detail page on Zillow"
1530
+ },
1531
+ "is_saved": {
1532
+ "type": "boolean",
1533
+ "description": "Whether the property is saved to the user's favorites"
1534
+ },
1535
+ "has_3d_model": {
1536
+ "type": "boolean",
1537
+ "description": "Whether a 3D virtual tour is available"
1538
+ }
1539
+ },
1540
+ "required": [
1541
+ "zpid",
1542
+ "address",
1543
+ "street",
1544
+ "city",
1545
+ "state",
1546
+ "zipcode",
1547
+ "price",
1548
+ "price_raw",
1549
+ "beds",
1550
+ "baths",
1551
+ "sqft",
1552
+ "status",
1553
+ "status_text",
1554
+ "home_type",
1555
+ "days_on_zillow",
1556
+ "zestimate",
1557
+ "rent_zestimate",
1558
+ "tax_assessed_value",
1559
+ "latitude",
1560
+ "longitude",
1561
+ "image_url",
1562
+ "detail_url",
1563
+ "is_saved",
1564
+ "has_3d_model"
1565
+ ],
1566
+ "additionalProperties": false
1567
+ },
1568
+ "description": "Foreclosure listings"
1569
+ }
1570
+ },
1571
+ "required": [
1572
+ "total",
1573
+ "listings"
1574
+ ],
1575
+ "additionalProperties": false
1576
+ }
1577
+ },
1578
+ {
1579
+ "name": "search_by_owner",
1580
+ "displayName": "Search For Sale by Owner",
1581
+ "description": "Search for properties listed for sale by owner (FSBO) on Zillow. Requires either a region_id (from search_locations) or map_bounds.",
1582
+ "summary": "Find for-sale-by-owner listings",
1583
+ "icon": "user-check",
1584
+ "group": "Search",
1585
+ "input_schema": {
1586
+ "type": "object",
1587
+ "properties": {
1588
+ "region_id": {
1589
+ "description": "Zillow region ID (from search_locations). Required if map_bounds is not provided.",
1590
+ "type": "integer",
1591
+ "minimum": -9007199254740991,
1592
+ "maximum": 9007199254740991
1593
+ },
1594
+ "region_type": {
1595
+ "description": "Region type: \"city\", \"county\", \"zipcode\", \"neighborhood\" (default \"city\")",
1596
+ "type": "string"
1597
+ },
1598
+ "map_bounds": {
1599
+ "description": "Map bounding box. Required if region_id is not provided.",
1600
+ "type": "object",
1601
+ "properties": {
1602
+ "west": {
1603
+ "type": "number",
1604
+ "description": "Western longitude"
1605
+ },
1606
+ "east": {
1607
+ "type": "number",
1608
+ "description": "Eastern longitude"
1609
+ },
1610
+ "south": {
1611
+ "type": "number",
1612
+ "description": "Southern latitude"
1613
+ },
1614
+ "north": {
1615
+ "type": "number",
1616
+ "description": "Northern latitude"
1617
+ }
1618
+ },
1619
+ "required": [
1620
+ "west",
1621
+ "east",
1622
+ "south",
1623
+ "north"
1624
+ ],
1625
+ "additionalProperties": false
1626
+ },
1627
+ "min_price": {
1628
+ "description": "Minimum price in dollars",
1629
+ "type": "number"
1630
+ },
1631
+ "max_price": {
1632
+ "description": "Maximum price in dollars",
1633
+ "type": "number"
1634
+ },
1635
+ "min_beds": {
1636
+ "description": "Minimum bedrooms",
1637
+ "type": "integer",
1638
+ "minimum": -9007199254740991,
1639
+ "maximum": 9007199254740991
1640
+ },
1641
+ "sort": {
1642
+ "description": "Sort order (default \"globalrelevanceex\")",
1643
+ "type": "string",
1644
+ "enum": [
1645
+ "globalrelevanceex",
1646
+ "days",
1647
+ "pricea",
1648
+ "priced",
1649
+ "size"
1650
+ ]
1651
+ },
1652
+ "page": {
1653
+ "description": "Page number (default 1)",
1654
+ "type": "integer",
1655
+ "minimum": 1,
1656
+ "maximum": 9007199254740991
1657
+ }
1658
+ },
1659
+ "additionalProperties": false
1660
+ },
1661
+ "output_schema": {
1662
+ "type": "object",
1663
+ "properties": {
1664
+ "total": {
1665
+ "type": "number",
1666
+ "description": "Total FSBO listings"
1667
+ },
1668
+ "listings": {
1669
+ "type": "array",
1670
+ "items": {
1671
+ "type": "object",
1672
+ "properties": {
1673
+ "zpid": {
1674
+ "type": "string",
1675
+ "description": "Zillow property ID"
1676
+ },
1677
+ "address": {
1678
+ "type": "string",
1679
+ "description": "Full address"
1680
+ },
1681
+ "street": {
1682
+ "type": "string",
1683
+ "description": "Street address"
1684
+ },
1685
+ "city": {
1686
+ "type": "string",
1687
+ "description": "City"
1688
+ },
1689
+ "state": {
1690
+ "type": "string",
1691
+ "description": "State abbreviation"
1692
+ },
1693
+ "zipcode": {
1694
+ "type": "string",
1695
+ "description": "ZIP code"
1696
+ },
1697
+ "price": {
1698
+ "type": "string",
1699
+ "description": "Formatted price (e.g., \"$500,000\" or \"$4,085/mo\")"
1700
+ },
1701
+ "price_raw": {
1702
+ "type": "number",
1703
+ "description": "Numeric price in dollars"
1704
+ },
1705
+ "beds": {
1706
+ "type": "number",
1707
+ "description": "Number of bedrooms"
1708
+ },
1709
+ "baths": {
1710
+ "type": "number",
1711
+ "description": "Number of bathrooms"
1712
+ },
1713
+ "sqft": {
1714
+ "type": "number",
1715
+ "description": "Living area in square feet"
1716
+ },
1717
+ "status": {
1718
+ "type": "string",
1719
+ "description": "Listing status (FOR_SALE, FOR_RENT, RECENTLY_SOLD)"
1720
+ },
1721
+ "status_text": {
1722
+ "type": "string",
1723
+ "description": "Human-readable status (e.g., \"Condo for sale\")"
1724
+ },
1725
+ "home_type": {
1726
+ "type": "string",
1727
+ "description": "Property type (SINGLE_FAMILY, CONDO, TOWNHOUSE, etc.)"
1728
+ },
1729
+ "days_on_zillow": {
1730
+ "type": "number",
1731
+ "description": "Days listed on Zillow"
1732
+ },
1733
+ "zestimate": {
1734
+ "type": "number",
1735
+ "description": "Zillow Zestimate value in dollars (0 if unavailable)"
1736
+ },
1737
+ "rent_zestimate": {
1738
+ "type": "number",
1739
+ "description": "Estimated monthly rent in dollars (0 if unavailable)"
1740
+ },
1741
+ "tax_assessed_value": {
1742
+ "type": "number",
1743
+ "description": "Tax assessed value in dollars (0 if unavailable)"
1744
+ },
1745
+ "latitude": {
1746
+ "type": "number",
1747
+ "description": "Latitude coordinate"
1748
+ },
1749
+ "longitude": {
1750
+ "type": "number",
1751
+ "description": "Longitude coordinate"
1752
+ },
1753
+ "image_url": {
1754
+ "type": "string",
1755
+ "description": "Primary listing photo URL"
1756
+ },
1757
+ "detail_url": {
1758
+ "type": "string",
1759
+ "description": "URL to the property detail page on Zillow"
1760
+ },
1761
+ "is_saved": {
1762
+ "type": "boolean",
1763
+ "description": "Whether the property is saved to the user's favorites"
1764
+ },
1765
+ "has_3d_model": {
1766
+ "type": "boolean",
1767
+ "description": "Whether a 3D virtual tour is available"
1768
+ }
1769
+ },
1770
+ "required": [
1771
+ "zpid",
1772
+ "address",
1773
+ "street",
1774
+ "city",
1775
+ "state",
1776
+ "zipcode",
1777
+ "price",
1778
+ "price_raw",
1779
+ "beds",
1780
+ "baths",
1781
+ "sqft",
1782
+ "status",
1783
+ "status_text",
1784
+ "home_type",
1785
+ "days_on_zillow",
1786
+ "zestimate",
1787
+ "rent_zestimate",
1788
+ "tax_assessed_value",
1789
+ "latitude",
1790
+ "longitude",
1791
+ "image_url",
1792
+ "detail_url",
1793
+ "is_saved",
1794
+ "has_3d_model"
1795
+ ],
1796
+ "additionalProperties": false
1797
+ },
1798
+ "description": "For-sale-by-owner listings"
1799
+ }
1800
+ },
1801
+ "required": [
1802
+ "total",
1803
+ "listings"
1804
+ ],
1805
+ "additionalProperties": false
1806
+ }
1807
+ },
1808
+ {
1809
+ "name": "search_by_address",
1810
+ "displayName": "Search by Address",
1811
+ "description": "Look up a specific property by its street address. First resolves the address to coordinates via autocomplete, then searches for matching properties nearby. Returns the closest matching listing with full details including Zestimate, tax assessment, and rental estimate.",
1812
+ "summary": "Look up a property by street address",
1813
+ "icon": "map-pin",
1814
+ "group": "Properties",
1815
+ "input_schema": {
1816
+ "type": "object",
1817
+ "properties": {
1818
+ "address": {
1819
+ "type": "string",
1820
+ "minLength": 1,
1821
+ "description": "Street address to look up (e.g., \"123 Main St, San Francisco, CA\")"
1822
+ }
1823
+ },
1824
+ "required": [
1825
+ "address"
1826
+ ],
1827
+ "additionalProperties": false
1828
+ },
1829
+ "output_schema": {
1830
+ "type": "object",
1831
+ "properties": {
1832
+ "listings": {
1833
+ "type": "array",
1834
+ "items": {
1835
+ "type": "object",
1836
+ "properties": {
1837
+ "zpid": {
1838
+ "type": "string",
1839
+ "description": "Zillow property ID"
1840
+ },
1841
+ "address": {
1842
+ "type": "string",
1843
+ "description": "Full address"
1844
+ },
1845
+ "street": {
1846
+ "type": "string",
1847
+ "description": "Street address"
1848
+ },
1849
+ "city": {
1850
+ "type": "string",
1851
+ "description": "City"
1852
+ },
1853
+ "state": {
1854
+ "type": "string",
1855
+ "description": "State abbreviation"
1856
+ },
1857
+ "zipcode": {
1858
+ "type": "string",
1859
+ "description": "ZIP code"
1860
+ },
1861
+ "price": {
1862
+ "type": "string",
1863
+ "description": "Formatted price (e.g., \"$500,000\" or \"$4,085/mo\")"
1864
+ },
1865
+ "price_raw": {
1866
+ "type": "number",
1867
+ "description": "Numeric price in dollars"
1868
+ },
1869
+ "beds": {
1870
+ "type": "number",
1871
+ "description": "Number of bedrooms"
1872
+ },
1873
+ "baths": {
1874
+ "type": "number",
1875
+ "description": "Number of bathrooms"
1876
+ },
1877
+ "sqft": {
1878
+ "type": "number",
1879
+ "description": "Living area in square feet"
1880
+ },
1881
+ "status": {
1882
+ "type": "string",
1883
+ "description": "Listing status (FOR_SALE, FOR_RENT, RECENTLY_SOLD)"
1884
+ },
1885
+ "status_text": {
1886
+ "type": "string",
1887
+ "description": "Human-readable status (e.g., \"Condo for sale\")"
1888
+ },
1889
+ "home_type": {
1890
+ "type": "string",
1891
+ "description": "Property type (SINGLE_FAMILY, CONDO, TOWNHOUSE, etc.)"
1892
+ },
1893
+ "days_on_zillow": {
1894
+ "type": "number",
1895
+ "description": "Days listed on Zillow"
1896
+ },
1897
+ "zestimate": {
1898
+ "type": "number",
1899
+ "description": "Zillow Zestimate value in dollars (0 if unavailable)"
1900
+ },
1901
+ "rent_zestimate": {
1902
+ "type": "number",
1903
+ "description": "Estimated monthly rent in dollars (0 if unavailable)"
1904
+ },
1905
+ "tax_assessed_value": {
1906
+ "type": "number",
1907
+ "description": "Tax assessed value in dollars (0 if unavailable)"
1908
+ },
1909
+ "latitude": {
1910
+ "type": "number",
1911
+ "description": "Latitude coordinate"
1912
+ },
1913
+ "longitude": {
1914
+ "type": "number",
1915
+ "description": "Longitude coordinate"
1916
+ },
1917
+ "image_url": {
1918
+ "type": "string",
1919
+ "description": "Primary listing photo URL"
1920
+ },
1921
+ "detail_url": {
1922
+ "type": "string",
1923
+ "description": "URL to the property detail page on Zillow"
1924
+ },
1925
+ "is_saved": {
1926
+ "type": "boolean",
1927
+ "description": "Whether the property is saved to the user's favorites"
1928
+ },
1929
+ "has_3d_model": {
1930
+ "type": "boolean",
1931
+ "description": "Whether a 3D virtual tour is available"
1932
+ }
1933
+ },
1934
+ "required": [
1935
+ "zpid",
1936
+ "address",
1937
+ "street",
1938
+ "city",
1939
+ "state",
1940
+ "zipcode",
1941
+ "price",
1942
+ "price_raw",
1943
+ "beds",
1944
+ "baths",
1945
+ "sqft",
1946
+ "status",
1947
+ "status_text",
1948
+ "home_type",
1949
+ "days_on_zillow",
1950
+ "zestimate",
1951
+ "rent_zestimate",
1952
+ "tax_assessed_value",
1953
+ "latitude",
1954
+ "longitude",
1955
+ "image_url",
1956
+ "detail_url",
1957
+ "is_saved",
1958
+ "has_3d_model"
1959
+ ],
1960
+ "additionalProperties": false
1961
+ },
1962
+ "description": "Matching properties (usually 1 for exact address match)"
1963
+ }
1964
+ },
1965
+ "required": [
1966
+ "listings"
1967
+ ],
1968
+ "additionalProperties": false
1969
+ }
1970
+ },
1971
+ {
1972
+ "name": "get_saved_homes",
1973
+ "displayName": "Get Saved Homes",
1974
+ "description": "Get the list of Zillow property IDs (zpids) that the current user has saved to their favorites. Returns the zpid list and total count. Use search_by_address or search_for_sale with specific zpids to get full property details for saved homes.",
1975
+ "summary": "Get saved/favorited home zpids",
1976
+ "icon": "heart",
1977
+ "group": "Saved Homes",
1978
+ "input_schema": {
1979
+ "type": "object",
1980
+ "properties": {},
1981
+ "additionalProperties": false
1982
+ },
1983
+ "output_schema": {
1984
+ "type": "object",
1985
+ "properties": {
1986
+ "saved_home_zpids": {
1987
+ "type": "array",
1988
+ "items": {
1989
+ "type": "string"
1990
+ },
1991
+ "description": "Zillow property IDs of saved homes"
1992
+ },
1993
+ "total": {
1994
+ "type": "number",
1995
+ "description": "Total number of saved homes"
1996
+ }
1997
+ },
1998
+ "required": [
1999
+ "saved_home_zpids",
2000
+ "total"
2001
+ ],
2002
+ "additionalProperties": false
2003
+ }
2004
+ },
2005
+ {
2006
+ "name": "get_market_overview",
2007
+ "displayName": "Get Market Overview",
2008
+ "description": "Get a market overview for a location showing total listings counts across categories: for sale, for rent, and recently sold. Useful for understanding market activity in a specific area.",
2009
+ "summary": "Get market listing counts for an area",
2010
+ "icon": "bar-chart-3",
2011
+ "group": "Market",
2012
+ "input_schema": {
2013
+ "type": "object",
2014
+ "properties": {
2015
+ "region_id": {
2016
+ "type": "integer",
2017
+ "minimum": -9007199254740991,
2018
+ "maximum": 9007199254740991,
2019
+ "description": "Zillow region ID (from search_locations)"
2020
+ },
2021
+ "region_type": {
2022
+ "description": "Region type: \"city\", \"county\", \"zipcode\", \"neighborhood\" (default \"city\")",
2023
+ "type": "string"
2024
+ }
2025
+ },
2026
+ "required": [
2027
+ "region_id"
2028
+ ],
2029
+ "additionalProperties": false
2030
+ },
2031
+ "output_schema": {
2032
+ "type": "object",
2033
+ "properties": {
2034
+ "for_sale_total": {
2035
+ "type": "number",
2036
+ "description": "Total properties for sale"
2037
+ },
2038
+ "for_rent_total": {
2039
+ "type": "number",
2040
+ "description": "Total rental listings"
2041
+ },
2042
+ "recently_sold_total": {
2043
+ "type": "number",
2044
+ "description": "Total recently sold properties"
2045
+ }
2046
+ },
2047
+ "required": [
2048
+ "for_sale_total",
2049
+ "for_rent_total",
2050
+ "recently_sold_total"
2051
+ ],
2052
+ "additionalProperties": false
2053
+ }
2054
+ }
2055
+ ]
2056
+ }