{
  "openapi": "3.0.1",
  "info": {
    "title": "Zillow MCP Server",
    "description": "Zillow MCP server for AI agents — three tools that search homes by ZIP code, search by Zillow URL, or look one up by zpid. Returns address, price, agent email and phone, Zestimate, schools and price history. Connect Claude, Cursor or ChatGPT to the /mcp endpoint.",
    "version": "0.0",
    "x-build-id": "lho885bwT4NQknAF1"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/afanasenko~zillow-mcp-server/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-afanasenko-zillow-mcp-server",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/afanasenko~zillow-mcp-server/runs": {
      "post": {
        "operationId": "runs-sync-afanasenko-zillow-mcp-server",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/afanasenko~zillow-mcp-server/run-sync": {
      "post": {
        "operationId": "run-sync-afanasenko-zillow-mcp-server",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "required": [
          "mode"
        ],
        "properties": {
          "mode": {
            "title": "Operation Mode",
            "enum": [
              "zpid",
              "zip",
              "url"
            ],
            "type": "string",
            "description": "Choose how to look up properties. Each mode mirrors one of the 3 MCP tools: zpid → zillow_lookup_property, zip → zillow_search_by_zip, url → zillow_search_by_url. FREE plan: max 15 properties total per run.",
            "default": "zpid"
          },
          "zipCodes": {
            "title": "ZIP Codes",
            "type": "array",
            "description": "Required for ZIP mode. List of US ZIP codes or location names (e.g. \"Austin, TX\"). Up to 20 entries per run.",
            "default": [
              "90210"
            ],
            "items": {
              "type": "string"
            }
          },
          "maxProperties": {
            "title": "Max Properties (total per run)",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "Hard cap on how many properties this run will enrich + return. Applies to ALL modes (not per-ZIP). FREE plan capped at 15 regardless. Paid plans up to 50 here. Each enriched property is charged $0.08 (FREE).",
            "default": 5
          },
          "status_type": {
            "title": "Property Status",
            "enum": [
              "ForSale",
              "ForRent",
              "RecentlySold"
            ],
            "type": "string",
            "description": "Filter properties by their listing status. Applies to ZIP and URL modes (ignored in ZPID mode).",
            "default": "ForSale"
          },
          "price_min": {
            "title": "Price: Minimum ($)",
            "type": "integer",
            "description": "For Sale / Sold properties. 0 = no minimum.",
            "default": 0
          },
          "price_max": {
            "title": "Price: Maximum ($)",
            "type": "integer",
            "description": "For Sale / Sold properties. 0 = no maximum.",
            "default": 0
          },
          "rentMinPrice": {
            "title": "Rent: Minimum ($/mo)",
            "type": "integer",
            "description": "For Rent properties. 0 = no minimum.",
            "default": 0
          },
          "rentMaxPrice": {
            "title": "Rent: Maximum ($/mo)",
            "type": "integer",
            "description": "For Rent properties. 0 = no maximum.",
            "default": 0
          },
          "beds_min": {
            "title": "Bedrooms: Minimum",
            "type": "integer",
            "description": "Minimum number of bedrooms.",
            "default": 0
          },
          "beds_max": {
            "title": "Bedrooms: Maximum",
            "type": "integer",
            "description": "Maximum number of bedrooms (0 for any).",
            "default": 0
          },
          "baths_min": {
            "title": "Bathrooms: Minimum",
            "type": "integer",
            "description": "Minimum number of bathrooms.",
            "default": 0
          },
          "baths_max": {
            "title": "Bathrooms: Maximum",
            "type": "integer",
            "description": "Maximum number of bathrooms (0 for any).",
            "default": 0
          },
          "doz": {
            "title": "Days on Zillow / Sold in Last",
            "enum": [
              "any",
              "1",
              "7",
              "14",
              "30",
              "90",
              "6m",
              "12m"
            ],
            "type": "string",
            "description": "Filter by how recently the property was listed or sold.",
            "default": "any"
          },
          "sort": {
            "title": "Sort Results By",
            "enum": [
              "Homes_for_You",
              "Price_High_Low",
              "Price_Low_High",
              "Newest"
            ],
            "type": "string",
            "description": "Choose how to sort the search results.",
            "default": "Homes_for_You"
          },
          "keywords": {
            "title": "Keywords",
            "type": "string",
            "description": "Free-text keywords to match in listings (e.g. 'pool, ocean view').",
            "default": ""
          },
          "isSingleFamily": {
            "title": "Houses",
            "type": "boolean",
            "description": "Include single-family homes.",
            "default": true
          },
          "isTownhouse": {
            "title": "Townhomes",
            "type": "boolean",
            "description": "Include townhouses.",
            "default": true
          },
          "isMultiFamily": {
            "title": "Multi-family",
            "type": "boolean",
            "description": "Include multi-family properties.",
            "default": false
          },
          "isCondo": {
            "title": "Condos / Co-ops",
            "type": "boolean",
            "description": "Include condos and co-ops.",
            "default": true
          },
          "isLotLand": {
            "title": "Lots / Land",
            "type": "boolean",
            "description": "Include lots and land.",
            "default": false
          },
          "isApartment": {
            "title": "Apartments",
            "type": "boolean",
            "description": "Include apartments. **Best practice: turn ON for rental searches.** Apartments are the majority of rental inventory in most US ZIPs; leaving this off when status_type=ForRent typically yields zero or near-zero results. The actor auto-flips this on if it detects you took the form home-type defaults for a ForRent run, but it's cleaner to set it explicitly.",
            "default": true
          },
          "isManufactured": {
            "title": "Manufactured",
            "type": "boolean",
            "description": "Include manufactured homes.",
            "default": false
          },
          "isForSaleByOwner": {
            "title": "Owner Posted (FSBO)",
            "type": "boolean",
            "description": "Include For Sale By Owner listings.",
            "default": false
          },
          "isForSaleByAgent": {
            "title": "Agent Listed",
            "type": "boolean",
            "description": "Include agent-listed properties.",
            "default": true
          },
          "isNewConstruction": {
            "title": "New Construction",
            "enum": [
              "any",
              "only",
              "exclude"
            ],
            "type": "string",
            "description": "'Any' shows all, 'Only' shows only new construction, 'Exclude' hides new construction.",
            "default": "any"
          },
          "isAuction": {
            "title": "Auctions",
            "enum": [
              "any",
              "only",
              "exclude"
            ],
            "type": "string",
            "description": "'Any' shows all, 'Only' shows only auctions, 'Exclude' hides auctions.",
            "default": "any"
          },
          "isForSaleForeclosure": {
            "title": "Foreclosures",
            "enum": [
              "any",
              "only",
              "exclude"
            ],
            "type": "string",
            "description": "'Any' shows all, 'Only' shows only foreclosures, 'Exclude' hides foreclosures.",
            "default": "any"
          },
          "includeForeclosed": {
            "title": "Include Foreclosed",
            "type": "boolean",
            "description": "Add foreclosed properties to results (excluded by default).",
            "default": false
          },
          "includePreForeclosure": {
            "title": "Include Pre-Foreclosure",
            "type": "boolean",
            "description": "Add pre-foreclosure properties to results (excluded by default).",
            "default": false
          },
          "isPendingUnderContract": {
            "title": "Pending & Under Contract",
            "type": "boolean",
            "description": "Only include properties that are pending or under contract.",
            "default": false
          },
          "isAcceptingBackupOffers": {
            "title": "Accepting Backup Offers",
            "type": "boolean",
            "description": "Only include properties accepting backup offers.",
            "default": false
          },
          "sqft_min": {
            "title": "Square Feet: Minimum",
            "type": "integer",
            "description": "Minimum property size in square feet.",
            "default": 0
          },
          "sqft_max": {
            "title": "Square Feet: Maximum",
            "type": "integer",
            "description": "Maximum property size in square feet.",
            "default": 0
          },
          "lotSize_min": {
            "title": "Lot Size: Minimum",
            "enum": [
              "",
              "1,000 sqft",
              "2,000 sqft",
              "5,000 sqft",
              "1/4 acre/10,890 sqft",
              "1/2 acre/21,780 sqft",
              "1 acre/43,560 sqft"
            ],
            "type": "string",
            "description": "Minimum lot size.",
            "default": ""
          },
          "lotSize_max": {
            "title": "Lot Size: Maximum",
            "enum": [
              "",
              "2,000 sqft",
              "5,000 sqft",
              "1/4 acre/10,890 sqft",
              "1/2 acre/21,780 sqft",
              "1 acre/43,560 sqft",
              "5 acres/217,800 sqft"
            ],
            "type": "string",
            "description": "Maximum lot size.",
            "default": ""
          },
          "built_min": {
            "title": "Year Built: Minimum",
            "type": "integer",
            "description": "Earliest year of construction.",
            "default": 0
          },
          "built_max": {
            "title": "Year Built: Maximum",
            "type": "integer",
            "description": "Latest year of construction.",
            "default": 0
          },
          "parkingSpots_min": {
            "title": "Minimum Parking Spots",
            "type": "integer",
            "description": "Minimum number of parking spots.",
            "default": 0
          },
          "hasGarage": {
            "title": "Must Have Garage",
            "type": "boolean",
            "description": "Only include properties with a garage.",
            "default": false
          },
          "hoa_max": {
            "title": "Maximum HOA Fee ($/month)",
            "type": "integer",
            "description": "Maximum monthly HOA fee.",
            "default": 0
          },
          "hasPool": {
            "title": "Must Have Pool",
            "type": "boolean",
            "description": "Only include properties with a pool.",
            "default": false
          },
          "hasAirConditioning": {
            "title": "Must Have A/C",
            "type": "boolean",
            "description": "Only include properties with air conditioning.",
            "default": false
          },
          "isWaterfront": {
            "title": "Waterfront",
            "type": "boolean",
            "description": "Only include waterfront properties.",
            "default": false
          },
          "isBasementFinished": {
            "title": "Finished Basement",
            "type": "boolean",
            "description": "Only include properties with a finished basement.",
            "default": false
          },
          "isBasementUnfinished": {
            "title": "Unfinished Basement",
            "type": "boolean",
            "description": "Only include properties with an unfinished basement.",
            "default": false
          },
          "isCityView": {
            "title": "City View",
            "type": "boolean",
            "description": "Only properties with a city view.",
            "default": false
          },
          "isMountainView": {
            "title": "Mountain View",
            "type": "boolean",
            "description": "Only properties with a mountain view.",
            "default": false
          },
          "isParkView": {
            "title": "Park View",
            "type": "boolean",
            "description": "Only properties with a park view.",
            "default": false
          },
          "isWaterView": {
            "title": "Water View",
            "type": "boolean",
            "description": "Only properties with a water view.",
            "default": false
          },
          "isOpenHousesOnly": {
            "title": "Must Have Open House",
            "type": "boolean",
            "description": "Only include properties with scheduled open houses.",
            "default": false
          },
          "is3dHome": {
            "title": "Must Have 3D Tour",
            "type": "boolean",
            "description": "Only include properties with a 3D tour.",
            "default": false
          },
          "largeDogsAllowed": {
            "title": "Allows Large Dogs",
            "type": "boolean",
            "description": "Only rentals that allow large dogs.",
            "default": false
          },
          "smallDogsAllowed": {
            "title": "Allows Small Dogs",
            "type": "boolean",
            "description": "Only rentals that allow small dogs.",
            "default": false
          },
          "catsAllowed": {
            "title": "Allows Cats",
            "type": "boolean",
            "description": "Only rentals that allow cats.",
            "default": false
          },
          "noPets": {
            "title": "No Pets",
            "type": "boolean",
            "description": "Only rentals that do not allow pets.",
            "default": false
          },
          "inUnitLaundry": {
            "title": "In-Unit Laundry",
            "type": "boolean",
            "description": "Only rentals with in-unit laundry.",
            "default": false
          },
          "parkingAvailable": {
            "title": "On-Site Parking",
            "type": "boolean",
            "description": "Only rentals with on-site parking.",
            "default": false
          },
          "furnished": {
            "title": "Furnished",
            "type": "boolean",
            "description": "Only furnished rentals.",
            "default": false
          },
          "hardwoodFloor": {
            "title": "Hardwood Floors",
            "type": "boolean",
            "description": "Only rentals with hardwood floors.",
            "default": false
          },
          "utilitiesIncluded": {
            "title": "Utilities Included",
            "type": "boolean",
            "description": "Only rentals with utilities included.",
            "default": false
          },
          "disabledAccess": {
            "title": "Disabled Access",
            "type": "boolean",
            "description": "Only rentals with disabled access.",
            "default": false
          },
          "shortTermLease": {
            "title": "Short Term Lease",
            "type": "boolean",
            "description": "Only rentals with short term lease available.",
            "default": false
          },
          "outdoorSpace": {
            "title": "Outdoor Space",
            "type": "boolean",
            "description": "Only rentals with outdoor space.",
            "default": false
          },
          "controlledAccess": {
            "title": "Controlled Access",
            "type": "boolean",
            "description": "Only rentals with controlled access.",
            "default": false
          },
          "highSpeedInternet": {
            "title": "High Speed Internet",
            "type": "boolean",
            "description": "Only rentals with high speed internet.",
            "default": false
          },
          "elevator": {
            "title": "Elevator",
            "type": "boolean",
            "description": "Only rentals with elevator access.",
            "default": false
          },
          "acceptsApplications": {
            "title": "Accepts Zillow Applications",
            "type": "boolean",
            "description": "Only rentals accepting Zillow applications.",
            "default": false
          },
          "incomeRestricted": {
            "title": "Income Restricted",
            "type": "boolean",
            "description": "Only income-restricted rentals.",
            "default": false
          },
          "schools": {
            "title": "School Types",
            "type": "string",
            "description": "Filter by nearby school types (comma-separated: elementary, middle, high, public, private, charter).",
            "default": ""
          },
          "schoolsRating": {
            "title": "Minimum School Rating",
            "minimum": 0,
            "maximum": 10,
            "type": "integer",
            "description": "Minimum school rating (1-10).",
            "default": 0
          },
          "includeUnratedSchools": {
            "title": "Include Unrated Schools",
            "type": "boolean",
            "description": "Include schools with no rating in the search.",
            "default": true
          },
          "zpids": {
            "title": "ZPID List",
            "type": "array",
            "description": "Required for ZPID mode. Enter Zillow Property IDs to look up directly. Each ZPID is enriched independently — search filters above are ignored.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "zillowUrl": {
            "title": "Zillow Search URL",
            "type": "string",
            "description": "Required for URL mode. Paste any Zillow page that lists homes: a search URL containing 'searchQueryState=', a city, ZIP or state browse URL (/austin-tx/, /ocala-fl-34481/, /nc/land/), or one property's page. Configure filters at zillow.com in the browser, then copy the address-bar URL. Single-property URLs in the form /homedetails/.../<zpid>_zpid/ are auto-detected — for those, the zillow_lookup_property tool / ZPID mode is the cleaner shape.",
            "default": ""
          },
          "enrichWalkScore": {
            "title": "Fetch Walk/Transit Scores",
            "type": "boolean",
            "description": "Add Walk Score / Transit Score / Bike Score (0–100 each) to each returned property. Adds 1 upstream call per property; no extra Apify event charge.",
            "default": false
          },
          "enrichPhotos": {
            "title": "Fetch All Property Photos",
            "type": "boolean",
            "description": "Return the full Zillow photo gallery (photos[] array) per property. Adds 1 upstream call per property; no extra Apify event charge. Default: photos[] contains only the main photo.",
            "default": false
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}