Skip to main content
Glama

Air health bands

air_health_bands

Classifies PM2.5, PM10, CO2, and VOC readings into health bands from WHO, EPA, ASHRAE, and UBA standards. Accepts direct values or fetches current readings automatically.

Instructions

Classify PM2.5, PM10, CO2, and VOC readings into WHO 2021 / EPA / ASHRAE / UBA health bands. Pass readings directly, or omit them and the tool will fetch the current reading from the default provider (PM2.5, PM10, CO2, VOC where available). Returns per-pollutant band + the worst signal across pollutants + deduplicated recommended actions + source citations.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
co2NoCO2 in ppm. If omitted, pulled from air_current_reading.
vocNotVOC in ppb. If omitted, pulled from air_current_reading.tvoc when present.
pm10NoPM10 in µg/m³. If omitted, pulled from air_current_reading.
pm25NoPM2.5 in µg/m³. If omitted, pulled from air_current_reading.
providerNoProvider for fetch fallback. Defaults to airgradient.
locationIdNoProvider-specific location id for fetch fallback.
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses key behaviors: fetching current readings as a fallback if parameters are omitted, and the return structure (per-pollutant band, worst signal, deduplicated actions, source citations). It does not mention any destructive actions, which is fine. The description adds value beyond what annotations would typically provide.

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 two well-structured sentences. The first sentence states the core purpose and result format, the second explains the two input modes. Every sentence provides essential information without redundancy or unnecessary detail.

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?

Given the moderate complexity, no output schema, and 6 parameters, the description covers all necessary aspects: the input modes (direct vs. fetch), the return structure (bands, worst signal, actions, citations), and the fallback dependency on 'air_current_reading'. An AI agent can fully understand how to invoke and interpret the tool.

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 description coverage is 100%, so baseline is 3. The description adds significant context beyond the schema: it explains that omitting a parameter triggers a fetch from 'air_current_reading' and that 'provider' and 'locationId' are only used in that fallback case. This clarifies the conditional logic, which the schema alone does not convey.

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 clearly states the tool classifies PM2.5, PM10, CO2, and VOC readings into health bands from specific standards (WHO 2021, EPA, ASHRAE, UBA). It distinguishes itself from siblings like 'air_current_reading' by focusing on classification rather than raw data retrieval, and explicitly describes two usage modes: direct reading input or automatic fetching from a default provider.

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

Usage Guidelines3/5

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

The description explains how to use the tool (pass readings directly or omit for fetch) but lacks explicit guidance on when to prefer this tool over alternatives, such as when to use 'air_current_reading' first for raw data. There is no mention of when not to use it or trade-offs between the two modes.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/davidmosiah/wellness-air'

If you have feedback or need assistance with the MCP directory API, please join our Discord server