Skip to main content
Glama

TunnelMind Data API

station_health

Signed station-health row for a settlement station; see /docs

Live is paid, history is free. The live answer is a flat price via x402 when the answer is fresh. Every paid live answer is a signed row that also appears in the next UTC day's public file (v1/health/<D>.jsonl on the weather relay, searchable via ledger_search with source=weather-health), so anyone can check a paid answer for free the next day.

A stale answer is always free (verdict: stale with a reason), including live_token_missing (the Worker has no live-relay token) and relay_403 (the relay refused the live read).

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "icao": "<icao>"
    },
    "name": "station_health"
  }
}

Input Schema

NameRequiredDescriptionDefault
icaoYesICAO code of a weather settlement station, case-insensitive. An unknown code answers 404 with the valid codes in `stations`.
receiptNoWhen true, attach a signed Receipt v1.0 over the answer (not logged to the receipts ledger). A signing failure never costs you the answer.
X-PAYMENTNobase64(JSON) x402 payment. Only a fresh answer is ever charged, and only when the paid tools flag is on.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.6/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does substantial work: it discloses the x402 charge applies only to fresh answers, that stale answers are free with verdict/reason, and it names concrete failure reasons (live_token_missing, relay_403). Remaining gaps are the actual price (a get_pricing sibling exists) and the shape of a successful non-stale response.

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

Conciseness3/5

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

The cost model is front-loaded and useful, but the middle paragraph detours into relay file paths and ledger_search arguments that are tangential to calling this tool, and 'see /docs' in the first sentence is a deferral that weakens the lead. Several sentences could be compressed without losing meaning.

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 3-parameter read tool with no output schema, the description covers the billing model, staleness semantics, auditability, and failure modes, which is most of what an agent needs. It does not describe the success payload beyond the stale case, leaving the return contract partly implicit.

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 coverage is 100%, so icao, receipt, and X-PAYMENT are already documented with inline descriptions. The description adds contextual framing about when payment is charged but no syntax or format detail beyond the schema, so the baseline 3 applies.

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

Purpose4/5

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

The opening clause names the resource (station-health row) and its distinguishing property (signed, settlement station), which separates it from generic siblings like health_check or status_history. It never states an explicit verb (fetch/return) and defers detail to '/docs', so it stops short of a fully self-contained purpose statement.

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?

'Live is paid, history is free' plus the pointer that paid rows reappear in the next UTC day's file searchable via ledger_search with source=weather-health gives an implicit free-vs-paid routing decision. However, it never says explicitly when to call this tool versus ledger_search, get_freshness, or get_pricing, so the agent must infer the alternative.

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