Skip to main content
Glama

@initia/mcp

MCP server and CLI for the Initia blockchain ecosystem. Tools for querying chain state, managing assets, and executing transactions across Initia L1 and L2 rollups (MiniEVM, MiniMove, MiniWasm).

Two interfaces, one codebase:

  • @initia/mcp — MCP server (stdio transport, for Claude Desktop / LLM agents)

  • initctl — CLI (for humans and scripts)

Quick Start

npm install
npm run build

CLI (initctl)

# Global install
npm install -g .
initctl chain list

# Or run directly without global install
node dist/cli.js chain list

# Or via npx (after npm install)
npx initctl chain list

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "initia": {
      "command": "npx",
      "args": ["-y", "@initia/mcp"],
      // optional — see Environment Variables below
      "env": {
        "INITIA_KEY": "your mnemonic words ...",
        "INITIA_NETWORK": "mainnet"
      }
    }
  }
}

Claude Code

claude mcp add initia -s user -- npx -y @initia/mcp

# optional — see Environment Variables below
claude mcp add initia -s user \
  -e INITIA_KEY="your mnemonic words ..." \
  -e INITIA_NETWORK=mainnet \
  -- npx -y @initia/mcp

Codex

Add to codex.json (or pass via codex --mcp-config codex.json):

{
  "mcpServers": {
    "initia": {
      "command": "npx",
      "args": ["-y", "@initia/mcp"],
      // optional — see Environment Variables below
      "env": {
        "INITIA_KEY": "your mnemonic words ...",
        "INITIA_NETWORK": "mainnet"
      }
    }
  }
}

Gemini CLI

Add to .gemini/settings.json:

{
  "mcpServers": {
    "initia": {
      "command": "npx",
      "args": ["-y", "@initia/mcp"],
      // optional — see Environment Variables below
      "env": {
        "INITIA_KEY": "your mnemonic words ...",
        "INITIA_NETWORK": "mainnet"
      }
    }
  }
}

CLI

# Query
initctl chain list
initctl token search --symbol USDC
initctl move view --module-address 0x1 --module-name coin --function-name balance --args '["0x1"]'

# Transaction (interactive confirm)
initctl bank send --to init1abc... --amount 1000000 --denom uinit

# Transaction (skip confirm)
initctl bank send --to init1abc... --amount 1000000 --denom uinit --yes

# JSON output (for scripts)
initctl token search --symbol INIT --json

# Shell completion
eval "$(initctl completion bash)"   # bash
eval "$(initctl completion zsh)"    # zsh
initctl completion fish | source    # fish

Environment Variables

Variable

Required

Default

Description

INITIA_KEY

No

—

Mnemonic (12/24 words), hex private key (0x...), or "ledger"

INITIA_KEY_INDEX

No

0

HD derivation index (for mnemonic/ledger)

INITIA_LEDGER_APP

No

ethereum

Ledger app: ethereum or cosmos

INITIA_NETWORK

No

mainnet

mainnet or testnet

AUTO_CONFIRM

No

false

Skip the server-side confirm gate for mutations (MCP only). See Security & Approvals.

INITIA_LOG_LEVEL

No

info

debug, info, warn, error

INITIA_USE_SCAN_API

No

false

Use Scan API for enhanced chain data

Without a signer key, read-only tools still work. Mutation tools return SIGNER_REQUIRED.

Related MCP server: Somnia MCP Server

Security & Approvals

This server can sign and broadcast real transactions. Approvals happen in two independent layers:

  1. MCP client approval (primary). Your MCP client — Claude Code, Codex, Claude Desktop, Gemini CLI — decides whether each tool call runs, normally by prompting you. This is the human gate. The server cannot force it, and a client configured to auto-approve (e.g. "always allow") will not prompt. Treat this as your main safety control.

  2. Server confirm gate (secondary). Every mutation tool takes a confirm flag (default false). Without it the tool only simulates and returns the estimated gas and decoded messages; it broadcasts only when called again with confirm: true. Because the agent supplies confirm, this guards against accidental one-shot broadcasts — it is not a substitute for human approval on its own.

AUTO_CONFIRM=true removes layer 2 for mutations. Combined with a client set to auto-approve the tool, this enables fully unattended signing and broadcasting. Use it only on testnet or with low-value keys.

  • wasm_migrate, wasm_update_admin, and wasm_clear_admin are treated as destructive and always require explicit confirm: true, even when AUTO_CONFIRM=true. Every other mutation tool — bank_send, evm_send, bridges, contract deploy/execute (wasm_*, move_*, evm_deploy), governance_vote, staking_manage, ibc_transfer, feegrant_*, and the VIP tools — is not in this exception: with AUTO_CONFIRM=true they broadcast automatically.

  • All state-changing tools are annotated destructiveHint: true so clients that surface this hint can warn before running them. Note this MCP annotation is independent of the AUTO_CONFIRM bypass above: a tool can be destructiveHint: true and still auto-broadcast under AUTO_CONFIRM (only the three wasm admin tools are gated server-side).

  • INITIA_NETWORK defaults to mainnet — set INITIA_NETWORK=testnet for experimentation.

Key handling. INITIA_KEY is read from the environment and the raw mnemonic/private key is discarded after key derivation at startup. For mainnet or high-value keys prefer a Ledger (INITIA_KEY="ledger"): it adds a hardware confirmation that no software setting — including AUTO_CONFIRM — can bypass. Ledger signing can still time out after 90s even if the transaction was broadcast; check your account or a block explorer before retrying to avoid duplicate spends.

Tools (107)

Chain & Account (10)

Tool

Description

chain_list

List all supported chains (L1 + L2 rollups)

chain_capabilities

Get chain VM type, features, and endpoints

chain_gas_prices

Current on-chain gas prices (L1 or L2)

account_get

Account info and balances

portfolio_get

Aggregated balances across all chains

address_validate

Validate bech32 or EVM address format

address_convert

Convert between bech32 and hex

delegation_get

Staking delegations, rewards, and unbonding

distribution_rewards

Pending staking rewards across validators

simulate_tx

Simulate a transaction and estimate gas

Token & Denom (7)

Tool

Description

token_search

Search tokens by symbol across all chains

token_list

List registered tokens on a chain

token_info

Token metadata (name, symbol, decimals) for any type

token_balance

Token balance for native, ERC20, CW20, or Move FA

amount_format

Format raw amount with decimals

denom_classify

Classify denomination type (native, ibc, evm, etc.)

denom_metadata

On-chain bank module metadata

Transaction (3)

Tool

Description

tx_get

Get transaction by hash with VM-aware decoding

tx_search

Search transactions (CometBFT query syntax)

tx_by_address

Recent transactions for an address

Validator & Staking (7)

Tool

Description

validator_list

List validators with status and voting power

validator_get

Detailed validator information

staking_pool

Network bonded/unbonded token totals

staking_annual_provisions

Current annual token provisions (inflation)

staking_manage

Delegate, undelegate, redelegate, or claim rewards

governance_vote

Vote on a governance proposal

proposal_list / proposal_get

List or get governance proposals

Bridge (14)

Tool

Description

bridge_route

Find optimal cross-chain transfer route

bridge_execute

Execute a cross-chain transfer via router

bridge_transfer_status

Track cross-chain transfer progress

bridge_list_chains

List bridgeable L2 chains

bridge_routable_assets

List assets available for routing

bridge_deposit / bridge_withdraw

Direct L1↔L2 OPInit deposit/withdraw

bridge_withdrawals / bridge_withdrawal_status

Query withdrawal status

opbridge_list / opbridge_get

OPInit bridge configuration

opbridge_token_pairs

L1↔L2 token pair mappings

opbridge_token_pair_by_l1_denom / opbridge_token_pair_by_l2_denom

Token pair lookup

IBC (3)

Tool

Description

ibc_channels

List IBC channels or find channel between two chains

ibc_denom_hash

Compute IBC denomination hash from path

ibc_transfer

Send tokens via IBC

Username (4)

Tool

Description

username_resolve

Resolve .init names ↔ addresses

username_record

Full .init username record

username_metadata

NFT metadata for .init username

username_check

Check username availability

Move VM (14)

Tool

Description

move_modules

List modules deployed at an address

move_module_abi

Get module ABI (functions, structs)

move_resources

List resources held by an address

move_resource_get

Query a specific resource

move_view

Call a view function (read-only)

move_execute

Execute an entry function

move_publish / move_script

Deploy module or run script

move_table_entry

Query a table entry

move_dex_pairs

List DEX liquidity pool pairs

move_denom_metadata / move_metadata_denom

Denom ↔ metadata conversion

move_bcs_encode / move_bcs_decode

BCS serialization utilities

EVM (10)

Tool

Description

evm_call

Call a contract function (read-only)

evm_send

Send a state-changing transaction

evm_deploy

Deploy a contract

evm_get_logs

Query event logs

evm_get_tx_receipt

Get transaction receipt

evm_get_block

Get block information

evm_get_code

Get contract bytecode (Minievm only)

evm_get_storage_at

Read storage slot (Minievm only)

evm_decode_revert

Decode revert reason

evm_decode_logs

Decode event logs with ABI

CosmWasm (12)

Tool

Description

wasm_query

Query a smart contract

wasm_execute

Execute a smart contract function

wasm_store_code

Upload contract bytecode

wasm_instantiate

Instantiate a contract

wasm_migrate

Migrate to a new code ID

wasm_update_admin / wasm_clear_admin

Admin management

wasm_contract_info / wasm_code_info

Contract/code metadata

wasm_contracts_by_code

List contracts from a code ID

wasm_contract_history

Migration history

wasm_raw_state

Raw key-value state

VIP (16)

Tool

Description

vip_stage_info

Current VIP stage and timing

vip_positions

Lock-staking positions

vip_voting_power

Gauge voting power

vip_vesting_positions

Vesting schedules with reward breakdowns

vip_vote_info

Vote allocations per bridge

vip_claimable_rewards

Claimable VIP rewards

vip_delegate / vip_undelegate / vip_redelegate

Lock-staking management

vip_extend_lock

Extend lock duration

vip_gauge_vote / vip_gauge_vote_by_amount

Gauge voting

vip_claim_rewards / vip_claim_staking_rewards

Reward claiming

vip_provide_and_delegate

LP + lock-delegate in one tx

vip_stableswap_provide_and_delegate

Stableswap LP + lock-delegate

Event Parsing (3)

Tool

Description

event_parse_tx

Parse Cosmos events from a transaction

event_parse_move

Decode Move module events

event_parse_wasm

Decode CosmWasm contract events

Ledger (2)

Tool

Description

ledger_status

Check Ledger device connection

ledger_verify_address

Display address on device for verification

Bank (1)

Tool

Description

bank_send

Send tokens (supports batch sends)

Architecture

src/
├── index.ts              # MCP server entry point (stdio)
├── cli.ts                # CLI entry point (initctl)
├── tools/
│   ├── registry.ts       # ToolRegistry — shared by MCP and CLI
│   ├── groups.ts         # Group definitions (24 groups)
│   ├── index.ts          # Side-effect imports for all tool files
│   ├── tx-executor.ts    # Mutation flow (dry-run → simulate → broadcast)
│   ├── vm-guard.ts       # VM compatibility checks
│   └── *.ts              # Tool modules (registry.register() calls)
├── mcp/
│   └── adapter.ts        # Registry → McpServer binding
├── cli/
│   ├── adapter.ts        # Registry → citty commands + zodToCittyArgs
│   ├── format.ts         # TTY / JSON output formatting
│   ├── confirm.ts        # Mutation y/N prompt
│   └── completion.ts     # Shell completion (bash/zsh/fish)
├── initia/
│   └── chain-manager.ts  # Chain context creation, caching
├── config/               # Environment config, chain aliases
├── schemas/              # Shared Zod parameter schemas
├── errors.ts             # Typed error codes
├── response.ts           # Response serialization
└── logger.ts             # Structured JSON logging

Tools are registered once in a transport-agnostic ToolRegistry. The MCP and CLI adapters consume the same registry independently — adding a tool to a *.ts file automatically exposes it in both interfaces.

Smart Defaults

  • Validator by name: Tools accepting a validator address also accept the moniker name (case-insensitive, auto-resolved)

  • "me" address: Address parameters accept "me", "self", "my", or "signer" to resolve to the configured signer

  • VM guard: Contract tools enforce VM compatibility — calling move_view on a MiniEVM chain returns a WRONG_VM error with suggested alternatives

Development

npm run dev          # Run MCP server with tsx (hot reload)
npm test             # Unit + integration tests
npm run test:smoke   # E2E tests against testnet
npm run lint         # ESLint + tsc --noEmit

License

Apache-2.0

Available Tools

113 tools
account_getA
Read-only

Get account info, token balances, and address profile for an address on a specific chain. Balances are paginated (default 10). Describe account/contract types using the terminology appropriate for the chain's VM (see chainType in response).

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
addressYesAddress in bech32, hex, or .init format. Use "me" for the signer's own address.
limitNoMax results per page (default 10). Use with offset to paginate.
offsetNoResults to skip for pagination
reverseNoReverse result order (e.g., newest first for proposals)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, indicating safe reading. The description adds behavioral context: balances are paginated (default 10), and account/contract types are described using chain-appropriate terminology. This supplements the annotation without contradiction.

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?

