GetParcelData MCP
An official MCP server providing access to US parcel boundary and assessor data for over 161 million parcels. It enables AI agents to perform lookups by APN, point, radius, or polygon, check coverage, and retrieve pricing information, integrating seamlessly with the vendor's REST API infrastructure.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://api.getparceldata.com/mcpWhat its tools do
7 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to getparceldata.com ·
- Passed Endpoint is on the registry namespace domain ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Find parcels by APN, county, and state
- Retrieve parcel data at a specific latitude and longitude
- Identify parcels within a defined radius
- Check if a county is covered by the dataset
Source and maintenance
Protocol and capabilities
- Server
- GetParcelData 1.30.0
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 7 advertised
- Resources
- 0 advertised
- Resource templates
- 0 advertised
- Prompts
- 0 advertised
{
"tools": {
"listChanged": false
},
"prompts": {
"listChanged": false
},
"resources": {
"subscribe": false,
"listChanged": false
},
"experimental": {}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
7 advertised
check_coverage — Check county coverage
Free, no API key. Says whether a county is in the current data release, or lists every covered county in a state when no county is given. Parcel lookups in counties that are not covered cost no credits.
{
"type": "object",
"title": "check_coverageArguments",
"required": [
"state"
],
"properties": {
"state": {
"type": "string",
"title": "State",
"description": "USPS code, state name or 2-digit state FIPS, e.g. 'TX'"
},
"county": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "County",
"default": null,
"description": "Optional county name, 3-digit county code or 5-digit FIPS"
}
}
}{
"title": "Check county coverage",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_pricing — Get prices and plans
Free, no API key. Returns the monthly API plans (price, included credits, overage per credit, rate limit), the credit cost of each lookup type and the one-off extract downloads. Statewide and nationwide licences are quoted at https://getparceldata.com/pricing.
{
"type": "object",
"title": "get_pricingArguments",
"properties": {}
}{
"title": "Get prices and plans",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}preview_area — Count parcels in an area
Free, no API key. Counts the parcels inside a bounding box, lists the counties it touches, and says whether the area fits the $49 extract of up to 5,000 parcels. Each side of the box can be up to 2 degrees. Limited to 30 requests per IP address per minute.
{
"type": "object",
"title": "preview_areaArguments",
"required": [
"west",
"south",
"east",
"north"
],
"properties": {
"east": {
"type": "number",
"title": "East",
"maximum": 180,
"minimum": -180,
"description": "Eastern longitude, EPSG:4326"
},
"west": {
"type": "number",
"title": "West",
"maximum": 180,
"minimum": -180,
"description": "Western longitude, EPSG:4326"
},
"north": {
"type": "number",
"title": "North",
"maximum": 90,
"minimum": -90,
"description": "Northern latitude, EPSG:4326"
},
"south": {
"type": "number",
"title": "South",
"maximum": 90,
"minimum": -90,
"description": "Southern latitude, EPSG:4326"
}
}
}{
"title": "Count parcels in an area",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}find_parcels_by_apn — Find parcels by APN
Finds parcels by assessor parcel number (APN) in one county. Costs 1 credit per completed request, including no_match and ambiguous results. Up to 100 parcels per request. Validate each candidate before using it. Needs an API key. Lookups in counties we do not cover and failed requests cost no credits. Returns parcel records with WKT boundaries in EPSG:4326, owner, address, assessed values, land use and zoning where the county publishes them.
{
"type": "object",
"title": "find_parcels_by_apnArguments",
"required": [
"apn",
"county"
],
"properties": {
"apn": {
"type": "string",
"title": "Apn",
"maxLength": 256,
"minLength": 1,
"description": "APN, with any leading zeros"
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Parcels per request, 1 to 100"
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "State",
"default": null,
"description": "USPS code, state name or 2-digit FIPS; needed with a county name"
},
"county": {
"type": "string",
"title": "County",
"maxLength": 128,
"minLength": 1,
"description": "County name, 5-digit FIPS or 3-digit county code"
},
"offset": {
"type": "integer",
"title": "Offset",
"default": 0,
"minimum": 0,
"description": "Parcels to skip; each page is a new, charged request"
},
"match_mode": {
"enum": [
"normalized",
"exact",
"contains"
],
"type": "string",
"title": "Match Mode",
"default": "normalized",
"description": "normalized ignores punctuation and case; exact needs the original identifier; contains (alpha) finds identifiers containing the input"
}
}
}{
"title": "Find parcels by APN",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}find_parcels_at_point — Find parcels at a point
Finds the parcels that contain a latitude and longitude. Costs 1 credit per request, however many parcels come back. Up to 1,000 parcels per request. Needs an API key. Lookups in counties we do not cover and failed requests cost no credits. Returns parcel records with WKT boundaries in EPSG:4326, owner, address, assessed values, land use and zoning where the county publishes them.
{
"type": "object",
"title": "find_parcels_at_pointArguments",
"required": [
"lat",
"lng"
],
"properties": {
"lat": {
"type": "number",
"title": "Lat",
"maximum": 90,
"minimum": -90,
"description": "Latitude, decimal degrees"
},
"lng": {
"type": "number",
"title": "Lng",
"maximum": 180,
"minimum": -180,
"description": "Longitude, decimal degrees"
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 20,
"maximum": 1000,
"minimum": 1,
"description": "Parcels per request, 1 to 1,000"
},
"offset": {
"type": "integer",
"title": "Offset",
"default": 0,
"minimum": 0,
"description": "Parcels to skip; each page is a new, charged request"
}
}
}{
"title": "Find parcels at a point",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}find_parcels_in_radius — Find parcels within a radius
Finds every parcel within a radius of a point, nearest first. Costs 3 credits per request, however many parcels come back. Radius up to 5,000 metres. Up to 1,000 parcels per request. Needs an API key. Lookups in counties we do not cover and failed requests cost no credits. Returns parcel records with WKT boundaries in EPSG:4326, owner, address, assessed values, land use and zoning where the county publishes them.
{
"type": "object",
"title": "find_parcels_in_radiusArguments",
"required": [
"lat",
"lng",
"radius_m"
],
"properties": {
"lat": {
"type": "number",
"title": "Lat",
"maximum": 90,
"minimum": -90,
"description": "Latitude, decimal degrees"
},
"lng": {
"type": "number",
"title": "Lng",
"maximum": 180,
"minimum": -180,
"description": "Longitude, decimal degrees"
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 20,
"maximum": 1000,
"minimum": 1,
"description": "Parcels per request, 1 to 1,000"
},
"offset": {
"type": "integer",
"title": "Offset",
"default": 0,
"minimum": 0,
"description": "Parcels to skip; each page is a new, charged request"
},
"radius_m": {
"type": "number",
"title": "Radius M",
"maximum": 5000,
"description": "Radius in metres, up to 5,000",
"exclusiveMinimum": 0
}
}
}{
"title": "Find parcels within a radius",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}find_parcels_in_polygon — Find parcels in a polygon
Finds every parcel that intersects a WKT geometry (polygon, multipolygon, line or point). Costs 3 credits per request, however many parcels come back. The geometry's bounding box can be up to 25 km². Up to 1,000 parcels per request. Needs an API key. Lookups in counties we do not cover and failed requests cost no credits. Returns parcel records with WKT boundaries in EPSG:4326, owner, address, assessed values, land use and zoning where the county publishes them.
{
"type": "object",
"title": "find_parcels_in_polygonArguments",
"required": [
"wkt"
],
"properties": {
"wkt": {
"type": "string",
"title": "Wkt",
"minLength": 1,
"description": "WKT in EPSG:4326 lon/lat order, e.g. POLYGON((-97.75 30.26, ...))"
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 20,
"maximum": 1000,
"minimum": 1,
"description": "Parcels per request, 1 to 1,000"
},
"offset": {
"type": "integer",
"title": "Offset",
"default": 0,
"minimum": 0,
"description": "Parcels to skip; each page is a new, charged request"
}
}
}{
"title": "Find parcels in a polygon",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
0 advertised
Resources
0 advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 1659 ms
- 95th percentile latency
- 1659 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 1659 ms · metadata changed · 7 tool(s), 0 resource(s), 0 resource template(s), 0 prompt(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http getparceldata-mcp https://api.getparceldata.com/mcpCodex
codex mcp add getparceldata-mcp --url https://api.getparceldata.com/mcpCursor
{
"mcpServers": {
"getparceldata-mcp": {
"url": "https://api.getparceldata.com/mcp"
}
}
}Cline
{
"mcpServers": {
"getparceldata-mcp": {
"type": "streamableHttp",
"url": "https://api.getparceldata.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"getparceldata-mcp": {
"type": "http",
"url": "https://api.getparceldata.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http getparceldata-mcp https://api.getparceldata.com/mcpClaude Desktop
https://api.getparceldata.com/mcpWindsurf
{
"mcpServers": {
"getparceldata-mcp": {
"serverUrl": "https://api.getparceldata.com/mcp"
}
}
}Let your agent find its tools
Find servers like GetParcelData MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other data and analytics servers
Do you run GetParcelData MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.