API access
Your AI client reaches US Public Assessments through one ParcelOps MCP endpoint, so there is no separate key to hold for it and no per-source client to write. Reaching it takes no credentials of your own.
Where it came from
Freshness and coverage
What this source cannot tell you
- ⚠ Anything outside Connecticut, Florida, Idaho, Massachusetts, Minnesota, Montana, New York outside New York City, North Carolina, Utah, Washington, and Wisconsin, Woodbury County, Iowa, including Sioux City, Cook County, Illinois; Detroit, Michigan; San Francisco, California; and Washington, DC, and Eleven Texas metro counties through a first-party appraisal reader that each deployment enables separately. A request past that edge comes back empty rather than approximated.
- ⚠ Anything from before 1999.
- ⚠ Anything US state and local assessment authorities does not publish. ParcelOps returns this source as it stands and never fills a blank field from a different one.
- ⚠ Coverage, terminology, exemptions, and update timing vary by state, county, and municipality.
- ⚠ Assessed, appraised, taxable, and market values remain separate; results are not verified sale prices or independent appraisals.
- ⚠ Owner and mailing-list fields, parcel geometry, bulk browsing, and background synchronization are intentionally omitted. Bounded read results may be cached for 30 minutes and served stale for up to 60 additional minutes while revalidating.
- ⚠ Current API records do not establish title, legal boundaries, exemption eligibility, or an open appeal deadline.
Methods (5)
A method is one call your agent can make against this source.
listSources
readList public assessment sources, authority, history depth, attribution, and known gaps.
Records returnedassessment-sourceHow to get more resultsnoneFreshnessScheduled (source-level)Input schema
{ "type": "object", "properties": { "state": { "type": "string", "maxLength": 40 }, "historyMode": { "type": "string", "enum": [ "multi_year", "current_and_previous", "current_only" ] } }, "required": [], "additionalProperties": false }Output schema
{ "type": "object", "properties": { "count": { "type": "integer", "minimum": 0 }, "sources": { "type": "array", "items": { "type": "object", "additionalProperties": true } }, "note": { "type": "string" } }, "required": [ "count", "sources" ], "additionalProperties": true }searchProperties
readFind up to five address or parcel candidates in one explicitly selected public assessment source.
What you must providesourceRecords returnedproperty, parcelHow to get more resultsnoneFreshnessScheduled (source-level)Input schema
{ "type": "object", "properties": { "source": { "type": "string", "pattern": "^[a-z0-9-]{3,100}$", "description": "Source ID returned by listSources. For Woodbury County and Sioux City, Iowa, use woodbury-county-ia-assessments.", "examples": [ "woodbury-county-ia-assessments" ] }, "streetAddress": { "type": "string", "minLength": 3, "maxLength": 200 }, "parcelId": { "type": "string", "minLength": 1, "maxLength": 200 }, "city": { "type": "string", "maxLength": 120 }, "county": { "type": "string", "maxLength": 120 }, "postalCode": { "type": "string", "maxLength": 20 }, "municipalityCode": { "type": "string", "maxLength": 20, "description": "Required with address search for very large keyed sources such as the New York assessment roll." }, "limit": { "type": "integer", "minimum": 1, "maximum": 5, "default": 5 } }, "required": [ "source" ], "additionalProperties": false }Output schema
{ "type": "object", "properties": { "kind": { "const": "parcelops.public-data" }, "schemaVersion": { "type": "string" }, "records": { "type": "array", "maxItems": 5, "items": { "type": "object", "properties": { "source": { "type": [ "string", "null" ] }, "sourceName": { "type": [ "string", "null" ] }, "sourceObjectId": { "type": [ "string", "number", "null" ] }, "parcelId": { "type": [ "string", "null" ] }, "alternateParcelId": { "type": [ "string", "null" ] }, "owner": { "type": [ "string", "null" ] }, "ownerName": { "type": [ "string", "null" ] }, "siteAddress": { "type": [ "string", "null" ] }, "address": { "type": [ "string", "null" ] }, "mailingAddress": { "type": [ "string", "null" ] }, "city": { "type": [ "string", "null" ] }, "county": { "type": [ "string", "null" ] }, "state": { "type": [ "string", "null" ] }, "stateCode": { "type": [ "string", "null" ] }, "postalCode": { "type": [ "string", "null" ] }, "marketValue": { "type": [ "number", "null" ] }, "assessedValue": { "type": [ "number", "null" ] }, "taxableValue": { "type": [ "number", "null" ] }, "landValue": { "type": [ "number", "null" ] }, "improvementValue": { "type": [ "number", "null" ] }, "salePrice": { "type": [ "number", "null" ] }, "saleDate": { "type": [ "string", "null" ] }, "saleYear": { "type": [ "integer", "string", "null" ] }, "yearBuilt": { "type": [ "integer", "string", "null" ] }, "area": { "type": [ "number", "null" ] }, "areaUnit": { "type": [ "string", "null" ] }, "acreage": { "type": [ "number", "null" ] }, "landUse": { "type": [ "string", "null" ] }, "legalDescription": { "type": [ "string", "null" ] }, "sourceUpdatedAt": { "type": [ "string", "null" ] }, "coverage": { "type": "object", "properties": { "status": { "const": "attributes_not_published" }, "message": { "type": "string" } }, "required": [ "status", "message" ], "additionalProperties": true }, "sourceAttributes": { "type": [ "object", "null" ], "additionalProperties": true } }, "additionalProperties": true } }, "summary": { "type": "object", "properties": { "matchedRecords": { "type": [ "integer", "null" ], "minimum": 0 }, "returnedRecords": { "type": "integer", "minimum": 0, "maximum": 5 }, "truncated": { "type": "boolean" } }, "required": [ "matchedRecords", "returnedRecords", "truncated" ], "additionalProperties": true }, "source": { "type": "object", "additionalProperties": true }, "caveats": { "type": "array", "items": { "type": "string" } } }, "required": [ "kind", "records", "summary", "source", "caveats" ], "additionalProperties": true }- ⚠ Candidate results require selection and verification before history retrieval.
Provide address or parcelId; inline source examples avoid a listSources call.
getPropertyHistory
readReturn the latest available record or up to three requested assessment years for one search result.
What you must providepropertyKeyRecords returnedproperty, assessmentHow to get more resultsnoneUnitsmarketValue: source currency · assessedValue: source currency · taxableValue: source currency · landValue: source currency · improvementValue: source currency · salePrice: source currencyFreshnessScheduled (source-level)Input schema
{ "type": "object", "properties": { "propertyKey": { "type": "string", "pattern": "^[A-Za-z0-9_-]{4,1000}$", "description": "Opaque key returned by searchProperties." }, "years": { "type": "array", "maxItems": 3, "uniqueItems": true, "items": { "type": "integer", "minimum": 1900, "maximum": 2100 } } }, "required": [ "propertyKey" ], "additionalProperties": false }Output schema
{ "type": "object", "properties": { "found": { "type": "boolean" }, "property": { "type": "object", "properties": { "source": { "type": [ "string", "null" ] }, "sourceName": { "type": [ "string", "null" ] }, "sourceObjectId": { "type": [ "string", "number", "null" ] }, "parcelId": { "type": [ "string", "null" ] }, "alternateParcelId": { "type": [ "string", "null" ] }, "owner": { "type": [ "string", "null" ] }, "ownerName": { "type": [ "string", "null" ] }, "siteAddress": { "type": [ "string", "null" ] }, "address": { "type": [ "string", "null" ] }, "mailingAddress": { "type": [ "string", "null" ] }, "city": { "type": [ "string", "null" ] }, "county": { "type": [ "string", "null" ] }, "state": { "type": [ "string", "null" ] }, "stateCode": { "type": [ "string", "null" ] }, "postalCode": { "type": [ "string", "null" ] }, "marketValue": { "type": [ "number", "null" ] }, "assessedValue": { "type": [ "number", "null" ] }, "taxableValue": { "type": [ "number", "null" ] }, "landValue": { "type": [ "number", "null" ] }, "improvementValue": { "type": [ "number", "null" ] }, "salePrice": { "type": [ "number", "null" ] }, "saleDate": { "type": [ "string", "null" ] }, "saleYear": { "type": [ "integer", "string", "null" ] }, "yearBuilt": { "type": [ "integer", "string", "null" ] }, "area": { "type": [ "number", "null" ] }, "areaUnit": { "type": [ "string", "null" ] }, "acreage": { "type": [ "number", "null" ] }, "landUse": { "type": [ "string", "null" ] }, "legalDescription": { "type": [ "string", "null" ] }, "sourceUpdatedAt": { "type": [ "string", "null" ] }, "coverage": { "type": "object", "properties": { "status": { "const": "attributes_not_published" }, "message": { "type": "string" } }, "required": [ "status", "message" ], "additionalProperties": true }, "sourceAttributes": { "type": [ "object", "null" ], "additionalProperties": true } }, "additionalProperties": true }, "assessments": { "type": "array", "maxItems": 3, "items": { "allOf": [ { "type": "object", "properties": { "source": { "type": [ "string", "null" ] }, "sourceName": { "type": [ "string", "null" ] }, "sourceObjectId": { "type": [ "string", "number", "null" ] }, "parcelId": { "type": [ "string", "null" ] }, "alternateParcelId": { "type": [ "string", "null" ] }, "owner": { "type": [ "string", "null" ] }, "ownerName": { "type": [ "string", "null" ] }, "siteAddress": { "type": [ "string", "null" ] }, "address": { "type": [ "string", "null" ] }, "mailingAddress": { "type": [ "string", "null" ] }, "city": { "type": [ "string", "null" ] }, "county": { "type": [ "string", "null" ] }, "state": { "type": [ "string", "null" ] }, "stateCode": { "type": [ "string", "null" ] }, "postalCode": { "type": [ "string", "null" ] }, "marketValue": { "type": [ "number", "null" ] }, "assessedValue": { "type": [ "number", "null" ] }, "taxableValue": { "type": [ "number", "null" ] }, "landValue": { "type": [ "number", "null" ] }, "improvementValue": { "type": [ "number", "null" ] }, "salePrice": { "type": [ "number", "null" ] }, "saleDate": { "type": [ "string", "null" ] }, "saleYear": { "type": [ "integer", "string", "null" ] }, "yearBuilt": { "type": [ "integer", "string", "null" ] }, "area": { "type": [ "number", "null" ] }, "areaUnit": { "type": [ "string", "null" ] }, "acreage": { "type": [ "number", "null" ] }, "landUse": { "type": [ "string", "null" ] }, "legalDescription": { "type": [ "string", "null" ] }, "sourceUpdatedAt": { "type": [ "string", "null" ] }, "coverage": { "type": "object", "properties": { "status": { "const": "attributes_not_published" }, "message": { "type": "string" } }, "required": [ "status", "message" ], "additionalProperties": true }, "sourceAttributes": { "type": [ "object", "null" ], "additionalProperties": true } }, "additionalProperties": true }, { "type": "object", "properties": { "year": { "type": "integer", "minimum": 1900, "maximum": 2100 } }, "required": [ "year" ] } ] } }, "requestedYears": { "type": "array", "maxItems": 3, "items": { "type": "integer" } }, "missingYears": { "type": "array", "maxItems": 3, "items": { "type": "integer" } }, "provenance": { "type": "object", "additionalProperties": true }, "caveats": { "type": "array", "items": { "type": "string" } } }, "required": [ "found", "assessments" ], "additionalProperties": true }getHomeownerSummary
readExplain value changes and give verification, exemption, deadline, and evidence steps.
What you must providepropertyKeyFreshnessScheduled (source-level)Input schema
{ "type": "object", "properties": { "propertyKey": { "type": "string", "pattern": "^[A-Za-z0-9_-]{4,1000}$", "description": "Opaque key returned by searchProperties." }, "years": { "type": "array", "maxItems": 3, "uniqueItems": true, "items": { "type": "integer", "minimum": 1900, "maximum": 2100 } } }, "required": [ "propertyKey" ], "additionalProperties": false }getServiceInfo
readReturn live sources, honest coverage limits, and storage and compute safeguards.
FreshnessScheduled (source-level)Input schema
{ "type": "object", "properties": {}, "required": [], "additionalProperties": false }
Where this source is used
- Land research
Parcel records, ground conditions, and what reaches the property line, for raw and rural land.
- Commercial real estate
Parcel and assessment records, building programs, and the entity on the other side of the deal.
- Residential real estate
The parcel record, the housing programs that touch an address, and the conditions a buyer asks about.
- Real estate law
Federal rule text, rulemaking dockets, party records, and the property facts a filing has to state.
- Realtors and brokerages
The facts behind a listing, the programs a buyer may qualify for, and your own files in the same place.
- Who owns this property?
- What has this property been assessed at over time?
- What did this property sell for?