Two sentences: the first delivers the core purpose, the second adds key details on pagination and terminology. No redundant or unnecessary words. Every sentence earns its place.

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 tool with 6 parameters, no output schema, and moderate complexity (pagination, chain-specific terminology), the description covers the essential aspects: purpose, address resolution, pagination hints, and terminology guideline. It could additionally mention that the response includes chain type for VM-specific language, but overall it is sufficiently complete.

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 description coverage is 100%, so the schema already documents all parameters. The description adds extra value by explaining pagination defaults (limit=10) and the address format (use 'me' for signer's address), which clarifies usage beyond the schema 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 verb 'Get' and the resource 'account info, token balances, and address profile for an address on a specific chain'. It distinguishes itself from sibling tools like 'token_balance' or 'portfolio_get' by covering all these aspects together, and adds specificity about pagination and chain-specific terminology.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide guidance on when to use this tool versus alternatives (e.g., portfolio_get, token_balance). It lacks explicit when-to-use/when-not-to-use instructions or mention of prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

address_convertA
Read-only

Convert an address between bech32 (init1...) and hex (0x...) formats.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesAddress in bech32 or hex format

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already mark the tool as read-only (readOnlyHint: true). The description adds format-specific context but does not disclose edge cases or error handling. No contradiction 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?

A single, front-loaded sentence with no wasted words. Every part adds value, making it highly efficient.

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 simple conversion tool with one parameter and no output schema, the description is largely complete. It could mention that the output is the opposite format, but the core functionality is clear.

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?

The schema fully documents the single parameter (100% coverage). The description reinforces the parameter's purpose but does not add new meaning beyond what the schema already provides.

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 uses a specific verb 'Convert' and resource 'address' with explicit format details ('bech32 (init1...) and hex (0x...)'), clearly distinguishing it from sibling tools like address_validate.

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?

The description implies usage for format conversion but does not provide explicit when-to-use or when-not-to-use guidance, nor mentions alternatives. It's adequate but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

address_validateA
Read-only

Validate whether a string is a valid Initia address (bech32) or EVM address (0x hex). Optionally provide a chain to fetch the on-chain address profile (account type, contract classification, etc.).

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesAddress to validate
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.3/5.0
Behavior4/5

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

Annotation 'readOnlyHint' confirms read-only. Description adds that optional chain parameter fetches on-chain profile, providing behavioral context beyond annotation.

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?

Single sentence, 27 words, no redundancy. Efficiently conveys core functionality.

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?

Adequate for a validation tool, but missing return value description (e.g., whether output is boolean or object). With 3 params and no output schema, more detail would improve completeness.

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 descriptions cover all params, description adds value by explaining chain parameter's purpose (fetch profile) and providing examples, surpassing baseline 3.

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?

Clearly states it validates Initia (bech32) and EVM addresses, and optionally fetches on-chain profile. Differentiates from 'address_convert'.

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?

Implicitly clear when to use: to validate address format and optionally get chain profile. No explicit exclusions but context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

amount_formatA
Read-only

Format a raw token amount with decimals into human-readable form (e.g., "1000000" with 6 decimals -> "1.0").

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesRaw token amount (smallest unit)
decimalsYesNumber of decimal places for the token

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already indicate read-only behavior. The description adds the formatting conversion detail, which is consistent and provides additional context beyond the annotation.

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?

Description is a single sentence with an illustrative example, no wasted words.

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?

For a simple formatting tool with no output schema, the description provides sufficient information for an agent to understand its purpose and usage.

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?

Input schema covers both parameters with descriptions (100% coverage). The description adds an example but does not provide additional semantics beyond the schema.

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?

Description clearly states the tool formats a raw token amount with decimals into human-readable form, with a concrete example. It uses specific verbs and resources, and is distinct from 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?

The description implies usage for formatting token amounts, but does not explicitly state when to use this tool versus alternatives. However, it is the only formatting tool among siblings, and the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

authz_grantsA
Read-only

Query authorization grants. Provide granter, grantee, or both to filter.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
granterNoGranter address
granteeNoGrantee address
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, which is consistent with the description's 'Query'. No additional behavioral traits (e.g., pagination, return format) are disclosed, but the description aligns with the annotation without contradiction.

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 is concise with two sentences, no wasted words. It could be slightly improved by adding a note about optional parameters, but it is efficiently front-loaded.

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?

Given the 4 parameters, 100% schema coverage, read-only annotation, and no output schema, the description is adequate but could mention tool's module (authz) or typical use cases. It is minimally complete.

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?

All 4 parameters have descriptions in the input schema (100% coverage). The description adds minimal value by restating the filtering capability, so baseline score of 3 is appropriate.

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 queries authorization grants, specifying the verb 'Query' and the resource 'authorization grants'. It also mentions filtering by granter, grantee, or both, which distinguishes it from sibling tools like feegrant_allowances.

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?

The description provides basic guidance on filtering by granter/grantee, but does not explicitly compare to alternatives like feegrant_allowances. Usage context is implied but not comprehensive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bank_sendB

Send tokens to one or more recipients in a single transaction.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
sendsYesArray of send operations to batch in one tx
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.4/5.0
Behavior2/5

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

Annotations (readOnlyHint=false, destructiveHint=false) already indicate this is a non-read-only, non-destructive write operation. Description adds minimal behavioral context beyond 'single transaction'. Missing details on authorization, fees, failure modes, or effects on balances.

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?

Single sentence of 12 words, front-loaded with the core action. No redundant phrases; every word serves the purpose.

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

Completeness2/5

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

Description is minimal for a transaction-sending tool with 6 parameters and no output schema. It fails to explain return values, dryRun vs confirm behavior, or error handling. Given parameter richness and lack of output docs, more context is needed.

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% with descriptions for all parameters, so description adds only the batching context. The tool name and description imply the 'sends' array bundles multiple transfers, but schema already captures this. Baseline 3 applies.

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?

Description clearly states 'send tokens to one or more recipients in a single transaction', defining the verb and resource precisely. It distinguishes from sibling tools like bridge_deposit, ibc_transfer, and token_transfer by explicitly mentioning batch transaction and multiple recipients.

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?

Description implies usage for sending tokens in a batch, but lacks explicit guidance on when to use this tool versus alternatives like ibc_transfer or individual token sends. No exclusions or context provided for choosing among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bridge_depositA

Deposit tokens from L1 to an L2 rollup via OPInit bridge. Requires the bridge ID for the target rollup.

ParametersJSON Schema
NameRequiredDescriptionDefault
bridgeIdYesOPInit bridge ID for the target rollup
toYesRecipient address on the L2 rollup
amountYesAmount to deposit (e.g., "1000000")
denomYesToken denomination (e.g., "uinit")
dataNoOptional hex-encoded data payload
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already indicate the tool is not read-only and not destructive. The description adds that it deposits tokens and requires a bridge ID, but does not disclose further behavioral details such as permissions or side effects beyond the state change implied by deposit.

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 concise with two front-loaded sentences, no redundancy, and every word adds value. It efficiently communicates the core action and a key requirement.

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

Completeness2/5

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

The description lacks information about the tool's flow (e.g., simulation vs broadcast via dryRun/confirm) and does not hint at return values. Although the schema covers parameters, the absence of output schema and the brief description leave agents uncertain about expected results.

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 the schema already documents all parameters thoroughly. The tool description does not add parameter-level meaning beyond the schema, earning a baseline score of 3.

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 deposits tokens from L1 to L2 via OPInit bridge, specifying the action, resource, and direction. It distinguishes from sibling tools like bridge_withdraw and bridge_execute by its specific purpose.

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?

The description mentions the prerequisite of bridge ID but does not provide explicit guidance on when to use this tool versus alternatives like bridge_withdraw or bridge_transfer_status. Usage is implied but not elaborated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bridge_executeB

Execute a cross-chain transfer. Automatically finds the optimal route and broadcasts the source chain transaction.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesTransfer amount in minimal denomination
sourceChainIdYesSource chain ID
sourceDenomYesSource token denomination
destChainIdYesDestination chain ID
destDenomYesDestination token denomination
receiverYesReceiver address on destination chain
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.3/5.0
Behavior2/5

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

Annotations are silent on behavioral traits, and the description only states 'broadcasts' without clarifying safety features like dryRun (previews without broadcasting) or that the tool is write-only. Users need to infer behavior from parameters.

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?

Single sentence, no redundancy, and front-loads key purpose. However, it could be more structured or include additional sentences for completeness without being verbose.

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

Completeness2/5

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

Given the complexity (10 params, no output schema, many sibling tools), the description is too brief. It omits crucial details like dryRun behavior, output type, and when to use confirm flag. It underperforms for such a critical tool.

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 the description adds minimal value beyond the schema. It does not elaborate on parameter relationships or usage order (e.g., amount in minimal denomination). Baseline 3 is appropriate.

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 identifies the action ('Execute') and resource ('cross-chain transfer') with specific details on automated route finding and broadcasting. It effectively distinguishes from sibling tools like bridge_route which only finds routes.

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?

The description implies this is the final execution step but lacks explicit when-to-use vs alternatives (e.g., bridge_route for simulation). It does not mention the dryRun or confirm parameters that affect usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bridge_list_chainsA
Read-only

List all L2 chains that support OPInit bridging from/to L1.

ParametersJSON Schema
NameRequiredDescriptionDefault
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.9/5.0
Behavior3/5

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

Annotations declare readOnlyHint=true. Description's 'list' confirms read-only nature but adds no extra behavioral context.

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?

Single sentence, front-loaded with verb, no wasted words.

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?

Simple tool with one optional parameter and no output schema; description fully explains scope and behavior.

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% with parameter description and enum. Tool description adds no additional meaning beyond schema.

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?

Clearly states 'List all L2 chains that support OPInit bridging from/to L1.' Uses specific verb and resource, distinguishes from sibling bridge tools.

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?

Implied by purpose: use to discover supported L2 chains. No explicit when/when-not or alternatives, but simplicity reduces need.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bridge_routable_assetsA
Read-only

List all assets available for cross-chain routing via the Router API. Use this to discover valid chain/denom pairs before calling bridge_route or bridge_execute. Optionally filter by a specific chain ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainIdNoFilter assets by chain ID (e.g., "initiation-2", "11155111")
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so no additional safety info needed. The description adds value by explaining the tool's role in discovering valid chain/denom pairs, which is beyond the annotation.

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?

Two concise sentences with no redundant information. Front-loaded with purpose, then usage context. Every sentence earns its place.

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?

The description sufficiently clarifies what the output represents (assets with chain/denom pairs) despite lacking an output schema. It completes the picture for a simple list tool.

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?

Input schema descriptions cover both parameters completely (100% coverage). The tool description does not add further semantic context beyond what the schema provides, so baseline 3 is appropriate.

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 lists assets for cross-chain routing, distinguishing it from siblings like bridge_route and bridge_execute. It uses a specific verb ('List') and resource ('assets available for cross-chain routing').

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 recommends using this tool before calling bridge_route or bridge_execute, providing clear context. It mentions optional filtering but lacks explicit when-not-to-use guidance, though this is inferred from its discovery role.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bridge_routeB
Read-only

Find the optimal cross-chain transfer route between two chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesTransfer amount in minimal denomination
sourceChainIdYesSource chain ID
sourceDenomYesSource token denomination
destChainIdYesDestination chain ID
destDenomYesDestination token denomination
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.1/5.0
Behavior2/5

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

Although annotations mark the tool as readOnlyHint=true, the description does not add further behavioral context. It fails to disclose that the tool returns an optimal route (without specifying optimization criteria), whether multiple routes are returned, or any rate-limiting or authentication requirements.

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 is a single, front-loaded sentence with no wasted words. It efficiently states the core purpose. However, it could be slightly expanded to include key behavioral details without becoming verbose.

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

Completeness2/5

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

Without an output schema, the description should explain what the tool returns (e.g., route steps, fees, estimated time). It does not mention the default network (mainnet) or that the route is hypothetical and not executed. This leaves significant gaps for an agent to correctly invoke and interpret the tool.

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?

Given 100% schema coverage, the baseline is 3. The description adds no extra meaning to the parameters beyond what the schema already provides (e.g., 'amount in minimal denomination', 'source/dest chain ID'). It does not clarify what 'optimal' means in relation to the parameters or how the network parameter affects results.

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 uses the specific verb 'Find' and clearly identifies the resource as 'optimal cross-chain transfer route' between two chains. This distinguishes it from other bridge-related tools such as bridge_deposit or bridge_execute, which perform actions rather than querying for routes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like bridge_routable_assets. It does not mention prerequisites, such as needing to know chain IDs or token denominations beforehand, nor does it clarify that the tool is read-only and does not execute transfers.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bridge_transfer_statusA
Read-only

Track the status of a cross-chain transfer initiated via bridge_execute. Call with the txHash and chainId returned from bridge_execute.

ParametersJSON Schema
NameRequiredDescriptionDefault
txHashYesTransaction hash
chainIdYesChain ID where the transfer was initiated
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already provide readOnlyHint=true. Description adds no additional behavioral traits like rate limits or error handling. It does not contradict annotations, but provides minimal extra context.

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?

Concise, two-sentence description. First sentence states purpose, second provides usage guidance. No extraneous information.

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?

Adequately describes tool usage for a simple status check. Lacks explicit mention of return format or possible statuses, but given no output schema, the description is sufficient for an agent to invoke correctly.

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 has 100% coverage, but description adds value by specifying that txHash and chainId come from bridge_execute and clarifying that network defaults to mainnet, enhancing meaning beyond raw schema 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?

Clearly states the tool tracks status of a cross-chain transfer initiated via bridge_execute. Specifically names the verb 'track the status' and resource 'cross-chain transfer'. Differentiates from sibling tools like bridge_execute which initiates the transfer.

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 states to call with txHash and chainId returned from bridge_execute. Gives clear context on when to use the tool, though does not list alternative tools or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bridge_withdrawB

Withdraw tokens from an L2 rollup back to L1 via OPInit bridge.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoL2 chain to withdraw from (e.g., "minievm-1", "minimove-1")initia
toYesRecipient address on L1
amountYesAmount to withdraw (e.g., "1000000")
denomYesToken denomination on the L2 chain
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.3/5.0
Behavior2/5

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

Annotations indicate readOnlyHint=false (mutation) and destructiveHint=false, but the description adds no behavioral context beyond the action itself. It does not explain side effects like transaction finality, fees, or required approvals, which are important for a withdrawal operation.

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 is a single sentence with 11 words, conveying the core purpose efficiently without wasted words. It is front-loaded and clear, though it could include a quick usage hint without becoming verbose.

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

Completeness2/5

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

The description lacks information about return values (no output schema), prerequisites, and post-conditions. For a complex operation like bridge withdrawal, users need to know what the tool returns and what happens after execution.

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?

Input schema has 100% parameter description coverage, so the description does not need to repeat those details. However, it could add context for parameters like 'chain' to specify valid L2 chains, but it does not. Still, baseline 3 is appropriate given schema completeness.

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 uses a specific verb 'withdraw' and identifies the resource 'tokens', the direction 'from L2 to L1', and the mechanism 'via OPInit bridge'. This clearly distinguishes it from siblings like bridge_deposit (opposite direction) and bridge_withdrawal_status (status query).

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?

The description mentions OPInit bridge, hinting at a specific scenario, but provides no explicit guidance on when to use this tool versus alternatives like bridge_deposit or bridge_execute. With many bridge siblings, a usage note would be beneficial.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bridge_withdrawalsA
Read-only

List L2->L1 withdrawals for an address on a specific L2 chain.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoL2 chain to query withdrawals from (e.g., "minievm", "minimove")initia
addressYesAddress in bech32, hex, or .init format. Use "me" for the signer's own address.
limitNoMax results per page (default 10). Use with offset to paginate.
offsetNoResults to skip for pagination
reverseNoReverse result order (e.g., newest first for proposals)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description's 'List' is consistent. However, the description does not disclose additional behavioral traits beyond what annotations provide, such as pagination behavior, default ordering, or any limitations.

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?

Single sentence with 10 words. No unnecessary information. Efficiently conveys the tool's purpose.

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?

No output schema, so description should ideally hint at return format or ordering. It doesn't mention default order (though reverse param exists). Among 5 sibling bridge tools, context is adequate but incomplete for a listing tool.

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 description coverage is 100%, so each parameter already has a description. The tool description does not add meaning beyond mentioning 'a specific L2 chain' which maps to the chain parameter. Baseline 3 due to high coverage.

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?

Description clearly states 'List L2->L1 withdrawals for an address on a specific L2 chain.' It specifies verb (List), resource (withdrawals), direction (L2->L1), and criteria (address, chain). This distinguishes it from siblings like bridge_withdraw (initiate) and bridge_withdrawal_status (check status).

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?

The description implies usage for listing withdrawals but does not explicitly state when to use this tool versus alternatives like bridge_withdraw or bridge_withdrawal_status. No guidance on when not to use it or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bridge_withdrawal_statusA
Read-only

Get the status and details of a specific L2->L1 withdrawal by sequence number.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoL2 chain the withdrawal was made from (e.g., "minievm", "minimove")initia
sequenceYesWithdrawal sequence number
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint; description adds context that it gets status and details of a withdrawal. No contradictions, but could mention what details are returned or any constraints.

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?

Single sentence, front-loaded, no unnecessary words. Efficiently conveys purpose.

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?

Description is adequate for a simple tool but lacks information about the response format or possible statuses. No output schema, so more detail would be helpful.

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 covers all parameters (100%). Description does not add meaning beyond schema; merely restates 'sequence number' which is already in schema description.

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?

Description clearly states the verb 'get' and resource 'status and details of a specific L2->L1 withdrawal by sequence number'. Distinguishes from similar tools like 'bridge_transfer_status' and 'bridge_withdrawals'.

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?

No explicit guidance on when to use this tool vs alternatives like 'bridge_transfer_status' or 'bridge_withdrawals'. Only implies usage by providing a sequence number.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

chain_blockA
Read-only

Get block header and transaction list by height. Omit height to get the latest block.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
heightNoBlock height. Omit for latest block.
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.8/5.0
Behavior3/5

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

The description adds some behavioral context by stating it returns a block header and transaction list. Annotations already indicate it is read-only. No additional traits like rate limits or error handling are mentioned, but this is adequate for a simple read operation.

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 a single, clear sentence that front-loads the purpose. Every word is informative, with no redundant or unnecessary content.

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 simple tool with good schema coverage and annotations, the description is largely complete. It explains the core function and usage of the height parameter. A slight addition of what constitutes the 'transaction list' could be beneficial, but current completeness is strong.

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?

The input schema already provides comprehensive descriptions for all three parameters (chain, height, network) with 100% coverage. The tool description does not add any extra semantic meaning beyond what the schema provides, so a baseline score of 3 is appropriate.

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 gets a block header and transaction list by height, with an optional parameter to get the latest block. It uses a specific verb and resource, and distinguishes it from other block-related tools like chain_block_results by specifying the content returned.

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?

The description provides basic usage guidance by noting that omitting height returns the latest block. However, it does not mention when to use this tool versus alternatives like chain_block_results, nor does it specify any prerequisites or limitations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

chain_block_resultsA
Read-only

Get block execution results (transaction results, validator updates, consensus param updates) for a given height.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
heightYesBlock height (required).
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4/5.0
Behavior4/5

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

Annotations declare readOnlyHint=true, and description is consistent (a read operation). Description adds useful context about the specific data returned (transaction results, validator updates, consensus param updates) beyond what annotations provide. No contradictions.

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?

Single sentence that perfectly front-loads the purpose and scope. No redundant or extraneous words.

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?

No output schema exists, but description adequately lists the categories of returned data. The tool is low-complexity (single block result), so missing pagination or limits is acceptable. Could mention optional chain/network parameters but schema already documents them.

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?

All three parameters have descriptions in the input schema (100% coverage). The description does not add additional meaning beyond the schema; it merely mentions 'given height' which is already stated in the height parameter description. Baseline 3 is appropriate.

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?

Description uses specific verb 'Get' and resource 'block execution results', listing exactly what's included (transaction results, validator updates, consensus param updates). Clearly distinguishes from siblings like chain_block which likely returns only raw block data.

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?

Description implies usage for retrieving execution results at a block height but provides no explicit guidance on when to use this tool over siblings (e.g., tx_get for individual transactions, chain_block for block metadata). No when-not or alternative recommendations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

chain_capabilitiesA
Read-only

Get detailed capabilities for a specific chain: VM type, supported features, and endpoints.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint: true, so the description does not need to repeat that. However, the description adds no additional behavioral traits beyond what is already in annotations. It could mention that the operation is safe and returns data without side effects, but the absence is not a major flaw given the annotation coverage.

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 a single sentence that immediately states the purpose and key outputs. It is concise, front-loaded, and contains no extraneous information. Every word adds value.

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?

Given the tool has only 2 optional parameters, no output schema, and annotations provide readOnlyHint, the description covers the essential use case. It mentions the returned data types (VM type, supported features, endpoints), making it mostly complete. A small gap is the lack of explanation about the response format, but without an output schema, the description suffices.

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% (both parameters are documented with descriptions and enums). The description does not add extra meaning beyond the schema. The phrase 'specific chain' loosely aligns with the 'chain' parameter but adds no new detail. Baseline 3 is appropriate as the schema already fully explains parameters.

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?

Description clearly states 'Get detailed capabilities for a specific chain' with specific verb 'Get' and resource 'capabilities for a specific chain'. It also lists the information provided: VM type, supported features, and endpoints. This distinguishes it from sibling tools like chain_list (which likely lists all chains) and chain_block (which gets block data).

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?

The description implies usage when someone needs detailed capabilities of a specific chain, but it does not explicitly state when to use it versus alternatives like chain_list or chain_block. No when-not-to-use or alternative tools are mentioned, leaving the agent to infer context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

chain_gas_pricesA
Read-only

Get current on-chain gas prices for any chain (L1 or L2). Returns accepted denoms and their gas price amounts.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true. Description adds that it returns 'accepted denoms and their gas price amounts', providing some behavioral context beyond annotations, but lacks details like output structure or error cases.

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?

Single sentence conveying purpose, returns, and scope. No redundant words. Front-loaded with action.

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 simple read tool with two parameters and no output schema, the description provides essential info on what is returned. Lacks details on unsupported chain handling, but overall adequate.

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% with descriptions for both parameters. The description adds no new semantic info beyond echoing the chain parameter scope; baseline 3 is appropriate.

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?

Description clearly states the verb 'Get', resource 'current on-chain gas prices', and scope 'any chain (L1 or L2)'. It distinguishes from siblings as no other tool provides gas prices.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, nor any when-not-to-use conditions. Sibling tools are diverse but no explicit comparison is made.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

chain_listA
Read-only

List all supported chains in the Initia ecosystem with their chain IDs and types.

ParametersJSON Schema
NameRequiredDescriptionDefault
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.9/5.0
Behavior3/5

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

The description does not add behavioral details beyond what the readOnlyHint annotation provides. It does not mention idempotency, side effects, or any constraints, but the annotation already indicates a safe read operation.

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 a single concise sentence that efficiently conveys the tool's purpose without unnecessary words.

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?

For a simple list tool with one optional parameter and no output schema, the description sufficiently explains what the tool returns (chain IDs and types). No additional context is needed.

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?

The schema already describes the only parameter (network) with an enum and default. The description adds no additional semantic value beyond what is in the schema, so baseline 3 is appropriate.

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 action (list), the resource (supported chains in the Initia ecosystem), and the output details (chain IDs and types). This distinguishes it from sibling tools like bridge_list_chains which are specific to bridging.

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?

The description implies that the tool is for getting a list of all chains, but it does not provide explicit guidance on when to use this tool versus alternatives like bridge_list_chains or when to avoid it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delegation_getA
Read-only

Get staking state for an address: delegations, rewards, and unbonding entries. Returns paginated results (default 10). Use limit/offset to navigate.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
delegatorAddrYesAddress in bech32, hex, or .init format. Use "me" for the signer's own address.
limitNoMax results per page (default 10). Use with offset to paginate.
offsetNoResults to skip for pagination
reverseNoReverse result order (e.g., newest first for proposals)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.4/5.0
Behavior4/5

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

The description adds pagination details and address format flexibility beyond the readOnlyHint annotation. It is consistent with the read-only nature and provides useful behavioral context.

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?

Two concise sentences front-load the purpose and key usage details. Every sentence adds value with no redundancy.

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?

The description covers the purpose, return items, and pagination. Without an output schema, it adequately describes what to expect, though it could be more explicit about the response structure.

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 value by explaining pagination behavior (default 10, use limit/offset) and mentioning address flexibility ('me'), which complements the schema.

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 verb 'Get' and the resource 'staking state for an address' with specific items (delegations, rewards, unbonding entries). It distinguishes itself from siblings like 'account_get' or 'proposal_get'.

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 explains what the tool returns and pagination usage (limit/offset). It does not explicitly state when not to use it or provide alternatives, but given no direct sibling for staking state, this is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

denom_classifyA
Read-only

Classify a token denomination into its type: native, ibc, evm, move, cw20, factory, or l2.

ParametersJSON Schema
NameRequiredDescriptionDefault
denomYesToken denomination string to classify

TDQS

A3.8/5.0
Behavior3/5

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

The readOnlyHint annotation already signals safety. The description adds no extra behavioral details (e.g., API calls, side effects). It is consistent with the annotation but does not augment it.

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 a single sentence with no wasted words. It effectively communicates the tool's purpose and outputs in a compact form.

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?

Given the tool's simplicity (one parameter, read-only, no output schema), the description adequately covers what the tool does. It implies the return value is one of the listed types, which is sufficient for an AI agent to use the tool correctly.

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?

The input schema already provides a description for the 'denom' parameter. The tool description merely restates that it classifies a denomination string, adding no new semantic information beyond the schema's description.

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 verb 'classify' and the resource 'token denomination', and lists all possible output types. This distinguishes it from sibling tools like 'denom_metadata' which describe rather than classify.

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?

The description implies usage for classification tasks but does not explicitly state when to use this tool versus alternatives (e.g., denom_metadata for metadata retrieval). No exclusion criteria or context cues are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

denom_metadataA
Read-only

Get on-chain bank module metadata for a native denomination (name, symbol, decimals). For contract tokens (ERC20/CW20/FA), use token_info instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
denomYesToken denomination (e.g., "uinit")
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint=true, so description doesn't need to reiterate safety. It adds behavioral context by scoping to 'on-chain bank module metadata' for native denominations, which is a read operation. No contradictions.

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?

Two concise sentences, each earning its place. The first states the purpose, the second gives usage guidance. No unnecessary words.

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?

For a simple getter tool with comprehensive schema and annotations, the description is complete. It specifies what is returned (metadata like name, symbol, decimals) and when to use an alternative. No missing information.

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?

Input schema has 100% description coverage for all 3 parameters. Description adds examples and default values (e.g., 'Defaults to L1 ("initia")' for chain, L2 examples), which adds meaning beyond schema.

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?

Description clearly states 'Get on-chain bank module metadata for a native denomination (name, symbol, decimals)', which is a specific verb and resource. It also explicitly distinguishes from sibling tool token_info by specifying it's for native denominations, not contract tokens.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance on when not to use this tool: 'For contract tokens (ERC20/CW20/FA), use token_info instead.' This directly contrasts with a sibling tool, giving clear alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

distribution_rewardsA
Read-only

Get pending staking rewards for a delegator across all validators.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
delegatorAddrYesAddress in bech32, hex, or .init format. Use "me" for the signer's own address.
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description's mention of 'pending' and 'across all validators' adds some behavioral context beyond annotations. However, it does not disclose other traits such as required authentication or response format, with annotations covering the safety profile.

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 is a single, clear sentence that communicates the core purpose without fluff. It is front-loaded and concise, though slightly too brief to include additional context.

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

Completeness2/5

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

Without an output schema, the description does not specify the return format (e.g., array of rewards per validator or total amount). For a read-only query tool, this missing information could leave an agent uncertain about how to interpret results, making completeness lacking.

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% with detailed parameter descriptions (e.g., delegatorAddr's accepted formats). The description adds no additional meaning beyond what the schema already provides, so baseline 3 is appropriate.

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 specifies the verb 'Get', the resource 'pending staking rewards', and the scope 'for a delegator across all validators'. It distinguishes itself from sibling tools like delegation_get (which retrieves delegation info, not rewards) and staking_manage (a mutation tool).

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?

The description does not explicitly state when to use this tool versus alternatives. It implies usage for querying rewards but lacks guidance on exclusions (e.g., when to use delegation_get or vip_claimable_rewards instead). Usage context is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

event_parse_moveB
Read-only

Extract and decode Move module events from a transaction. Optionally filter by type tag for auto-parsed JSON data.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
txHashYesTransaction hash
typeTagNoMove type tag to filter (e.g., "0x1::coin::WithdrawEvent"). When set, data is auto-parsed from JSON.
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.3/5.0
Behavior3/5

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

Annotation readOnlyHint:true already indicates a read operation. Description adds minimal context beyond extraction and decoding, but no contradiction. With annotations present, the bar is lower; description adds little extra.

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?

Two sentences, no filler. All information is relevant and front-loaded. Highly concise.

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?

Adequate for a simple tool with good parameter descriptions. Missing return value explanation, but no output schema. Could be more complete about what 'decoded' events look like.

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 baseline 3. Description adds meaning for typeTag (auto-parsed JSON) and chain (L1/L2 examples), providing value beyond schema.

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 description clearly states it extracts and decodes Move module events, with optional filtering. This differentiates it from sibling tools like event_parse_tx and event_parse_wasm, though not explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus siblings. Does not mention when not to use it or provide context for alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

event_parse_txB
Read-only

Parse and extract Cosmos events from a transaction. Optionally filter by event type.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
txHashYesTransaction hash
eventTypeNoFilter by event type (e.g., "transfer", "coin_spent")
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=true, so the description adds the context of extracting events. It does not disclose additional behavioral details beyond what annotations provide, but is consistent and adequate.

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?

Single sentence with no extraneous words. Highly concise and front-loaded.

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

Completeness2/5

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

Description is very brief and lacks details on output format, return structure, or any constraints. Given the tool has 4 parameters and no output schema, more context is needed for complete understanding.

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% with descriptions for all parameters. The description adds minimal value beyond the schema, just reiterating optional filtering. Baseline of 3 is appropriate.

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?

Description clearly states it parses and extracts Cosmos events from a transaction, with optional filtering. It distinguishes from sibling tools like event_parse_move and event_parse_wasm by implying a general Cosmos scope, though not explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives like event_parse_move or event_parse_wasm. The description does not address when not to use it or provide context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

event_parse_wasmA
Read-only

Extract and decode CosmWasm contract events from a transaction. Filters wasm.* event types.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
txHashYesTransaction hash
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, and description adds filtering detail (wasm.* event types). No additional behavioral traits like auth or rate limits.

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?

Single sentence, no wasted words, front-loaded with action. Perfectly concise for the complexity of the tool.

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?

Description specifies input but lacks details about output (e.g., structure of returned events). Since no output schema exists, this gap reduces completeness, though the tool is simple.

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 all parameters are described in the schema. Description adds no extra meaning beyond confirming that txHash identifies the transaction.

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?

Clearly specifies extraction and decoding of CosmWasm contract events from a transaction, filtering wasm.* event types. Distinguishes from sibling tools like event_parse_move and event_parse_tx.

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?

Description implies usage for CosmWasm events but lacks explicit when-to-use or when-not-to-use guidance, nor does it mention alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evm_callA
Read-only

Call an EVM contract function (read-only). Provide ABI-encoded calldata. Available on Minievm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
contractAddressYesContract address (hex or bech32)
inputYesABI-encoded calldata (hex string starting with 0x)
senderNoSender address for the call context
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description's mention of read-only adds no new safety info. It adds context about chain support (Minievm) and calldata format, but does not explain return behavior or error handling. With annotations covering key traits, the description provides marginal behavioral insight.

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?

Two concise sentences with no redundant information. Front-loaded with purpose, then details. Every word earns its place.

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?

Given no output schema, the description omits what the tool returns (the function output), but the purpose is clear from the name and read-only nature. For a simple read call, this is mostly complete. Could mention return value but not critical.

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 has 100% coverage with descriptions for all five parameters. The description only mentions ABI-encoded calldata and Minievm chains, which does not add significant meaning beyond the schema. Baseline score of 3 is appropriate.

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 calls an EVM contract function as read-only, distinguished from writes like evm_send and queries like evm_get_logs. The verb 'call' plus 'read-only' and 'ABI-encoded calldata' specifies the action and resource precisely.

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 indicates the tool is for read-only calls and requires ABI-encoded calldata, implying it is not for state-changing transactions (use evm_send). However, it does not explicitly list when to avoid it or compare with other EVM query tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evm_decode_logsA
Read-only

Decode EVM event logs using an ABI. Takes raw logs (from evm_get_logs or tx receipt) and returns decoded event names and args.

ParametersJSON Schema
NameRequiredDescriptionDefault
logsYesArray of raw EVM log objects
abiYesContract ABI JSON array

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already provide readOnlyHint=true. The description adds behavioral context by stating the tool uses an ABI and returns decoded event names and args, which is useful beyond the read-only hint.

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 a single sentence, front-loaded with action and resource, and contains no unnecessary words or redundancy.

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 decode tool without output schema, the description adequately conveys what it returns (decoded event names and args). While more detail on return format would be helpful, it remains clear and complete for typical use.

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% with descriptions for both parameters. The description adds minimal extra meaning (mentions source of logs) but does not significantly enhance understanding beyond the schema.

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 verb 'Decode' and the resource 'EVM event logs'. It distinguishes the tool from siblings like evm_get_logs and evm_get_tx_receipt by specifying its input nature and output.

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 the input source ('from evm_get_logs or tx receipt'), giving clear context on when to use this tool. However, it does not explicitly mention when not to use it or provide alternatives like evm_decode_revert.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evm_decode_revertA
Read-only

Decode an EVM revert reason from hex data. Optionally provide ABI JSON to decode custom errors.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesRevert data (hex string, 0x-prefixed)
abiNoContract ABI JSON array (for custom error decoding)

TDQS

A4/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint=true, so description adds value by disclosing optional custom error decoding with ABI JSON. No contradictions.

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?

Two sentences, no wasted words, front-loaded with the core action. Efficient and clear.

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?

Given the simple nature of the tool and well-documented schema, the description is sufficient. It might benefit from mentioning the return format, but not critical for agent invocation.

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 description coverage is 100%, so baseline is 3. Description adds no extra meaning beyond the schema for parameters 'data' and 'abi'.

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?

Description uses specific verb 'Decode' and resource 'EVM revert reason', clearly distinguishing it from sibling tools like evm_decode_logs or evm_call. It also mentions optional custom error decoding, adding precision.

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?

Description does not explicitly state when to use this tool vs alternatives, but the purpose is clear and narrow. No guidance on when not to use it, which is acceptable given its specific function.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evm_deployA

Deploy an EVM contract by submitting creation bytecode. Available on Minievm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
inputYesContract creation bytecode (hex, 0x-prefixed). Append ABI-encoded constructor args if needed.
valueNoNative token value to send (smallest unit)0
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.5/5.0
Behavior2/5

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

Annotations indicate the tool is not read-only and not destructive. The description adds no further behavioral context (e.g., side effects like gas consumption, contract address return, or state changes). With minimal annotation detail, the description should explain more but fails to do so.

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?

Two tight sentences: first states core action, second provides scope. No unnecessary words, front-loaded with critical information.

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 tool with 7 parameters and no output schema, the description is too brief. It lacks details on deployment results (e.g., contract address), required gas/funds, failure modes, or network-specific constraints. It meets the minimum but leaves gaps.

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?

All seven parameters have schema descriptions (100% coverage). The description adds value beyond the schema by advising to append ABI-encoded constructor args. However, it does not elaborate on the 'value' parameter's implications or the 'confirm' flag's effect beyond what the schema states.

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 deploys an EVM contract by submitting creation bytecode, with a specific scope ('Available on Minievm chains'). This distinguishes it from sibling tools like evm_call (executes calls) and evm_send (sends transactions).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description only mentions availability on Minievm chains, but does not explain when to use this tool versus alternatives (e.g., wasm_instantiate or other deployment methods). No guidance on prerequisites, limitations, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evm_get_blockA
Read-only

Get EVM block information by number. Available on Minievm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
blockNumberNoBlock number or "latest"latest
includeTransactionsNoInclude full transaction objects
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the safety profile is clear. The description adds that it is for EVM block info, but provides no additional behavioral details (e.g., return format, pagination). Minimal added value.

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 two sentences, front-loads the key action, and contains no redundant information. Every word earns its place.

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?

Given the tool's complexity (4 parameters, 84 siblings) and the absence of an output schema, the description could explain what block information is returned (e.g., hash, parent hash, timestamp). It is minimally adequate but incomplete.

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?

Input schema coverage is 100% with descriptions for all parameters. The tool description does not add any meaning beyond what the schema already provides. Baseline score of 3 applies.

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 retrieves EVM block information by number, using a strong verb-resource pair. It distinguishes this tool from siblings like evm_get_tx_receipt and evm_get_code.

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?

The description implies usage contexts through the phrase 'by number' and 'Available on Minievm chains', but does not provide explicit guidance on when to use this tool versus alternatives or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evm_get_codeA
Read-only

Get the bytecode deployed at an address. Returns empty if the address is an EOA (not a contract). Only available on Minievm rollup chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
addressYesContract or account address (0x hex)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations declare readOnlyHint=true, and description adds behavioral traits: returns empty for EOA, chain restriction. No contradiction. Adds value beyond 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?

Two sentences, direct and no fluff. Front-loaded with purpose, additional context in second sentence. Every sentence earns its place.

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 tool's simplicity (read code at address), description adequately explains functionality, EOA behavior, and chain restriction. No output schema needed as return value is implied.

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?

Input schema has 100% coverage with descriptions for all parameters. Description does not add extra parameter semantics beyond the schema, meeting baseline.

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?

Description clearly states verb 'Get' and resource 'bytecode deployed at an address'. It distinguishes itself from siblings like evm_get_storage_at and evm_call by specifying the operation and noting it returns empty for EOA, which is unique among EVM 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?

Provides clear context: returns empty for EOA (implying use to check if address is a contract) and availability limited to Minievm rollup chains. Lacks explicit alternatives or when-not-to-use scenarios, but the context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evm_get_logsA
Read-only

Query EVM event logs with filters. Available on Minievm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
addressNoContract address to filter logs
topicsNoEvent topic filters (array of topic hashes, null for wildcard)
fromBlockNoStart block (number or "latest")latest
toBlockNoEnd block (number or "latest")latest
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already mark readOnlyHint=true, so the description's 'Query... with filters' is consistent but adds no further behavioral traits beyond what annotations provide. No mention of pagination, rate limits, or other nuances.

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?

Two concise sentences, front-loaded with the core purpose. No unnecessary words; every sentence adds value.

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?

No output schema exists, but the description does not mention what the tool returns (e.g., formatted logs array). For a complex tool, this is a gap, though schema covers parameters well. Moderately complete.

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 description coverage is 100%, so each parameter is already documented. The description adds no additional meaning; 'with filters' is generic. Baseline 3 is appropriate as the schema carries the burden.

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 queries EVM event logs with filters, and specifies availability on Minievm chains, distinguishing it from siblings like evm_call or evm_get_block which serve different purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., evm_get_tx_receipt) or when not to use it. The description lacks context for selecting the appropriate tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evm_get_storage_atA
Read-only

Read a raw storage slot of an EVM contract. Only available on Minievm rollup chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
addressYesContract address (0x hex)
slotYesStorage slot position (0x hex, e.g., "0x0")
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the description simply confirms a read operation. It adds no contradictory info and the platform restriction is a useful behavioral note. Still, it could mention potential limits or response format.

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 two concise sentences with no unnecessary words. It front-loads the core action and adds the limitation immediately. Every sentence serves a purpose.

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 simple read-only operation with 4 well-documented parameters and no output schema, the description adequately covers the tool's purpose and constraints. A minor gap: it does not describe the return value format, but this is simple enough.

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% with descriptive parameter explanations. The description adds minimal extra meaning beyond the schema (e.g., the chain restriction is echoed). Baseline 3 is appropriate as the schema carries the load.

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 verb 'Read' and the resource 'raw storage slot of an EVM contract', distinguishing it from sibling tools like evm_call or evm_get_code. The specificity of 'raw storage slot' and the platform restriction 'Only available on Minievm rollup chains' further clarify purpose.

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 indicates when to use (to read a raw storage slot) and provides an important constraint (only on Minievm rollup chains), guiding agents on context. However, it lacks explicit alternatives or a 'when not to use' statement.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evm_get_tx_receiptA
Read-only

Get an EVM transaction receipt by hash. Available on Minievm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
txHashYesTransaction hash (0x-prefixed)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations indicate readOnlyHint=true, which aligns with the 'Get' operation. The description adds no new behavioral context (e.g., permissions, data freshness, rate limits). Given the annotation coverage, this is adequate but not enhanced.

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 two short, direct sentences with no redundant information. Every word serves a purpose, making it highly efficient.

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?

There is no output schema, and the description does not mention the return value structure (e.g., receipt fields like status, logs). For a transaction receipt tool, this omission leaves the agent partially uninformed about what to expect.

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%, and the schema already provides clear descriptions for chain, txHash, and network. The description does not add any further parameter details, so it meets the baseline expectation.

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 action ('Get an EVM transaction receipt'), the required input ('by hash'), and the context ('Available on Minievm chains'). This specifically distinguishes it from siblings like evm_get_block or evm_get_logs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., evm_call, evm_get_logs). The description only notes chain availability, without conditions, prerequisites, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evm_sendA

