Skip to main content
Glama

Zip-Codes.com Location Intelligence: Spatial Analysis, Districts & 14+ Years of Demographics

Server Details

Validate & geocode a US address: demographics, districts & schools. Agents can buy credits via MPP.

Ownership verified
Status
Healthy
Uptime
100.0% over the last 24 hours
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
ZIP-Codes-API/zip-codes-mcp
GitHub Stars
0
ChatGPT
–
Claude
Zip-Codes.com Location Intelligence: Spatial Analysis, Districts & 14+ Years of Demographics

TDQS

A4.2/5.0

Scored across 12 tools

Disambiguation4/5

The only real overlap is quick_zip vs zip_lookup, and the descriptions handle it explicitly by contrasting payload size, available enrichments, and when to choose each. The three free reference/help tools (about_data, city_name_rules, zip_facts) are distinct enough by their returns, and county_reference vs metro_area_reference target clearly different geographies. An agent can pick correctly in nearly every case, though the light/full lookup pair will still tempt misselection.

Naming Consistency4/5

All names are lowercase snake_case with no camelCase or case mixing, so the surface reads as one family. The deviation is grammatical: some are verb_noun (buy_credits, suggest_places, validate_address) while the majority are noun compounds (county_reference, metro_area_reference, zip_facts, city_name_rules) and 'distance' is a bare noun. Readable and predictable overall, but not a single enforced pattern.

Tool Count5/5

Twelve tools for a domain spanning postal lookup, spatial search, distance, address validation, geographies and billing is well inside the sweet spot. Each tool maps to a distinct capability with no filler entries, and the free/no-key reference tools are a deliberate part of the surface rather than padding.

Completeness4/5

The core lifecycle is covered: resolve (suggest_places), identify (quick_zip/zip_lookup), search spatially (radius_search), measure (distance), validate (validate_address), plus reference and billing support. Notable gaps remain around bulk/batch lookup and any enumeration of codes by county, state or district — the server advertises 'Districts' but district data only arrives as an enrichment of zip_lookup, with no standalone district tool. These are workable omissions but will force multi-call workarounds.

Available Tools

12 tools
about_dataAbout this dataA
Read-onlyIdempotent
Inspect

Where this server's data comes from: for each dataset the authority behind it, the edition served where the source publishes editions (TIGER/Line, ACS, ZCTA), how often a new release is taken, and a ready-made citation string. Costs nothing and needs no key.

Inputs: no named parameters.

buy_creditsBuy creditsAInspect

Buy a credit pack with a wallet that pays MPP (Machine Payments Protocol) challenges, such as Stripe Link. The credits go on the account or prepaid card of the API key you send. Without a key, the purchase makes a prepaid card: a new API key holding the credits, in the result's api_key; pass it as api_key on later calls, and keep it (it is shown again only while the card is unused, for 24 hours). Name the pack by pack, price_usd or credits (the packs: https://api.zip-codes.com/pricing.json). The first call answers Payment Required (-32042) with a challenge for that pack and charges nothing; a wallet that pays it sends the same call again with its credential and gets the purchase back: its purchase_id, the credits added and a receipt. The same payment sent again is never charged twice. A payment still clearing reads processing, with no credits yet: send the same call again later. Without a wallet, ask your human to buy at https://www.zip-codes.com/api/pricing. By paying you accept the Terms of Service: https://www.zip-codes.com/api/tos

Inputs: pack, api_key, credits, price_usd.

city_name_rulesCity name rulesA
Read-onlyIdempotent
Inspect

How USPS names a ZIP Code, and which of those names may be used on mail. Each ZIP Code has exactly one preferred city name plus alternates, and some alternates are NOT valid for addressing — for 08088 NJ, SHAMONG is valid while SHAMONG TOWNSHIP is not. Returns the rules, the counts and a worked example. Costs nothing and needs no key.

Inputs: no named parameters.

county_referenceCounty referenceA
Read-onlyIdempotent
Inspect

US counties and county equivalents — all 3,235 of them — with their Census and USPS names, which disagree for over a hundred, plus ANSI code, legal type, land and water area, and USPS delivery footprint. Filter by state to get every county in that state: without a filter only the first 25 are returned, and they are FIPS-ordered, so an unfiltered call answers with Alabama rather than with whatever was asked about. Costs nothing and needs no key.

Inputs: limit, state.

distanceDistance between two placesA
Read-onlyIdempotent
Inspect

Distance between two places, in miles and kilometres, plus the compass bearing from the first to the second. Each end takes a US ZIP Code, a US ZIP+4, a Canadian FSA, a Canadian postal code, or a latitude,longitude pair, and the two ends can be different kinds — a US ZIP to a Canadian postal code works, and so does a code to a coordinate. Time zone for both ends is included. This is a straight-line distance, not a driving route. Without an API key the distance itself is returned and the geography behind it is withheld.

Inputs: to (required), from (required), api_key.

metro_area_referenceMetro area referenceA
Read-onlyIdempotent
Inspect

US metropolitan and micropolitan statistical areas (CBSAs) — all 935. Of those only 393 are metropolitan; the rest are micropolitan and are NOT metro areas, so do not treat a CBSA count as a metro count. Each carries its divisions, parent combined area, land area and delivery footprint, plus the CMS Medicare labor market area, which is a DIFFERENT geography that shares the same code space. Filter by state to get every area in that state: without a filter only the first 25 are returned, alphabetically, so an unfiltered call answers with Aberdeen. Costs nothing and needs no key.

