Skip to main content
Glama

Search veteran resources by keyword

search_veteran_resources_by_text
Read-onlyIdempotent

Natural-language full-text search over the entire veteran-resource corpus (name, services, notes, city). Use when the user types a free-form query like "PTSD counseling houston" or "VA hospital san diego" instead of a bare ZIP. Returns top results ranked by BM25 relevance. Crisis keywords route to the Veterans Crisis Line automatically.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qYesFree-text query (2-200 chars)
zipNoOptional 5-digit ZIP to bias results within 50 miles
typeNo
limitNo
stateNo2-letter state code filter
specialtyNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover readOnly/idempotent/non-destructive/openWorld=false, but the description adds real behavior beyond them: BM25 relevance ranking and automatic routing of crisis keywords to the Veterans Crisis Line. It doesn't note result shape or pagination, so it stops short of a 5.

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?

Four tight sentences, front-loaded with the corpus and scope before the usage cue and the crisis-routing caveat. Every sentence carries information, though the crisis-routing line could be folded more economically.

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?

For a 6-param, no-output-schema search tool, the description conveys what is searched, how results are ranked, and one safety behavior. It leaves the filter parameters (zip, type, specialty, state, limit) entirely to the schema, which is a modest completeness gap.

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

Parameters3/5

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

Schema description coverage is 50%, and the description only illuminates the 'q' parameter's free-text semantics and the searchable fields; it says nothing about zip biasing, type/specialty enums, limit, or state. Baseline 3 is appropriate given the schema does part of the work but the description doesn't compensate for the gap.

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?

States a specific verb (full-text search) plus the exact resource and the indexed fields (name, services, notes, city), and distinguishes itself from the bare-ZIP sibling search. An agent can choose it over search_by_city / search_veteran_resources without opening a schema.

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?

Gives a concrete trigger ('use when the user types a free-form query like "PTSD counseling houston"') and an implicit exclusion ('instead of a bare ZIP'), which points at the sibling to use otherwise. It never names that sibling explicitly, so it falls short of full routing guidance.

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.

Resources