Send a state-changing EVM transaction. Provide ABI-encoded calldata. Available on Minievm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
contractAddressYesContract address (hex or bech32)
inputYesABI-encoded calldata (hex string starting with 0x)
valueNoNative token value to send (smallest unit)0
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations only provide readOnlyHint=false and destructiveHint=false. The description adds that the tool is state-changing and that the 'confirm' parameter controls actual broadcast vs simulation. This is useful but does not address authentication/signing requirements, gas costs, or error handling. It partially compensates for minimal 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?

Two sentences with no wasted words. The first sentence states the core purpose, the second adds essential context (calldata requirement and chain availability). Perfectly front-loaded and concise.

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?

The description is adequate for a mutation tool with comprehensive parameter descriptions in the schema. However, it lacks information about expected return values (transaction hash or simulation result) and does not cover gas estimation or signing requirements. Could be more complete for a novice agent.

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 description coverage is 100% with detailed parameter descriptions. The tool description reinforces 'ABI-encoded calldata' but adds no new parameter-level information beyond what the schema provides. Baseline 3 is appropriate.

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 action ('Send a state-changing EVM transaction'), the resource ('EVM transaction'), and key requirements ('Provide ABI-encoded calldata', 'Available on Minievm chains'). It effectively distinguishes from sibling tools like evm_call by emphasizing state-changing nature.

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?

