hive-query — Route Crypto Questions Through Hive
Route the user's crypto question to one canonical Hive task toolset, inspect
the exact schema, invoke the endpoint with bounded arguments, and answer with
provenance. Do not answer from model memory when the answer depends on live
data.
Routing procedure
- Read the compact
hive://toolsets index or call search_tools with the
user's intent. Use its tool and toolset cursors instead of requesting a
broad catalog.
- Select one canonical task toolset and the single compact
routes[] entry
whose trigger/question matches the user's intent. Preserve its route_id;
broad coverageCatalog arrays are not an execution plan.
- Ask for the route's missing identifiers before execution.
- Follow its ordered steps, calling
get_api_endpoint_schema for each exact
primary tool. Use a fallback only under that step's published condition.
- Call reads through
invoke_api_endpoint. For an explicitly approved
Hive-native state change, use invoke_stateful_endpoint; never auto-approve
that router.
- Stop when the route's stop condition is met or four material calls are used.
Copy server-returned
_hive blocks into the task receipt and run
validate_task_result with the selected route_id before presenting a structured result.
- Report source recency, provider/runtime status, and missing-data caveats.
Read references/root-mcp-workflow.md when you need the bigger picture: how
the root MCP endpoint is organized, what resources exist, or how to navigate
without loading the full provider catalog into context.
Canonical task toolsets
hive://toolsets is authoritative; this table is the routing shortcut.
| Intent |
Toolset id |
| Price, exchange, OHLC, liquidity, derivatives |
market_research |
| Token metadata, holders, liquidity, enrichment, risk |
token_diligence |
| Wallet balances, transfers, PnL, NFTs, DeFi positions |
wallet_investigation |
| Token, approval, phishing, address, simulation risk |
security_risk |
| Pools, pairs, trades, OHLCV, DEX flow |
onchain_dex_pool_analysis |
| TVL, fees, yields, stablecoins, bridges |
defi_protocol_analysis |
| NFT ownership, metadata, floors, sales, rarity |
nft_research |
| Blocks, gas, logs, receipts, RPC diagnostics |
network_infrastructure |
| Solana wallets, SPL accounts, DAS assets, priority fees |
solana_analysis |
| Tokenized RWA perps, cross-venue funding, carry, open interest |
rwa_perp_analysis |
| Durable monitors, alerts, scheduled reports, agent memory |
stateful_monitoring |
| Ambiguous request or schema lookup |
search_discovery |
Worked example
User: "Investigate this wallet on Ethereum."
Use wallet_investigation. Required identifiers are wallet address and chain.
Then: search_tools for wallet investigation ethereum balances,
get_api_endpoint_schema for the selected endpoint, then
invoke_api_endpoint with schema-valid address and chain arguments. Do not
hardcode endpoint names from memory — the catalog changes and search is
authoritative.
Add transfer, NFT, or DeFi-position tools only when the user's question needs
that detail.
Report template
Use this structure for Hive-backed answers:
## Summary
[One or two sentences answering the user.]
## Calls made
- Toolset: [task toolset]
- Endpoint(s): [exact endpoint names]
- Identifiers: [chain, wallet, contract, market, protocol, etc.]
## Evidence
- Provider/source: [provider names]
- Freshness: [Hive fetched_at/observed_at/cache_age_ms plus provider timestamp, block, or slot; upstream recency unknown if absent]
- Runtime status: [ok/invalid_input/missing_key/plan_required/rate_limited/degraded/failing]
## Caveats
[Fallbacks, stale data, unavailable providers, missing identifiers, limits.]
## Next action
[Only include if a retry, deeper check, or user choice is needed.]
Evidence receipt (required)
End every Hive-backed answer with a compact receipt built from the _hive
object on each material tool response:
provider, tool, fetched_at, observed_at, cache_age_ms, and runtime_status
receipt_id, receipt_version, server/build version, and SHA-256 input/result
digests when present (self-checks, not signatures)
source, cache_status, truncated, and any warnings
- canonical chain/entity identifiers plus block, slot, transaction, or query ids
present in provider data
- material provider disagreements and how they were handled
- checks that were unavailable, gated, stale, truncated, or intentionally not run
- a
claims[] citation from each material statement to exact receipt IDs
- one
coverage[] entry for every canonical evidence phase, with each gap explained
Never turn missing evidence into a clean result, silently merge conflicting
provider values, or omit a degraded/fallback call from the receipt.
observed_at is Hive's first-observation/original cache-population time, and
cache_age_ms: 0 only means newly retrieved by Hive. Use provider time, block,
slot, transaction, or candle close for upstream recency; if absent, mark it
unknown. validate_task_result checks structure but cannot authenticate an
invented receipt.
Runtime status handling
Hive uses ok, invalid_input, missing_key, plan_required,
rate_limited, degraded, and failing. Do not treat a non-ok provider
state as a missing tool. Tell
the user which task/tool failed, why, and what can be retried or upgraded.
Guardrails
- Never invent token, wallet, market, or event identifiers.
- Prefer exact contract addresses, wallet addresses, pair addresses, market
ids, or exchange ids over fuzzy names.
- Keep raw provider endpoints callable; task toolsets are only the selection
layer.
- If a tool is absent from this skill, use
search_tools instead of guessing.
Hand-offs
- A domain-specific hive-* skill matches the question → prefer it; this skill
is the generalist entry point.
- Routing cannot surface the exact tool or schema →
hive-tool-discovery.
- The user wants Hive to keep watching something →
hive-stateful-monitoring.
1---2name: hive-query3description: Default entry point for any live crypto question when Hive MCP is connected — prices, wallets, tokens, DeFi, NFTs, Solana, security, markets, DEX, networks, RWA perps. Use it whenever the answer depends on live or on-chain data instead of answering from memory, even if the user never mentions Hive. Routes intent to a canonical Hive task toolset, then schema lookup and bounded endpoint invocation. If a domain-specific hive-* skill clearly matches, prefer it; if routing cannot surface the exact tool or schema, hand off to hive-tool-discovery.4license: MIT5---67# hive-query — Route Crypto Questions Through Hive89Route the user's crypto question to one canonical Hive task toolset, inspect10the exact schema, invoke the endpoint with bounded arguments, and answer with11provenance. Do not answer from model memory when the answer depends on live12data.1314## Routing procedure15161. Read the compact `hive://toolsets` index or call `search_tools` with the17 user's intent. Use its tool and toolset cursors instead of requesting a18 broad catalog.192. Select one canonical task toolset and the single compact `routes[]` entry20 whose trigger/question matches the user's intent. Preserve its `route_id`;21 broad `coverageCatalog` arrays are not an execution plan.223. Ask for the route's missing identifiers before execution.234. Follow its ordered steps, calling `get_api_endpoint_schema` for each exact24 primary tool. Use a fallback only under that step's published condition.255. Call reads through `invoke_api_endpoint`. For an explicitly approved26 Hive-native state change, use `invoke_stateful_endpoint`; never auto-approve27 that router.286. Stop when the route's stop condition is met or four material calls are used.29 Copy server-returned `_hive` blocks into the task receipt and run30 `validate_task_result` with the selected `route_id` before presenting a structured result.317. Report source recency, provider/runtime status, and missing-data caveats.3233Read `references/root-mcp-workflow.md` when you need the bigger picture: how34the root MCP endpoint is organized, what resources exist, or how to navigate35without loading the full provider catalog into context.3637## Canonical task toolsets3839`hive://toolsets` is authoritative; this table is the routing shortcut.4041| Intent | Toolset id |42| --- | --- |43| Price, exchange, OHLC, liquidity, derivatives | `market_research` |44| Token metadata, holders, liquidity, enrichment, risk | `token_diligence` |45| Wallet balances, transfers, PnL, NFTs, DeFi positions | `wallet_investigation` |46| Token, approval, phishing, address, simulation risk | `security_risk` |47| Pools, pairs, trades, OHLCV, DEX flow | `onchain_dex_pool_analysis` |48| TVL, fees, yields, stablecoins, bridges | `defi_protocol_analysis` |49| NFT ownership, metadata, floors, sales, rarity | `nft_research` |50| Blocks, gas, logs, receipts, RPC diagnostics | `network_infrastructure` |51| Solana wallets, SPL accounts, DAS assets, priority fees | `solana_analysis` |52| Tokenized RWA perps, cross-venue funding, carry, open interest | `rwa_perp_analysis` |53| Durable monitors, alerts, scheduled reports, agent memory | `stateful_monitoring` |54| Ambiguous request or schema lookup | `search_discovery` |5556## Worked example5758User: "Investigate this wallet on Ethereum."5960Use `wallet_investigation`. Required identifiers are wallet address and chain.61Then: `search_tools` for `wallet investigation ethereum balances`,62`get_api_endpoint_schema` for the selected endpoint, then63`invoke_api_endpoint` with schema-valid address and chain arguments. Do not64hardcode endpoint names from memory — the catalog changes and search is65authoritative.6667Add transfer, NFT, or DeFi-position tools only when the user's question needs68that detail.6970## Report template7172Use this structure for Hive-backed answers:7374```markdown75## Summary76[One or two sentences answering the user.]7778## Calls made79- Toolset: [task toolset]80- Endpoint(s): [exact endpoint names]81- Identifiers: [chain, wallet, contract, market, protocol, etc.]8283## Evidence84- Provider/source: [provider names]85- Freshness: [Hive fetched_at/observed_at/cache_age_ms plus provider timestamp, block, or slot; upstream recency unknown if absent]86- Runtime status: [ok/invalid_input/missing_key/plan_required/rate_limited/degraded/failing]8788## Caveats89[Fallbacks, stale data, unavailable providers, missing identifiers, limits.]9091## Next action92[Only include if a retry, deeper check, or user choice is needed.]93```9495## Evidence receipt (required)9697End every Hive-backed answer with a compact receipt built from the `_hive`98object on each material tool response:99100- `provider`, `tool`, `fetched_at`, `observed_at`, `cache_age_ms`, and `runtime_status`101- `receipt_id`, `receipt_version`, server/build version, and SHA-256 input/result102 digests when present (self-checks, not signatures)103- `source`, `cache_status`, `truncated`, and any warnings104- canonical chain/entity identifiers plus block, slot, transaction, or query ids105 present in provider data106- material provider disagreements and how they were handled107- checks that were unavailable, gated, stale, truncated, or intentionally not run108- a `claims[]` citation from each material statement to exact receipt IDs109- one `coverage[]` entry for every canonical evidence phase, with each gap explained110111Never turn missing evidence into a clean result, silently merge conflicting112provider values, or omit a degraded/fallback call from the receipt.113`observed_at` is Hive's first-observation/original cache-population time, and114`cache_age_ms: 0` only means newly retrieved by Hive. Use provider time, block,115slot, transaction, or candle close for upstream recency; if absent, mark it116unknown. `validate_task_result` checks structure but cannot authenticate an117invented receipt.118119## Runtime status handling120121Hive uses `ok`, `invalid_input`, `missing_key`, `plan_required`,122`rate_limited`, `degraded`, and `failing`. Do not treat a non-`ok` provider123state as a missing tool. Tell124the user which task/tool failed, why, and what can be retried or upgraded.125126## Guardrails127128- Never invent token, wallet, market, or event identifiers.129- Prefer exact contract addresses, wallet addresses, pair addresses, market130 ids, or exchange ids over fuzzy names.131- Keep raw provider endpoints callable; task toolsets are only the selection132 layer.133- If a tool is absent from this skill, use `search_tools` instead of guessing.134135## Hand-offs136137- A domain-specific hive-* skill matches the question → prefer it; this skill138 is the generalist entry point.139- Routing cannot surface the exact tool or schema → `hive-tool-discovery`.140- The user wants Hive to keep watching something → `hive-stateful-monitoring`.