Inputs: limit, state.

quick_zipQuick ZIP / ZIP+4 / reverse geocodeA
Read-onlyIdempotent
Inspect

The fast, small answer for a postal code. Takes a US ZIP Code, a US ZIP+4, a Canadian FSA, a Canadian postal code, or a latitude,longitude pair, and returns the code's city, state or province, county, and whether it spans more than one county. Given a ZIP+4 it also returns the street ranges making up that delivery segment; given coordinates it reverse-geocodes to the code containing the point. zip_lookup accepts exactly the same inputs and returns the same ZIP+4 detail — choose this one when the answer only needs to be the code and its place, because the payload is about half the size and only the timezone enrichment is available here. Use zip_lookup for census, demographic, district or American Community Survey enrichments.

Inputs: code (required), api_key, include.

suggest_placesPlace search (type-ahead)A
Read-onlyIdempotent
Inspect

Search for a place by partial name, misspelled name, or partial code — the resolver that turns what a person typed into something the other tools can look up. Fuzzy matching is built in: "beverley hills" finds Beverly Hills, "san fransisco" finds San Francisco, and a partial code like "902" finds the ZIP Codes starting with it. Matches US ZIP Codes, cities, USPS city names, counties, metropolitan areas, states, school districts, Canadian FSAs and Canadian postal codes, ranked, with the total number of matches. Reach for this FIRST when the place is vague, misspelled or partial, then pass the resolved code to zip_lookup, radius_search or distance. Restrict the kinds of place with types, or bias results towards a location with near. Coverage is broad rather than deep — it returns names and codes, not the full record.

Inputs: q (required), near, limit, state, +3 more.

validate_addressValidate a US addressA
Read-onlyIdempotent
Inspect

Validate and standardise a US street address and return its ZIP+4. US ONLY — unlike the postal-code tools, this does not cover Canada. Send the address on one line in mailing order: number and street, then any unit (APT 4, STE 900, #9), then city, state and ZIP. It tolerates ordinary slips (a misspelling, a missing ZIP, state or directional), but it is not a puzzle to solve: a unit placed after the city or ZIP ("Pensacola FL #9") is ambiguous, a unit or a floor. Send what the user gave you, in proper order, once. If it does not match, report that; do not keep trying rewrites. Returns the address in USPS standard form split into its parts, the 5-digit ZIP and the +4 add-on, a confidence level of high, medium or low (low: the +4 may be withheld), and the county, carrier route, congressional district and census block group for the match, all for one credit. include appends more, one credit each: coordinates, the census geographies the address sits inside, its congressional and state legislative districts (now or as of any TIGER/Line year served), its school district, its time zone, and American Community Survey profiles for its census tract. The congressional district already in details is USPS's own code for the record; the cd append is the mapped district, with its number, name and the congress it belongs to. Always read notices. ZIP_CORRECTED means the match is in a different ZIP than the one supplied. SECONDARY_NEEDED means the building has multiple units and an apartment or suite number should be requested. SECONDARY_NOT_VERIFIED means a supplied unit could not be confirmed against known ranges. PARTIAL_MATCH means some details are unverified. A failed match returns success false, sometimes with no notice explaining why, so check success rather than assuming the data block is populated. Without an API key the standardised address is returned with the +4 masked.

Inputs: address (required), api_key, include.

zip_factsZIP Code factsA
Read-onlyIdempotent
Inspect

Statistics about US ZIP Codes and Canadian postal codes: how many exist, how they break down by type, delivery point and carrier route totals, per-state tables, and ranked lists such as the ZIP Codes with the most carrier routes. Every figure is generated from a stored query against the source data, with the date it was measured. Costs nothing and needs no key.

Inputs: no named parameters.

zip_lookupZIP Code lookupA
Read-onlyIdempotent
Inspect

The full record for a postal code — the main location-intelligence tool. Takes a US ZIP Code, a US ZIP+4, a Canadian FSA, a Canadian postal code, or a latitude,longitude pair, and returns the city, state or province, county, whether it spans more than one county, area codes, elevation, metro area and postal details (metro.msa and metro.pmsa are legacy 1999 definitions; the current metro area, the CBSA, comes with census). A ZIP+4 also returns its delivery-segment street ranges, and coordinates reverse-geocode to the code containing the point. Optional enrichments add timezone, census geography, congressional and state legislative districts (for the current year or any TIGER/Line year served), school districts, demographics, Medicare geography and American Community Survey estimates for every release served, all in one schema per year; for Canadian codes, Statistics Canada geography and federal electoral districts (statcan). Use quick_zip instead when only the code and its place are needed — same inputs, about half the payload, no enrichments beyond timezone. Without an API key the core identity fields are returned and everything else is withheld, with each withheld path named.

Inputs: code (required), api_key, include, acs_years.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables US address verification and standardization, validating deliverability and returning USPS-standardized data, plus property enrichment with 350+ tax assessor and deed attributes for a given address.
      9 npm
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Parses, validates, and normalizes postal addresses for US, UK, FR, DE with component extraction and postal code verification. Pay-per-call via x402 micropayments (USDC on Base L2).
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables US address verification, bulk verification, and autocompletion, returning USPS-standardized components and deliverability codes.
      628 npm
      MIT
    Try in Browser

    Glama MCP Gateway

    Add one secure layer between your agents and this server.