The description implies usage for state-changing operations via the term 'state-changing' and the 'confirm' parameter (false=simulation, true=broadcast). However, it does not explicitly state when to use this tool vs alternatives (e.g., evm_call for read-only), nor provide exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

feegrant_allowancesA
Read-only

Query fee grant allowances for an address. Returns all grants where the address is the grantee.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
granteeYesGrantee address
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description's claim of 'query' is consistent and adds no additional behavioral context. No mention of pagination, limits, or response format, which would be beneficial but not required given the 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?

Single sentence, no unnecessary words. Front-loaded with action and resource. Highly concise.

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 simple read-only query with well-described parameters and no output schema, the description is sufficient. It explains the resource and scope. Could mention that it returns all grants (no pagination implied), but this is minor.

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%: each parameter has a description (grantee as address, chain with examples, network enum). The tool description does not add value beyond the schema, so baseline 3 is appropriate.

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 explicitly states 'Query fee grant allowances for an address. Returns all grants where the address is the grantee.' This clearly identifies the verb (Query), resource (fee grant allowances), and scope (address as grantee), distinguishing it from sibling tools like feegrant_grant and feegrant_revoke.

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?

No explicit guidance on when to use this tool versus alternatives. The description focuses on what it does but does not mention when not to use it or suggest alternative tools for related operations (e.g., granting or revoking fee grants).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

feegrant_grantB

Grant fee allowance to another address for gas fee sponsorship. At least one of spendLimit or expiration must be provided.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
granteeYesAddress to grant fee allowance to
spendLimitNoMaximum spend amount (e.g., "1000000uinit")
expirationNoExpiration in days from now (default: 30 when only spendLimit is provided)
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=false and destructiveHint=false. The description adds the constraint that at least one of spendLimit or expiration must be provided, which is useful behavioral context, but lacks details on on-chain effects or required permissions.

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 a single, front-loaded sentence that directly states the tool's action and key constraint, with no unnecessary words.

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

Completeness2/5

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

The description is incomplete: it does not explain return values, the difference between dryRun and confirm, or what happens after broadcasting. Given the tool's complexity (8 params, no output schema), more context is needed.

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 description coverage is 100%, so parameters are well-documented there. The description reinforces the constraint about spendLimit and expiration but adds no new per-parameter meaning beyond the schema.

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 grants a fee allowance for gas fee sponsorship, using a specific verb and resource that distinguishes it from sibling tools like feegrant_allowances and feegrant_revoke.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool vs alternatives, nor are there exclusions or prerequisites mentioned beyond the implicit constraint about spendLimit or expiration.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

feegrant_revokeA

Revoke a fee grant allowance previously granted to an address.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
granteeYesAddress to revoke fee allowance from
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.6/5.0
Behavior2/5

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

Annotations indicate this is not read-only and not destructive, but the description adds no behavioral details beyond that, such as whether revocation requires the granter's permission or if it is irreversible.

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 a single, well-structured sentence. It is concise and immediately conveys the tool's purpose without extraneous information.

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?

Given the tool's simplicity and the schema's thorough parameter descriptions, the description is adequately complete. It lacks only minor details about the effect on the grantee.

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 baseline is 3. The description does not add meaning beyond the schema's parameter descriptions, which are already clear.

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 action 'Revoke' and the resource 'fee grant allowance', and it distinguishes from sibling tools like 'feegrant_grant' and 'feegrant_allowances' which perform different operations.

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?

The description implies the tool is used to revoke a previously granted fee allowance, but it does not explicitly state when to use it versus alternatives, nor does it mention prerequisites or context for appropriate use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

governance_voteB

Vote on a governance proposal. Options: YES=1, ABSTAIN=2, NO=3, NO_WITH_VETO=4.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
proposalIdYesProposal ID
optionYesVote option: 1=YES, 2=ABSTAIN, 3=NO, 4=NO_WITH_VETO
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.1/5.0
Behavior2/5

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

Annotations are minimal (readOnlyHint:false, destructiveHint:false). Description does not disclose that dryRun and confirm parameters control simulation vs. actual broadcast, nor any side effects or required authorizations. The mapping of option numbers is already in the schema.

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?

Short and to the point. The option mapping is listed separately, which is acceptable. Could be slightly more integrated, but no wasted words.

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

Completeness2/5

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

Given 7 parameters and no output schema, the description is incomplete. It fails to explain the voting workflow, the need to set confirm to true, the role of dryRun, or that chain can refer to L1 or L2. Leaves significant gaps for the agent.

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 baseline 3. Description adds the numeric mapping for option, but this repeats the schema's description. Does not add meaning for other parameters like chain, dryRun, confirm, or memo.

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?

Clearly states 'Vote on a governance proposal' with specific verb and resource, and lists the vote options. Distinguishes from read-only siblings like proposal_get and proposal_list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. Does not mention prerequisites (e.g., voting power, active proposal) or that confirm=true is needed to broadcast.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ibc_channelsA
Read-only

List IBC channels for a chain, or find the channel between two specific chains. Useful before ibc_transfer to discover the correct sourceChannel.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain to list IBC channels forinitia
counterpartyNoOptional counterparty chain to find the specific channel between the two chainsinitia
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.3/5.0
Behavior3/5

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

Annotations already provide readOnlyHint=true. Description adds minimal behavioral info beyond stating it's a list/find operation. Does not disclose any additional traits like pagination or data freshness, but with annotations the bar is lower.

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?

Two sentences, no wasted words. Purpose and usage are front-loaded. Every sentence is necessary and informative.

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?

For a simple read-only list tool with full schema descriptions and no output schema, the description is complete. It covers purpose, usage context, and parameter interplay.

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% with descriptions for all three parameters. The description adds meaning by explaining the dual functionality and the role of the counterparty parameter, which goes beyond the schema's individual 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?

Description clearly states it lists IBC channels or finds a channel between two chains, with a specific verb and resource. It distinguishes from sibling ibc_transfer by stating its usefulness before that tool.

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 says 'Useful before ibc_transfer to discover the correct sourceChannel,' providing clear context for when to use. Does not explicitly list when not to use, but the use case is well-defined.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ibc_denom_hashA
Read-only

Compute the IBC denomination hash from a transfer path. E.g., "transfer/channel-0/uatom" -> "ibc/27394..."

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesIBC transfer path (e.g., "transfer/channel-0/uatom")

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true. Description adds that it computes a deterministic hash, which is useful context beyond the annotation.

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?

Two concise sentences with an example. No wasted words; every element serves a purpose.

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?

Given the tool's simplicity (one parameter, no output schema, read-only), the description is complete. It explains what it does and provides an illustrative example, though the output format is only implied.

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% with parameter description. The example in the description adds concrete format guidance (e.g., 'transfer/channel-0/uatom'), providing value beyond the schema.

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?

Description clearly states the verb 'Compute' and resource 'IBC denomination hash', with an example distinguishing it from sibling tools that deal with IBC transfers or channels.

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?

No explicit when-to-use or when-not-to-use guidance. Usage is implied by the purpose, but no alternatives are mentioned, which is acceptable given no direct siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ibc_transferA

Send tokens via IBC to another chain. Use bridge_route for automatic path discovery.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
sourceChannelYesIBC source channel (e.g., "channel-0")
receiverYesReceiver address on the destination chain
amountYesAmount to transfer
denomYesToken denomination
sourcePortNoIBC source porttransfer
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations indicate readOnlyHint=false (write operation) and destructiveHint=false. The description adds 'Send tokens' which aligns. Beyond that, it adds no behavioral details (e.g., that it returns a simulation unless confirm=true). With annotations present, the description offers minimal additional transparency.

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 two sentences long, with no redundant words. It efficiently states the purpose and a usage hint. Every word earns its place.

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

Completeness2/5

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

For a tool with 10 parameters and no output schema, the description is too brief. It does not explain what the tool returns (e.g., a transaction hash or simulation result), nor does it discuss the confirm/dryRun flow. The schema hints at this, but the description should provide clearer expectations for a non-trivial operation.

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 description coverage is 100%, so baseline is 3. The description does not add meaning beyond the schema; it does not explain how to find sourceChannel or denom details. The description adds no parameter-specific context.

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's purpose: 'Send tokens via IBC to another chain.' It uses a specific verb ('Send') and resource ('tokens via IBC'), and distinguishes from the sibling tool 'bridge_route' by mentioning it for automatic path discovery.

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 provides a clear alternative: 'Use bridge_route for automatic path discovery.' This helps decide when to use this tool versus the sibling. However, it does not explicitly state when not to use this tool or mention prerequisites like having the source channel.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ledger_statusA
Read-only

Check signer key type and Ledger device status

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already mark readOnlyHint=true. Description adds behavioral detail by specifying what is checked (key type and device status), providing useful context beyond annotations. No contradiction.

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?

Single, complete sentence with no clutter. Every word adds value, meeting conciseness goals perfectly.

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?

Description covers the tool's action and output (key type and device status). With no parameters and no output schema, it is sufficiently complete for a check tool. Minor improvement: could note no input required.

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?

No parameters exist; schema coverage is 100%. Description adds no param info, but baseline for 0 params is 4. No need for further explanation.

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?

Description uses specific verb 'Check' and names two clear resources: 'signer key type' and 'Ledger device status'. This differentiates it from sibling `ledger_verify_address` which focuses on address verification, making purpose unambiguous.

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?

No explicit guidance on when to use this vs alternatives like `ledger_verify_address`. Context (e.g., checking signer key vs. verifying address) is implied but not stated. Agent may need to infer use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ledger_verify_addressA
Read-only

Display address on Ledger device for physical verification

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already mark the tool as read-only. The description adds context about the physical verification step on the device, which is not captured by annotations. No contradictions.

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?

Single concise sentence that front-loads the key action and purpose. No extraneous content.

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 parameterless tool with a straightforward action, the description is nearly complete. Minor omission: does not mention that a Ledger must be connected.

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?

Input schema has zero parameters, so description naturally covers parameter semantics. No need for additional details.

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 specifies a concrete action ('Display address on Ledger device') and the purpose ('physical verification'), clearly distinguishing it from siblings like 'address_validate' or 'ledger_status'.

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?

The description implies its use case (physical verification on a Ledger device) but does not explicitly state when to prefer this over alternatives or mention any prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_bcs_decodeA
Read-only

Decode Move BCS bytes back to human-readable values.

ParametersJSON Schema
NameRequiredDescriptionDefault
hexValuesYesHex-encoded BCS bytes for each value
typesYesMove type for each value (e.g., ["address", "u64", "vector<u8>"])

TDQS

A3.5/5.0
Behavior4/5

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

The description is consistent with the readOnlyHint annotation, confirming it is a read-only operation. It adds context that the output is human-readable, which goes beyond what annotations provide. No behavioral contradictions.

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 is a single, front-loaded sentence that efficiently conveys the core purpose. It is concise without being under-specified, though it could be slightly expanded without becoming verbose.

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

Completeness2/5

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

The description lacks any mention of the return format or output structure. Since there is no output schema, the agent is left without information on what the decoded values look like or how they are returned, which is a significant gap for a decoding tool.

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?

The input schema already has 100% description coverage for both parameters (hexValues and types). The description does not add any additional meaning beyond what the schema provides, so the baseline of 3 is appropriate.

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 verb 'Decode' and the resource 'Move BCS bytes', and specifies the output as 'human-readable values'. This distinguishes it from its sibling 'move_bcs_encode', which does the opposite.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as the obvious counterpart 'move_bcs_encode' or other decode tools. There is no mention of prerequisites or contexts where decoding is needed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_bcs_encodeA
Read-only

Encode values to Move BCS (Binary Canonical Serialization) format. Useful for preparing complex arguments for move_execute.

ParametersJSON Schema
NameRequiredDescriptionDefault
valuesYesValues to encode
typesYesMove type for each value (e.g., ["address", "u64", "vector<u8>"])

TDQS

A3.8/5.0
Behavior2/5

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

The description only restates the purpose without adding behavioral traits beyond the annotation readOnlyHint: true. No disclosure of side effects, output format, or error conditions is provided.

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 extremely concise: one sentence defining the tool and a second sentence giving a usage hint. No unnecessary words, front-loaded with the key action.

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?

Given the lack of an output schema and the tool's simplicity, the description covers the essential purpose and a primary use case. It could be improved by mentioning the output format, but it is still fairly complete for its complexity.

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?

The input schema provides detailed descriptions for both parameters (values and types), and the tool description adds no additional semantics beyond repeating the encoding purpose. Schema coverage is 100%, so baseline score 3 is appropriate.

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 action ('encode values to Move BCS format') and the resource ('values'), directly distinguishing from the sibling tool move_bcs_decode. It also mentions the use case of preparing arguments for move_execute.

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 recommends this tool for 'preparing complex arguments for move_execute,' providing a clear usage context. However, it does not mention when not to use it or alternative tools beyond implied contrast with move_bcs_decode.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_denom_metadataA
Read-only

Convert a token denom to its Move metadata address. Available on Initia L1 and Minimove chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
denomYesToken denomination (e.g., "uinit")
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations provide readOnlyHint=true, so the agent knows it's a safe read. The description adds that it 'converts' (a read-style operation) and specifies chain availability, but doesn't disclose additional behavioral traits like rate limits or output format. The description is consistent with annotations, no contradiction.

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?

A single sentence that perfectly captures the tool's action and scope. No unnecessary words. The information is front-loaded and concise.

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?

Given the tool's simplicity (3 parameters, no output schema), the description is fairly complete. It states the conversion direction and supported chains. However, it does not explain what a 'Move metadata address' is or what the return value looks like, though the absence of an output schema lowers the expectation. Overall adequate.

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 description coverage is 100%, so parameters are fully documented in the schema. The description does not add any extra meaning beyond the schema for the parameters (e.g., the 'chain' default is already in schema). Baseline score of 3 is appropriate.

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 converts a token denom to its Move metadata address, with a specific verb ('convert') and resource ('denom to metadata address'). It also distinguishes itself from the sibling tool 'move_metadata_denom' (likely reverse) by mentioning the direction, even if not explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives like 'move_metadata_denom' (which likely does the reverse). The description only mentions chain availability, which is context but not usage guidelines.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_dex_pairsA
Read-only

List DEX liquidity pool pairs, or look up a specific pair by quote token metadata. Returns LP metadata needed for vip_provide_and_delegate. Available on Initia L1 and Minimove chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
metadataQuoteNoQuote token metadata address to look up a specific pair
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.4/5.0
Behavior4/5

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

The description confirms readonly behavior consistent with the readOnlyHint annotation. It adds that the tool returns LP metadata, providing useful behavioral context beyond the annotation.

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?

Two sentences, no fluff, front-loaded with key information (list vs lookup, output purpose, chain support). Every sentence is necessary and well-placed.

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?

Given no output schema, the description adequately explains the return value (LP metadata for vip_provide_and_delegate). It covers chain context and dual functionality. Minor omission: it doesn't specify whether the result is a list or single object, but the context implies both depending on parameters.

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 description supplements schema parameter descriptions by noting that metadataQuote is for looking up a specific pair and that chain defaults to L1 with L2 examples. With 100% schema coverage, this adds contextual value.

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 lists DEX liquidity pool pairs or looks up a specific pair by quote token metadata, and explicitly ties the output to the vip_provide_and_delegate tool. This distinguishes it from siblings, none of which are DEX-pair-specific.

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 indicates when to use the tool (to obtain LP metadata for vip_provide_and_delegate) and specifies chain availability (Initia L1 and Minimove). It does not explicitly exclude scenarios or list alternatives, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_executeB

Execute a Move entry function (state-changing). Available on Initia L1 and Minimove chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
moduleAddressYesModule owner address (e.g., "0x1")
moduleNameYesModule name
functionNameYesEntry function name
typeArgsNoType arguments
argsNoFunction arguments
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.3/5.0
Behavior2/5

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

The description mentions 'state-changing' which aligns with readOnlyHint=false, but it does not disclose other important behavioral traits such as the need for signing, gas costs, or transaction submission process. With no annotations explaining destructiveHint, the description fails to provide adequate transparency for a mutation tool.

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 a single sentence that clearly conveys the core purpose. It is extremely concise with no redundant information.

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

Completeness2/5

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

Given the complexity (10 parameters, no output schema), the description is too brief. It omits critical context such as how to use dryRun/confirm, network selection, and the overall transaction flow. It does not help an agent decide between this and similar tools.

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 input schema has 100% description coverage, so the description does not need to reiterate parameters. However, it adds value by noting chain availability (Initia L1 and Minimove), which is not in the schema. This enhances understanding of the 'chain' parameter.

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 description clearly states it executes a state-changing Move entry function, which distinguishes it from read-only tools like move_view. However, it could be more specific about what 'Execute' entails compared to other Move tools like move_script.

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?

The description implies it is for state-changing operations, but it does not explicitly state when to use this tool versus alternatives like move_view or move_script. The presence of dryRun and confirm parameters suggests usage patterns, but these are not explained.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_metadata_denomA
Read-only

Convert a Move metadata address to its token denom. Available on Initia L1 and Minimove chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
metadataYesMove metadata address (e.g., "0x1::native_uinit::Coin")
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint, and description adds chain availability but no additional behavioral traits like error handling or output format.

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?

Two sentences, no filler, front-loaded with key information.

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?

Adequate for a simple conversion tool; schema covers parameters, but lacks details on error cases or output format.

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 description adds no extra meaning beyond schema descriptions; baseline of 3 is appropriate.

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 action (convert), input (Move metadata address), and output (token denom), and distinguishes it from sibling tools like 'move_denom_metadata'.

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?

No explicit when-to-use or alternatives provided; usage is implied by the tool's name and purpose but lacks guidance on context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_module_abiA
Read-only

Get the ABI (functions, structs, type params) of a Move module. Available on Initia L1 and Minimove chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
moduleAddressYesModule owner address (e.g., "0x1")
moduleNameYesModule name (e.g., "coin")
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4/5.0
Behavior4/5

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

Annotations declare readOnlyHint=true, confirming no side effects. The description adds value by specifying that the ABI includes functions, structs, and type params, which goes beyond the annotation. No contradictions.

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 concise with two short sentences. The first sentence immediately states the purpose, and the second provides chain context. No superfluous words.

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 simple read operation with well-documented parameters, the description covers the key aspects. It could mention error cases or what happens if the module doesn't exist, but given no output schema, the current level is sufficient.

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 description coverage is 100% (all 4 parameters have descriptions). The description does not add new information about parameters beyond what is in the schema, so it meets the baseline for well-documented schema.

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 verb 'Get' and the resource 'ABI (functions, structs, type params) of a Move module', making the purpose unambiguous. It differentiates itself from siblings like 'move_execute' or 'move_view' by specifying it retrieves the ABI.

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?

