Skip to main content
Glama

Find parcels by APN

find_parcels_by_apn
Read-onlyIdempotent

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.

Input Schema

NameRequiredDescriptionDefault
apnYesAPN, with any leading zeros
limitNoParcels per request, 1 to 100
stateNoUSPS code, state name or 2-digit FIPS; needed with a county name
countyYesCounty name, 5-digit FIPS or 3-digit county code
offsetNoParcels to skip; each page is a new, charged request
match_modeNonormalized ignores punctuation and case; exact needs the original identifier; contains (alpha) finds identifiers containing the inputnormalized

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare a safe read, but the description adds substantial behavior beyond them: billing per completed request even for no_match/ambiguous results, no charge for uncovered counties or failed requests, an API-key requirement, and a validation warning. It also discloses the return payload shape (WKT boundaries in EPSG:4326, owner, address, assessed values, land use, zoning) with caveats about county publication.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose, then cost, then constraints and return values in a logical order, with no filler sentences. Minor redundancy: 'Up to 100 parcels per request' restates the limit parameter's maximum that the schema already enforces.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having no output schema, the description fully covers return contents, coordinate system, cost model, auth requirement, and result caveats for a six-parameter lookup tool. An agent has everything needed to call it and interpret the response.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all six parameters are already documented, including the match_mode enum semantics and offset-as-new-charge. The description only echoes the 100-parcel cap and hints at ambiguity, adding little meaning beyond the schema; baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Finds parcels by assessor parcel number (APN)') plus a scoping constraint ('in one county'), which cleanly separates it from the point/polygon/radius spatial siblings. An agent can pick this tool without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage context is implied by the credit-cost and coverage language ('counties we do not cover... cost no credits'), and 'Validate each candidate before using it' is actionable guidance. However, it never explicitly says when to prefer this over find_parcels_at_point or to call check_coverage first, so routing is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources