US Flood Zone & Property Risk (FEMA, NOAA, USGS, Census)

FEMA flood zone, hazard history and demographics for any US address, with sources on every answer.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
100%
Vollständigkeit des Schemas
84%
Qualität der Benennung
83%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~3,373Tokens (Tool-Definitionen)
~2.4 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (2.64% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "datum-property": {
      "url": "https://mcp.thestackunderflow.com/mcp/property"
    }
  }
}

Remote-Endpunkte

https://mcp.thestackunderflow.com/mcp/propertystreamable-http

Was es kann

Tool-Inventar

Tools (6)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢address_profile(address, lat, lon)

One-call US property report for an address or coordinate: FEMA flood zone (SFHA, base flood elevation, FIRM panel), county demographics, and 10-year hazard history (FEMA disaster declarations, NOAA storm events, USGS earthquakes), with a plain-English summary and a source for every part. Everything the property pack knows about one US address, in one call: - **location**: the point used, and the state, county and census tract. - **flood**: the FEMA flood zone at the point, exactly as `flood_zone` returns it. - **demographics**: county population and median household income (ACS 5-year estimates). - **hazards**: counts of FEMA declarations (and major disasters) and their types, NOAA storm events, deaths and reported damage, and USGS earthquakes within 100 km (since 1950), over the last ten years. Every section has a `status`. The flood zone is required: if FEMA's map cannot be read, no report is produced and the call is not charged. Any other section that fails is marked unavailable and the report still returns. Informational screening only; see the disclaimer in the answer. When to use: Use when the user wants an overview of a US property or address (flood risk, neighbourhood, disaster history) rather than one specific fact. One call replaces flood_zone, hazard_history and area_demographics; quote the `summary` and keep the `disclaimer`. Billed as property.address_profile at 8c. Every response includes a sources[] array naming the data origin and licence.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 5,
      "maxLength": 200,
      "description": "A US street address."
    },
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90
    },
    "lon": {
      "type": "number",
      "minimum": -180,
      "maximum": 180
    }
  },
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "location": {
      "type": "object"
    },
    "flood": {
      "type": "object"
    },
    "demographics": {
      "type": "object",
      "required": [
        "status"
      ]
    },
    "hazards": {
      "type": "object",
      "required": [
        "status"
      ]
    },
    "summary": {
      "type": "string"
    },
    "disclaimer": {
      "type": "string"
    }
  },
  "required": [
    "location",
    "flood",
    "demographics",
    "hazards",
    "summary",
    "disclaimer"
  ]
}
🟢admin_areas(lat, lon)

State and county for a coordinate, with Census GEOIDs. Free - answered from boundaries the platform ingests and holds, with no provider call. Point-in-polygon against Census TIGER/Line boundaries (§22.2). Returns the administrative areas containing the point, most specific first, each with the GEOID that every other census dataset is keyed by. Tract, ZCTA and place follow when those layers are ingested. A coordinate exactly on a county line is genuinely in both counties and both are returned - the alternative is an address falling into a gap. Take the first if you need one answer. When to use: Use to turn a coordinate into a county or state GEOID before asking for any census-keyed data. Free, so there is no reason to guess a FIPS code. This tool is free and does not consume plan credits. Every response includes a sources[] array naming the data origin and licence.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90
    },
    "lon": {
      "type": "number",
      "minimum": -180,
      "maximum": 180
    }
  },
  "required": [
    "lat",
    "lon"
  ],
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "areas": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "geoid",
          "level",
          "name"
        ],
        "properties": {
          "geoid": {
            "type": "string"
          },
          "level": {
            "type": "string",
            "enum": [
              "country",
              "state",
              "county",
              "city",
              "place",
              "tract",
              "zip"
            ]
          },
          "name": {
            "type": "string"
          },
          "state": {
            "type": "string"
          }
        }
      }
    }
  },
  "required": [
    "areas"
  ]
}
🟢area_demographics(lat, lon, geoid)