It mentions availability on Initia L1 and Minimove chains, providing some usage context. However, it does not explicitly state when to use this tool over alternatives (e.g., move_view or move_modules), nor does it provide exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_modulesA
Read-only

List all Move modules deployed at an address. Use this to discover available modules before calling move_module_abi. Available on Initia L1 and Minimove chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
addressYesAccount address to list modules for (e.g., "0x1")
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.9/5.0
Behavior3/5

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

Annotations declare readOnlyHint=true, and the description confirms a read operation. The description adds context about chain specificity (Available on Initia L1 and Minimove chains) but lacks details on behavioral traits like pagination, limits, or side effects. Annotations already cover the safety profile, so the description adds moderate value.

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 consists of two sentences. The first sentence directly states the main purpose, and the second provides crucial usage guidance and scope. Every word is purposeful, with no redundant or extraneous information.

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?

Given no output schema, the description does not explain the return format. For a list tool, knowing the response structure (e.g., module names) would be helpful, but the purpose and usage are adequately covered. The missing output description slightly reduces completeness.

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 description coverage is 100%, with each parameter having a clear description in the schema. The tool's description adds no new details beyond the schema fields; it merely reiterates the chain info. Baseline 3 is appropriate since the schema already defines parameters well.

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 starts with a clear verb+resource: 'List all Move modules deployed at an address.' It also distinguishes itself from the sibling tool 'move_module_abi' by stating 'before calling move_module_abi', making its purpose unambiguous.

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 when to use this tool: 'Use this to discover available modules before calling move_module_abi.' It also mentions chain availability, but does not provide explicit when-not-to-use or alternative tools, though the guidance is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_publishB

Publish (deploy) Move module bytecode to chain. Available on Initia L1 and Minimove chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
codeBytesYesModule bytecode as hex string
upgradePolicyNoUpgrade policy for the modulecompatible
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.3/5.0
Behavior2/5

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

While annotations already indicate it is a write operation (readOnlyHint: false) and non-destructive (destructiveHint: false), the description adds minimal behavioral context beyond confirming it deploys to chain. No details on side effects, permissions, or execution behavior.

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 a single sentence that directly states the tool's purpose with zero wasted words. It is front-loaded and efficiently communicates the core function.

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?

Given the tool complexity (7 parameters, one required) and no output schema, the description is sufficient but lacks context on how parameters like dryRun and confirm affect behavior, and does not explain return values or error cases.

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?

With 100% schema description coverage, the baseline is 3. The description does not add any extra meaning beyond the schema; it simply summarizes the tool's purpose without elaborating on parameters.

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 action ('Publish (deploy) Move module bytecode to chain') with a specific verb and resource, and distinguishes it from sibling tools like move_execute or move_view by focusing on module deployment.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description lacks any guidance on when to use this tool versus alternatives. It only mentions chain availability but provides no when-to-use, when-not-to-use, or exclusion conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_resource_getA
Read-only

Query a Move resource at an address. Available on Initia L1 and Minimove chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
addressYesAccount address holding the resource
structTagYesResource struct tag (e.g., "0x1::coin::CoinStore<0x1::native_uinit::Coin>")
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already mark readOnlyHint=true, so the description's 'Query' is consistent and adds no contradiction. It adds chain availability context but does not disclose other behaviors like error handling, rate limits, or authentication needs. Adequate but not enriched.

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?

One short sentence conveying purpose and scope clearly. No redundancy, but could be slightly more structured with explicit chain info placement. Acceptably concise.

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?

Schema is well-covered and no output schema exists, but the description does not explain response format, pagination (if any), error scenarios (e.g., resource not found), or usage nuances. For a straightforward query tool, it is minimally adequate but incomplete for complex use cases.

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?

Input schema covers 100% of parameters with descriptions (chain, address, structTag, network). The description itself adds no extra parameter semantics beyond what the schema provides, so baseline score is appropriate.

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 queries a specific Move resource at an address, with explicit scope of chains (Initia L1 and Minimove). This distinguishes it from sibling tools like move_resources (list resources) and move_view (execute view functions).

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?

The description implies usage for querying a resource by address and struct tag but lacks explicit guidance on when not to use it or comparisons with alternatives like move_resources or move_view. No exclusion or alternative tool mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_resourcesA
Read-only

List all Move resources held by an address. Use this to discover available resources before calling move_resource_get with a specific struct tag. Available on Initia L1 and Minimove chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
addressYesAccount address to list resources for
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true. Description adds chain context but no additional behavioral traits like pagination, rate limits, or result format. With annotations present, bar is lower but description adds limited value.

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?

Three concise, front-loaded sentences. Each sentence provides distinct value: purpose, usage guidance, and chain availability.

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?

Tool has no output schema but is a straightforward list operation. Description covers purpose, usage, and chain context adequately for the complexity.

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% with descriptions for all three parameters. Description does not add extra parameter information beyond the schema, meeting baseline for high coverage.

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?

Description clearly states 'List all Move resources held by an address' (specific verb+resource). It distinguishes from sibling move_resource_get by noting this is for discovery before using that tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'Use this to discover available resources before calling move_resource_get with a specific struct tag.' Also notes chain availability (Initia L1 and Minimove).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_scriptA

Execute a Move script (one-off bytecode, not published). Available on Initia L1 and Minimove chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
codeBytesYesScript bytecode as hex string
typeArgsNoType arguments
argsNoFunction arguments as JSON-encoded strings
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=false and destructiveHint=false, so the description doesn't need to repeat that. However, the description adds that it executes a script, implying state modification, but does not disclose potential side effects, failure modes, or required context like gas. It provides some value beyond annotations but is still minimal.

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 extremely concise: two sentences that directly state purpose and scope. Every word is necessary, and there is no redundancy or fluff.

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?

Given the tool has 8 parameters and no output schema, the description is minimal. However, the input schema provides decent descriptions for all parameters, including dryRun and confirm, which outline the workflow. The description alone may not be fully complete for an agent without reading the schema, but combined it is adequate.

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 description coverage is 100%, so baseline is 3. The description does not add any additional parameter information beyond what the schema already provides. Thus, it contributes no extra semantic value.

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 action (Execute), the resource (Move script), and specifies it's 'one-off bytecode, not published', which distinguishes it from sibling tools like move_publish and move_execute. It also mentions availability on specific chains, providing clear scope.

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?

The description implies that the tool is for temporary scripts ('not published'), but it does not explicitly state when to use it over alternatives like move_execute or move_publish. No exclusions or alternative tool names are given, so guidance is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_table_entryB
Read-only

Query a Move table entry by handle and key. Available on Initia L1 and Minimove chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
tableHandleYesTable handle (hex string)
keyYesTable key value
keyTypeYesMove type of the key (e.g., "address", "u64")
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description's 'query' matches. It adds no additional behavioral traits beyond chain availability, which is covered by the annotation's read-only nature.

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?

Two sentences are concise and front-loaded with the core action. Could benefit from slight restructuring but overall efficient.

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?

The description omits return format details, which is important for a query tool with no output schema. It mentions chain availability but lacks context on how to specify L2 vs L1 (though covered in schema).

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% with full descriptions for each parameter. The description does not enhance understanding beyond what the schema already provides.

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 queries a Move table entry by handle and key. It specifies availability on Initia L1 and Minimove chains, distinguishing it from other move-related tools like move_resource_get or move_view.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives such as move_resource_get or move_view. The description only mentions chain availability without usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_viewB
Read-only

Call a Move view function (read-only). Available on Initia L1 and Minimove chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
moduleAddressYesModule owner address (e.g., "0x1")
moduleNameYesModule name (e.g., "coin")
functionNameYesView function name (e.g., "balance")
typeArgsNoType arguments
argsNoFunction arguments
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=true, so the description adds minor context about chain availability. No contradictions, but no additional behavioral details beyond what annotations provide.

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?

Two concise sentences with no redundancy. Every phrase adds value: verb, resource, read-only indicator, and chain availability.

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?

No output schema exists, but given the annotations and schema completeness, the description covers the essential purpose. Lacks explanation of return value variability across view functions.

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?

The input schema has 100% description coverage for all parameters. The description adds no extra meaning beyond the schema, so baseline 3 is appropriate.

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 description clearly states the tool calls a Move view function and is read-only. It specifies chain availability but does not distinguish from similar sibling tools like move_execute or move_script.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. The read-only nature is stated, but no exclusions or comparisons to write tools are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

opbridge_getA
Read-only

Get detailed information about a specific OPInit bridge by its ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
bridgeIdYesOPInit bridge ID
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations provide readOnlyHint=true, and the description aligns with a read operation. No additional behavioral details beyond what annotations convey. No contradictions.

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?

Single sentence, no wasted words. Efficiently communicates the tool's function.

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 simple read-by-ID tool with optional network parameter, the description plus schema provide sufficient context. No output schema exists, but the description implies 'detailed information' which is adequate.

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?

Input schema covers 100% of parameters with descriptions. The tool description adds no extra meaning beyond the schema, so baseline score applies.

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?

Clearly states 'Get detailed information about a specific OPInit bridge by its ID.' The verb 'get' and resource 'OPInit bridge' are explicit, and it distinguishes from sibling tools like opbridge_list (which likely lists all bridges).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives such as opbridge_list or opbridge_token_pairs. The context is only implied by the tool name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

opbridge_listA
Read-only

List all OPInit bridges with their config. Returns paginated results (default 10).

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results per page (default 10). Use with offset to paginate.
offsetNoResults to skip for pagination
reverseNoReverse result order (e.g., newest first for proposals)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4/5.0
Behavior4/5

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

Annotations already provide readOnlyHint=true, so the description adds value by noting pagination behavior (default 10 results). This helps the agent understand data retrieval characteristics beyond 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?

Two sentences, front-loaded with purpose. Every word is necessary and no redundancy. Highly concise and structured.

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?

Given no output schema, the description explains the result (list with config, paginated). It doesn't mention default network behavior, but the schema handles that. Acceptable for a straightforward list tool with good annotations.

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 the description does not need to repeat parameter details. The mention of pagination is already implied by limit/offset descriptions in schema. No significant additional parameter semantics added.

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?

Description clearly states the action (list), resource (OPInit bridges), and scope (all). This distinguishes it from siblings like opbridge_get (single bridge) and opbridge_token_pairs (token pairs).

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?

Description implies usage for obtaining a list of all bridges, but does not explicitly differentiate when to use this vs alternatives like opbridge_get or opbridge_token_pairs. No guidance on exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

opbridge_token_pair_by_l1_denomA
Read-only

Find the L2 token for a given L1 denomination on a specific bridge.

ParametersJSON Schema
NameRequiredDescriptionDefault
bridgeIdYesOPInit bridge ID
l1DenomYesL1 token denomination (e.g., "uinit")
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true. Description adds minimal behavioral context, no mention of side effects or constraints. No contradiction.

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?

Single sentence, short and front-loaded with the verb. No unnecessary words.

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?

Given no output schema, description adequately explains the operation. Slight gap in not describing return format, but sufficient for a simple lookup.

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% with each parameter described. Description adds minimal extra meaning beyond the schema, just clarifies the purpose of the parameters.

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?

Description uses specific verb 'Find' and clearly states the resource: 'L2 token for a given L1 denomination on a specific bridge.' This distinguishes it from sibling tools like opbridge_token_pair_by_l2_denom and opbridge_list.

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?

No explicit guidance on when to use this tool vs alternatives. The description implies usage for reverse mapping, but doesn't mention opbridge_token_pair_by_l2_denom or other related tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

opbridge_token_pair_by_l2_denomA
Read-only

Find the L1 token for a given L2 denomination on a specific bridge.

ParametersJSON Schema
NameRequiredDescriptionDefault
bridgeIdYesOPInit bridge ID
l2DenomYesL2 token denomination
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, and the description's 'Find' aligns with a read operation. No additional behavioral context (e.g., return format, null handling) is provided beyond what annotations offer.

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 a single sentence that is direct and to the point, containing no unnecessary words or information.

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?

Given the tool has no output schema, the description does not explain the return value format. While the purpose is clear, an agent might benefit from knowing that the result is an L1 token identifier. However, it is adequate for a simple lookup.

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% with parameter descriptions. The description adds no further semantic detail beyond the schema, resulting in a baseline score.

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 action ('Find') and the resource ('L1 token') with specific context ('for a given L2 denomination on a specific bridge'). It distinguishes from sibling tools like 'opbridge_token_pair_by_l1_denom' (opposite direction) and 'opbridge_token_pairs' (list all pairs).

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?

The description implies when to use (when you have an L2 denom and need the L1 token), but does not explicitly mention when not to use or suggest alternatives. No guidance on conflicting siblings or edge cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

opbridge_token_pairsA
Read-only

List token pair mappings (L1 <-> L2) for a specific bridge. Returns paginated results (default 10).

ParametersJSON Schema
NameRequiredDescriptionDefault
bridgeIdYesOPInit bridge ID
limitNoMax results per page (default 10). Use with offset to paginate.
offsetNoResults to skip for pagination
reverseNoReverse result order (e.g., newest first for proposals)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations provide readOnlyHint: true, so the description adds no new behavioral context beyond pagination details. No contradictions; description aligns 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 two concise sentences, front-loading purpose (list token pairs) and key behavior (paginated results). No wasted words.

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?

Given no output schema, the description could better describe the return structure. It mentions pagination but not what a token pair mapping entry contains. However, the schema covers parameters well, and the tool's purpose is straightforward.

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 description coverage is 100%, and the tool description does not add additional meaning to parameters beyond what the schema already provides. The description mentions 'for a specific bridge' and pagination but does not elaborate on parameter values or constraints.

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 lists token pair mappings for a specific bridge, specifying L1 <-> L2 and pagination. It distinguishes from siblings like opbridge_get (single bridge) and opbridge_token_pair_by_l1_denom (lookup by token).

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?

The description implies use case by saying 'for a specific bridge', but lacks explicit guidance on when to use this over sibling tools like opbridge_token_pair_by_l1_denom or opbridge_token_pair_by_l2_denom. No when-not-to-use or prerequisites mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

portfolio_getA
Read-only

Get aggregated token balances across all chains (L1 + all L2s) for an address.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesAddress in bech32, hex, or .init format. Use "me" for the signer's own address.
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, covering safety. The description adds behavioral context about cross-chain aggregation but does not mention rate limits, pagination, or other traits. Given the existing annotation, the description adds moderate value.

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 a single sentence of 12 words, front-loaded with the verb and resource. Every word contributes meaning with no redundancy or unnecessary detail.

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 read-only aggregation tool with well-documented parameters and no output schema, the description adequately covers purpose and scope. It explains the key behavioral trait (cross-chain) and parameter semantics, making it sufficient for an agent to invoke correctly.

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 description coverage is 100%, with both parameters having clear descriptions. The tool description does not add any additional meaning beyond what the schema already provides, so baseline of 3 is appropriate.

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 retrieves aggregated token balances across all chains for a given address, using a specific verb and resource. It distinguishes itself from siblings like token_balance (single chain) by explicitly mentioning 'across all chains (L1 + all L2s)'.

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 implicitly indicates when to use this tool (when needing cross-chain portfolio data) but lacks explicit exclusions or comparisons to alternatives. With many siblings, more direct guidance would improve, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

proposal_getA
Read-only

Get detailed information about a specific governance proposal.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
proposalIdYesProposal ID
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.5/5.0
Behavior2/5

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

Annotations already mark the tool as readOnlyHint=true, but the description adds no further behavioral traits (e.g., rate limits, auth needs, or what 'detailed information' contains). It does not contradict 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?

Single, concise sentence that immediately conveys the tool's purpose. No wasted words, appropriately front-loaded.

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?

For a simple read operation with good annotations and full schema coverage, the description is sufficient. No output schema exists, but the purpose is clear and the agent can infer return structure.

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 baseline is 3. The description does not add any parameter-specific meaning beyond what the schema already provides via its individual 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?

Description clearly states the action ('Get') and the resource ('detailed information about a specific governance proposal'), distinguishing it from sibling tool 'proposal_list' which lists proposals.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives (e.g., proposal_list). Only states the basic purpose, leaving the agent to infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

proposal_listA
Read-only

List governance proposals on a chain. Returns paginated results (default 10). Use limit/offset to navigate. Filter by status, voter, or depositor.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
proposalStatusNoFilter by proposal status. Omit to list all.
voterNoFilter by voter address
depositorNoFilter by depositor address
limitNoMax results per page (default 10). Use with offset to paginate.
offsetNoResults to skip for pagination
reverseNoReverse result order (e.g., newest first for proposals)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true. Description adds behavioral details: pagination default 10 and filtering capabilities. No mention of rate limits or response format, but sufficient for a list tool.

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?

Two concise sentences, front-loaded with purpose, no filler. Every sentence adds value.

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?

Covers pagination and filters, but omits mention of chain and network parameters which are important for multi-chain context. Could be more complete given 8 parameters and no output schema.

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 baseline is 3. Description summarizes filtering by status, voter, depositor, but adds no new semantic beyond what schema descriptions already provide (e.g., chain, network, reverse not elaborated).

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?

Description clearly states 'List governance proposals on a chain', which is a specific verb and resource. Distinguishes from sibling 'proposal_get' by listing vs single retrieval.

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?

Provides guidance on pagination and filtering options, but does not explicitly state when to use vs alternatives like 'proposal_get'. Usage context is implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

simulate_txA
Read-only

Simulate a transaction to estimate gas and verify execution feasibility. Requires signer to be configured.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
msgsYesArray of message objects to simulate
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.8/5.0
Behavior4/5

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

The description adds useful behavioral context beyond the readOnlyHint annotation by stating that a signer must be configured. This helps the agent understand setup requirements. However, it does not detail the simulation's behavior (e.g., no side effects, possible failure modes).

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 extremely concise with two short sentences, front-loading the purpose and essential prerequisite. Every word is necessary; no waste.

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

Completeness2/5

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

The tool has no output schema, and the description fails to indicate what the simulation returns (e.g., gas estimate, success status). Given the tool's role in verifying transaction feasibility, omitting output information is a significant gap for an agent. Additionally, no limitations or failure conditions are mentioned.

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?

All parameters are described in the input schema (100% coverage), so the description adds little value. The brief mention of 'msgs' and 'chain' in the description is redundant with the schema descriptions. Baseline 3 is appropriate.

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 simulates a transaction to estimate gas and verify execution feasibility. It uses a specific verb ('simulate') and resource ('transaction'), distinguishing it from siblings that send actual transactions (e.g., bank_send, move_execute).

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?

