publicsafetyapi-mcp
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PUBLICSAFETYAPI_KEY | Yes | Your API key for publicsafetyapi.dev. Get a free key at https://publicsafetyapi.dev |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| find_stations_near_addressA | Find the public safety facilities nearest to a US street address, sorted by distance. Args: address: Full US street address, e.g. "350 Fifth Ave, New York, NY" type: Optional filter — "fire", "police", "ems", or "hospital". Comma-separate for several; omit to return all types. radius_miles: Search radius in miles (0.1–50, default 10) limit: Maximum facilities to return (1–25, default 5) |
| find_stations_near_coordinatesA | Find the public safety facilities nearest to a latitude/longitude, sorted by distance. Use this when you already have coordinates; it skips geocoding and is faster than find_stations_near_address. Args: lat: Latitude (WGS84) lng: Longitude (WGS84) type: Optional filter — "fire", "police", "ems", or "hospital" radius_miles: Search radius in miles (0.1–50, default 10) limit: Maximum facilities to return (1–25, default 5) |
| get_stationA | Get the full record for one facility by its ID, including address, phone, coordinates, and (for hospitals) beds, trauma level, and ownership. Args: station_id: Facility ID, e.g. "fire_CA_12345" |
| list_stationsA | List or search public safety facilities by type, state, name, or ZIP. Use this for questions like "how many fire stations are in Kansas" or to find a facility by name. For "what's nearest to X", use find_stations_near_address instead. Args: type: "fire", "police", "ems", or "hospital" (comma-separate for several) state: Two-letter state code, e.g. "CA" name: Full-text search on the facility name zip: 5-digit ZIP code limit: Results per page (1–100, default 25) offset: Pagination offset (default 0) |
| get_jurisdictionA | Determine which Census-defined place (city/town) contains a location, and
which agencies most likely respond there. Returns the place name, state,
Census GEOID, boundary type, and a Provide either an address, or a lat/lng pair. Args: address: Full US street address (geocoded automatically) lat: Latitude (WGS84) — use with lng instead of address lng: Longitude (WGS84) — use with lat instead of address |
| get_state_summaryA | Get facility counts by type (fire, police, EMS, hospital) for one state. Args: state_code: Two-letter state abbreviation, e.g. "CA" |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
The tools are mostly distinct: find_stations_near_address vs find_stations_near_coordinates differ only by input method, but both are clearly explained. get_jurisdiction returns nearby agencies alongside place info, which slightly overlaps with find_stations, but the descriptions explicitly differentiate use cases.
All tool names follow a consistent verb_noun pattern in snake_case (find_, get_, list_). The action verbs are semantically appropriate, and naming conventions are uniform throughout.
With 6 tools, the server is well-scoped for a public safety facility lookup API. Each tool serves a distinct query need (proximity, detail, search, jurisdiction, summary), and none are redundant.
The read-only query surface covers the expected operations: proximity search by address or coordinates, detail by ID, filtered/paginated listing, jurisdiction lookup, and state-level aggregation. No critical gaps appear for the stated purpose.