Population and median household income for the county containing a point, from American Community Survey 5-year estimates. Composes two ingested datasets (§22.2): TIGER/Line resolves the coordinate to a county GEOID, then the ACS layer is read by that key. Pass `geoid` directly to skip the boundary lookup. Values are survey ESTIMATES with margins of error, not counts, and a suppressed estimate is returned as null rather than filled in. The release that produced them is in `dataset_version` and in each metric's `period`. When to use: Use for "how many people live in this area" or "what is the median income there". Give a coordinate, or a county GEOID from admin_areas. Billed as property.area_demographics at 1c. Every response includes a sources[] array naming the data origin and licence.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90
    },
    "lon": {
      "type": "number",
      "minimum": -180,
      "maximum": 180
    },
    "geoid": {
      "type": "string",
      "pattern": "^[0-9]{5}$",
      "description": "Five-digit county GEOID, if you already have one."
    }
  },
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "area": {
      "type": "object",
      "properties": {
        "geoid": {
          "type": "string"
        },
        "level": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "state": {
          "type": "string"
        }
      }
    },
    "metrics": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "metric",
          "value"
        ],
        "properties": {
          "metric": {
            "type": "string"
          },
          "value": {
            "type": [
              "number",
              "string",
              "null"
            ]
          },
          "unit": {
            "type": "string"
          },
          "period": {
            "type": "string"
          },
          "area": {
            "type": "string"
          }
        }
      }
    }
  },
  "required": [
    "metrics"
  ]
}
🟢census_geocode(address)

Free. Turns a US street address into a latitude/longitude plus the state, county and census tract it is in (with GEOIDs), using the U.S. Census Bureau geocoder. Use it first, then pass the point to the paid property tools. One-line address to point, with the Census Bureau's own match: the matched address, ZIP code, coordinates and the state, county and tract containing them. An address the geocoder cannot place is reported as not found, never guessed. US addresses only; PO boxes and rural routes often do not match. When to use: Use when you have a US street address and need its coordinates, county or census tract. Free. flood_zone, hazard_history and address_profile also accept the address directly, so call this only when the user wants the location itself. This tool is free and does not consume plan credits. Every response includes a sources[] array naming the data origin and licence.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 5,
      "maxLength": 200,
      "description": "A US street address, e.g. \"411 Legislative Ave, Dover, DE 19901\"."
    }
  },
  "required": [
    "address"
  ],
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "object",
      "properties": {
        "formatted": {
          "type": "string"
        },
        "city": {
          "type": "string"
        },
        "state": {
          "type": "string"
        },
        "postcode": {
          "type": "string"
        },
        "county": {
          "type": "string"
        },
        "county_fips": {
          "type": "string"
        },
        "lat": {
          "type": "number"
        },
        "lon": {
          "type": "number"
        }
      }
    },
    "areas": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "geoid",
          "level",
          "name"
        ],
        "properties": {
          "geoid": {
            "type": "string"
          },
          "level": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "state": {
            "type": "string"
          }
        }
      }
    }
  },
  "required": [
    "address",
    "areas"
  ]
}
🟢flood_zone(address, lat, lon)

FEMA flood zone for a US address or coordinate: zone (A, AE, VE, X ...), whether it is in the Special Flood Hazard Area (where lenders generally require flood insurance), base flood elevation with its datum, FIRM panel and effective date, NFIP community, and any Letter of Map Revision. Live from FEMA's National Flood Hazard Layer, with a plain-English summary. Reads FEMA's National Flood Hazard Layer at one point, live, so the answer is FEMA's current effective map: the flood zone and subtype, a risk level (high, coastal high, moderate, minimal, undetermined, unmapped), whether the point is in the Special Flood Hazard Area or a floodway, the base flood elevation in its unit and vertical datum (null, never 0, where no single elevation is published: it then varies along the flooding source and is read from the FIRM profile), the FIRM panel and its effective date, the NFIP community, any Letter of Map Revision in effect, and notes where FEMA's own flags disagree with the zone. Answers are cached for up to 30 days. An address is geocoded with the Census Bureau geocoder first, and the point used is returned; an ambiguous address is refused with its candidates. A point FEMA has not mapped digitally is reported as unmapped, not as low risk, and a point with no FEMA data at all (outside the US) is not found and not charged. On a zone boundary the higher-risk zone is reported and the others listed. Informational screening only: not an official flood zone determination (Standard Flood Hazard Determination Form), not an elevation certificate, and not insurance or lending advice. Every answer carries that disclaimer. When to use: Use when asked whether a US property is in a flood zone, needs flood insurance, is in the SFHA or a floodway, or for its FEMA zone, base flood elevation or FIRM panel. Quote the `summary` and keep the `disclaimer` with it. For flood plus everything else about an address in one call, use address_profile. Billed as property.flood_zone at 2c. Every response includes a sources[] array naming the data origin and licence.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 5,
      "maxLength": 200,
      "description": "A US street address. Geocoded with the Census Bureau geocoder."
    },
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude, with lon, instead of an address."
    },
    "lon": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude, with lat."
    }
  },
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "point": {
      "type": "object",
      "properties": {
        "lat": {
          "type": "number"
        },
        "lon": {
          "type": "number"
        },
        "source": {
          "type": "string",
          "enum": [
            "input",
            "geocoded"
          ]
        },
        "matched_address": {
          "type": "string"
        }
      }
    },
    "flood": {
      "type": "object",
      "required": [
        "mapped",
        "zone",
        "risk_level",
        "sfha"
      ],
      "properties": {
        "mapped": {
          "type": "boolean"
        },
        "zone": {
          "type": [
            "string",
            "null"
          ]
        },
        "zone_subtype": {
          "type": [
            "string",
            "null"
          ]
        },
        "risk_level": {
          "type": "string",
          "enum": [
            "high",
            "coastal_high",
            "moderate",
            "minimal",
            "undetermined",
            "unmapped",
            "other"
          ]
        },
        "description": {
          "type": "string"
        },
        "sfha": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "floodway": {
          "type": "boolean"
        },
        "base_flood_elevation": {
          "type": [
            "object",
            "null"
          ]
        },
        "depth": {
          "type": [
            "object",
            "null"
          ]
        },
        "firm": {
          "type": [
            "object",
            "null"
          ]
        },
        "community": {
          "type": [
            "object",
            "null"
          ]
        },
        "map_revisions": {
          "type": "array"
        },
        "other_zones": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "summary": {
      "type": "string"
    },
    "disclaimer": {
      "type": "string"
    }
  },
  "required": [
    "point",
    "flood",
    "summary",
    "disclaimer"
  ]
}
🟢hazard_history(address, lat, lon, geoid, years)