The description mentions a prerequisite ('Requires signer to be configured') but provides no guidance on when to use this tool versus alternatives, such as actual transaction tools or other simulation tools. It does not explicitly state that simulation should precede actual sends.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

staking_annual_provisionsA
Read-only

Get the current annual token provisions (inflation). Useful for estimating staking APR. L1 only.

ParametersJSON Schema
NameRequiredDescriptionDefault
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint: true, so no mutation. The description adds that it provides 'current annual token provisions (inflation)' and is L1-only, which are behavioral traits beyond 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 two sentences, front-loaded with the main purpose, and contains no unnecessary words. Every sentence adds value.

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?

The tool is simple with one optional parameter. The description explains the purpose and constraint (L1 only). However, without an output schema, it could be more explicit about the return value format (e.g., denomination). Still, it is mostly complete for a basic read operation.

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%, and the schema already describes the 'network' parameter. The description does not add further detail about the parameter, so baseline 3 is appropriate.

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 'Get the current annual token provisions (inflation)' which specifies a verb and resource. It also distinguishes itself from sibling staking tools like staking_manage and delegation_get by focusing on inflation data.

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 mentions 'Useful for estimating staking APR' which implies context for use, and 'L1 only' sets a clear constraint. However, it does not explicitly mention when to avoid this tool or compare to alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

staking_manageB

Manage staking: delegate, undelegate, redelegate, or claim rewards.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
actionYesStaking action to perform
validatorAddressYesTarget validator address or moniker name
amountNoAmount to stake/unstake (required for delegate/undelegate/redelegate)
denomNoToken denominationuinit
redelegateToValidatorNoDestination validator address or moniker name (for redelegate)
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.1/5.0
Behavior2/5

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

The description mentions 'Manage staking' implying mutation, but does not disclose behavioral traits such as the need for confirmation (confirm param) or the simulation-only default. Annotations indicate readOnlyHint=false and destructiveHint=false, which are not contradicted but add little context.

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 is a single sentence, very concise and front-loads the purpose. However, it is brief, potentially missing context that could be added in a separate sentence. Structurally, it is adequate.

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

Completeness2/5

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

Given 10 parameters, some with complex behavior (e.g., dryRun, confirm), and no output schema, the description does not explain the workflow or return value. It lacks completeness for an agent to understand the full behavior without additional inference.

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% and the input schema already describes each parameter thoroughly. The description does not add any additional meaning or context to the parameters beyond the schema. Baseline score of 3 is appropriate.

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 verb 'Manage' and the resource 'staking', and lists the specific actions (delegate, undelegate, redelegate, claim rewards). This distinguishes it from read-only staking tools like delegation_get and staking_pool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs. alternatives. Sibling tools like delegation_get and validator_get exist but are not mentioned. The description does not specify prerequisites or when to choose this tool over other staking-related tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

staking_poolA
Read-only

Get the network staking pool summary: total bonded tokens, unbonded tokens, and voting power weights. L1 only.

ParametersJSON Schema
NameRequiredDescriptionDefault
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4/5.0
Behavior4/5

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

Annotations already mark readOnlyHint=true, so the description's behavioral burden is lower. It adds value by specifying the exact data returned (bonded/unbonded tokens, voting power weights) and the L1-only constraint, which goes beyond what annotations provide.

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 a single, front-loaded sentence that conveys all essential information with no unnecessary words. Every phrase earns its place.

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 simple read-only tool with good annotations and a basic parameter, the description sufficiently covers what the tool does and its scope (L1 only). It lacks details like output format or example, but the tool is straightforward and does not require extensive context.

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?

The schema has 100% coverage for its single parameter (network) with a description. The tool description adds no additional parameter meaning, so the baseline score of 3 is appropriate.

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 uses a specific verb ('Get') and identifies the resource ('network staking pool summary'), listing key data fields (bonded/unbonded tokens, voting power weights) and noting it's L1 only. This clearly distinguishes it from siblings like staking_manage or delegation_get.

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?

The description states 'L1 only,' which hints at a scope restriction, but does not explicitly compare to alternative tools (e.g., staking_manage, delegation_get) or provide when-not-to-use guidance. The context is clear but lacks exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

token_balanceA
Read-only

Get token balance for any token type: native denoms, ERC20, CW20, or Move FA. Automatically resolves contract tokens via the chain VM.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
addressYesAddress in bech32, hex, or .init format. Use "me" for the signer's own address.
denomYesToken denomination, contract address, or Move asset type
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.5/5.0
Behavior3/5

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

The description is consistent with the readOnlyHint annotation, as it states 'Get token balance'. It adds value by mentioning automatic resolution of contract tokens, but does not disclose potential errors, rate limits, or behavior for unsupported token types. With annotations already signaling read-only, the description provides moderate additional context.

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 two sentences long, front-loading the core purpose and adding a key feature in the second sentence. Every word is meaningful and there is no redundancy.

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?

While the description covers the input and tokens, it lacks details about the output format (e.g., balance as a string or number) and error handling. Given the absence of an output schema, the description could be more complete.

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?

The input schema has 100% description coverage for its 4 parameters. The description does not add any parameter-specific details beyond what the schema already provides, so it meets the baseline of 3.

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 verb 'Get' and the resource 'token balance', and specifies support for multiple token types (native denoms, ERC20, CW20, Move FA). It distinguishes itself from sibling tools like 'token_info' or 'token_list' by focusing on balance retrieval and automatic contract resolution.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives among the many sibling tools. It does not mention any prerequisites, exclusions, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

token_infoA
Read-only

Get token metadata (name, symbol, decimals) by resolving the token contract for the chain VM. Works with contract tokens (ERC20, CW20, Move FA) and native denoms.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
denomYesToken denomination, contract address, or Move asset type
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, and the description confirms the read-only nature by stating it 'gets' metadata. No additional behavioral details (e.g., error handling, caching, or side effects) are provided beyond what annotations cover.

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?

Two clear sentences with the purpose front-loaded. No redundant or placeholder content; every word adds information.

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 simple read tool, the description is mostly complete: it details what is retrieved and the input parameters. Minor gap: it does not describe error behaviors or the exact structure of the returned metadata, though the schema covers inputs well.

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?

Input schema has 100% coverage with descriptions for all three parameters. The description adds value by revealing the returned fields (name, symbol, decimals), which is absent from the schema and compensates for missing output schema.

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 retrieves token metadata (name, symbol, decimals) by resolving the token contract. It explicitly mentions support for both contract tokens (ERC20, CW20, Move FA) and native denoms, distinguishing it from sibling tools like denom_metadata or token_balance.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide guidance on when to use this tool versus alternatives such as denom_metadata for more detailed metadata or token_list for enumeration. It implies basic usage but lacks explicit context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

token_listA
Read-only

List all registered tokens on a specific chain. Returns known assets from the registry with denom, symbol, decimals, and metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already mark the tool as read-only. The description adds that it returns assets from a registry with specific fields (denom, symbol, decimals, metadata), which is useful but does not disclose potential pagination, rate limits, or data freshness.

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?

Two sentences with no wasted words. The first sentence states the action and scope, the second describes the output fields. Information is front-loaded and easy to parse.

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?

The description is adequate for a simple list tool but lacks information about pagination, result limits, or when to use token_search for filtering. It does not clarify the distinction between 'all registered tokens' and other token queries.

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%, but the description adds value by specifying that the tool returns denom, symbol, decimals, and metadata, which is not evident from the schema alone. This helps the agent understand the output format.

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 lists all registered tokens on a specific chain, and it distinguishes from siblings like token_info, token_balance, and token_search by being a broad listing rather than a specific query.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like token_search or token_info. The description does not mention prerequisites, exclusions, or contextual triggers.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tx_by_addressA
Read-only

Get recent transactions signed by an address. Returns paginated results in reverse chronological order (default 10). Use limit/offset to navigate.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
addressYesAddress in bech32, hex, or .init format. Use "me" for the signer's own address.
limitNoMax results per page (default 10). Use with offset to paginate.
offsetNoResults to skip for pagination
reverseNoReverse result order (e.g., newest first for proposals)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4/5.0
Behavior4/5

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

The description aligns with the readOnlyHint annotation, describing a read-only operation. It adds behavioral details like default limit of 10, reverse chronological order, and pagination, which go beyond 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 extremely concise—two sentences, no fluff. Front-loaded with the main purpose, then quick details. Every word earns its place.

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 listing tool with 6 parameters and no output schema, the description is adequate but not exhaustive. It covers the main use case (recent transactions by address, paginated) but omits details like returned fields or error handling.

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 baseline is 3. The description adds little beyond what the schema already provides (e.g., 'Navigate with limit/offset' is implicit in schema descriptions). No new semantics.

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 verb 'Get', the resource 'recent transactions signed by an address', and adds specifics like pagination and reverse chronological order. It distinguishes from siblings like tx_get and tx_search.

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?

The description mentions using limit/offset for navigation but does not explicitly state when to use this tool versus alternatives (e.g., tx_search, tx_get). No when-not-to-use guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tx_getA
Read-only

Get transaction info by hash. Default: human-readable decoded output with VM-aware decoding (Move/EVM/Wasm function names, decoded args). Use raw=true only when you need raw proto data.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
txHashYesTransaction hash
rawNoReturn raw proto data instead of decoded output
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.4/5.0
Behavior4/5

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

The description adds behavioral context beyond the readOnlyHint annotation by explaining the default human-readable decoded output and the raw option, though it does not detail potential performance characteristics or limitations.

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 concise, consisting of two efficient sentences that front-load the core purpose and follow with specific usage guidance, with no unnecessary words.

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?

The description adequately covers the tool's core functionality and parameter defaults, though it does not describe the return format beyond 'human-readable decoded output'; given the absence of an output schema, this is a minor gap.

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 has 100% parameter description coverage, but the description adds value by explaining the default behavior for chain (with examples) and clarifying when to use the raw parameter.

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 gets transaction info by hash, specifying that it returns human-readable decoded output with VM-aware decoding, distinguishing it from other transaction-related tools like tx_by_address and tx_search.

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 provides clear guidance on when to use the optional raw parameter ('Use raw=true only when you need raw proto data'), but does not explicitly contrast this tool with sibling tools for retrieving transactions, such as tx_by_address or tx_search.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

username_checkA
Read-only

Check if a .init username is available for registration.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes.init username to check (e.g., "alice")
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations provide readOnlyHint=true, confirming safe read operation. The description adds that it checks availability for registration, which aligns with read-only behavior but doesn't disclose return format or any other traits beyond what annotations already cover.

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?

Single sentence that is front-loaded with the action and resource. No extraneous information, every word earns its place.

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 simple read-only check with well-documented parameters, the description is mostly complete. It lacks a hint about the return format (e.g., boolean), but given the simplicity and the presence of annotations, this is a minor gap.

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?

Input schema has 100% coverage with clear descriptions for both parameters (name with example, network with default). The tool description adds no additional semantic meaning beyond the schema, so baseline 3 applies.

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?

Description clearly states the action ('Check'), the resource ('.init username'), and the context ('available for registration'). This distinguishes it from sibling tools like username_resolve or username_record, which serve different purposes.

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?

The description implies usage before registration but provides no explicit guidance on when to use this tool versus alternatives like username_resolve or username_record. No when-not-to-use or contextual hints are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

username_metadataA
Read-only

Get NFT metadata for a .init username (avatar, description, attributes).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes.init username (e.g., "alice" or "alice.init")
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already mark the tool as readOnlyHint=true. The description adds specific metadata fields returned, providing useful context beyond the annotation. No contradictions.

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?

Single sentence that is front-loaded and directly states the tool's purpose. No wasted words.

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 simplicity of the tool, complete parameter descriptions in the schema, and no output schema needed, the description adequately covers what the tool does and returns.

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?

The input schema already describes both parameters (name and network) with 100% coverage. The description does not add additional meaning beyond what the schema provides.

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 retrieves NFT metadata for a .init username, listing specific fields (avatar, description, attributes). This distinguishes it from sibling tools like username_resolve or username_check.

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?

The description does not provide when-to-use guidance or contrast with alternatives. However, the name and description imply it's for metadata, and sibling tools have distinct purposes, so context is clear but no explicit exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

username_recordA
Read-only

Get the full record for a .init username, including address and expiration.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes.init username (e.g., "alice" or "alice.init")
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=true, which is consistent with 'Get'. The description adds that it returns address and expiration, but does not disclose any additional behavioral traits such as authentication requirements, rate limits, or whether the record may be cached. With annotations covering the safety profile, a 3 is appropriate.

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?

Single sentence that is front-loaded with verb and object, no unnecessary words. Highly efficient.

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 simple read tool with 2 parameters and no output schema, the description gives a reasonable idea of return content ('address and expiration'). However, it does not specify if there are additional fields beyond those mentioned, which would be helpful for completeness. Still adequate for most use cases.

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 description coverage is 100%, so the schema already documents both parameters thoroughly. The description implies the name parameter by mentioning '.init username' but adds no new details beyond what the schema provides. Baseline 3 for high schema coverage.

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?

Description clearly states the action ('Get'), the resource ('full record for a .init username'), and includes what the record contains ('address and expiration'). This distinguishes it from siblings like username_resolve which likely only returns an address.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives like username_resolve or username_metadata. The description does not mention exclusions or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

username_resolveA
Read-only

Resolve .init names to addresses or addresses to .init names. For hex<->bech32 conversion, use address_convert instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
inputYesAddress or .init name to resolve
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.2/5.0
Behavior3/5

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

Annotations provide readOnlyHint=true, consistent with the description. No additional behavioral traits beyond the bidirectional resolution are disclosed.

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?

Two sentences front-loaded with purpose and usage guidelines, no unnecessary words.

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?

The tool's behavior is simple and well-explained. No output schema exists, but the description is sufficient for this straightforward lookup operation.

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 description coverage is 100%, with both parameters well described. The tool description adds no extra parameter meaning beyond the schema.

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 resolves .init names to addresses or addresses to .init names, using a specific verb and resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly tells when to use this tool (bidirectional name resolution) and when not to (use address_convert for hex<->bech32 conversion).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validator_getA
Read-only

Get detailed information about a specific validator.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
validatorAddrYesValidator address or moniker name
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description adds minimal behavioral context beyond stating 'detailed information' without specifics.

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?

Single sentence, no wasted words, and clearly front-loaded with the verb and object.

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?

Adequate for a simple read-only tool, but lacks specifics on what 'detailed information' includes, and no output schema is provided to fill that gap.

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%, and the description does not add any additional meaning to the parameters beyond what is already in the schema.

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 action ('get') and resource ('detailed information about a specific validator'), distinguishing it from sibling 'validator_list' which likely returns a list.

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?

No explicit guidance on when to use this tool versus alternatives like 'validator_list'; usage is implied by the action but not clarified.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validator_listA
Read-only

List validators on a chain with their status, voting power, and commission. Returns paginated results (default 10). Use limit/offset to navigate. Filter by status to narrow results.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
statusNoFilter by validator status. Omit to list all.
limitNoMax results per page (default 10). Use with offset to paginate.
offsetNoResults to skip for pagination
reverseNoReverse result order (e.g., newest first for proposals)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations provide readOnlyHint=true, and description reinforces read-only nature. Adds context on pagination behavior and default page size, but does not disclose rate limits or authentication requirements beyond what is implied.

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?

Two sentences, front-loaded with purpose, immediately followed by practical usage details. No unnecessary words or repetition.

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?

Covers main purpose and pagination. Lacks explicit mention of chain and network parameters, though schema provides defaults. For a simple read-only list tool, this is sufficient but not exhaustive.

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 description coverage is 100%, so baseline is 3. The description adds meaning for limit, offset, and status, but omits chain, reverse, and network which are present in schema. Overall, adds moderate value beyond schema.

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?

Clearly states the verb 'List' and the resource 'validators', specifying key attributes (status, voting power, commission). Distinguishes from sibling tools like validator_get by implying a list vs single item.

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?

Provides explicit guidance on pagination (limit/offset) and filtering by status. However, does not explicitly contrast with alternative tools like validator_get for single validators.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_claimable_rewardsA
Read-only

Get claimable VIP rewards for an address from the VIP indexer API.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesAddress in bech32, hex, or .init format. Use "me" for the signer's own address.
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.7/5.0
Behavior3/5

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

The readOnlyHint annotation already indicates this is a read-only operation. The description adds the source (VIP indexer API) but does not disclose additional behavioral traits such as rate limits or data freshness constraints.

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 a single, front-loaded sentence with no unnecessary words. It efficiently conveys the tool's purpose.

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?

The tool has low complexity (2 params, no output schema), so a short description is reasonable. However, missing information about the return format (e.g., list of rewards or amounts) limits completeness for an agent.

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 description coverage is 100%, with detailed descriptions for both parameters (address format, default network). The tool description does not add further semantic value beyond what the schema provides.

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 'Get claimable VIP rewards for an address from the VIP indexer API,' which specifies the verb (Get), resource (claimable VIP rewards), and source (VIP indexer API). This distinguishes it from sibling tools like vip_claim_rewards or vip_claim_staking_rewards.

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?

The description implies it is for querying claimable rewards, but it does not explicitly state when to use this tool versus alternatives (e.g., vip_claim_rewards for actual claiming). The readOnlyHint annotation provides some context, but explicit guidance is missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_claim_rewardsA

Claim all pending VIP rewards. Fetches proofs from the VIP indexer and submits claim transactions.

ParametersJSON Schema
NameRequiredDescriptionDefault
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already indicate non-read-only and non-destructive. The description adds that it fetches proofs and submits claim transactions, which provides some behavioral context but omits details about irreversibility, fees, failure modes, or whether it claims all rewards at once. Adequate but not rich.

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?

Two sentences with no wasted words. Front-loaded with the verb 'Claim'. Efficient and to the point.

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?

The description covers the basic action but lacks nuance: no mention of return values (no output schema), no handling of empty rewards, no potential errors. Sibling context hints at a broader VIP ecosystem, but the description provides enough for a straightforward claim.

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% with descriptions for all 4 parameters (dryRun, confirm, memo, network). The description does not add meaning beyond the schema. Baseline 3 is appropriate.

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 it claims all pending VIP rewards and outlines the process: fetching proofs from the VIP indexer and submitting claim transactions. This distinguishes it from sibling tools like vip_claimable_rewards (lists rewards) and vip_claim_staking_rewards (likely claims staking rewards only).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs. alternatives such as vip_claim_staking_rewards. Prerequisites (e.g., checking vip_claimable_rewards first) are not mentioned. The description only says what it does, not when to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_claim_staking_rewardsC

Claim staking rewards from VIP lock-staking delegations.

ParametersJSON Schema
NameRequiredDescriptionDefault
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

C2.9/5.0
Behavior2/5

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

