Skip to main content
Glama

warda

Find a grant again from a transaction that spent it

warda_recover_grant

Read a grant's full state back out of any transaction that spent it, and work out where it went. Use this when a grant's recorded state is stale, wrong, or lost and its address turns up empty. Kaspa's P2SH requires the covenant script to travel in the clear inside every spending transaction, and the grant's state is spliced into that script — so every spend publishes the grant it spent. Pass the transaction as wire JSON, or just the redeem script hex if that is all you have.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
prefixNoAddress prefix: kaspa, kaspatest, kaspasim or kaspadev. Defaults to kaspatest.
transactionNoA wire-format transaction that spent the grant.
redeemScriptHexNoThe covenant script alone, if you have only that.

TDQS

A4.2/5.0
Behavior4/5

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

No annotations are provided, so the description carries the burden; it explains the underlying protocol fact that 'every spend publishes the grant it spent' and that recovery is possible from wire JSON or redeem script hex. This makes the read-only, non-database source of data transparent. It stops short of describing failure modes or exact output, but the operation's behavior is clearly disclosed.

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

Conciseness4/5

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

The description opens with the purpose, then the use case, then the protocol justification, then input guidance — a sensible front-loaded order. Each sentence contributes new information, though it is slightly longer than strictly necessary. No filler or repetition of schema field names.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read/recovery tool with no annotations and no output schema, it explains the input options, the conditions under which to use it, and why recovery works. It does not describe the shape of the returned grant state or behavior when inputs are missing or invalid, so an agent still must infer some result semantics. This gap keeps it from being complete, but it covers the essential call-time decisions.

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?

The schema already documents all three parameters (100% coverage), so the baseline is a 3. The description adds value by clarifying that `transaction` and `redeemScriptHex` are alternatives and by specifying wire-JSON format for the transaction. This exceeds what the schema descriptions alone provide.

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?

States a specific verb ('Read'), a specific resource ('a grant's full state'), and the recovery source ('any transaction that spent it'). It also names the intended outcome ('work out where it went'), which clearly distinguishes it from the build/check/grant sibling tools.

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?

Explicitly defines the trigger: 'Use this when a grant's recorded state is stale, wrong, or lost and its address turns up empty.' It also tells the agent what inputs are acceptable in which situation ('transaction as wire JSON, or just the redeem script hex'). It does not name alternative tools, but the trigger condition is specific enough to route away from the siblings.

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.1/5.0
Disambiguation5/5

Each tool has a distinct role: build_* assembles different transaction types, check_* validates proposals, grant_* derives or reports grant state, and recover_grant restores state from chain data. Even the similar-looking exit and settlement are clearly separated by destination: principal versus parent budget.

Naming Consistency4/5

The set is mostly consistent with a warda_<verb>_<noun> pattern, e.g. build_delegation, check_spend, recover_grant. Two tools, grant_address and grant_authority, are noun phrases rather than verb_noun, so the pattern is not perfectly uniform.

Tool Count5/5

Nine tools is well within the ideal range and each tool covers a distinct part of the grant lifecycle: building, checking, querying, settling, exiting, and recovering. There is no obvious redundancy or unnecessary surface area.

Completeness4/5

The surface covers the core lifecycle well: delegation, spending, settlement, exit/revoke, address derivation, authority checks, and recovery. The main gap is that advisory checking is provided for spend and delegation but not for exit or settlement, so the validity of those operations must be worked around via covenant behavior or other tools.