protogrid

Search / io.github.andrew-sondgeroth/zipexplore-mcp

zipexplore-mcp

R1· needs a key

US ZIP code intelligence: demographics, weather, tax, crime, housing, voting, and more.

v1.0.0 · active · descriptor JSON · versions

An agent can connect on its own if it already holds zipexplore_api_key, zipexplore_api_key.Remote endpoint behind a static API key or header. The registry never sees the value; the agent fills the placeholder.
Quality79good
Trust69of 100
Uptime, 30 days97%
Latency p50379 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "zipexplore-mcp": {
      "type": "http",
      "url": "https://mcp.zipexplore.com/mcp",
      "headers": {
        "x-api-key": "${zipexplore_api_key}",
        "Authorization": "${zipexplore_api_key}"
      }
    }
  }
}
claude mcp add --transport http zipexplore-mcp https://mcp.zipexplore.com/mcp --header "x-api-key: ${zipexplore_api_key}" --header "Authorization: ${zipexplore_api_key}"
[mcp_servers.zipexplore-mcp]
url = "https://mcp.zipexplore.com/mcp"
env_http_headers = { "x-api-key" = "zipexplore_api_key", "Authorization" = "zipexplore_api_key" }
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "zipexplore-mcp": {
      "type": "remote",
      "url": "https://mcp.zipexplore.com/mcp",
      "enabled": true,
      "headers": {
        "x-api-key": "{env:zipexplore_api_key}",
        "Authorization": "{env:zipexplore_api_key}"
      }
    }
  }
}
{
  "mcpServers": {
    "zipexplore-mcp": {
      "type": "http",
      "url": "https://mcp.zipexplore.com/mcp",
      "headers": {
        "x-api-key": "${zipexplore_api_key}",
        "Authorization": "${zipexplore_api_key}"
      }
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=zipexplore-mcp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLnppcGV4cGxvcmUuY29tL21jcCIsImhlYWRlcnMiOnsieC1hcGkta2V5IjoiJHt6aXBleHBsb3JlX2FwaV9rZXl9IiwiQXV0aG9yaXphdGlvbiI6IiR7emlwZXhwbG9yZV9hcGlfa2V5fSJ9fQ%3D%3D"
}
{
  "servers": {
    "zipexplore-mcp": {
      "type": "http",
      "url": "https://mcp.zipexplore.com/mcp",
      "headers": {
        "x-api-key": "${zipexplore_api_key}",
        "Authorization": "${zipexplore_api_key}"
      }
    }
  }
}
{
  "mcpServers": {
    "zipexplore-mcp": {
      "httpUrl": "https://mcp.zipexplore.com/mcp",
      "headers": {
        "x-api-key": "${zipexplore_api_key}",
        "Authorization": "${zipexplore_api_key}"
      }
    }
  }
}
extensions:
  "zipexplore-mcp":
    enabled: true
    name: "zipexplore-mcp"
    type: streamable_http
    uri: "https://mcp.zipexplore.com/mcp"
    headers:
      "x-api-key": "${zipexplore_api_key}"
      "Authorization": "${zipexplore_api_key}"
    timeout: 300

Placeholders to fill from your own secret store: ${zipexplore_api_key}, ${zipexplore_api_key}. The registry never accepts secret values.

Quality 79 / 100good

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-03-26; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene71 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • fail
    tools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: get_census_profile (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_cost_profile (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_research (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
  • pass
    tools.token_costabout 2,524 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changesno tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

22 tools, about 2,524 tokens to load them all · tool set 5dc7fb97ebf6 · checked 2026-10-20 18:38 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 69 / 100

no-repository
provenance35
liveness99
freshness65
hygiene80

+reachable +uptime-97% ~updated-144d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.zipexplore.com/mcp streamable-httpapi_key ${zipexplore_api_key}yes97%379 ms2025-03-262026-10-20

Tools (22)

compare_zipsSide-by-side full profiles for 2–5 ZIP codes. Use when the user has finalists and needs to choose between them. Returns the same profile shape as get_zip_profile for each ZIP.
get_air_quality_profileDetailed air quality data for one ZIP code. Use when get_zip_profile's air quality section isn't sufficient depth. Includes EPA AQS pollutant levels (PM2.5, PM10, ozone, NO2, SO2, CO) and AQI summary.
get_articleReturns the full prose of a specific ZipExplore research article. Use this for editing, fact-checking, detailed analysis, or when get_research summaries aren't enough. Valid slugs: disappearing-towns, hazard-premium, snap-economy, wealthy-retirees. Each article includes all body sections and methodology notes exactly as published.
get_business_profileDetailed business and employment data for one ZIP code. Use when get_zip_profile's business section isn't sufficient depth. Includes top industries, sector breakdowns, total establishments, employment, and annual payroll from Census BDS/CBP data.
get_census_profileDetailed Census / demographics data for one ZIP code. Use when get_zip_profile's demographics section isn't sufficient depth. Includes population, housing, income distribution, education attainment, economic indicators, internet access, and public assistance rates.
get_cost_profileDetailed cost of living data for one ZIP code. Use when get_zip_profile's cost section isn't sufficient depth. Includes fair market rents, housing cost burden, regional price indices, and affordability metrics.
get_crime_profileDetailed crime data for one ZIP code. Use when get_zip_profile's crime section isn't sufficient depth. Includes violent crime rate, property crime rate, and data quality flags (coverage level, Bayesian shrinkage).
get_disaster_risk_profileDetailed natural disaster risk data for one ZIP code. Use when get_zip_profile's disaster risk section isn't sufficient depth. Includes FEMA NRI overall risk score, individual hazard scores (hurricane, tornado, earthquake, wildfire, flood, etc.), and expected annual loss estimates.
get_education_profileDetailed school data for one ZIP code. Use when get_zip_profile's education section isn't sufficient depth. Includes school counts, student-teacher ratios, graduation rates, per-pupil spending, Title I percentage, and budget breakdown (instruction vs. admin vs. capital). May reflect data from the nearest ZIP if no schools are in this ZIP.
get_healthcare_profileDetailed healthcare data for one ZIP code. Use when get_zip_profile's healthcare section isn't sufficient depth. Includes hospital count and ratings, nursing homes, beds per capita, primary care and mental health shortage area designations, pharmacy count, and urgent care count.
get_methodologyReturns ZipExplore's data interpretation guide: reasoning guardrails (associations vs. causes, small-ZIP noise, averages hiding distributions, editorial score weights, drawing conclusions about people from geographic data), quality flag definitions, known data limitations, coverage gap explanations, and per-domain vintage summary. Call this when you have questions about data quality, what a quality_flag code means, why a ZIP has no data, or how to reason carefully about scores and correlations.
get_researchReturns ZipExplore's published research articles — original data findings on topics including disaster risk vs. housing costs (the Hazard Premium), food insecurity in fully-employed communities (SNAP economy), economically declining towns vs. retirement communities, and income variation among America's oldest ZIP codes. Each entry includes the key finding, specific quantitative results, caveats, and a URL to the full article. Call this when a user asks about these topics or when published findings would add context to a live data lookup.
get_search_fieldsLists every field name, type, and description available for search criteria. Call this when you're unsure what field names to pass to search_zips, or when the user asks what data ZipExplore has.
get_tax_profileDetailed tax data for one ZIP code. Use when get_zip_profile's tax section isn't sufficient depth. Includes state income tax, sales tax, property tax effective rates, excise taxes, and IRS income statistics.
get_transit_profileDetailed public transit data for one ZIP code. Use when get_zip_profile's transit section isn't sufficient depth. Includes bus stop count, subway station count, rail station count, light rail count, ferry terminal count, total transit stops, transit commute percentage, and nearest subway/rail distances.
get_voting_profileDetailed voting and political data for one ZIP code. Use when get_zip_profile's voting section isn't sufficient depth. Includes presidential election results, partisan lean, congressional and state legislative districts, and state officials.
get_weather_profileDetailed climate data for one ZIP code. Use when get_zip_profile's climate section isn't sufficient depth. Includes annual/monthly temperature averages, precipitation, humidity, and nearest weather station info.
get_zip_centroidsGet the latitude/longitude centroid for one or more ZIP codes (max 200). Use when you need map coordinates for a set of ZIPs.
get_zip_profileFull location profile for one ZIP code across all 12 data domains: demographics, climate, tax, crime, cost of living, voting, education, healthcare, business, air quality, disaster risk, and transit. Use this to get detail on a ZIP after search, or when the user asks about a specific ZIP. For deeper data on one domain, use the domain-specific tools.
pingReturns server status and tool/resource counts. Use this to verify the ZipExplore MCP connection is live.
reverse_geocodeConvert a latitude/longitude coordinate to a ZIP code. Use when the user provides an address or map coordinates rather than a ZIP code.
search_zipsFind ZIP codes matching one or more criteria. Returns a ranked list with scores. Use this first when the user wants recommendations (e.g. "find a low-crime suburb near Denver"). Call get_search_fields first if you're unsure what field names to use. criteria: list of {"field": str, "level": "low"|"medium"|"high"} area_types: "CITY" | "SUBURB" | "SMALL_TOWN" | "RURAL" regions: "northeast" | "southeast" | "midwest" | "southwest" | "west"

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "io.github.andrew-sondgeroth/zipexplore-mcp",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.zipexplore.com/mcp",
      "type": "streamable-http",
      "headers": [
        {
          "name": "x-api-key",
          "value": "{zipexplore_api_key}",
          "isSecret": true,
          "isRequired": true
        }
      ]
    }
  ],
  "version": "1.0.0",
  "description": "US ZIP code intelligence: demographics, weather, tax, crime, housing, voting, and more."
}