Annotations indicate readOnlyHint=false and destructiveHint=false, but the description adds no behavioral details beyond stating the action. It does not disclose that this tool broadcast a transaction, requires wallet state, or any potential side effects.

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?

Single sentence, no filler, front-loaded with the key verb and resource. Every word earns its place.

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

Completeness2/5

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

For a tool that mutates blockchain state (write operation) with simulation vs broadcast parameters (dryRun, confirm), the description omits workflow context. No output schema, so agents lack expectations for returns. Minimal completeness for a non-trivial action.

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 description coverage is 100%, so all parameters are documented in the schema. The description does not add any additional meaning to parameters; it merely restates the action. Baseline 3 is appropriate.

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 description clearly states the action ('Claim') and the resource ('staking rewards') with a specific qualifier ('from VIP lock-staking delegations'), distinguishing it from siblings like 'vip_claim_rewards' which may refer to a different type. However, the verb is directly inferred from the name, slightly reducing novelty.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus siblings such as 'vip_claimable_rewards' or 'vip_claim_rewards'. There is no mention of prerequisites, context, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_delegateA

Lock-delegate tokens to a validator via VIP. Tokens are locked until the specified release time.

ParametersJSON Schema
NameRequiredDescriptionDefault
metadataYesCoin metadata identifier (e.g., "0x1::native_uinit::Coin")
amountYesAmount to delegate
releaseTimeYesUnix timestamp when tokens can be unlocked
validatorYesValidator address or moniker name
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations indicate mutation (readOnlyHint=false) and non-destructive (destructiveHint=false). The description adds the locking behavior and release time constraint, but does not disclose other behavioral traits such as whether the delegation creates a position, requires prior VIP setup, or might fail due to insufficient balance. Adequate but not rich.

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?

Single sentence conveys purpose and key constraint efficiently. No unnecessary words. Could be slightly improved with structured bullets but remains concise.

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

Completeness2/5

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

Given 8 parameters (including dryRun, confirm, memo) and no output schema, the description does not explain simulation/broadcast workflow, return behavior, or potential errors. Agent lacks information on how to safely invoke the tool, especially for a mutation without output schema.

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 description coverage is 100%, so the schema already documents each parameter's purpose. The description adds no further semantics beyond the schema. Baseline score of 3 is appropriate given high coverage.

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?

Description clearly states the action (lock-delegate), the target (validator), the context (via VIP), and the constraint (locked until release time). Distinguished from sibling tools like 'vip_undelegate' or 'vip_provide_and_delegate'.

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?

Description implies when to use (lock-delegation scenario) but does not explicitly state when not to use or compare with alternatives like 'vip_provide_and_delegate' (which also delegates) or 'vip_undelegate' (reverse operation). Missing explicit context for agent decision-making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_extend_lockB

Extend the lock duration of a VIP lock-staking position.

ParametersJSON Schema
NameRequiredDescriptionDefault
metadataYesCoin metadata identifier
amountNoAmount (omit for full position)
releaseTimeYesCurrent lock release time
validatorYesValidator address or moniker name
newReleaseTimeYesNew lock release time (must be later than current)
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.2/5.0
Behavior2/5

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

Annotations indicate mutation (readOnlyHint=false) but description adds no behavioral context. Does not disclose what happens on extension, such as effect on rewards or unstaking.

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?

Single sentence, no fluff. Efficiently communicates the core action.

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

Completeness2/5

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

With no output schema and 9 parameters, description is too brief. Lacks explanation of return values, side effects, or best practices for setting newReleaseTime.

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 description coverage is 100%, so baseline 3. Description adds no extra meaning beyond the schema fields; e.g., does not explain 'lock duration' or relationship between releaseTime and newReleaseTime.

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?

Description clearly identifies the action (extend), resource (lock duration of VIP lock-staking position). It is specific and distinguishes from sibling tools like vip_undelegate or vip_claim_rewards.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives. Does not mention prerequisites, scenarios, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_gauge_voteB

Vote on VIP gauge weight distribution by specifying weights for each bridge.

ParametersJSON Schema
NameRequiredDescriptionDefault
cycleYesVoting cycle number
votesYesArray of bridge votes with weights
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.2/5.0
Behavior2/5

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

Annotations show non-read-only and non-destructive, but description adds no additional behavioral context such as side effects, prerequisites, or what happens after voting.

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?

Single sentence, no wasted words. Front-loaded with action and resource.

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

Completeness2/5

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

Lacks context about voting process, network effects, or expected outcomes. With 6 params and no output schema, more explanation needed for completeness.

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 description adds minimal value. Only mentions 'weights for bridges', which corresponds to 'votes' parameter but no detail on other params like cycle, confirm, dryRun.

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?

Description clearly states it votes on VIP gauge weight distribution specifying weights for bridges. Verb+resource distinct from siblings like vip_gauge_vote_by_amount.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use vs. alternatives (e.g., vip_gauge_vote_by_amount). No prerequisites or context for usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_gauge_vote_by_amountB

Vote on VIP gauge weight distribution by specifying exact amounts for each bridge.

ParametersJSON Schema
NameRequiredDescriptionDefault
cycleYesVoting cycle number
votesYesArray of bridge votes with amounts
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.2/5.0
Behavior2/5

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

Annotations indicate readOnlyHint=false (not read-only) and destructiveHint=false (not destructive). The description adds 'Vote' which implies a state change, but does not disclose additional behaviors such as the need for 'confirm' to broadcast, transaction costs, or effects on gauge weights. Without annotations providing deeper context, the description falls short.

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 a single, front-loaded sentence with no extraneous words. It efficiently conveys the core purpose without redundancy.

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

Completeness2/5

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

Despite the tool having 6 parameters, including boolean flags for dry-run and confirmation, the description omits important context like the need for broadcasting, format of return values, and the difference from similar vote tools. The agent lacks enough information to use the tool correctly in all scenarios.

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% with clear parameter descriptions. The description's mention of 'exact amounts for each bridge' aligns with the 'votes' array, but adds no new meaning beyond the schema. Baseline 3 is appropriate.

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 action 'Vote on VIP gauge weight distribution' and the method 'by specifying exact amounts for each bridge.' It provides specific verb and resource, and distinguishes from sibling tool 'vip_gauge_vote' which likely uses different input format.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives like 'vip_gauge_vote.' It does not specify prerequisites, network, or confirmation requirements, leaving the agent to infer from the schema. No explicit when-not-to-use or alternative naming.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_positionsA
Read-only

Get all VIP lock-staking positions for an address. Shows locked delegations with metadata, validator, amount, and release time.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesAddress in bech32, hex, or .init format. Use "me" for the signer's own address.
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.1/5.0
Behavior4/5

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

The description adds behavioral context beyond the readOnlyHint annotation by detailing the returned fields (metadata, validator, amount, release time). It does not contradict annotations and provides useful insight into the tool's output, though it omits potential limitations like pagination.

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 exceptionally concise, using two sentences to convey the purpose and output details. Every word contributes to understanding, with no redundancy or fluff.

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?

For a simple read-only query with two parameters and no output schema, the description is fully complete. It explains the action, resource, and returned data, meeting all contextual needs without requiring additional information.

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?

The input schema covers both parameters with descriptions, resulting in 100% coverage. The description adds no additional meaning beyond the schema, so a baseline score of 3 is appropriate.

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 retrieves all VIP lock-staking positions for an address, specifying the verb 'Get', the resource 'VIP lock-staking positions', and the data shown (metadata, validator, amount, release time). This distinguishes it from similar sibling tools like 'vip_vesting_positions' and 'vip_delegate'.

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?

The description does not explicitly state when to use this tool versus alternatives like 'vip_vesting_positions' or 'delegation_get'. While the resource is clearly defined, there is no guidance on exclusions or contextual conditions, leaving usage somewhat implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_provide_and_delegateB

Provide liquidity to a pair pool and lock-delegate the LP tokens to a validator in a single transaction.

ParametersJSON Schema
NameRequiredDescriptionDefault
lpMetadataYesLP pool metadata identifier (e.g., "0x1::pair::INIT_USDC")
coinAAmountYesAmount of coin A to provide
coinBAmountYesAmount of coin B to provide
minLiquidityNoMinimum LP tokens to receive (slippage protection, default 0)
releaseTimeYesUnix timestamp when tokens can be unlocked
validatorYesValidator address or moniker name
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.4/5.0
Behavior2/5

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

Annotations are neutral (readOnlyHint=false, destructiveHint=false), so the description must bear the burden of behavioral disclosure. It only reveals that the operation is atomic ('single transaction'), but fails to describe side effects, error conditions, or required approvals. Minimal transparency.

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 a single sentence that conveys the key purpose without any fluff. It is front-loaded and every word earns its place.

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

Completeness2/5

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

Despite having 10 parameters and no output schema, the description provides no context about expected results, prerequisites, or operational flow. It is too brief for a complex multi-step transaction, leaving significant gaps.

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 description coverage is 100%, with each parameter having a description. The tool description does not add any further semantic value beyond the schema, so the baseline of 3 applies.

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 action: providing liquidity to a pair pool and lock-delegating LP tokens in one transaction. It uses a specific verb-resource combination and distinguishes from siblings like vip_delegate and vip_stableswap_provide_and_delegate.

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?

The description implies the use case of combining two actions atomically, but does not explicitly state when to prefer this over separate tools or mention any prerequisites or alternatives. Usage guidelines are implied, not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_redelegateB

Move a VIP lock-staking position from one validator to another, optionally changing the lock duration.

ParametersJSON Schema
NameRequiredDescriptionDefault
metadataYesCoin metadata identifier
amountNoAmount to redelegate (omit for full position)
srcReleaseTimeYesSource lock release time
srcValidatorYesSource validator address or moniker name
dstReleaseTimeYesDestination lock release time
dstValidatorYesDestination validator address or moniker name
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.3/5.0
Behavior2/5

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

Annotations already indicate non-readOnly and non-destructive nature. The description adds no further behavioral details such as side effects, required permissions, or rate limits. It merely restates the action.

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 a single, well-structured sentence with no superfluous information. It is front-loaded with the primary action.

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?

With 10 parameters and no output schema, the description is somewhat minimal. It does not explain return values or the effect of dryRun/confirm flags, though these are common patterns. Could provide more detail on expected behavior.

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 description coverage is 100%, so parameters are already well documented. The description adds only a brief mention of optionally changing lock duration, which aligns with dstReleaseTime but does not significantly enhance understanding.

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 action (move), the resource (VIP lock-staking position), and the target (from one validator to another). It differentiates from siblings like vip_delegate and vip_undelegate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like vip_delegate or when not to use it. The description lacks context about prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_stableswap_provide_and_delegateA

Provide liquidity to a stableswap pool (3+ tokens) and lock-delegate the LP tokens to a validator in a single transaction.

ParametersJSON Schema
NameRequiredDescriptionDefault
lpMetadataYesStableswap pool metadata identifier (e.g., "0x1::stableswap::USDC_USDT_DAI")
amountsYesAmounts for each token in the pool, in order
minLiquidityNoMinimum LP tokens to receive (slippage protection, default 0)
releaseTimeYesUnix timestamp when tokens can be unlocked
validatorYesValidator address or moniker name
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already indicate a non-read, non-destructive write operation. The description adds the key behavioral trait of combining liquidity provision and delegation in one transaction, but does not elaborate on lock mechanics, auth needs, or consequences.

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?

Single sentence of 17 words, front-loaded with the action, no redundancy. Every word earns its place.

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?

The description covers the main purpose but omits important context like locking semantics, how releaseTime interacts with delegation, and the significance of '3+ tokens'. Schema fills most gaps, but a more complete description would aid comprehension of this complex tool.

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 descriptions cover 100% of parameters, so baseline 3 is appropriate. The description adds no parameter-specific details beyond the overall action summary.

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 uses a specific verb ('Provide liquidity... lock-delegate') and resource ('stableswap pool (3+ tokens)'), clearly distinguishing this tool from siblings like vip_delegate or general vip_provide_and_delegate by highlighting the pool type and combined action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives (e.g., vip_provide_and_delegate for other pools, or executing separate steps). The description implies applicability to stableswap pools but does not set boundaries or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_stage_infoA
Read-only

Get the current VIP stage number, start time, and end time.

ParametersJSON Schema
NameRequiredDescriptionDefault
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=true. Description aligns with read-only behavior but adds no extra behavioral details (e.g., what happens if network is omitted). No contradiction.

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?

Single sentence, directly to the point. No extraneous information.

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?

Given no output schema, the description helpfully lists the returned fields (stage number, start time, end time). Enough for a simple read tool, though type/format details are missing.

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 covers all parameters (network) with enum and description. Description does not add any parameter-specific meaning, so baseline 3 applies.

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 action (Get), the resource (VIP stage info), and the specific data returned (stage number, start time, end time). This distinguishes it from other vip_* tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., other VIP tools like vip_positions, vip_vote_info). No context on prerequisites or scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_undelegateB

Undelegate (unlock) tokens from a VIP lock-staking position.

ParametersJSON Schema
NameRequiredDescriptionDefault
metadataYesCoin metadata identifier (e.g., "0x1::native_uinit::Coin")
amountNoAmount to undelegate (omit for full position)
releaseTimeYesOriginal lock release time
validatorYesValidator address or moniker name
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already indicate a write operation (readOnlyHint=false). The description adds only 'undelegate (unlock)' which implies state change but does not disclose details about authorization, reversibility, waiting periods, or side effects. With no additional behavioral context, the description fails to enrich beyond annotations.

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 is a single sentence, very concise and front-loaded. It is efficient but some might argue it is too sparse. Still, for conciseness it is well-structured without unnecessary words.

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

Completeness2/5

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

Given the tool has 8 parameters and no output schema, the description lacks important context about the VIP lock-staking process, the role of releaseTime, the significance of undelegation, and what happens to the tokens after unlocking. The description is inadequate for a parameter-rich tool.

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 description coverage is 100%, so the baseline is 3. The tool description does not add any parameter-level insights beyond what is already in the schema. It neither clarifies nor enhances understanding of parameters like amount, releaseTime, or validator.

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 'Undelegate (unlock) tokens from a VIP lock-staking position' clearly identifies the verb (undelegate/unlock), the resource (tokens), and the context (VIP lock-staking position). It effectively distinguishes from sibling tools like vip_delegate and vip_redelegate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, conditions (e.g., lock period expiry), or trade-offs. The description is too terse to aid in decision-making among related VIP operations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_vesting_positionsA
Read-only

Get VIP vesting positions for an address from the indexer API. Shows bridge rewards with vesting schedules, including initial/claimable/claimed/locked reward breakdowns.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesAddress in bech32, hex, or .init format. Use "me" for the signer's own address.
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint: true, so the description adds modest value by specifying 'from the indexer API' and detailing the reward breakdown. However, it does not disclose additional behavioral traits such as pagination, rate limits, or response format expectations beyond what annotations imply.

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 concise at two sentences and 25 words. It is front-loaded with the action and resource, efficiently conveying essential information without unnecessary detail.

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?

Given no output schema, the description partially compensates by mentioning the breakdown of rewards (initial, claimable, claimed, locked). However, it omits details about pagination, ordering, or handling of edge cases like empty positions. Overall, it provides sufficient context for a simple read tool.

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?

Both parameters have schema descriptions covering 100% of properties. The description repeats that 'address' can use 'me' for the signer's own address, which is already in the schema. It does not add new semantic information beyond the schema, so a baseline score of 3 is appropriate.

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 verb 'Get', the resource 'VIP vesting positions', and the source 'indexer API'. It details that it shows bridge rewards with vesting schedules and a breakdown of initial, claimable, claimed, and locked rewards. This distinguishes it from siblings like 'vip_positions' and 'vip_claimable_rewards'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'vip_positions' or 'vip_claimable_rewards'. It does not specify prerequisites, exclusions, or context for appropriate usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_vote_infoA
Read-only

Get VIP gauge vote info for an address: max voting power, used voting power, and per-bridge weight allocations.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesAddress in bech32, hex, or .init format. Use "me" for the signer's own address.
cycleNoVoting cycle number (omit for current cycle)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description's 'Get' confirms a read operation. It adds limited behavior context beyond annotation by listing the specific return fields (max/used power, allocations).

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?

Single sentence with no filler, efficiently conveying purpose and output scope. Highly concise and front-loaded.

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?

For a read-only query tool with no output schema, the description fully explains what it returns (max/used power, allocations). Covers all necessary context for an agent to understand the tool's output.

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% with all parameters described. The description repeats the address format hint but does not add new meaning beyond the schema. Baseline score of 3 is appropriate.

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 it retrieves VIP gauge vote info (max/used voting power, per-bridge allocations) for an address, distinguishing it from sibling tools like vip_gauge_vote (which submits votes) or vip_voting_power (which likely returns raw power).

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 specifies it's for an address and lists optional parameters, but does not explicitly state when to use this tool versus siblings like vip_voting_power. However, the purpose is clear enough for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vip_voting_powerB
Read-only

Get VIP gauge voting power for an address.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesAddress in bech32, hex, or .init format. Use "me" for the signer's own address.
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true. The description does not add extra behavioral traits beyond stating its read nature, which is already clear from 'Get'.

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 is a single concise sentence that is front-loaded and clear, with no unnecessary words.

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 simple read-only query tool with no output schema and good annotations, the description minimally covers the purpose but lacks details about return values or response interpretation.

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 description coverage is 100% with detailed parameter descriptions. The tool description does not add further meaning beyond what the schema provides.

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 uses a specific verb ('Get') and resource ('VIP gauge voting power') for an address, clearly distinguishing it from sibling tools like vip_claimable_rewards or vip_gauge_vote.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives (e.g., vip_positions, vip_vote_info). No when-not-to-use or context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wasm_clear_adminA
Destructive

Remove the admin of a CosmWasm contract, making it immutable (no more migrations). Available on Miniwasm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
contractAddressYesContract address
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already indicate destructiveHint=true. Description adds important behavioral context: the action is irreversible (immutable, no more migrations) and restricted to Miniwasm chains. This goes beyond what annotations provide.

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?

Two sentences, front-loaded with action and key consequence. No wasted words.

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?

The description covers core function and chain constraint, but does not explain the process (e.g., that broadcasting with confirm=true is required) or the return value. For a destructive tool with no output schema, a bit more surrounding context would be helpful.

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?

Input schema has 100% description coverage for all 6 parameters, so the schema already provides sufficient meaning. The description adds no additional parameter-level details, so it meets the baseline without extra value.

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?

Description clearly states action: 'Remove the admin of a CosmWasm contract, making it immutable'. Distinguishes from siblings like wasm_update_admin by noting the irreversible consequence (no more migrations).

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?

