Skip to main content
Glama

Who Do I Call For? — Emergency Home-Service Router

route_emergency

Read-onlyIdempotent

Given a home emergency described in plain words (e.g. "water coming through my ceiling"), returns the matching situation(s): who to call and in what order, first steps, typical costs, and a 24/7 dispatch phone number when one is available for the service vertical. Optionally pass a US state for region-aware dispatch numbers.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
stateNoOptional US state code or name, e.g. "FL" or "Florida"
problemYesThe user's problem in plain words

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
noteNo
stateNoUS state code the numbers were matched against
matchesYesMatching situations, best first; empty when no confident match
categoriesNo
triage_urlNo

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, and non-destructive behavior. The description adds value by detailing the return contents (who to call, order, first steps, costs, dispatch number) and the conditional nature ('when one is available'), as well as the state-based regional behavior. It does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, dense sentence with an illustrative example and enumerates the outputs. All parts are necessary and there is no fluff. It is slightly long but appropriate for the complexity it conveys.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that an output schema exists and annotations are rich, the description covers the core behavior well: input format, output components, and optional state. It does not explicitly address edge cases like no match, but the output schema likely covers that. Overall, it is sufficiently complete for an agent to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for both parameters, so baseline is 3. The description enriches beyond the schema by providing an example of 'problem' ('water coming through my ceiling') and explaining that 'state' enables 'region-aware dispatch numbers', which clarifies the purpose and value of the optional parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('returns') and clearly identifies the resource ('matching situation(s)') and the kind of output (who to call, first steps, costs, dispatch number). It differentiates from sibling tools by focusing on routing a plain-language emergency to action plans, rather than just retrieving or listing scenarios.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when to use the tool: when a user describes a home emergency in plain words. It does not explicitly mention when not to use it or name alternatives, but the sibling tool names ('get_scenario', 'list_scenarios') imply those are for scenario lookup, while this tool is for emergency routing. The optional state parameter is mentioned as a way to get region-aware dispatch numbers, which adds usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.2/5.0
Disambiguation5/5

Each tool serves a distinct purpose: listing all scenarios, fetching a full detail record, and routing natural-language queries to relevant scenarios. There is no overlap or ambiguity between them.

Naming Consistency4/5

Tool names follow a consistent verb_noun pattern with snake_case (get_scenario, list_scenarios, route_emergency). The only minor deviation is using 'route' as a verb, but it still matches the overall style.

Tool Count4/5

Three tools is small but well-scoped for a read-only routing service. It covers the essential actions (discover, fetch details, route), though it could warrant a few more (e.g., category listing) without feeling cluttered.

Completeness4/5

The domain is a knowledge/retrieval API, and the tools provide a complete lifecycle: list to discover, get to retrieve full details, and route to match emergencies. Minor gap: no explicit category filter beyond the list output, but this is workable.

Resources