ZBS Index What actually exists in applied AI, with the source next to it

mcp server

fema-mcp-server

Query FEMA disaster declarations, public assistance grants, housing aid, and NFIP claims.

Description as published by the maintainer. Source

  • version 0.1.13
  • active

active — Most recent push to the repository was 2026-07-30.

What this server can do

8 functions, named and described by the server itself. Parameter names are shown because they say more about what a function does than its name usually does.

fema_dataframe_describe(canvas_id)
List tables and column schemas on a DataCanvas staged by fema_search_nfip. Call this before fema_dataframe_query to discover the exact table name, column names, and DuckDB data types needed to write valid SQL. Row count reflects what was actually staged — check truncated in the fema_search_nfip response to know whether the canvas holds the full matching set. Required: canvas_id.
fema_dataframe_query(query, canvas_id)
Run a read-only SQL SELECT against a DataCanvas table staged by fema_search_nfip. Enables aggregation, GROUP BY, SUM/COUNT, time-series, and filtered analysis over the full NFIP claims result without re-fetching from the API. Call fema_dataframe_describe first to get the exact table name and column names needed for valid SQL. Only SELECT statements are allowed — DDL, DML, COPY, and file-reading functions are blocked. Required: canvas_id, query.
fema_get_disaster(disaster_number)
Fetch all designated-area rows for a specific FEMA disaster by disaster number (e.g., 4781). Returns every county/municipality designated under the declaration along with programs activated, incident period, and state info. Use fema_search_disasters to find disaster numbers. The returned disaster_number chains to fema_get_public_assistance and fema_get_housing_assistance. Required: disaster_number.
fema_get_housing_assistance(type, limit, state, offset, disaster_number)
Retrieve Individual Assistance (IA) housing data for a disaster by disaster number. Returns owner and/or renter breakdowns by county and ZIP code — valid registrations, total approved IHP amounts, repair/rental amounts, and inspection data. Use type to select owners, renters, or both (default). Use disaster_number from fema_search_disasters. Required: disaster_number.
fema_get_public_assistance(limit, state, county, offset, disaster_number)
Retrieve Public Assistance (PA) funded project records for a disaster or state — shows where federal recovery money was obligated. Returns applicant, damage category, project size and status, federal share obligated, and total obligated amounts. Either disaster_number or state must be provided. Use disaster_number (from fema_search_disasters) to scope to a single declaration, or state to browse all PA projects for a state. PA projects are created only when the PA program is declared (pa_declared: true on the disaster).
fema_query_dataset(limit, filter, offset, select, dataset, orderby)
Generic OData query against any OpenFEMA v2 dataset — the escape hatch for datasets the convenience tools do not cover (e.g., FimaNfipPolicies, IndividualAssistanceHousingRegistrantsLargeDisasters, FemaWebDeclarationAreas, PublicAssistanceApplicants). Accepts raw OData filter, select, orderby, and pagination parameters. For NFIP Policies, use propertyState (not state) as the state field — always include a county or ZIP filter to avoid timeout. The dataset name must match the exact OpenFEMA v2 entity name (case-sensitive, e.g., FimaNfipClaims). Unknown dataset names return an unknown_dataset error. Required: dataset.
fema_search_disasters(limit, state, county, offset, date_to, date_from, incident_type, declaration_type)
Search federal disaster declarations by state, incident type, declaration type, date range, and county. Returns deduplicated declaration-level summaries — each disaster number appears once with a designatedAreaCount showing how many counties/municipalities were designated. The disaster number is the chain key for fema_get_disaster, fema_get_public_assistance, and fema_get_housing_assistance. Use declaration_type to filter: DR (major disaster, most common), EM (emergency), FM (fire management). Date filters apply to the declaration date. Use fema_get_disaster to retrieve all designated-area rows for a specific declaration.
fema_search_nfip(limit, state, year_to, zip_code, canvas_id, year_from, county_code)
Search National Flood Insurance Program (NFIP) claims data by state, county, ZIP code, and year range. Returns claim counts, amounts paid on building and contents, flood zones, and loss years. state is required — the full NFIP dataset is 2.7 million rows; unfiltered access is prohibited. When DataCanvas is enabled (CANVAS_PROVIDER_TYPE=duckdb) and results exceed the inline preview, the full result set is staged on a canvas for SQL aggregation via fema_dataframe_query. Use fema_dataframe_describe to inspect the staged table schema before writing SQL. Without canvas, results are returned inline up to the limit. Required: state.

Last successful function declaration observed on . Source: https://fema.caseyjhand.com/mcp. We list what the server declared; we do not call any of these functions.

Endpoint status observed on . Source: https://fema.caseyjhand.com/mcp.

Signals

These are separate measurements of different things. They are deliberately not combined into one score, because a popularity number that mixes website traffic with saves and stars cannot be checked or acted on.

Signal Value What it measures Window Observed Source
GitHub stars 1 Number of GitHub accounts that bookmarked this repository since it was created. It is a bookmark count, not installs, not active users and not quality. cumulative, all time GitHub
Last commit 2026-07-30 Date of the most recent push to any branch. This is the strongest cheap indicator of whether the project is still maintained. point in time GitHub
Open issues 6 Open issues plus open pull requests, as GitHub counts them together. A high number can mean an active project or an abandoned one. as of fetch GitHub
Latest published version 0.1.13 Latest version string the maintainer published to the registry. as of fetch Model Context Protocol
Registry record last updated 2026-07-10 When the registry record was last updated by its maintainer. point in time Model Context Protocol
License Apache-2.0 Licence GitHub detected in the repository. Detection can be wrong; the LICENSE file is authoritative. as of fetch GitHub
First listed in the MCP Registry 2026-07-10 Date this server was first published to the official MCP Registry. Not a usage or quality measure. point in time Model Context Protocol
repository status active The repository exists on GitHub and is not archived. This says nothing about how recently it was worked on. as of fetch GitHub
mcp tools declared 8 tools Number of functions the server itself declared when asked to list them. This is what the server offers an agent, not a measure of how well any of them work. as of probe fema.caseyjhand.com
mcp endpoint status ok The server listed 8 functions when asked. as of probe fema.caseyjhand.com

Where to get it

Related, by what their authors tagged them

These share tags the maintainers applied themselves, such as cyanheads. Common tags like "mcp" or "ai" are ignored for this: agreeing with six hundred other projects is not a similarity.

This is not a recommendation and not a test result. It is a map of what the authors said their work is about.

Also from cyanheads

How the author describes it

Topics the maintainer set on GitHub: ai-agents, ai-tools, cyanheads, disaster, emergency, fema, mcp, mcp-server, model-context-protocol, openfema, typescript.

This record as data

Every field on this page, with its source and observation date, is in the catalog JSON. Fetch the whole kind at once instead of parsing this HTML.

GET /api/v1/entries/mcp_server.json

Sources

  1. cyanheads/fema-mcp-server on GitHub — GitHub, observed , trust tier 3.
  2. Tools declared by the MCP server at https://fema.caseyjhand.com/mcp — fema.caseyjhand.com, observed , trust tier 4.
  3. Official MCP Registry — Model Context Protocol, observed , trust tier 1.