Skip to main content
Glama

Merkle Batch Attestation

risk_attest
Read-onlyIdempotent

Batch the content-hashes from many Quiver proof envelopes into ONE Merkle root plus per-item inclusion proofs, so a single on-chain anchor (your wallet's tx) attests all of them at once. Self-checked for completeness (every item verifies) and soundness (a non-member does not). Use to make a batch of risk computations cheaply and permanently attestable for audit/liability, without a chain write per computation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
itemsNoproof envelopes (uses proof.contentHash) or raw content-hashes (hex)
contentHashesNoalternatively, raw content-hashes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
okNofalse when the engine rejected the input
proofNoVerifiability envelope: echoed inputs, engine codeHash, contentHash of this exact result, self-checks, EIP-712 signature (EAS-ready). Re-run the open engine on `inputs` to reproduce the result byte-for-byte.
anchorNoEIP-712 (EAS-ready) attestation payload for the single on-chain anchor
checksNoGround-truth self-checks; the result is untrustworthy if any fails.
verifyNohow to verify inclusion against the root
algorithmNohash/tree construction used
leafCountNonumber of items batched
merkleRootNothe single root that attests every item
attestationsNoper-item inclusion proofs
duplicateLeavesNoduplicate content-hashes detected in the batch

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already indicate readOnly, idempotent, and non-destructive behavior. The description adds valuable context: self-checking for completeness and soundness, and the process of creating a single on-chain anchor. No contradictions with annotations.

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 compact (two sentences) with no wasted words. It front-loads the main action and outcome, and efficiently covers inputs, process, and benefits.

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 complexity of Merkle batch attestation, the description adequately explains inputs, the process (batching, self-check), output (root and proofs), and use case. The presence of an output schema further fills in details.

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 coverage is 100%, so baseline is 3. The description adds meaning by explaining that 'items' use proof.contentHash and 'contentHashes' are raw hex alternatives, providing usage context beyond the parameter descriptions.

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 batches content-hashes into a Merkle root with inclusion proofs for on-chain attestation. It uses specific verbs ('batch') and resources ('content-hashes from Quiver proof envelopes'), and the purpose is well-differentiated from sibling tools that handle different risk operations.

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 explicitly states usage: 'Use to make a batch of risk computations cheaply and permanently attestable for audit/liability'. While it does not mention when not to use or alternatives, the context from sibling tools implies it is for attestation, not for other risk tasks.

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.

TDQS

A4.6/5.0
Disambiguation5/5

Each tool addresses a distinct risk domain (event volatility, execution verification, LP risk, options, perps, portfolio, attestation, sizing, treasury) with no overlap; descriptions are precise and differentiate clearly.

Naming Consistency5/5

All tool names follow a consistent snake_case pattern combining a domain prefix with a verb or metaphor (e.g., _risk, _gate, _verify), making them predictable and easy to parse.

Tool Count5/5

The 9 tools cover a broad range of DeFi risk computations without being excessive; each tool serves a clear, non-redundant purpose within the server's scope.

Completeness5/5

The tool set provides comprehensive coverage for a risk analysis server: event risk, execution quality, LP risk, options and perps greeks, portfolio stress, attestation, sizing, and treasury risk; no obvious gaps for the intended domain.

Resources