Description mentions it is available on Miniwasm chains and that it makes the contract immutable, but does not explicitly state when to use vs alternatives or when not to use. While the irreversible nature is implied, direct guidance on prerequisites or exclusions is absent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wasm_code_infoA
Read-only

Get CosmWasm code info by code ID: creator, checksum, instantiate permission. Available on Miniwasm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
codeIdYesCode ID
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true. Description adds context on returned fields (creator, checksum, instantiate permission) but does not disclose additional behavioral traits beyond what annotations provide.

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?

Single sentence with no wasted words. Front-loaded with verb and resource, effectively conveying purpose and key return fields.

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?

Description adequately covers the tool's purpose, return fields, and availability. No output schema exists, but description provides sufficient context for a simple query tool.

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% with detailed descriptions for all parameters. Description does not add additional meaning beyond the schema; it merely references 'code ID' which is already explicit in the schema.

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?

Description clearly states 'Get CosmWasm code info by code ID' and lists specific fields returned. Distinguishes from sibling tools like wasm_contract_info or wasm_query.

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?

Description indicates availability on Miniwasm chains but does not explicitly state when to use vs alternatives or provide exclusion criteria. Usage is implied by the tool name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wasm_contract_historyA
Read-only

Get migration history (init/migrate entries) for a CosmWasm contract. Available on Miniwasm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
contractAddressYesContract address (bech32)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.6/5.0
Behavior4/5

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

The description adds the important constraint 'Available on Miniwasm chains' beyond the readOnlyHint annotation. This informs the agent that the tool may not work on non-Miniwasm chains, which is critical for proper selection.

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 a single, clear sentence that front-loads the key purpose ('Get migration history'). It includes a concise scoping note about chain availability without any wasted words.

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

Completeness2/5

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

The description does not specify the output format or structure of the migration history. Since there is no output schema, the agent lacks information on what fields (e.g., block, tx hash, code ID) will be returned, making the description incomplete for this read-only tool.

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?

The input schema covers all three parameters with descriptions (100% coverage). The description adds no additional semantic or contextual details beyond what the schema provides, so a baseline score of 3 is appropriate.

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 retrieves migration history (init/migrate entries) for a CosmWasm contract. It distinguishes itself from sibling tools like wasm_contract_info and wasm_query by specifying 'migration history', making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide any guidance on when to use this tool versus alternatives. While it states 'Available on Miniwasm chains,' it fails to contrast with siblings like wasm_contract_info or wasm_query, which could also be relevant for contract data.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wasm_contract_infoA
Read-only

Get CosmWasm contract metadata: code_id, admin, label, creator. Available on Miniwasm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
contractAddressYesContract address (bech32)
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4/5.0
Behavior4/5

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

Annotations already provide readOnlyHint=true, and description reinforces read-only nature with 'Get'. Adds value by specifying exact metadata fields returned and chain limitation (Miniwasm chains), beyond what annotations provide.

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?

Two sentences, front-loaded with key information, no unnecessary words. Every sentence earns its place.

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?

Given simple query tool with readOnlyHint and 3 well-documented parameters, description covers purpose, scope (Miniwasm chains), and returned fields. Lacks output format details but sufficient for selection.

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 description coverage is 100% (all parameters have descriptions). Description does not add new parameter meaning beyond what schema already provides. Baseline 3 is appropriate.

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?

Clearly states verb 'Get', resource 'CosmWasm contract metadata', and lists specific fields (code_id, admin, label, creator). Distinguishes from siblings like wasm_code_info and wasm_contract_history by focusing on metadata and Miniwasm chains.

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?

Implied usage for retrieving contract metadata on Miniwasm chains, but no explicit guidance on when to prefer this over siblings like wasm_query or wasm_raw_state. Lacks when-not-to-use or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wasm_contracts_by_codeA
Read-only

List all contract addresses instantiated from a given code ID. Available on Miniwasm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
codeIdYesCode ID
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description adds marginal value by noting availability on Miniwasm chains, but lacks details on pagination or response format.

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?

Two sentences, front-loaded with the purpose, no redundant information. Every sentence earns its place.

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 simple list tool with good annotations and no output schema, the description is mostly complete. Missing explicit output format, but not critical given the simplicity.

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 the description does not add extra parameter information beyond what the schema already provides.

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?

Clearly states the tool lists all contract addresses instantiated from a given code ID, distinguishing it from siblings like wasm_contract_info or wasm_contract_history.

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?

Implies usage via the verb and resource, but does not explicitly mention when not to use or list alternative tools. Still clear enough for an agent to infer.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wasm_executeA

Execute a CosmWasm smart contract function (state-changing). Available on Miniwasm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
contractAddressYesContract address (bech32)
executeMsgYesExecute message as JSON object
fundsNoCoins to send with the execution
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint: false and destructiveHint: false. The description adds 'state-changing' which is consistent but does not elaborate on signing, gas costs, or the simulation/broadcast behavior controlled by dryRun and confirm.

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 is a single, clear sentence. It is efficient but might benefit from slightly more detail given the tool's complexity.

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

Completeness2/5

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

With no output schema, the description should explain return values (e.g., transaction result vs simulation). It omits this and does not integrate the behavior of dryRun/confirm, leaving agents to infer functionality from parameters alone.

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% with detailed parameter descriptions. The tool description adds no extra meaning beyond the schema, meeting the baseline for high coverage.

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's action ('Execute a CosmWasm smart contract function'), specifies it is state-changing, and notes it is available on Miniwasm chains. This distinguishes it from sibling tools like wasm_query (read-only) and wasm_instantiate (contract creation).

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?

The description does not explicitly guide when to use this tool versus alternatives. It implies use for state-changing calls but lacks comparisons to wasm_query or prerequisites like contract instantiation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wasm_instantiateB

Instantiate a CosmWasm contract from an uploaded code ID. Available on Miniwasm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
codeIdYesCode ID of the uploaded wasm
labelYesHuman-readable label for the contract
msgYesInstantiate message as JSON object
adminNoAdmin address (allows future migrations). Omit for no admin.
fundsNoCoins to send with instantiation
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already indicate not read-only and not destructive. The description adds a minor contextual detail ('Miniwasm chains') but no behavioral insights like side effects, authorization needs, or that a new contract address will be created. It is adequate but not informative beyond the name.

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 a single sentence that efficiently conveys the core purpose and a key constraint. Every word is necessary and there is no fluff.

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

Completeness2/5

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

For a complex tool with 10 parameters (including nested objects) and no output schema, the description is too brief. It omits important context such as the return value (e.g., contract address), the need to match msg schema to the code, or common pitfalls.

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 description coverage is 100%, so the baseline is 3. The description does not add any additional meaning to the parameters beyond what the schema already provides in their 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 verb ('Instantiate') and resource ('CosmWasm contract from an uploaded code ID'). It also specifies the context ('Available on Miniwasm chains'), which helps distinguish it from sibling tools like wasm_execute or wasm_migrate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool vs alternatives. It does not mention prerequisites, scenarios, or when to use other tools like wasm_execute or wasm_store_code.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wasm_migrateA
Destructive

Migrate a CosmWasm contract to a new code ID. Requires admin permission. Available on Miniwasm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
contractAddressYesContract address to migrate
codeIdYesNew code ID to migrate to
msgYesMigration message as JSON object
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false. Description adds context: requires admin permission and chain-specific availability. This goes beyond annotations without contradicting them.

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?

Two sentences with no extraneous text. Every piece of information is essential and front-loaded.

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 8 parameters, nested objects, and no output schema, the description is brief. It covers permission and chain availability but lacks details on return values, message format, or behavior implications. Adequate but not richly complete.

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 description coverage is 100%, so baseline is 3. Description does not add parameter-specific meaning; it relies entirely on the schema's built-in descriptions for each parameter.

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?

Description uses specific verb 'Migrate' and resource 'CosmWasm contract to a new code ID'. Clearly distinguishes from sibling tools like wasm_execute or wasm_instantiate by focusing on the migration action.

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?

States necessary precondition 'Requires admin permission' and platform restriction 'Available on Miniwasm chains', which helps agents decide when to use. Does not explicitly contrast with alternatives or mention when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wasm_queryA
Read-only

Query a CosmWasm smart contract (read-only). Available on Miniwasm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
contractAddressYesContract address (bech32)
queryMsgYesQuery message as JSON object
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description's mention of 'read-only' is redundant but consistent. The description adds that the tool is 'Available on Miniwasm chains,' which provides useful context beyond annotations. No additional behavioral traits (e.g., permission requirements, rate limits, or return format) are disclosed, but the annotations carry the safety burden.

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 is concise at two sentences and front-loaded with the core action. While it lacks structured formatting (e.g., bullets), it is efficient and without wasted words.

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?

Given the tool's moderate complexity (4 parameters, nested objects, no output schema), the description covers the basic purpose and chain availability. However, it does not describe return values or any typical behavior (e.g., error handling, pagination), which would be helpful for an agent invoking the tool.

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?

The input schema has 100% description coverage for all four parameters, including default values and enums. The description does not add any semantic information beyond what the schema already provides, so it achieves the baseline score for high coverage.

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's purpose: 'Query a CosmWasm smart contract (read-only).' It specifies the verb (query) and resource (CosmWasm smart contract), and distinguishes itself from sibling tools like wasm_execute (which executes mutations) by noting it is read-only.

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?

The description implies usage for read-only queries via the 'read-only' qualifier, but does not explicitly state when to use this tool versus alternatives like wasm_execute or other wasm tools. No direct guidance on exclusions or prerequisites is provided, though the context of siblings may help an agent infer the appropriate use case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wasm_raw_stateB
Read-only

Query raw key-value state of a CosmWasm contract. Available on Miniwasm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
contractAddressYesContract address (bech32)
keyYesState key (hex-encoded or UTF-8 string)
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description's confirmation of 'Query' is aligned. It adds some value by specifying availability on Miniwasm chains, but does not disclose other behavioral aspects like response format or key encoding details beyond the schema.

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 is a single sentence that conveys the core purpose and availability. It is front-loaded and concise, though it could benefit from slightly more detail without becoming verbose.

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

Completeness2/5

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

Given the lack of an output schema, the description should explain the return format (e.g., raw bytes, hex) to aid the agent. It also omits details about the 'key' parameter format beyond the schema (which is present but not reinforced). The description feels incomplete for a 4-parameter tool.

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?

The input schema has 100% description coverage, so the baseline is 3. The description does not add additional semantic meaning beyond what the schema provides (e.g., key format, chain defaults).

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 uses a specific verb ('Query') and a specific resource ('raw key-value state of a CosmWasm contract'), which clearly distinguishes it from sibling tools like 'wasm_query' that may handle high-level queries. Adding 'Available on Miniwasm chains' provides further context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'wasm_query' or other state query tools. It does not mention prerequisites, limitations, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wasm_store_codeB

Upload CosmWasm contract bytecode to chain. The code ID can be found in the transaction events. Available on Miniwasm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
wasmByteCodeYesWasm bytecode as base64-encoded string
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already indicate a non-destructive write operation. The description adds that the code ID is emitted in transaction events, which is helpful but minimal. It does not disclose other behaviors like potential duplicate code rejection or gas requirements.

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?

Two concise sentences, front-loaded with the action. No unnecessary words; every sentence adds value.

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

Completeness2/5

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

Lacks context on the dryRun/confirm workflow, post-upload steps (e.g., using wasm_code_info), and the impact of defaults. With no output schema, the description should provide more usage context but does not.

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 covers all 6 parameters with descriptions, so the description does not need to add param-level detail. It adds no extra meaning beyond the schema, meeting the baseline for high coverage.

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 verb 'Upload', resource 'CosmWasm contract bytecode', and specifies that the code ID is found in transaction events. It distinguishes itself from sibling tools like wasm_instantiate by focusing on bytecode upload, not contract instantiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use versus alternatives such as wasm_instantiate or wasm_execute. It does not mention prerequisites (e.g., chain fees) or when not to use. The description assumes knowledge of the workflow.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wasm_update_adminA
Destructive

Change the admin of a CosmWasm contract. Only current admin can call. Available on Miniwasm chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain name or chain ID. Defaults to L1 ("initia"). L2 examples: "Cabal", "Echelon", "Inertia".initia
contractAddressYesContract address
newAdminYesNew admin address
dryRunNoPreview tx without chain communication.
confirmNoSet true to broadcast. Otherwise returns simulation only.
memoNoOptional transaction memo
networkNoNetwork to use. Defaults to mainnet.

TDQS

A3.9/5.0
Behavior4/5

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

Discloses authorization requirement and chain availability (Miniwasm) beyond annotations. No contradiction with annotations; destructiveHint aligns with 'change'.

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?

Two sentences, 16 words, front-loaded with core action and constraints. No filler.

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?

Adequate for a simple mutation tool with complete schema coverage, but lacks mention of return values or failure behavior, which is not provided by output schema.

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 description adds minimal value beyond schema parameter descriptions. The statement about current admin is usage guidance, not param-specific.

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?

Clearly states the action ('Change the admin'), the resource ('CosmWasm contract'), and distinguishes from sibling 'wasm_clear_admin' by implying updating vs removing admin.

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?

Provides a key prerequisite ('Only current admin can call') but does not explicitly contrast with sibling tools like wasm_clear_admin or wasm_migrate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 113 tool updatesv0.1.6
    • First observedaccount_get
    • First observedaddress_convert
    • First observedaddress_validate
    • First observedamount_format
    • First observedauthz_grants
    • First observedbank_send
    • First observedbridge_deposit
    • First observedbridge_execute
    • First observedbridge_list_chains
    • First observedbridge_routable_assets
    • First observedbridge_route
    • First observedbridge_transfer_status
    • First observedbridge_withdraw
    • First observedbridge_withdrawal_status
    • First observedbridge_withdrawals
    • First observedchain_block
    • First observedchain_block_results
    • First observedchain_capabilities
    • First observedchain_gas_prices
    • First observedchain_list
    • First observeddelegation_get
    • First observeddenom_classify
    • First observeddenom_metadata
    • First observeddistribution_rewards
    • First observedevent_parse_move
    • First observedevent_parse_tx
    • First observedevent_parse_wasm
    • First observedevm_call
    • First observedevm_decode_logs
    • First observedevm_decode_revert
    • First observedevm_deploy
    • First observedevm_get_block
    • First observedevm_get_code
    • First observedevm_get_logs
    • First observedevm_get_storage_at
    • First observedevm_get_tx_receipt
    • First observedevm_send
    • First observedfeegrant_allowances
    • First observedfeegrant_grant
    • First observedfeegrant_revoke
    • First observedgovernance_vote
    • First observedibc_channels
    • First observedibc_denom_hash
    • First observedibc_transfer
    • First observedledger_status
    • First observedledger_verify_address
    • First observedmove_bcs_decode
    • First observedmove_bcs_encode
    • First observedmove_denom_metadata
    • First observedmove_dex_pairs
    • First observedmove_execute
    • First observedmove_metadata_denom
    • First observedmove_module_abi
    • First observedmove_modules
    • First observedmove_publish
    • First observedmove_resource_get
    • First observedmove_resources
    • First observedmove_script
    • First observedmove_table_entry
    • First observedmove_view
    • First observedopbridge_get
    • First observedopbridge_list
    • First observedopbridge_token_pair_by_l1_denom
    • First observedopbridge_token_pair_by_l2_denom
    • First observedopbridge_token_pairs
    • First observedportfolio_get
    • First observedproposal_get
    • First observedproposal_list
    • First observedsimulate_tx
    • First observedstaking_annual_provisions
    • First observedstaking_manage
    • First observedstaking_pool
    • First observedtoken_balance
    • First observedtoken_info
    • First observedtoken_list
    • First observedtoken_search
    • First observedtx_by_address
    • First observedtx_get
    • First observedtx_search
    • First observedusername_check
    • First observedusername_metadata
    • First observedusername_record
    • First observedusername_resolve
    • First observedvalidator_get
    • First observedvalidator_list
    • First observedvip_claim_rewards
    • First observedvip_claim_staking_rewards
    • First observedvip_claimable_rewards
    • First observedvip_delegate
    • First observedvip_extend_lock
    • First observedvip_gauge_vote
    • First observedvip_gauge_vote_by_amount
    • First observedvip_positions
    • First observedvip_provide_and_delegate
    • First observedvip_redelegate
    • First observedvip_stableswap_provide_and_delegate
    • First observedvip_stage_info
    • First observedvip_undelegate
    • First observedvip_vesting_positions
    • First observedvip_vote_info
    • First observedvip_voting_power
    • First observedwasm_clear_admin
    • First observedwasm_code_info
    • First observedwasm_contract_history
    • First observedwasm_contract_info
    • First observedwasm_contracts_by_code
    • First observedwasm_execute
    • First observedwasm_instantiate
    • First observedwasm_migrate
    • First observedwasm_query
    • First observedwasm_raw_state
    • First observedwasm_store_code
    • First observedwasm_update_admin

TDQS

B3.2/5.0

Scored across 113 tools

Disambiguation3/5

The domain-prefixed names (vip_, wasm_, move_, evm_, bridge_) do a lot of disambiguation, and descriptions are generally precise. However, the sheer number of tools creates many close pairs—vip_claimable_rewards vs vip_claim_rewards, wasm_contract_info vs wasm_code_info, token_balance vs account_get vs portfolio_get—that make selecting the right one harder than it should be.

Naming Consistency3/5

Names mostly follow a snake_case domain_operation convention, with clear families like vip_delegate/vip_undelegate/vip_redelegate. Consistency breaks down, though: some resources use get (evm_get_code), some use bare nouns (vip_positions, move_modules), and the inverse pair move_denom_metadata/move_metadata_denom is easy to misread.

Tool Count1/5

113 tools is an extreme count by any standard and far beyond the 25+ threshold where workflows become heavy. A tool set this large defeats quick discovery even when individual descriptions are good, and many read operations could be consolidated behind a smaller set of parameterized tools.

Completeness4/5

The server covers an unusually broad surface: accounts, tokens, staking, governance, IBC/OPInit bridges, and execution/query for Move, EVM, and CosmWasm. Minor gaps exist (no proposal submission, authz is query-only, no fee-grant update), but most core user workflows have no dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to interact with the Somnia blockchain network, including documentation search, blockchain queries, wallet management, cryptographic signing, and on-chain operations.
    -
  • A
    license
    C
    quality
    B
    maintenance
    Enables AI agents to interact with any EVM-compatible blockchain through natural language, supporting token swaps, cross-chain bridges, staking, lending, governance, gas optimization, and portfolio tracking across networks like Ethereum, BSC, Polygon, Arbitrum, and more.
    100
    15 npm
    41
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to interact with the AI Network blockchain by managing accounts, submitting transactions, and reading database values. It supports registering Hyper Agents and accessing a Layer 2 DAG-based shared agent memory system based on staking status.
    1,632 npm
    6
    MIT