MCP tools
Tools reached through discovery attach a top-level_hive object alongside the payload:
_hive also carries receipt_version, server_version, input_digest, and
result_digest. The digests are SHA-256 self-checks over the canonical arguments and the
normalized payload. They let you detect accidental mutation; they are not server signatures.
Hero tools
The three hero tools return asource_receipt instead:
runtime_status values
runtime_status is an enum, not free text:
invalid_input is worth handling separately: it is not an outage, so retrying unchanged will
fail the same way.
Cache fields
cache_status tells you whether the response came from Hive’s cache. On a hit, observed_at
is when Hive first saw the data and cache_age_ms is how long ago that was.
A cache_age_ms of zero means Hive fetched from the provider just now. It does not promise
that the provider’s own underlying datum is current.
Normalization fields
Where Hive knows something is off about a datapoint, it says so in a field rather than dropping the row:
Your agent decides what to do with a flagged row. Hive does not filter it out for you.
Bounded output
Every list-returning tool respectslimit, page, per_page, and offset, and Hive caps
total response size regardless of what you ask for. An unbounded response would burn the
context your agent needs for the actual task.