Natural-hazard history for a US county or address: FEMA declarations (major disasters, emergencies and fire management, by type, with links), NOAA storm events with deaths and reported property damage by type and year, and USGS earthquakes within 100 km since 1950. One call, each source reported apart. Three federal sources, fetched together: - **FEMA declarations** for the county since 1 January of the first year: the total (major disasters, emergencies and fire management), major disasters alone, count by incident type, and the declarations themselves with FEMA ids and links. Statewide declarations are included. - **NOAA Storm Events** for the county: events, deaths, injuries and reported property and crop damage (nominal dollars; unreported damage counts as 0, so it is a floor), by type and by year, plus the worst events. Events NOAA records for a forecast zone covering only this county (most heat and winter-storm deaths) count as the county's own; a zone covering several counties is counted, but its casualties and damage are reported apart in `zone_based`, because they are shared. The current year is incomplete; NOAA can trail by months. - **USGS earthquakes** of magnitude 2.5 or more within 100 km of the point since 1950: the count and the five largest. This needs a point, so it is skipped when only a county GEOID is given. Each section has its own `status`; if one source is down the others still answer. If neither FEMA nor NOAA can answer, the call fails and is not charged. Connecticut's planning regions (since 2022) are not yet matched to the old counties FEMA and NOAA still use, so they are not answered; the old county GEOIDs (09001-09015) work. A GEOID that is not a county is not found. A `geoid` is used only when no address or coordinate is given. When to use: Use for "has this area had floods, hurricanes or earthquakes", disaster declarations, storm damage history, or natural-hazard due diligence for a US property or county. For the flood zone at a property use flood_zone; for everything about an address in one call use address_profile. Billed as property.hazard_history at 2c. Every response includes a sources[] array naming the data origin and licence.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 5,
      "maxLength": 200,
      "description": "A US street address."
    },
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90
    },
    "lon": {
      "type": "number",
      "minimum": -180,
      "maximum": 180
    },
    "geoid": {
      "type": "string",
      "pattern": "^[0-9]{5}$",
      "description": "Five-digit county GEOID, instead of a place (no earthquake section then)."
    },
    "years": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 10,
      "description": "Full years back from 1 January, plus the current year so far."
    }
  },
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "county": {
      "type": "object"
    },
    "point": {
      "type": "object"
    },
    "years": {
      "type": "object",
      "properties": {
        "from": {
          "type": "integer"
        },
        "to": {
          "type": "integer"
        }
      }
    },
    "disasters": {
      "type": "object",
      "required": [
        "status"
      ]
    },
    "storms": {
      "type": "object",
      "required": [
        "status"
      ]
    },
    "earthquakes": {
      "type": "object",
      "required": [
        "status"
      ]
    },
    "summary": {
      "type": "string"
    }
  },
  "required": [
    "county",
    "years",
    "disasters",
    "storms",
    "earthquakes",
    "summary"
  ]
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet6 Tools