Skip to main content
Glama

Get lab results

get_results
Read-onlyIdempotent

Retrieve lab results for a monitoring well, oldest first, with traceable sample dates, analytes, and detection limits. Filter by analyte to screen PFAS data against guidelines.

Instructions

Return the lab results for one monitoring well, oldest round first.

Each result has the sample date, analyte, the result exactly as the lab reported it, the exact value in ug/L (null when not detected), the detection limit, the lab report id, and the file and row it came from, so any number can be traced to its source. Use these values verbatim; do not round them.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
wellYesMonitoring well id, for example 'MB2'.
analyteNoOptional analyte to filter by, for example 'PFOS'. Omit for all analytes.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
noteYes
siteYes
unitYes
wellYes
countYes
datesYesSample dates with results, oldest first.
matrixYes
resultsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnly and idempotent annotations, the description discloses output contents, null handling for non-detects, traceability to source file/row, and a strict instruction to use values verbatim without rounding. No contradiction with annotations exists.

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

Conciseness5/5

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

The description is front-loaded with the core purpose and ordering, followed by a concise list of return fields and a clear imperative not to round values. Every sentence earns its place, with no filler.

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

Completeness5/5

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

With a full output schema and 100% parameter schema coverage, the description still adds valuable context: ordering, verbatim usage, and non-detect handling. It is complete enough for an agent to call the tool correctly without additional information.

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?

The input schema already documents both parameters with examples ('MB2', 'PFOS') and the optionality of analyte, so the baseline is 3. The description adds no new parameter-level semantics beyond what the schema provides.

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 states a specific verb and resource: 'Return the lab results for one monitoring well, oldest round first.' This clearly differentiates it from sibling tools like lookup_limit and search_guidelines, which serve distinct purposes.

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 makes the intended use clear: retrieve lab results for a single well, with optional analyte filtering. It does not explicitly name alternatives or when not to use this tool, but the context is sufficient for correct selection among the listed siblings.

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