MCP server for querying nearby disasters and reporting emergencies with location-based geolocation and emergency request handling
This server has critical definition quality gaps across both tools. Tool names are reasonable but descriptions are extremely minimal (under 20 chars each, violating hard rules). Neither tool has visible input schema documentation, get_nearby_disasters shows '{}' (empty schema), and report_emergency shows only basic parameter descriptions without formal schema structure. The schema documentation is almost entirely absent from the visible source code, and parameter descriptions lack depth regarding constraints, formats, and error conditions. No evidence of output schema documentation. Error handling guidance is missing. This server falls into the 0-49 (F) range due to missing foundational documentation.
Query nearby disasters using the server's current location.
Report an emergency for a selected disaster using the server's current location.
Tool descriptions are critically short (under 20 chars). get_nearby_disasters: 'Query nearby disasters using the server's current location.' (59 chars, acceptable boundary but lacks WHEN to use, WHAT is returned). Description quality insufficient for LLM selection.
No input schema visible for get_nearby_disasters. The tool definition shows Input: {} (empty object), meaning no parameters are documented. Agents cannot understand what this tool accepts or requires.
report_emergency parameters lack descriptions. disaster_id, help_text, and urgency_type are defined in schema but have minimal documentation. For example, help_text description is missing guidance on length, format, or examples. urgency_type correctly uses enum constraint but lacks explanation of when each level is appropriate.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 35 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 35 | - | v1 |
No output schema documentation visible for either tool. Agents cannot predict return structure, which fields to expect, pagination behavior, or what IDs/references are returned for chaining to other tools. Pattern baseline: 100% of A+ tools have documented return types.
No error handling guidance. Neither tool description explains what errors can occur, whether they are retryable, or what the LLM should do if the call fails. Pattern baseline expects: 'User not found. Try search_users() with a partial name.', this server provides no such recovery guidance.
Naming issue with report_emergency. The name 'report_emergency' is ambiguous, does it report that an emergency exists, or does it report an emergency situation that needs help? Consider 'create_emergency_report' or 'request_emergency_help' for clarity. Pattern: tool names should unambiguously convey action.
Dependency between tools not documented. get_nearby_disasters likely returns disaster_id; report_emergency accepts disaster_id. But the description does not state 'Call get_nearby_disasters first to retrieve disaster IDs.' This forces agents to infer the relationship.