Tenzro Ledger MCP
Server Details
Tenzro Ledger MCP: wallet, identity, payments, inference, staking, bridges, verification, agents.
- Status
- Unhealthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- tenzro/tenzro-network
- GitHub Stars
- 0
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 3.8/5 across 243 of 243 tools scored. Lowest: 2.4/5.
With 243 tools, there is significant potential for confusion. Many tools have overlapping purposes (e.g., multiple 'bridge_*' tools, multiple 'get_*' tools for different resources). While descriptions are detailed, the sheer number makes it difficult for an agent to quickly distinguish between similar tools, leading to misselection.
Tool names are predominantly snake_case (e.g., list_models, create_token), but there are noticeable inconsistencies such as 'cct_get_pool' vs 'cct_list_pools', 'hash_keccak256' vs 'hash_sha256', and mixed use of abbreviations. Overall pattern is reasonably predictable but not perfectly uniform.
243 tools is far beyond typical MCP server scopes. This server attempts to expose an entire platform's API, resulting in an overwhelming number of tools. Many tools are niche or low-level (e.g., erc8004_encode_*), which would be better grouped or omitted. The count severely impacts usability.
The server covers a vast domain including identity, payments, cross-chain bridges, AI model serving, governance, task marketplace, and more. While some subdomains may have minor gaps (e.g., no tool to update a model's metadata), the overall surface is remarkably comprehensive for the stated purpose of interacting with the Tenzro ecosystem.
Available Tools
358 toolsadaptive_burn_get_configAInspect
Show the current adaptive burn-rate config — base/local/paymaster burn bps with their treasury complements. Paymaster is locked at 100% burn. The dial moves only via on-chain governance proposals (see adaptive_burn_get_recommendation).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, so description carries full burden. It correctly implies read-only behavior ('Show') and reveals that config changes are on-chain governance-driven. Doesn't mention authentication or rate limits, but for a parameterless getter, this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with core purpose. Second adds important constraint and cross-reference. Minimal waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given simplicity (0 params, output schema present), description covers key aspects. Could mention more about related siblings or data interpretation, but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so baseline is 4. Description adds value by listing what config components are returned, but not necessary due to zero parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Show' and resource 'current adaptive burn-rate config' with specific components (base/local/paymaster burn bps, treasury complements). It distinguishes from sibling adaptive_burn_get_recommendation by noting the config changes only via governance proposals.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides context on when to use (to see current config) and implicitly when not (since changes come from proposals, use adaptive_burn_get_recommendation for recommendations). Points to a specific sibling for further guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
adaptive_burn_get_metricsAInspect
Show the latest supply-side metrics snapshot — block height, circulating supply, rolling-window epoch delta, burn/emission breakdown. Drives the recommendation engine.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the behavioral burden. It describes what metrics are shown but does not declare read-only nature, authentication needs, or refresh behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words, front-loaded with the action 'Show...'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter tool with an output schema, the description adequately lists return items and purpose. Minor gap: no mention of time bounds or caching.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so the baseline is 4. The description does not need to add parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool shows supply-side metrics snapshot and lists specific items (block height, circulating supply, etc.), distinguishing it from adaptive_burn siblings like get_config or get_recommendation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by stating it drives the recommendation engine, but does not explicitly compare to alternatives or state 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.
adaptive_burn_get_recommendationAInspect
Show the current adaptive-burn recommendation — action (NoChange / IncreaseBurnPct / DecreaseBurnPct / AlarmHighInflation / AlarmHighDeflation), magnitude bps, and whether it's above the auto-proposal floor. Pure function of metrics + targets, no side effects.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Explicitly declares 'no side effects' and describes the return fields (action, magnitude, floor flag). Without annotations, this provides sufficient behavioral context for a read-only recommendation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. First sentence lists output details, second states behavioral safety. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 0-parameter tool with an output schema, the description is complete: it lists key return fields and states the pure, side-effect-free nature. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 0 parameters; schema coverage is 100%. According to guidelines, baseline is 4. Description adds no parameter info as none are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'Show' and resource 'current adaptive-burn recommendation', lists possible action values (NoChange, IncreaseBurnPct, etc.), magnitude bps, and the auto-proposal floor flag. It clearly distinguishes from sibling tools like adaptive_burn_get_config and adaptive_burn_get_metrics by focusing on the recommendation output.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
States 'Pure function of metrics + targets, no side effects' which informs the agent it's safe to call. However, it does not explicitly compare to alternatives or state when not to use it, though the context implies usage for obtaining the current recommendation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
adaptive_burn_list_proposalsAInspect
List pending and historical adaptive-burn governance proposals. Wave 1 returns an empty list — the auto-proposal generator + governance executor wiring lands alongside the EIP-1559 fee-market consumer.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry behavioral disclosure. It reveals that Wave 1 returns empty results and why, which is valuable. However, it omits details like pagination, response format, or access restrictions, leaving gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The first sentence states the action and scope; the second adds critical context about the empty list. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters) and presence of an output schema, the description adequately covers the essential context: what the tool returns and an important temporary limitation. Slightly more detail on the output could push it to 5, but it's sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters with 100% schema coverage, so the description need not add parameter details. The description effectively covers the absence of inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists pending and historical adaptive-burn governance proposals, with a specific verb ('list') and resource. It also includes a notable caveat that Wave 1 returns an empty list due to pending infrastructure, setting expectations precisely.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
While the purpose is clear, the description lacks guidance on when to use this tool versus siblings like 'list_proposals' or other adaptive_burn tools. No explicit context for choosing this over alternatives is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ap2_protocol_infoAInspect
Return AP2 protocol metadata: version, supported mandate types, supported VC formats, and issuer DID methods recognized by this node.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It describes the return type (metadata with specific fields) but does not detail behaviors like required permissions or error conditions. However, for a simple read-only info tool, this is sufficient and does not contradict any annotations (none present).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that conveys all necessary information without any wasted words. It is front-loaded with the action and resource, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters, no annotations, but an output schema, the description explicitly lists the key fields in the output (version, mandate types, VC formats, issuer DID methods), providing enough context for an agent to understand what to expect. It is complete for its simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema coverage is 100% trivially. With no parameters, the description does not need to add parameter info, so the baseline score of 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns AP2 protocol metadata, enumerating specific items: version, supported mandate types, supported VC formats, and issuer DID methods. The verb 'Return' indicates a read operation, and the resource is well-defined among siblings like ap2_sign_mandate, ap2_validate_mandate_pair, and ap2_verify_mandate, all of which have distinct purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied: this tool provides metadata about the AP2 protocol capabilities before engaging in mandate-related operations. It does not explicitly state when not to use it or mention alternatives, but the purpose is straightforward enough that an agent can infer its appropriate use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ap2_sign_mandateAInspect
Sign an AP2 mandate (Intent or Cart) with the auth-bound wallet's Ed25519 key, returning a verified Verifiable Digital Credential (VDC). Auth: DPoP+JWT mandatory. Wallet must be Ed25519. signer_did must match the wallet's controller DID.
| Name | Required | Description | Default |
|---|---|---|---|
| mandate | Yes | The mandate object — CheckoutMandate or PaymentMandate, matching mandate_kind. Auth-bound wallet's Ed25519 key signs the canonical preimage. | |
| signer_did | Yes | Signer DID — must match the controller of the auth-bound wallet (principal for checkout, agent for payment). | |
| mandate_kind | Yes | Mandate kind (AP2 v0.2): 'checkout' (principal-signed pre-authorization) or 'payment' (agent-signed final-offer commit) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses key behaviors: signing with Ed25519, auth requirements, return of a VDC, and constraint that signer_did must match the wallet's controller DID. It does not describe side effects or error conditions, but the core signing behavior is well covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, front-loaded with the core action and output, and includes essential constraints. Every sentence adds value without redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema (not shown), the description appropriately focuses on inputs and behavior. It could be more complete by mentioning whether the signed mandate is stored or returned only, but the return of a VDC is clearly stated. Overall, it provides sufficient context for an agent to decide when and how to use the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, but the description adds substantial meaning beyond the schema descriptions. It explains that mandate must match mandate_kind, that the wallet's Ed25519 key signs the canonical preimage, and that signer_did must match the controller (principal for checkout, agent for payment). This provides critical context for agent interpretation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Sign an AP2 mandate... returning a verified Verifiable Digital Credential (VDC)', providing a specific verb and resource. It clearly distinguishes from sibling tools like ap2_validate_mandate_pair and ap2_verify_mandate, which handle validation/verification rather than signing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear prerequisites (DPoP+JWT auth, Ed25519 wallet, matching signer_did) and context for when to use the tool. However, it does not explicitly state when not to use it or point to alternatives like ap2_validate_mandate_pair for verification.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ap2_validate_mandate_pairAInspect
Validate an AP2 v0.2 Checkout+Payment mandate pair for consistency: ensures the PaymentMandate references the CheckoutMandate, amounts/items match the checkout's constraints, and both VDCs verify. When enforce_delegation=true, additionally cross-checks the agent's TDIP DelegationScope against the payment total (TDIP identifies. AP2 authorizes. Tenzro settles).
| Name | Required | Description | Default |
|---|---|---|---|
| payment_vdc | Yes | AP2 v0.2 PaymentMandate VDC (agent-to-merchant final-offer commit) as JSON-LD VC envelope | |
| checkout_vdc | Yes | AP2 v0.2 CheckoutMandate VDC (principal-to-agent pre-authorization) as JSON-LD VC envelope | |
| enforce_delegation | No | If true, also enforce the agent's TDIP DelegationScope against the payment total via IdentityRegistry::enforce_operation. Default: false (AP2-only validation). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the validation behavior and optional delegation enforcement, but does not state whether the operation is read-only, what permissions are required, or any side effects. The tagline 'TDIP identifies. AP2 authorizes. Tenzro settles' adds high-level context but doesn't fully compensate for missing behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly concise: two sentences front-load the core purpose and checks, with the second sentence adding context for the optional parameter and a memorable tagline. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema (not shown), the description covers the essential aspects: purpose, key checks, optional parameter behavior. It does not detail error cases or integrate sibling comparisons, but for a 3-parameter tool with no nested objects, it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds meaning beyond the schema by explaining the relationship between checkout_vdc and payment_vdc and the purpose of enforce_delegation. It clarifies that the validation ensures PaymentMandate references CheckoutMandate and that optional delegation cross-checking occurs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool validates an AP2 v0.2 Checkout+Payment mandate pair for consistency, specifying the checks performed (reference matching, amount/item constraints, VDC verification). The verb 'Validate' and the resource 'mandate pair' are specific, and the description distinguishes this from siblings like ap2_verify_mandate (singular) or ap2_sign_mandate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for validating a pair of mandates before settlement, but it does not explicitly contrast with sibling tools or state when to use this version of the pair in the workflow. It provides context for the optional enforce_delegation parameter but lacks explicit when-to-use or when-not-to-use guidance compared to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ap2_verify_mandateAInspect
Verify a single AP2 mandate (Verifiable Digital Credential). Checks the VDC proof, issuer, and schema for Intent, Cart, or Payment mandates per Google's AP2 spec.
| Name | Required | Description | Default |
|---|---|---|---|
| vdc | Yes | Verifiable Digital Credential (VDC) mandate object — the full JSON-LD VC envelope with proof |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fill the gap. It discloses that the tool checks 'VDC proof, issuer, and schema', but does not mention side effects (likely none), authentication requirements, or behavior on failure. Partial transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the verb and resource. No redundant words; every phrase conveys necessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, output schema present), the description covers the key aspects: what verification does, what it checks, and applicable mandate types. No major gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter 'vdc' is well-described in the schema, and the tool description adds context by noting the components verified (proof, issuer, schema) and mandate types (Intent, Cart, Payment). This adds value beyond the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('verify'), resource ('AP2 mandate / Verifiable Digital Credential'), and specific checks ('VDC proof, issuer, and schema'). It distinguishes from sibling tools like ap2_sign_mandate and ap2_validate_mandate_pair by focusing on single mandate verification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for verifying a single AP2 mandate but does not explicitly state when to use this tool versus alternatives like ap2_validate_mandate_pair. No when-to-use or 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.
apply_snapshot_chunkAInspect
Write one inbound snapshot chunk. The chunk's SHA-256 is verified against manifest.chunk_hashes_hex[chunk_index] before any disk write. On the final chunk, all chunks are decoded and atomically committed via write_batch_sync; complete will be true on that call. Returns {complete, height, chunk_index}.
| Name | Required | Description | Default |
|---|---|---|---|
| height | Yes | Block height of the snapshot the chunk belongs to | |
| data_b64 | Yes | Base64-encoded chunk bytes. SHA-256 will be verified against manifest.chunk_hashes_hex[chunk_index] before disk write. | |
| chunk_index | Yes | Index of the chunk being applied (0..manifest.num_chunks) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, description details SHA-256 verification, atomic commit on final chunk, and return values. Covers behavioral traits well.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. Front-loaded verb and structured flow.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists; description covers complete lifecycle from verification to return. No gaps for a chunk write.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% description coverage. Description adds context about chunk_index's role in manifest but does not significantly extend beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool writes one inbound snapshot chunk, distinguishing it from siblings like get_snapshot_chunk and offer_snapshot. Verb and resource are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use or not use this tool. Missing prerequisites like needing a snapshot manifest and not mentioning alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assign_taskAInspect
Assign a task to a specific agent on the Tenzro Task Marketplace. Moves task from open to assigned state and notifies the agent. Returns the updated task record.
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Task ID to assign | |
| agent_did | Yes | DID of the agent being assigned the task |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the transparency burden. It discloses state change and notification, which is good, but lacks details on authorization requirements, error conditions, or idempotency. Adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the main action, then details state change, side effect, and return value. 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (two parameters, clear action), the description covers the core behavior well. The existence of an output schema reduces the need to detail return values. Minor gaps in failure handling and prerequisites prevent a perfect score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described. The description does not add extra meaning beyond the schema; it only reiterates the parameters implicitly. Baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: assigning a task to a specific agent on the Tenzro Task Marketplace. It specifies the state change ('Moves task from open to assigned state') and side effects (notifies agent, returns updated task record), effectively distinguishing it from sibling tools like cancel_task or complete_task.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it (for assigning tasks) but does not explicitly state alternatives or when not to use it. No mention of preconditions like task being in open state or agent readiness, which would help guide appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
attested_mintAInspect
Mint a tokenized asset ONLY if post-mint supply <= attested reserves (1:1 backing as a protocol invariant). Rejects with no/insufficient reserves. Mirrors tenzro_attestedMint.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | ||
| amount | Yes | Amount to mint (decimal string, smallest unit) | |
| caller | Yes | ||
| token_id | Yes | 32-byte token id (hex) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the core behavioral invariant (post-mint supply <= attested reserves) and the rejection condition for no/insufficient reserves. With no annotations, it carries the full burden and does so effectively, though it omits details like permissions or reversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences that are entirely non-redundant. Every word adds value: condition, rejection, and reference to a mirrored tool. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists, the description covers the core feature and failure mode well. However, it lacks context about what 'attested reserves' means or how they are set, which is critical for correct use. Slightly incomplete but still high.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50% (amount and token_id have descriptions). The description does not elaborate on parameters beyond the schema, providing no additional meaning for 'to', 'caller', or the existing ones. It adds no parameter-level value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool mints a tokenized asset under a specific condition (post-mint supply <= attested reserves) and rejects if reserves are insufficient. The verb 'mint', the resource 'tokenized asset', and the conditional constraint are all explicit, distinguishing it from generic mint tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for minting with 1:1 backing but does not explicitly compare with sibling mint tools like 'crosschain_mint' or 'mint_nft'. There is no guidance on when to use or not use this tool, nor any mention of prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
authorize_crosschain_bridgeAInspect
Authorize a bridge address for ERC-7802 crosschain mint and burn operations. Only authorized bridges can mint/burn tokens for cross-chain transfers. Sets daily mint and burn limits for rate limiting.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Human-readable bridge name (e.g. 'LayerZero V2', 'Chainlink CCIP') | |
| bridge | Yes | Hex-encoded bridge address to authorize | |
| daily_burn_limit | Yes | Daily burn limit in base units | |
| daily_mint_limit | Yes | Daily mint limit in base units (e.g. 1000000000000000000000 for 1000 TNZO) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, so description carries full burden. It discloses rate limiting via daily mint/burn limits. Missing details like whether existing limits are overwritten or if special permissions are required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two focused sentences, front-loaded with purpose. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists, only description needed to explain authorization logic. Could mention what happens on re-authorization but overall adequate for a simple auth tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all 4 parameters with descriptions. Description adds context about rate limiting but doesn't significantly extend parameter meaning. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it authorizes a bridge for crosschain mint/burn operations using ERC-7802 standard. Distinct from sibling tools like crosschain_mint/crosschain_burn which perform the actual transfers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states that only authorized bridges can mint/burn tokens, implying this tool is used before crosschain operations. No explicit when-not-to-use or alternatives, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
authorize_sessionAInspect
Authorize a temporary session for a wallet with specific allowed operations and a time limit. Returns a session ID and expiry timestamp.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet_id | Yes | Wallet ID (UUID) to create a session for | |
| operations | Yes | Allowed operations during the session (e.g. ['transfer', 'stake', 'inference']) | |
| duration_secs | Yes | Session duration in seconds (e.g. 3600 for 1 hour) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions creating a session and returning results but does not disclose side effects (e.g., state mutation), required permissions, or potential risks.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: one sentence for the action and one for the return, with no unnecessary words. It is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with 3 parameters, full schema coverage, and an output schema, the description covers purpose, key parameters, and return values. It lacks behavioral context but is otherwise complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 adds no extra meaning beyond echoing the schema (e.g., 'time limit' matches 'duration_secs'). Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'authorize', the resource 'temporary session for a wallet', and key attributes (allowed operations, time limit). It distinguishes from sibling tools like 'revoke_session' and 'create_wallet' by emphasizing temporary sessions with constraints.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (when needing a temporary session with specific operations and duration) but does not explicitly state when not to use or contrast with alternatives like 'revoke_session' or other authorization tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
axelar_call_contractCInspect
Dispatch an Axelar GMP call_contract message. Correlation id is keccak256(payload).
| Name | Required | Description | Default |
|---|---|---|---|
| gas_token | No | ||
| gas_amount | No | ||
| payload_hex | Yes | ||
| source_chain | Yes | ||
| destination_chain | Yes | ||
| destination_address | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description only states the operation without detailing side effects, authorization needs, reversibility, or error conditions. The correlation ID hint is marginally helpful but insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences, but the second sentence about correlation ID adds useful information. Could be improved by structuring parameter details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex cross-chain tool with 6 parameters and an output schema, the description lacks essential details about the message format, gas parameters, and return value. Incomplete for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description offers no explanation of parameters like source_chain, destination_chain, payload_hex, etc. The agent must infer meaning solely from parameter names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Dispatch an Axelar GMP `call_contract` message') and provides additional context about correlation ID. It distinguishes from sibling tools by specifying the exact operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like hyperlane_dispatch or wormhole_bridge. No exclusions or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
axelar_get_messageAInspect
Look up an Axelar GMP message by payload hash.
| Name | Required | Description | Default |
|---|---|---|---|
| payload_hash | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It only states 'Look up', which implies a read operation, but does not detail side effects, access requirements, or any constraints. The description is insufficiently transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 9 words, with no wasted text. It is front-loaded with the action and resource, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 complex behavior), the description is almost sufficient. The existence of an output schema reduces the need to describe return values. However, it could be slightly more complete by mentioning the format of payload_hash or the nature of the returned message.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage for the only parameter. The description adds meaning by stating the lookup is 'by payload hash', which clarifies the parameter's purpose beyond the raw schema. This compensates for the lack of schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Look up' and explicitly identifies the resource as 'Axelar GMP message' with the lookup criterion 'by payload hash'. This clearly distinguishes it from sibling tools like axelar_call_contract or hyperlane_get_message.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, limitations, or comparison with similar tools like axelar_call_contract or hyperlane_get_message.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
axelar_list_chainsAInspect
List supported Axelar chains. Reach spans 30+ chains: EVM, Cosmos (Osmosis, Cosmos Hub, Juno, Neutron, Injective, Kujira, Crescent, Evmos), Move (Aptos, Sui), Stellar, XRP Ledger, Hyperliquid, Filecoin EVM, Kava.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It describes the operation as listing chains and provides examples, but does not disclose whether the list is dynamic, cached, or if there are any side effects. The read-only nature is unstated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, no wasted words. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and an output schema, the description is fairly complete. It lists chain categories and examples, but could be more explicit about the exact scope of 'supported' chains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters in the schema, so the description adds context (list of chains) beyond what the schema provides. Schema coverage is 100%, and the description enhances understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List supported Axelar chains' which is a specific verb+resource. It distinguishes from siblings like axelar_call_contract and hyperlane_list_chains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. While context is implied, explicit usage notes are absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
axelar_pay_gasCInspect
Pre-pay the Axelar Gas Service for a previously-dispatched message.
| Name | Required | Description | Default |
|---|---|---|---|
| gas_token | Yes | ||
| gas_amount | Yes | ||
| payload_hash | Yes | ||
| source_chain | Yes | ||
| destination_chain | Yes | ||
| destination_address | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only states 'pre-pay' but omits idempotency, failure modes, effects if already paid, or any side effects. The agent cannot assess risks beyond obvious mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise single sentence that front-loads the action and resource. No filler. However, could incorporate more useful details without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 6 required params, no param descriptions, no annotations, and an output schema not elaborated, the description is insufficient. It omits crucial context like how to obtain the payload_hash, valid chains/tokens, and return value format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% (6 parameters, none described). The description adds zero information about any parameter meanings, formats, or constraints. This leaves the agent blind to what each parameter represents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (pre-pay) and the resource (Axelar Gas Service) with the context of a previously-dispatched message. It differentiates from sibling tools like axelar_call_contract and axelar_get_message by specifying this is a payment action for an already dispatched message.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, no prerequisites mentioned (e.g., must have called axelar_call_contract first), and no conditions for when not to use it. The agent is left to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
babylon_get_finality_providerBInspect
Read the Babylon finality-provider record for a Tenzro validator.
| Name | Required | Description | Default |
|---|---|---|---|
| validator | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. 'Read' implies a safe, idempotent operation, but there is no mention of behavioral traits such as error handling, rate limits, or response structure beyond what the output schema provides. It does not disclose if the record is always returned or what happens if the validator does not exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no superfluous words. It efficiently conveys the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool is simple with one parameter and an output schema, the description is mostly adequate. However, it lacks guidance on error conditions and does not leverage the context of sibling tools to differentiate usage. For a low-complexity tool, it meets minimum viability but has noticeable gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is only one parameter 'validator' with 0% schema description coverage. The description adds minimal context by specifying 'for a Tenzro validator', but does not clarify the expected format (e.g., address, ID). The schema only gives type 'string', so the description must compensate but fails to provide sufficient semantic detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 'Babylon finality-provider record', specifying it is for a 'Tenzro validator'. This distinguishes it from sibling tools like 'babylon_list_finality_providers' (which lists multiple) and 'babylon_register_finality_provider' (mutation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, or any prerequisites. The description only states what it does, not the context or exclusions. For example, it does not mention that this tool retrieves a single record while 'babylon_list_finality_providers' retrieves all.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
babylon_list_delegationsAInspect
List BTC delegations for a finality provider.
| Name | Required | Description | Default |
|---|---|---|---|
| validator | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states the action without mentioning if it is read-only, requires authentication, or has any side effects. Lacks depth for a tool with no annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It is front-loaded and efficiently conveys the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While an output schema exists, the description does not link to related tools or explain how this listing integrates with other Babylon operations. It is minimally complete but lacks contextual guidance for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must add meaning. It hints that the 'validator' parameter is a finality provider identifier, but does not clarify format, examples, or constraints. Provides minimal but not sufficient context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists BTC delegations for a finality provider. It uses a specific verb 'list' and resource 'BTC delegations', and the scope 'for a finality provider' differentiates it from sibling tools like 'babylon_list_finality_providers' which lists providers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. However, the context implies it should be used after selecting a finality provider, but no exclusions or when-not-to-use scenarios are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
babylon_list_finality_providersAInspect
List every registered Babylon finality provider.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description does not disclose behavioral traits such as read-only nature, rate limits, or pagination. The minimal description offers no additional context beyond 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no superfluous words. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, output schema exists), the description adequately states the tool's purpose. However, it lacks any mention of return format or limits, but the output schema covers that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description cannot add parameter meaning. Baseline score of 4 applies since schema coverage is 100% and no parameter details are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and resource 'every registered Babylon finality provider,' clearly distinguishing from sibling tools like 'babylon_get_finality_provider' which fetches a single provider.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a broad listing use case but provides no explicit guidance on when to use or avoid this tool, or any alternatives. It is adequate for a simple tool but lacks depth.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
babylon_register_finality_providerBInspect
Register a Tenzro validator as a Babylon finality provider. Tenzro validators are then economically secured by native BTC delegations through Babylon's finality-providers protocol.
| Name | Required | Description | Default |
|---|---|---|---|
| btc_pk | Yes | 33-byte BTC public key (0x-prefixed hex) | |
| validator | Yes | ||
| commission_bps | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It mentions registration and subsequent economic security but lacks details on side effects, permissions, reversibility, or state changes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste, front-loaded with the core action. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema, the description omits behavioral context, return value explanation, and prerequisites. Inadequate for a registration/mutation tool with no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33% (only btc_pk has a description). The description adds no additional meaning for validator or commission_bps, and for btc_pk it merely echoes the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Register') and the specific resource ('Tenzro validator as a Babylon finality provider'), effectively distinguishing it from sibling tools like babylon_get_finality_provider and babylon_submit_finality_signature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., when to register vs get or list). The description does not specify prerequisites, exclusions, or context for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
babylon_submit_finality_signatureAInspect
Submit an EOTS (Extractable One-Time Signature) over a Tenzro block hash. Equivocation slashes the BTC delegations bonded to the finality provider.
| Name | Required | Description | Default |
|---|---|---|---|
| validator | Yes | ||
| block_hash | Yes | ||
| eots_signature | Yes | EOTS signature over the block hash (0x-prefixed hex) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses the important behavioral consequence of equivocation slashing BTC delegations. However, it does not mention other traits like destructive hint, authorization requirements, or rate limits. With no annotations, the description partially fills the gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no superfluous words. The first sentence states the action, the second adds key behavioral context. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (submission with slashing risk) and lacking output schema details, the description does not mention prerequisites (e.g., being a finality provider) or parameter formats for validator and block_hash. The output schema exists but is not shown, so completeness is moderate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter (eots_signature) has a description, providing format info ('0x-prefixed hex'). validator and block_hash lack any description. With schema coverage at 33%, the description should compensate but does not fully explain all parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action: 'Submit an EOTS over a Tenzro block hash.' The verb 'submit' and resource 'EOTS' are specific. It also distinguishes from sibling tools like babylon_get_finality_provider by mentioning the consequence of equivocation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit instructions on when to use this tool versus alternatives (e.g., other Babylon tools). The description implies usage when submitting a finality signature, but lacks guidance on prerequisites or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
babylon_total_stake_for_providerCInspect
Sum BTC delegations for a finality provider.
| Name | Required | Description | Default |
|---|---|---|---|
| validator | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose behavioral traits such as whether the tool is read-only, requires authentication, or has side effects. The description adds minimal value beyond the tool name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at 4 words, but it lacks necessary detail. It is efficient but under-specified for an AI agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 existence of an output schema, the description does not explain return values or provide sufficient context. For an agent to correctly use this tool, more information is needed about the parameter and result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, and the description does not explain the meaning of the 'validator' parameter (e.g., what format, how it relates to a finality provider). The parameter name is somewhat self-explanatory but not fully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Sum' and the resource 'BTC delegations for a finality provider', which is specific and distinguishes from sibling tools like babylon_list_delegations (list all) and babylon_get_finality_provider (get provider info).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., babylon_list_delegations) or any context about prerequisites or suitability.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bridge_quoteAInspect
Get a bridge quote without executing the transfer. Returns estimated output amount, fees, estimated time, and recommended route. Useful for previewing costs before committing to a bridge transfer.
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | Token to bridge (e.g. 'TNZO', 'USDC', 'ETH') | |
| amount | Yes | Amount in base units | |
| protocol | No | Preferred bridge protocol: 'layerzero', 'ccip', 'debridge' (optional — auto-selects best route if omitted) | |
| to_chain | Yes | Destination chain | |
| from_chain | Yes | Source chain (e.g. 'tenzro', 'ethereum', 'solana', 'base') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It discloses the tool is read-only ('without executing the transfer') and lists the return content. However, it does not mention potential errors, authentication needs, or idempotence, but these are less critical for a quote tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first defines purpose and output, second states use case. No unnecessary words, front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, the description adequately covers the tool's purpose and output. The existence of an output schema is mentioned. It could include a note on required authentication, but the simple nature of a quote tool makes this acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 no new parameter-specific information beyond stating it's for previewing costs. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets a bridge quote without executing the transfer, specifying the return values (estimated output amount, fees, time, recommended route). It distinguishes itself from transfer-execution tools like bridge_tokens.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly advises using this tool 'for previewing costs before committing to a bridge transfer.' It does not explicitly list when not to use or mention alternatives, but the context is clear and the sibling tools (e.g., bridge_tokens) are distinct.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bridge_tokensBInspect
Bridge tokens between blockchains. Supports routes between Tenzro, Ethereum, Solana, and Base via LayerZero, Chainlink CCIP, and deBridge adapters
| Name | Required | Description | Default |
|---|---|---|---|
| asset | Yes | Asset to bridge (e.g. 'TNZO', 'USDC', 'ETH') | |
| amount | Yes | Amount to bridge in base units | |
| sender | Yes | Hex-encoded sender address on source chain | |
| recipient | Yes | Hex-encoded recipient address on destination chain | |
| dest_chain | Yes | Destination chain | |
| source_chain | Yes | Source chain (e.g. 'tenzro', 'ethereum', 'solana', 'base') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description fails to disclose side effects, permissions, fees, execution semantics (immediate? atomic?), or response expectations, leaving the agent underinformed for a complex mutation operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences front-load purpose, then detail routes and adapters, with no unnecessary words. Efficiently structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although the purpose is clear, the description omits key context for a multi-chain bridge tool: prerequisites (e.g., approved tokens), process steps, adapte-specific logic, and output handling, leaving the agent unable to fully understand the tool's role in a workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% coverage with clear parameter descriptions; the description adds context on supported chains and adapters but no additional constraints or semantics beyond schema (e.g., which assets are available per chain).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the verb 'bridge' and resource 'tokens between blockchains', specifies supported chains and adapters, distinguishing it from sibling tools like authorize_crosschain_bridge or bridge_quote.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage for token bridging but lacks explicit guidance on when to use this vs alternatives (e.g., getting a quote first via bridge_quote) or handling prerequisites like authorization.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bridge_with_hookAInspect
Execute a bridge transfer with a deBridge post-fulfillment hook. After the tokens arrive on the destination chain, the hook_target contract is called with hook_calldata. Enables composable cross-chain operations (e.g., bridge + swap, bridge + stake).
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | Token to bridge (e.g. 'USDC', 'ETH') | |
| amount | Yes | Amount in base units | |
| sender | Yes | Hex-encoded sender address on source chain | |
| to_chain | Yes | Destination chain | |
| from_chain | Yes | Source chain (e.g. 'ethereum', 'solana') | |
| hook_target | Yes | Hex-encoded target contract address for the post-fulfillment hook on destination chain | |
| hook_calldata | Yes | Hex-encoded calldata to execute on hook_target after bridge fulfillment |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that hook_target contract is called with hook_calldata after tokens arrive on destination chain. No annotations are present, so the description carries full burden. It does not mention authorization requirements or edge cases, but the core behavior is well described.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first states the main action, second explains the hook call and exemplifies use cases. No wasted words, front-loaded with the key verb and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has 7 required parameters, output schema exists, and no nested objects. Description explains the hook mechanism adequately. It does not mention return values, but output schema covers that. No prerequisites or error conditions are discussed, but the core functionality is complete for a bridge tool with hooks.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline 3. The description adds no additional meaning beyond what the schema provides (e.g., hook mechanism). It does not explain how to construct hook_target or hook_calldata.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb (Execute) and resource (bridge transfer with deBridge post-fulfillment hook). Distinguishes from sibling bridge tools by highlighting the hook feature, which is unique among siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage for composable cross-chain operations (e.g., bridge + swap, bridge + stake) but does not explicitly state when not to use or provide alternatives. Could be improved by contrasting with bridge_tokens or debridge_create_tx without hooks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
caip10AInspect
Get the CAIP-10 account id for a Tenzro address. Accepts hex or base58btc on input; normalises to canonical 64-hex.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Tenzro account address — accepts hex or base58btc on input; normalised to canonical 64-hex. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description provides key behavioral details: input formats (hex or base58btc) and normalization to canonical 64-hex. However, it does not disclose any authentication requirements or potential errors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-loading the purpose and key behavior. 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 1-parameter tool with an output schema, the description covers input formats and normalization. It could mention the output format, but the output schema makes this less critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description of the 'address' parameter in the input schema repeats the same information as the tool description, adding no new meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 (CAIP-10 account id for a Tenzro address), distinguishing it from sibling tools like caip2 (chain ID) and caip19 (asset ID).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 caip2 or caip19. The usage is implied by the description but not differentiated in context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
caip19BInspect
Get the CAIP-19 asset id. Asset namespaces: slip44 (native TNZO, SLIP-44 coin index 1414421071), token (Tenzro token registry id, 32-byte hex), nft (collection id + nft_token_id).
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | Asset namespace: 'slip44', 'token', or 'nft'. | |
| token_id | No | 32-byte token id (hex) — required for kind='token' or as the collection id for kind='nft'. | |
| nft_token_id | No | NFT token id (decimal or hex) — required for kind='nft'. | |
| collection_id | No | Alias for `token_id` when used with kind='nft'. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states 'Get' without indicating whether it is a read-only operation, requires authentication, or has side effects. It does detail namespace structure but omits behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: one sentence and a compact list of namespaces. Information is front-loaded and every element contributes to understanding. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity and presence of an output schema, the description covers namespace structure adequately. However, it lacks behavioral context (e.g., read-only, permissions) that would make it complete. The agent can infer usage but not fully.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds valuable context beyond field descriptions: explains the slip44 namespace with a specific coin index, clarifies role of token_id for token vs nft, and introduces collection_id alias. This meaningfully augments the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool returns a CAIP-19 asset id and enumerates three namespaces with concrete examples (slip44, token, nft). This provides clear purpose, though it could further distinguish from sibling CAIP tools like caip2 and caip10.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 caip10 or caip2. The description implies use for generating CAIP-19 identifiers but offers no context about prerequisites or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
caip2AInspect
Get the CAIP-2 chain id for this node: tenzro:<lowercase hex of the first 16 bytes of the genesis block hash>. Returns {chain_id, namespace, reference, evm_chain_id} — the evm_chain_id sidecar is for EVM tooling.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It describes the return schema and notes the evm_chain_id sidecar. It implies a read operation and no destructive behavior. It could mention whether authentication is needed or if it always succeeds, but for a simple getter it is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences that front-load the purpose and then detail the return structure. Every sentence adds value with no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no inputs and an output schema exists, the description covers the return format and a key detail (evm_chain_id sidecar). It could mention if there are any prerequisites (e.g., node must be synced) but is largely complete for a simple getter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so schema coverage is 100%. The description adds value by explaining the return fields, which is the only relevant semantic information. Baseline for zero parameters is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get the CAIP-2 chain id for this node'. It provides the exact format and return structure, distinguishing it from sibling tools like caip10 and caip19 which have different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly tells when to use (when you need the node's CAIP-2 chain ID) but lacks explicit guidance on when not to use or mention of alternatives. The specificity of the tool makes its use case clear, so it scores well.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cancel_taskAInspect
Cancel a pending or active task on the Tenzro Task Marketplace. Only the original requester can cancel. Refunds any escrowed TNZO. Returns cancellation confirmation.
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Task ID to cancel | |
| requester_address | Yes | Hex-encoded address of the task requester (for authorization) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the refund effect and returns a confirmation, but it does not mention irreversible consequences, error conditions, or what happens if the task is not found or already completed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each serving a distinct purpose: purpose, constraint, and behavior/return. It is front-loaded and contains no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 params, output schema exists), the description covers the core aspects: what it does, who can use it, and what happens after cancellation. Missing error handling is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 tool description adds no extra meaning beyond the schema, which is adequate for a baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'cancel' and the resource 'task', specifying it cancels 'pending or active' tasks on the Tenzro Task Marketplace. This distinguishes it from siblings like assign_task, complete_task, and delegate_task.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit authorization constraint ('Only the original requester can cancel') and mentions refunds. However, it does not explicitly state when not to use this tool or point to alternatives like complete_task for finished tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capital_intent_assignCInspect
Assign a solver to a capital intent; if payer is set, lock the principal escrow up to the authorized ceiling. Mirrors tenzro_capitalIntentAssign.
| Name | Required | Description | Default |
|---|---|---|---|
| auto | No | Auto-select the best quote by ERC-8004 reputation, then price, then eta. | |
| payee | No | ||
| payer | No | ||
| intent_id | Yes | ||
| solver_did | No | Explicit solver. Omit (or set `auto`) to auto-rank quotes. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description partially discloses behavior: assignment and conditional escrow locking. However, it omits details on side effects, authorization needs, reversibility, and how auto vs manual selection resolves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise and front-loaded with the primary action. However, could benefit from structured breakdown (e.g., separate conditional clause) to improve scannability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given five parameters with auto/manual logic and escrow interaction, the description is incomplete. It does not address required intent_id, auto selection behavior, or payee role, leaving the agent underinformed for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only the 'payer' parameter gains meaning from the description (conditional locking). The schema covers solver_did (40% coverage), but other parameters (intent_id, auto, payee) are unexplained, leaving significant gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool assigns a solver to a capital intent and mentions a conditional escrow locking behavior. However, it does not explicitly differentiate from siblings like capital_intent_open or capital_intent_quote, though the action is distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., capital_intent_open, capital_intent_quote). The description does not state prerequisites, exclusions, or typical contexts for assignment.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capital_intent_compensateBInspect
Compensate (refund the principal escrow and fail) a capital intent. Mirrors tenzro_capitalIntentCompensate.
| Name | Required | Description | Default |
|---|---|---|---|
| intent_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral burden. It discloses the action (refund and fail), which implies mutation/destruction. However, it does not detail side effects, authorization needs, or output format, leaving gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single focused sentence that efficiently conveys the core function and reference. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and an output schema, the description covers the essential operation but omits details about the output, postconditions, and specific context of when compensation is appropriate. It is adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the description does not explain the parameter intent_id. While the parameter name suggests its purpose, the description should explicitly state that it is the identifier of the capital intent to compensate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Compensate' and resource 'capital intent', explaining the effect 'refund the principal escrow and fail'. It distinguishes from sibling tools like capital_intent_execute and capital_intent_settle by its unique action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 workflow_step_compensate or other capital intent tools. The mention of mirroring tenzro_capitalIntentCompensate provides a reference but not actionable usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capital_intent_executeCInspect
Record one executed settlement leg of a capital intent. Mirrors tenzro_capitalIntentExecute.
| Name | Required | Description | Default |
|---|---|---|---|
| leg | Yes | Leg: {venue, asset_id, side(buy|sell), quantity, unit_price, settlement_ref?, proof?} | |
| intent_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description lacks any behavioral details such as idempotency, side effects, permissions required, or what constitutes a successful recording. The simple phrase 'Record one executed settlement leg' provides 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short (one sentence). While it is concise, it lacks structure and omits important details. It is not verbose, but it is under-specified.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, a minimal description, and a relatively complex action (recording a settlement leg), the description is incomplete. It does not mention output, expected behavior, or edge cases. The presence of an output schema is not leveraged in the description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only 50% of parameters have schema descriptions (leg has a string description; intent_id does not). The tool description adds no additional meaning beyond the schema. For instance, it does not clarify the expected format of the leg object or the purpose of intent_id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Record') and the resource ('one executed settlement leg of a capital intent'), which is specific. However, there is a slight ambiguity as the tool name suggests executing, while the description says recording an already executed leg. Still, it distinguishes from siblings like capital_intent_open or capital_intent_settle.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. It does not mention prerequisites, context, or when to avoid it. For example, it is unclear how this differs from capital_intent_settle or capital_intent_verify.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capital_intent_openBInspect
Open a signed Capital Intent — regulated capital allocation over tokenized assets (the capital-markets analog of an AP2 Intent Mandate; objective = acquire/exit/rebalance/hedge/yield, with reg regime + KYC + ceilings). Mirrors tenzro_capitalIntentOpen.
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | CapitalIntent object: {intent_id, principal_did, objective{kind,...}, constraints, compliance{reg_regime,min_kyc_tier,accredited_only}, authorization{max_total_notional,...}, settlement, signature?} |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full behavioral burden. It hints at compliance (reg regime, KYC, ceilings) but does not disclose side effects, authorization needs, idempotency, or consequences of failure. For a mutation tool, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences efficiently convey the tool's purpose and reference. No fluff, but structure could be improved by front-loading the primary action and constraints. Minor points for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, return values are covered. However, the description lacks context on prerequisites, state changes, or how 'opening' differs from other capital_intent operations. The mention of mirroring another tool helps but does not fully standalone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a detailed description of the 'intent' object. The description adds marginal value by implying the intent must be 'signed', though the schema marks signature as optional. No further enrichment beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly defines the action ('Open') and resource ('signed Capital Intent') with detailed context about regulated capital allocation, objectives, and compliance elements. It explicitly distinguishes itself by noting it mirrors 'tenzro_capitalIntentOpen', aiding sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lacks explicit guidance on when to use this tool versus sibling tools like capital_intent_assign, capital_intent_execute, etc. It mentions the tool is for opening a 'signed' intent but does not provide when-not or alternative instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capital_intent_quoteCInspect
Submit a solver bid to fulfil a capital intent (ranked by ERC-8004 + KYA). Mirrors tenzro_capitalIntentQuote.
| Name | Required | Description | Default |
|---|---|---|---|
| plan | No | ||
| price | No | ||
| eta_secs | No | ||
| intent_id | Yes | ||
| solver_did | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavioral traits. It indicates a write operation ('submit a solver bid') but omits details like authorization requirements, side effects, or the ranking process. The agent lacks information on whether the bid is replaceable or what happens upon submission.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise (one sentence, 16 words) but sacrifices necessary details. It is front-loaded with the main action, but missing parameter info and usage context makes it less effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 5 parameters with 0% schema coverage and no annotations, the description is severely incomplete. The tool also has an output schema (not shown) that could explain return values, but the description does not reference it. An agent cannot reliably invoke this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
None of the 5 parameters are described in the input schema (0% coverage). The description does not explain the meaning of required fields like intent_id or solver_did, nor the optional parameters (plan, price, eta_secs). An agent cannot understand what values to provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Submit a solver bid to fulfil a capital intent'. It specifies the ranking criteria (ERC-8004 + KYA) and notes it mirrors another tool, which helps distinguish it from sibling tools like capital_intent_assign or capital_intent_execute.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 its siblings (e.g., capital_intent_assign, capital_intent_execute). It only mentions 'mirrors tenzro_capitalIntentQuote', but does not explain the context or prerequisites for submitting a bid.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capital_intent_settleBInspect
Settle a capital intent: release escrow to the solver, write ERC-8004 feedback, finalize with a receipt. Mirrors tenzro_capitalIntentSettle.
| Name | Required | Description | Default |
|---|---|---|---|
| payee | No | ||
| intent_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses basic behavioral traits (release escrow, write feedback, finalize) but lacks details on state prerequisities, permissions, reversibility, or side effects. Without annotations, it carries some burden but is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two sentences) with no wasted words. It front-loads the core actions. However, structure could be improved by separating parameter hints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 2 parameters, siblings, and an output schema, the description fails to explain state transitions, prerequisites, or return value usage. It misses crucial context for a settlement action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description adds no parameter meaning. It does not clarify the roles of 'intent_id' (required) or 'payee' (optional). Completely fails to compensate for lack of schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('release escrow, write ERC-8004 feedback, finalize with a receipt') and resource ('capital intent'). It distinguishes from siblings like capital_intent_open and capital_intent_execute by focusing on settlement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 (e.g., capital_intent_compensate, capital_intent_verify). The mention of 'mirrors tenzro_capitalIntentSettle' does not provide meaningful usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capital_intent_verifyAInspect
Verify a capital intent's proofs (requires all legs settled). Mirrors tenzro_capitalIntentVerify.
| Name | Required | Description | Default |
|---|---|---|---|
| intent_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description gives minimal behavioral context. It does not disclose whether the operation is read-only, requires authentication, or any side effects. The condition 'requires all legs settled' is a precondition, not a behavioral trait.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences, front-loading the core purpose. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema, the description does not explain what the verification result indicates or how to interpret it. Given the complexity of the capital intent lifecycle (multiple sibling tools), the description lacks sufficient context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain the 'intent_id' parameter beyond its name. The parameter's purpose is vaguely implied by the tool name, but no details on format or expected values are given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('verify') and the resource ('capital intent's proofs'), and distinguishes it from sibling tools like capital_intent_assign, capital_intent_settle, etc., which cover other lifecycle stages.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly mentions a precondition ('requires all legs settled'), guiding the agent on when to use this tool. However, it does not specify when not to use it or provide alternative tools for unverified intents.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cct_get_poolAInspect
Get a single TNZO CCT pool by chain name. Returns chain_id, chain_selector, pool_address, token_address, pool_type, contract_name, capacities, refill_rate.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Chain name (e.g. ethereum, base, arbitrum, optimism, solana) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. It correctly indicates a read operation ('Get') and lists return fields. However, it does not mention potential side effects, error conditions (e.g., chain not found), or authorization requirements, leaving some gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: a single sentence that immediately states the purpose and follows with a list of return fields. Every word earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (single parameter, no output schema details needed as one exists), the description is largely complete. It could mention that the chain must be a valid TNZO chain, but otherwise it covers the essential information for selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (the only parameter 'chain' is described with examples). The description adds 'by chain name' and the context of retrieving a single pool, but it does not supplement the parameter description beyond what the schema already 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Get a single TNZO CCT pool by chain name.' It clearly states the action and distinguishes itself from the sibling tool cct_list_pools by specifying 'single' versus listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (to get a single pool, not a list) but does not explicitly state exclusions or direct comparison to alternatives like cct_list_pools. The presence of the sibling tool in the list provides context but the description could be more explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cct_list_poolsAInspect
List all TNZO CCT pools in the canonical mainnet registry (Ethereum LockRelease; Base/Arbitrum/Optimism/Solana BurnMint).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description correctly identifies this as a read-only list operation. It adds valuable context about the canonical mainnet registry and included networks, fully transparent for a simple 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with zero redundancy; all words are informative and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters, no annotations, and presence of output schema, the description fully specifies the tool's purpose and scope (exact resource, registry, networks).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters in schema, so baseline is 4. Description adds meaning by specifying the type of pools (TNZO CCT) and the registry scope beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'List' and resource 'TNZO CCT pools' with explicit network suffixes, clearly distinguishing it from sibling tool 'cct_get_pool' (which retrieves a single pool).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 use case is implied (listing all pools), but no exclusions or conditions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
chat_completionAInspect
Send a chat completion request to a served AI model on the Tenzro network. Use list_models or list_model_endpoints to discover available models
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Model ID or service instance UUID (alias: model_id) | |
| message | Yes | The user message to send | |
| max_tokens | No | Maximum tokens to generate (default 512) | |
| temperature | No | Temperature (0.0-2.0, default 0.7) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose any behavioral traits such as mutability (e.g., token consumption), authorization requirements, or side effects, leaving a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the purpose, and contains no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple tool with 4 parameters fully described in the schema and the presence of an output schema, the description is minimally complete but lacks behavioral context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the description does not add parameter-level 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Send a chat completion request') and the resource ('a served AI model on the Tenzro network'), distinguishing it from sibling tools by referencing model discovery tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs to use list_models or list_model_endpoints before calling this tool, providing clear context and alternatives for model discovery.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_complianceAInspect
Check whether a token transfer would be compliant with the registered ERC-3643 compliance rules. Returns compliant/non-compliant status with specific violation details. Does not execute the transfer.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Hex-encoded recipient address | |
| from | Yes | Hex-encoded sender address | |
| amount | Yes | Amount in base units | |
| token_id | Yes | Token ID (hex, 32 bytes) or symbol |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It explicitly states the tool is non-executing (read-only) and returns compliance status with violation details. This is good transparency, though it could mention prerequisites like registered compliance rules or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, and zero waste. Every word earns its place. Ideal conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description need not detail return values. It covers key points: compliance check, ERC-3643, no execution. Could mention that the token must have compliance rules registered, but overall adequate for a check tool with good schema support.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning all parameters are already described in the schema. The description adds no additional meaning beyond what's in the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (check), the resource (token transfer compliance with ERC-3643 rules), and explicitly distinguishes from executing the transfer. It is specific and differentiates from sibling tools like crosschain_burn or transfer_nft.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage before executing a transfer by stating 'Does not execute the transfer.' However, it does not explicitly say 'use this to validate before a transfer' or mention alternatives when actual transfer is needed. The context is clear but lacks explicit guidance on 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.
clear_secure_mint_policyCInspect
Clear the Secure-Mint policy for an asset.
| Name | Required | Description | Default |
|---|---|---|---|
| asset_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description states 'Clear', implying a destructive mutation, but does not disclose any side effects, permissions needed, or reversibility. The agent gets minimal 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise at one sentence of six words. While it wastes no words, it could pack more informative content into the same space without sacrificing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No explanation of what the Secure-Mint policy is, what clearing does, or any output expectations. An output schema exists but is not used in the description. The agent lacks sufficient context to use the tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter 'asset_id' exists with 0% schema coverage. The description adds no meaning to this parameter—does not explain what it represents or how to obtain it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Clear' and resource 'Secure-Mint policy', clearly distinguishing from sibling tools like 'set_secure_mint_policy' and 'get_secure_mint_policy'. However, it lacks detail on what 'clear' entails exactly (e.g., reset to default vs. remove policy).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. It does not mention prerequisites, scenarios, or exclusion conditions despite the presence of related siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
close_payment_channelAInspect
Close a micropayment channel with the final balance. Requires sender signature on the final state. Settles remaining balance on-chain and returns any unused deposit.
| Name | Required | Description | Default |
|---|---|---|---|
| channel_id | Yes | Payment channel ID to close | |
| final_balance_wei | Yes | Final balance owed to recipient in wei (1 TNZO = 10^18 wei). Accepts u64 number or decimal string. | |
| sender_signature_hex | Yes | Hex-encoded signature from the channel sender authorizing the final balance |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behavioral traits: closing a channel, settling on-chain, returning unused deposit. Without annotations, the description carries the full burden and covers the main effects. Could mention irreversibility or failure conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two focused sentences with no wasted words. First sentence states purpose and condition, second adds effect. Information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description explains the on-chain effect and deposit return. It covers prerequisites and overall behavior. Could mention if the channel must be open or if it's a final action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear parameter descriptions. The tool description does not add additional meaning beyond what is already in the schema for the parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action 'close a micropayment channel' with the specific resource and key operation (final balance settlement, return of unused deposit). Distinguishes from siblings like 'open_payment_channel' which is an opposite action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states a prerequisite: 'Requires sender signature on the final state.' However, does not provide guidance on when to use this tool versus alternatives like 'settle_payment' 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.
complete_taskAInspect
Mark a task as completed with a result payload. Optionally attach a proof of completion. Triggers settlement payment to the completing agent. Returns the completion receipt.
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes | JSON result payload from task completion | |
| task_id | Yes | Task ID to mark as complete | |
| agent_did | Yes | DID of the agent that completed the task | |
| proof_hex | No | Optional proof of completion (hex-encoded) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the settlement payment trigger and return of receipt but omits details like required permissions, idempotency, or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three front-loaded sentences with no redundancy. Every sentence adds essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequately describes the core functionality and output, but lacks context on idempotency, error states, or behavior when task is already completed. Given the schema and output schema, it is mostly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description adds minimal value beyond the schema, only mentioning the optional proof parameter. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (mark as completed), resource (task), and additional effects (triggers payment, returns receipt), distinguishing it from siblings like cancel_task or assign_task.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as assign_task, cancel_task, or delegate_task. Missing context about prerequisites or conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_fee_route_payoutsAInspect
Pure preview: how would a gross_wei amount be split across a fee route's recipients? Truncates to last for the remainder. Does not settle — settlement is consensus-mediated.
| Name | Required | Description | Default |
|---|---|---|---|
| gross_wei | Yes | Gross amount in wei (decimal string — u128) | |
| fee_route_id | Yes | 32-byte hex fee route id |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behaviors: truncation to last for remainder, non-settlement nature. With no annotations, description carries full burden and adequately covers the tool's boundaries.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with 'Pure preview', no redundant words. Each sentence serves distinct purpose: purpose and behavioral clarification.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists, so return details are covered. Description provides purpose, behavior, and usage context. Minor gap: does not mention if fee_route_id must exist.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with descriptions. Description only rephrases 'gross_wei' without adding new meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb+object: 'compute fee route payouts' with 'preview' specifying it's a simulation. Distinguishes from settlement tools like 'settle_payment' by explicitly stating 'does not settle'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states 'Pure preview' and 'Does not settle — settlement is consensus-mediated.', which guides when to use (preview) and when not (actual settlement). Lacks explicit alternative naming but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cortex_reasonAInspect
Invoke Tenzro Cortex recurrent-depth reasoning. Executes a recurrent-depth transformer (OpenMythos-style) through a registered Cortex worker, charging TNZO based on tokens_in, tokens_out, and loops_used. Returns the reasoning output along with a signed CortexReceipt binding input/output commitments, weights hash, runtime hash, loops_used, and worker DID. Use tier='fast|standard|deep|institutional' to select the reasoning depth budget.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Reasoning tier: 'fast' (2-4 loops), 'standard' (8), 'deep' (16-32), 'institutional' (TEE + optional ZK). Default 'standard' | |
| input | Yes | Input prompt / problem statement | |
| model_id | Yes | Cortex model ID (e.g. 'mythos-3b'). Must be registered via tenzro_registerCortexWorker | |
| max_loops | No | Maximum recurrent loops (overrides tier). Optional | |
| min_loops | No | Minimum recurrent loops (overrides tier). Optional | |
| requester | No | Caller address (20- or 32-byte hex). Optional | |
| attestation | No | Attestation requirement: 'none', 'tee', 'tee_and_zk'. Default inferred from tier | |
| max_cost_wei | No | Maximum cost in wei (1 TNZO = 10^18 wei). Accepts u64 number or decimal string. Rejects if pricing exceeds. Optional |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full burden of behavioral disclosure. It explicitly mentions TNZO charging, the return of a signed CortexReceipt with specific commitments, and tier/loop budget selection. No destructive actions are implied, and the description aligns with the computational nature of the tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of four sentences, front-loading the core purpose and then providing essential behavioral details. No redundant or filler sentences; every sentence serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (8 params, 2 required) and the presence of an output schema, the description covers purpose, pricing, receipt details, and tier options. It mentions model registration prerequisite but omits error scenarios or network requirements. Overall, it is sufficiently complete for an agent to understand core functionality.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 8 parameters. The description adds minimal value beyond the schema, only reiterating tier and loop override concepts. Baseline 3 is appropriate as the description does not significantly enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool executes 'Tenzro Cortex recurrent-depth reasoning' using a registered Cortex worker. It specifies the action (invoke), the resource (Cortex worker), and the context (recurrent-depth transformer), distinguishing it from many sibling tools like chat_completion or list_models.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives implicit guidance on tier selection but does not explicitly state when to use this tool versus alternatives like chat_completion. No when-not or alternative tool references are provided, leaving the agent to infer context based on purpose alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_api_keyAInspect
Operator-only. Mint a new API key on this node. Requires the caller's MCP request to carry an X-Tenzro-Admin-Token header matching the node's configured admin token. class controls revocability: subject (default) — subject can self-revoke, admin can revoke; operator_internal — admin-only revoke; operator_protected — not revokable via RPC by anyone (rotate via operator secret + restart). The MCP tool auto-injects the confirm_operator_protected interlock when class is operator_protected. Returns the plaintext tnz_... key exactly once — persist it immediately.
| Name | Required | Description | Default |
|---|---|---|---|
| class | No | Key class — controls revocability. `subject` (default): subject can self-revoke, admin can revoke. `operator_internal`: admin-only revoke. `operator_protected`: not revokable via RPC by anyone (rotate via operator secret + restart). The MCP tool auto-injects the `confirm_operator_protected` interlock when class is `operator_protected`. | |
| label | Yes | Free-form label shown in `list` | |
| scopes | No | Scopes to grant (e.g. ["canton"]). Defaults to ["canton"] server-side when empty. | |
| subject | No | Optional subject identifier — typically a Tenzro DID. Required if the operator wants the holder to self-revoke later via `revoke_my_api_key`. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description fully discloses mutative nature, authentication requirement, revocability implications, auto-inject interlock for protected keys, and single-use plaintext return with persistence advice. No hidden behaviors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single dense paragraph with all key information. Front-loaded with critical 'Operator-only' note. Could benefit from structuring into bullet points for readability, but no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers prerequisites, authentication, parameter options, behavioral interlock, and return handling. Given output schema presence, description completes the missing behavioral and security context effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. Description adds detailed semantics for 'class' parameter beyond schema. Other parameters are adequately described in schema, but no extra detail for label, scopes, or subject.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it creates an API key on the node with 'Mint a new API key on this node'. Distinguishes from sibling tools like list_api_keys and revoke_api_key by focusing on creation and administrative control.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Specifies operator-only usage and required admin token header. Explains class options for revocability. Does not explicitly contrast with alternatives like list_api_keys, but the context is sufficient for correct use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_escrowAInspect
Create an on-chain escrow via a signed CreateEscrow transaction. Funds are locked at a deterministic vault address derived from the escrow_id; only the original payer can later release or refund.
| Name | Required | Description | Default |
|---|---|---|---|
| payee | Yes | Hex-encoded payee address (receives funds on release) | |
| payer | Yes | Hex-encoded payer address (must match the signing key) | |
| amount_wei | Yes | Amount in wei to hold in escrow as a decimal string (1 TNZO = 10^18 wei). | |
| timeout_secs | No | Timeout duration in seconds (for timeout-based release) | |
| release_condition | Yes | Release condition: 'provider_signature' | 'consumer_signature' | 'both_signatures' | 'verifier_signature' | 'timeout' | 'custom' |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that funds are locked at a deterministic vault address and only the payer can release/refund. However, it does not explain what happens if the escrow_id already exists, revert conditions, gas costs, or failure modes. This is acceptable but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first sentence describes the action, second adds an important constraint. 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although an output schema exists, the description does not mention the return value or success indicators. For a creation tool, it would be helpful to note what the response includes (e.g., transaction hash, escrow_id). However, given the output schema likely covers this, the description is minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (all 5 parameters have descriptions). The description adds context about the vault address and payer control, but does not elaborate on the parameters themselves beyond what the schema already provides. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates an on-chain escrow via a signed transaction, and distinguishes from siblings like release_escrow and refund_escrow by noting that only the payer can later release or refund. The verb 'create' and resource 'escrow' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool should be used to lock funds for a conditional release, and that subsequent actions (release/refund) are handled by other tools. It could be more explicit about prerequisites (e.g., the signer must be the payer) and when to use alternatives like get_escrow, but it provides clear context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_mpc_walletAInspect
Create a new MPC threshold wallet with configurable threshold and share count. Default is 2-of-3. Returns the wallet ID, address, and key share metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| key_type | No | Key type: 'ed25519' (default) or 'secp256k1' | |
| threshold | No | Number of shares required to sign (e.g. 2) | |
| total_shares | No | Total number of key shares (e.g. 3) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states creation and return values but lacks side effects, permissions, idempotency, or whether the wallet is on-chain. The default threshold is useful, but overall behavioral context is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with front-loaded action and return information. Every sentence is valuable, no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers basic purpose and return, but lacks guidance on alternative wallet creation tools and behavioral details like cost or failure modes. With no annotations, more context is needed for a complete picture.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, providing full parameter details. The description adds only the default 2-of-3, which is already implied by schema defaults. No additional meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and resource ('MPC threshold wallet'), clearly distinguishes from sibling tools like 'create_wallet' and 'create_user_wallet' by mentioning configurable threshold and default 2-of-3.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating MPC wallets but gives no explicit guidance on when to use this over alternatives like 'create_wallet' or 'create_user_wallet'. No when-not-to-use or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_nft_collectionAInspect
Create a new NFT collection on the Tenzro ledger. Supports ERC-721 (unique tokens) and ERC-1155 (semi-fungible tokens). Returns the collection ID and deployed address.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Collection name (e.g. 'Tenzro Validators') | |
| symbol | Yes | Collection symbol (e.g. 'TVAL') | |
| creator | Yes | Hex-encoded creator address | |
| base_uri | No | Optional base URI for token metadata (e.g. 'https://metadata.tenzro.com/collection/') | |
| standard | Yes | NFT standard: 'erc721' or 'erc1155' | |
| description | No | Optional collection description |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden of behavioral disclosure. It indicates a write operation ('Create') and mentions return values, but does not describe side effects, permissions, reversibility, or potential conflicts (e.g., duplicate names). This is adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences, 30 words, front-loaded with the action verb. No redundant or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a creation tool with moderate complexity (6 params, 4 required), the description covers purpose, supported standards, and return values. It omits prerequisites (e.g., wallet registration) and potential constraints, but given the existence of an output schema (context signal), the description provides sufficient contextual completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter having a description. The tool description reinforces the standard parameter by linking it to ERC-721/1155, but adds limited new meaning beyond what the 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create a new NFT collection'), specifies supported token standards (ERC-721 and ERC-1155), and explicitly mentions return values (collection ID and deployed address). This effectively distinguishes it from sibling tools like mint_nft or list_nft_collections.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives (e.g., mint_nft). It implicitly suggests its purpose but lacks context about prerequisites or sequencing, leaving the agent to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_payment_challengeCInspect
Create a payment challenge for a protected resource. Supports five protocols:
'mpp' (Machine Payments Protocol): Session-based streaming payments, ideal for per-token AI inference billing
'x402' (Coinbase HTTP 402): Stateless one-shot payments, ideal for API calls and data downloads
'visa-tap' (Visa Trusted Agent Protocol): RFC 9421 agent-verified payments for agentic commerce
'mastercard-agent-pay' (Mastercard Agent Pay): KYA-verified payments with agentic tokens
'native': Direct TNZO transfer on the Tenzro ledger
| Name | Required | Description | Default |
|---|---|---|---|
| asset | Yes | Payment asset: 'USDC', 'USDT', or 'TNZO' | |
| amount | Yes | Payment amount in smallest unit (e.g. 100 = 0.000100 USDC for x402, or TNZO base units for native) | |
| protocol | Yes | Payment protocol: 'mpp' (Machine Payments Protocol — session-based streaming), 'x402' (Coinbase HTTP 402 — stateless one-shot), or 'native' (direct TNZO transfer) | |
| resource | Yes | Resource URL or identifier being paid for (e.g. /api/inference, /api/data/query) | |
| recipient | Yes | Hex-encoded recipient address |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility. It only describes the protocols and purpose but omits behavioral details such as required permissions, side effects, or return values. The schema contradiction reduces trust in accuracy.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise but the protocol list is bulky and could be structured as a table or bulleted with additional context. No front-loading of critical info.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and an existing output schema, the description should clarify what the challenge response contains. It does not mention return format, idempotency, or auth requirements, leaving the agent underinformed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions, so baseline is 3. However, the description lists five protocols while the schema only enumerates three (mpp, x402, native), creating contradiction. This harms rather than adds value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a payment challenge for a protected resource. Even among sibling payment tools like open_payment_channel, the verb 'create' and noun 'challenge' distinguish it, though no explicit differentiation is provided.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 open_payment_channel or settle_payment. No when-not or context hints are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_proposalAInspect
Create a new governance proposal on the Tenzro Network. Requires a minimum staked balance to propose. Returns the new proposal ID and initial status.
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Proposal title | |
| payload | No | Optional JSON payload for the proposal (e.g. parameter changes) | |
| description | Yes | Detailed description of the proposal | |
| proposal_type | Yes | Proposal type: 'parameter_change', 'treasury', 'upgrade', 'text' | |
| proposer_address | Yes | Hex-encoded proposer address |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses the stake requirement (behavioral constraint) and states the return value (proposal ID and initial status). However, it does not describe side effects, error conditions, or the implications of creating a proposal. More detail would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two clear sentences. It front-loads the primary purpose and follows with a key constraint and output summary. No filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and the presence of an output schema (though not shown), the description covers purpose and a key constraint but lacks details on error handling, prerequisites beyond stake, or the format of the output. It is adequate but not comprehensive for a 5-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all 5 parameters. The description does not add additional meaning beyond the schema's own descriptions. Per guidelines, baseline 3 is appropriate when schema coverage is high.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the verb 'Create' and the resource 'governance proposal' on the Tenzro Network. It clearly distinguishes from siblings like 'vote_on_proposal' (voting) and 'list_proposals' (listing), as the action is specifically proposal creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a precondition: 'Requires a minimum staked balance to propose.' This provides context for when the tool can be used, but it does not explicitly state alternatives or when not to use it. An agent would benefit from guidance on when to choose this over other governance tools like 'vote_on_proposal'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_swarmAInspect
Create a swarm of coordinated agents under an orchestrator on the Tenzro Network. Each member spec spawns one child agent. Tasks can be dispatched to all members in parallel or sequentially.
| Name | Required | Description | Default |
|---|---|---|---|
| members | Yes | JSON array of member specs: [{"name":"analyst","capabilities":["data"]}] | |
| parallel | No | Dispatch tasks in parallel (default true) | |
| max_members | No | Max number of swarm members (default 10) | |
| orchestrator_id | Yes | Orchestrator agent ID | |
| task_timeout_secs | No | Task timeout in seconds (default 300) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description carries full burden. It explains basic behavior (parallel/sequential tasks, member specs) but lacks detail on side effects, permissions, idempotency, or error conditions. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with key info, no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists and schema covers all params, description is fairly complete. It explains core concepts (member specs, parallel/sequential). Could mention return value or asynchronous nature, but overall good.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions. Description adds some context for 'members' and 'parallel' param but no extra meaning for other params. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Create' and resource 'swarm of coordinated agents' on Tenzro Network. It distinguishes from sibling tools like 'spawn_agent' by specifying coordination and member specs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use vs alternatives, such as spawn_agent. Does not mention prerequisites, when not to use, or context for sequential vs parallel dispatch.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_tokenBInspect
Create a new ERC-20 token via the Tenzro token factory. Returns the deployed token address and token ID. The token is registered in the unified token registry and discoverable across all VMs.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Token name (e.g. 'My Token') | |
| symbol | Yes | Token symbol (e.g. 'MTK') | |
| creator | Yes | Creator address (hex, 20 or 32 bytes) | |
| vm_type | No | Target VM type: 'evm', 'svm', or 'daml' (default: 'evm') | |
| decimals | No | Token decimals (default: 18) | |
| signature | No | Optional hex-encoded signature over 'tenzro:create_token:{name}:{symbol}:{supply}' proving creator ownership (min 64 bytes) | |
| description | No | Optional token description | |
| permissions | No | Token permissions: 'mintable', 'burnable', 'pausable', 'freezable' | |
| initial_supply | Yes | Initial token supply as a string (e.g. '1000000000000000000000') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It mentions the token is registered and discoverable, but fails to disclose that this is a write/mutation operation, any authorization requirements (beyond optional signature parameter), potential irreversibility, or gas costs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core action, no redundant words. Efficient and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While an output schema exists (reducing need to describe returns), the description lacks important context: default values for optional parameters (e.g., vm_type defaults to 'evm', decimals defaults to 18), validation logic, and differentiation from other token creation tools in the sibling list.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed descriptions for all 9 parameters. The description adds no extra parameter information beyond the schema, 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create'), the specific resource ('ERC-20 token'), and the mechanism ('via the Tenzro token factory'). It distinguishes from sibling tools like 'create_nft_collection' which creates non-fungible tokens.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., 'mint_nft', 'crosschain_mint'). No prerequisites or conditions mentioned. The agent is left 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.
create_user_walletAInspect
Create a new user wallet under an application. Optionally fund it with an initial TNZO amount from the app's master wallet.
| Name | Required | Description | Default |
|---|---|---|---|
| label | Yes | Human-readable label for the user wallet | |
| app_id | Yes | Application ID (UUID) the wallet belongs to | |
| initial_funding_wei | No | Optional initial funding in wei as a decimal string (1 TNZO = 10^18 wei). Example: '10000000000000000000' for 10 TNZO. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must convey behavioral traits. It mentions creating and optionally funding, but does not disclose side effects (e.g., deduction from master wallet), permissions needed, or whether the operation is reversible. This is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences, no filler words, and the key action is front-loaded. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the main intent and mentions optional funding. An output schema exists, so return values are not needed. It lacks mention of edge cases (e.g., app not found), but overall is sufficiently complete for a creation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 explaining the optional parameter 'initial_funding_wei' comes from the app's master wallet and provides an example. This clarifies the parameter's purpose beyond the schema's description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that it creates a user wallet under an application, with an optional initial funding feature. It uses a specific verb ('create') and resource ('user wallet'), distinguishing it from siblings like 'create_wallet' and 'fund_user_wallet'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool: when creating a user wallet for an application. It implies the alternative of using 'fund_user_wallet' for funding existing wallets, though it does not explicitly list alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_walletBInspect
Create a new cryptographic keypair for use as a Tenzro wallet. Supports Ed25519 (Tenzro native) and Secp256k1 (EVM-compatible)
| Name | Required | Description | Default |
|---|---|---|---|
| key_type | No | Key type: 'ed25519' (default, Tenzro native) or 'secp256k1' (EVM-compatible) |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | Yes | Operator note. The private key is NOT returned by this tool — callers that need a signing key must use the wallet provisioning flow rather than this raw keypair generator. |
| address | Yes | Hex-encoded address derived from the public key (with `0x` prefix). |
| key_type | Yes | Key scheme — either `"Ed25519"` or `"Secp256k1"`. |
| public_key | Yes | Hex-encoded raw public key bytes (with `0x` prefix). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states that a keypair is created, without mentioning side effects, prerequisites, idempotency, or return behavior. This is insufficient for a creation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the primary purpose and include key supported options. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description, combined with the schema and output schema, is largely complete for a simple wallet creation. It could be improved by contrasting with sibling wallet tools, but it still provides sufficient context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the schema description fully explains the key_type parameter. The tool description restates the key types but adds no new semantic value 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Create') and resource ('new cryptographic keypair for use as a Tenzro wallet'), and specifies supported key types. However, it does not explicitly differentiate from sibling tools like create_user_wallet or create_mpc_wallet, though the keypair focus provides implicit distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., create_user_wallet, create_mpc_wallet) or when not to use it. The mention of supported key types is present but does not constitute usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_zk_proofAInspect
Create a Plonky3 STARK proof for one of the three Tenzro AIRs (inference, settlement, identity) over the KoalaBear field. Returns the hex-encoded bincode-serialized p3_uni_stark::Proof and public inputs (4-byte LE KoalaBear chunks).
| Name | Required | Description | Default |
|---|---|---|---|
| witness | Yes | Witness fields as a JSON object of u64 field-element values. Per circuit: inference={model_checksum,input_checksum,computed_output}; settlement={service_proof,amount}; identity={private_key,capabilities,capability_blinding} | |
| circuit_id | Yes | Circuit identifier — one of 'inference', 'settlement', 'identity' |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It discloses the proof generation action and output format but does not mention side effects, authentication needs, resource costs, or error behavior. Fairly transparent but could be more specific about computational expense or required privileges.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the main purpose and add critical details (proof system, field, output format) without redundancy. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of a comprehensive input schema and an output schema (not shown), the description covers the essential aspects: type of proof, field, circuits, output serialization. It does not mention prerequisites like circuit availability or validation, but for a cryptographic proof tool this is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with detailed parameter descriptions (witness structure per circuit, allowed circuit_id values). The description does not add new parameter-level information beyond what the schema provides, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description explicitly states the tool creates a Plonky3 STARK proof for specific Tenzro AIRs (inference, settlement, identity) using the KoalaBear field, with output format clearly specified. This uniquely identifies its function and distinguishes it from siblings like verify_zk_proof.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for generating proofs for the mentioned circuits but does not explicitly state when to use vs. alternatives, nor does it provide when-not-to-use or prerequisite conditions. It is adequate but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
crosschain_burnAInspect
Burn tokens for a crosschain transfer (ERC-7802 crosschainBurn). Only pre-authorized bridges can call this. Tokens are burned on the local chain and will be minted on the destination chain. Returns the burn event and nonce.
| Name | Required | Description | Default |
|---|---|---|---|
| from | Yes | Hex-encoded address to burn from | |
| amount | Yes | Amount to burn in base units | |
| bridge | Yes | Hex-encoded authorized bridge address | |
| destination | Yes | Destination chain identifier (e.g. 'ethereum', 'solana') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses key behaviors: tokens burned on local chain, minted on destination, returns burn event and nonce, and authorization requirement. It does not cover revert conditions or side effects but is sufficient for a standard burn action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences that front-load the purpose and standard, then add constraints and returns. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (declared), the description covers the core action, precondition, and result. It could mention amount bounds but is adequate for a standard crosschain burn.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 extra meaning beyond the schema; the authorization hint applies to the 'bridge' parameter but no additional format or semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool burns tokens for crosschain transfer per ERC-7802, clarifying the two-phase process (burn local, mint destination) and mentioning the return value. This distinguishes it from siblings like crosschain_mint and bridge_tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It notes that only pre-authorized bridges can call, providing a constraint, but does not explicitly compare with sibling tools or state when to use this vs alternatives like bridge_tokens or crosschain_mint.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
crosschain_mintAInspect
Mint tokens via an authorized crosschain bridge (ERC-7802 crosschainMint). Only pre-authorized bridges can call this. Tokens are minted on the local chain after being burned on the source chain. Returns the mint event and nonce.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Hex-encoded recipient address | |
| amount | Yes | Amount to mint in base units | |
| bridge | Yes | Hex-encoded authorized bridge address | |
| sender | Yes | Hex-encoded sender address on the source chain (for event attribution) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses that tokens are minted locally after being burned on the source chain and returns the mint event and nonce. This provides essential behavioral context, though it could mention potential failure modes or authorization checks.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loading the purpose and mechanism with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists and parameters are well-documented, the description covers the key behavioral aspects. It could be more complete by referencing the need for prior bridge authorization, but it is sufficient for operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each parameter has basic descriptions (e.g., 'Hex-encoded recipient address'). The description adds no additional 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it mints tokens via an authorized crosschain bridge referencing ERC-7802 standard. It distinguishes from siblings like crosschain_burn and attested_mint by specifying the crosschain mint mechanism.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description notes that only pre-authorized bridges can call this, providing a clear usage constraint. However, it does not explicitly contrast with alternative tools like attested_mint, though 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.
cross_vm_transferBInspect
Transfer tokens between VMs (e.g., EVM to SVM). Uses the cross-VM bridge precompile for atomic transfers. Only TNZO is currently supported for cross-VM transfers.
| Name | Required | Description | Default |
|---|---|---|---|
| to_vm | Yes | Destination VM: 'evm', 'svm', 'daml', 'native' | |
| token | Yes | Token symbol or 'TNZO' | |
| amount | Yes | Amount as string (in native decimals) | |
| from_vm | Yes | Source VM: 'evm', 'svm', 'daml', 'native' | |
| to_address | Yes | Destination address (hex) | |
| from_address | Yes | Source address (hex) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral traits. It notes 'atomic transfers' but does not disclose potential side effects, authorization requirements, gas costs, confirmation times, or reversibility. The user is left to infer important behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, front-loading the main action and key constraints. Every sentence adds value without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (6 required parameters, output schema present, no annotations), the description is adequate but lacks context on prerequisites, error conditions, fees, or limits. It is minimally sufficient for a straightforward transfer operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, so the description adds marginal value beyond the schema. It mentions the supported token (TNZO) which echoes the schema's token parameter description. No new parameter semantics are introduced.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Transfer tokens between VMs', specifies example source/destination (EVM to SVM), and notes the only supported token (TNZO). This sufficiently distinguishes it from sibling tools like bridge_tokens or crosschain_burn.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
While the description mentions the limitation 'Only TNZO is currently supported', it does not provide guidance on when to use this tool versus alternatives such as bridge_tokens or wormhole_bridge. No explicit when-to-use or when-not-to-use instructions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
debridge_create_txAInspect
Create a cross-chain transaction via deBridge DLN. Returns transaction data ready for signing and submission.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Amount in smallest unit (wei/lamports) | |
| sender | No | Sender address on source chain | |
| dst_token | Yes | Destination token address | |
| recipient | Yes | Recipient address on destination chain | |
| src_token | Yes | Source token address | |
| dst_chain_id | Yes | Destination chain ID | |
| src_chain_id | Yes | Source chain ID (e.g. 1 for Ethereum) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the tool returns transaction data ready for signing (not submitting), which is helpful. However, it does not mention side effects, costs, or required user actions beyond signing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded, and 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description need not detail return values. It appropriately notes the output is ready for signing. Minor omission: no mention of potential errors or preconditions (e.g., valid chain IDs), but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds no additional meaning beyond the schema's parameter descriptions; it only explains the output context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a cross-chain transaction via deBridge DLN and returns data ready for signing. It uses a specific verb ('Create') and resource ('cross-chain transaction'), and is easily distinguished from sibling tools like debridge_get_chains or debridge_same_chain_swap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 bridging tools or debridge_same_chain_swap). No prerequisites or context for appropriate usage are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
debridge_get_chainsAInspect
Get all blockchain networks supported by deBridge DLN for cross-chain transfers.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It states the tool returns all supported blockchain networks, which is transparent about the output. However, it does not mention any side effects, authentication needs, or rate limits, which for a simple GET might be acceptable but 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It is front-loaded with the verb and resource, making it efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and an output schema exists, the description sufficiently explains the tool's purpose and output scope. There is no missing context for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters and schema coverage is 100%, so the description does not need to add parameter information. The baseline for 0 parameters is 4, and the description meets that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 'all blockchain networks supported by deBridge DLN for cross-chain transfers', which is specific and distinguishes it from sibling tools like debridge_create_tx or debridge_get_instructions that handle transactions or instructions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., other chain-listing tools or deBridge tools). The description only states what it does, without context on selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
debridge_get_instructionsAInspect
Get deBridge operational instructions and guidance for cross-chain transfers.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states that the tool 'gets instructions' but does not disclose whether it requires network access, has rate limits, or any other behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no fluff. Every word is purposeful, efficiently conveying the tool's purpose without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no inputs and an output schema exists, the description is minimally adequate. However, it does not explain what the instructions include or how they are structured, which could be valuable for an agent deciding to use it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, and the schema coverage is 100% trivially. Per guidelines, 0 parameters yield a baseline of 4. The description adds no further value beyond the schema, but no additional parameter information is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 'operational instructions and guidance for cross-chain transfers' using deBridge. It distinguishes itself from sibling tools like debridge_create_tx or debridge_get_chains by focusing on instructions rather than transactions or queries.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. It does not mention prerequisites, contexts, or explicitly state when it should or should not be used, leaving the agent to infer from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
debridge_same_chain_swapBInspect
Execute a same-chain token swap via deBridge. Swaps tokens on the same blockchain without cross-chain bridging.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Amount of input token in smallest unit | |
| sender | No | Sender address | |
| chain_id | Yes | Chain ID for the swap | |
| token_in | Yes | Input token address | |
| token_out | Yes | Output token address |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description does not disclose behavioral traits such as whether it requires approvals, sends transactions, incurs fees, or handles failures. This is insufficient 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two short sentences and no wasted words. However, it could include more contextual information without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 parameters, 4 required) and lack of annotations, the description is too minimal. It omits behavioral details and usage guidance, making it incomplete for an agent to use effectively. An output schema exists but is not referenced.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for all parameters. The description adds no additional parameter semantics beyond what the schema already 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool executes a same-chain token swap via deBridge, and explicitly clarifies it does not involve cross-chain bridging. This distinguishes it from sibling tools like 'bridge_tokens' and 'debridge_create_tx'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide any explicit guidance on when to use this tool vs alternatives. While it mentions 'same-chain', it fails to list criteria or mention related tools for cross-chain swaps.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
debridge_search_tokensAInspect
Search for tokens available on deBridge DLN. Returns token addresses, symbols, and supported chains.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Token name, symbol, or address to search for | |
| chain_id | No | Optional chain ID to filter results (e.g. 1 for Ethereum, 56 for BSC) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose behavioral traits such as idempotency, side effects, rate limits, or whether it's read-only. It only describes the basic function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the verb 'Search', and no extraneous words. Highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema and only two parameters, the description covers the key aspects. However, it lacks any mention of result limits or pagination, which would be helpful for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes both parameters (query and chain_id) with clear descriptions. The tool description adds no additional 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for tokens on deBridge DLN and specifies the returned data (token addresses, symbols, supported chains). It distinguishes from sibling tools like debridge_get_chains and debridge_get_instructions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for finding token info on deBridge DLN but does not explicitly state when to use versus alternative token search tools (e.g., list_tokens, get_token_info) 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.
decide_approvalAInspect
Decide a pending approval — decision is 'approved' or 'denied'. When approver_did is supplied, the engine refuses to apply the decision unless the record's approver_did matches (cross-approver tampering defence). Mismatch returns JSON-RPC -32001 (forbidden). Returns the updated approval record. Requires AuthEngine to be initialised on the node.
| Name | Required | Description | Default |
|---|---|---|---|
| decision | Yes | Decision: 'approved' or 'denied' | |
| approval_id | Yes | Engine-assigned approval id | |
| approver_did | No | Optional but recommended: the deciding approver's DID. When supplied, the engine refuses the decision unless the record's approver_did matches (cross-approver tampering defence). Mismatch returns -32001 (forbidden). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses the cross-approver defence behavior, error code (-32001), return value (updated record), and requirement for AuthEngine initialization. Since no annotations are provided, this adds necessary 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three focused sentences, no redundancy, front-loaded with primary action. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers all necessary aspects: action, parameters, defense mechanism, return value, error case, and auth requirement. Output schema exists, so no need to elaborate on return structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and description repeats schema details for 'decision' and 'approver_did' without adding new information beyond the cross-approver defence already noted in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action: 'Decide a pending approval' with allowed decisions ('approved' or 'denied'). Distinguishes from sibling tools like 'get_approval' by focusing on writing a decision.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Describes when to use (for pending approvals) and the condition for the cross-approver defence. However, it does not explicitly contrast with alternatives, though no direct siblings exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
decode_resultAInspect
ABI-decode contract call return data. Takes hex-encoded return data and output type signatures, returns decoded values. Useful for interpreting EVM contract responses.
| Name | Required | Description | Default |
|---|---|---|---|
| data_hex | Yes | Hex-encoded return data from a contract call | |
| output_types | Yes | Output type signatures (e.g. ['uint256', 'bool', 'address']) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description states it decodes data but does not disclose potential issues like invalid input handling, error conditions, or any side effects. Transparency is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action, no filler. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, schema covers parameters, and output schema exists, the description is complete. It covers inputs, operation, and use case.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 examples ('e.g. ["uint256", "bool", "address"]') and clarifies the nature of data_hex, but does not significantly exceed schema info.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (ABI-decode), the resource (contract call return data), and specifies inputs (hex-encoded data, output types) and output (decoded values). It distinguishes itself from siblings like encode_function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions it's 'useful for interpreting EVM contract responses,' providing context but no explicit when-to-use vs alternatives or when-not-to-use. It lacks exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
decrypt_dataAInspect
Decrypt AES-256-GCM encrypted data using the key and nonce. Returns the plaintext in hex.
| Name | Required | Description | Default |
|---|---|---|---|
| key_hex | Yes | Hex-encoded 32-byte AES-256-GCM key | |
| nonce_hex | Yes | Hex-encoded 12-byte nonce used during encryption | |
| ciphertext_hex | Yes | Hex-encoded ciphertext |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the return format but does not disclose failure modes, side effects (none expected), or computational cost. Minimal 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no wasted words, front-loaded with key information. Efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple tool with an output schema and clear parameter descriptions, the description provides enough context to understand what the tool does and what it returns. No missing pieces.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 extra meaning beyond the schema. It mentions the algorithm in the description line but offers no additional context on parameter usage or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Decrypt'), the algorithm ('AES-256-GCM'), and the return format ('plaintext in hex'). It also distinguishes itself from the sibling 'encrypt_data' and other cryptographic tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for decryption but does not explicitly state when to use vs. alternatives, nor does it mention prerequisites or conditions. It provides no guidance on 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.
delegate_taskBInspect
Delegate a task from one agent to another on the Tenzro Network. Optionally set a wei budget cap for the delegated task (1 TNZO = 10^18 wei). Returns the delegation record and task ID.
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | Task description or task ID to delegate | |
| delegate_did | Yes | DID of the agent to delegate to | |
| delegator_did | Yes | DID of the delegating agent | |
| max_budget_wei | No | Optional maximum budget for the delegated task in wei (1 TNZO = 10^18 wei). Accepts u64 number or decimal string. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It states it returns a delegation record and task ID but does not disclose side effects (e.g., state mutation, permission requirements, or destructive nature). This is minimal 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core action, and contains no redundant information. Every word serves a purpose, making it highly efficient for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters, no enums, and an output schema (mentioned in context), the description provides basic context but lacks behavioral details like prerequisites, side effects, or error conditions. It is complete enough for a straightforward task but not thorough for complex scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for all 4 parameters. The description adds value by explaining the wei budget conversion (1 TNZO = 10^18 wei) and stating the return type, which goes beyond the raw schema. This helps agents understand the optional parameter's unit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Delegate a task from one agent to another' and the resource (task on Tenzro Network). It is specific and distinguishes from siblings like assign_task or post_task, though no explicit differentiation is made. Purpose is well-understood.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for delegating tasks with an optional budget cap but does not provide guidance on when to use this tool versus alternatives (e.g., assign_task, quote_task). No when-not or context for exclusion is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delegate_voting_powerAInspect
Delegate governance voting power from one address to another. Delegated TNZO stake will count toward the delegate's votes. Returns the delegation record.
| Name | Required | Description | Default |
|---|---|---|---|
| amount_wei | No | Amount in wei as a decimal string (1 TNZO = 10^18 wei). Example: '100000000000000000000' for 100 TNZO. If omitted, delegates the full staked balance. | |
| to_address | Yes | Hex-encoded delegate address to receive voting power | |
| from_address | Yes | Hex-encoded delegator address |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It mentions that delegated stake counts toward the delegate's votes and returns a record, but it omits crucial details like whether delegation is irreversible, permissions required, or any side effects. For a governance action, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three concise sentences with no wasted words. It front-loads the core purpose, adds behavioral context, and states the return. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's governance nature and the existence of an output schema, the description covers the main action and return but lacks guidance on prerequisites (e.g., staked balance), error conditions, and differentiation from 'set_delegation_scope'. It is adequate but has noticeable gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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. The description adds context about the effect of delegation but does not enhance parameter semantics beyond what the schema provides. The baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Delegate' and the resource 'governance voting power', specifying the action from one address to another. It distinguishes itself from siblings like 'vote_on_proposal' (voting) and 'get_voting_power' (retrieval) by focusing on delegation. The mention of TNZO stake adds specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for delegating voting power but does not explicitly state when to use this tool versus alternatives like 'set_delegation_scope' or when not to use it. It lacks guidance on prerequisites or exclusions, so it provides only implied context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_model_mcpAInspect
Delete a model from this node's local storage. The model must not be currently serving. Frees disk space. Returns deletion confirmation.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Model ID to delete from local storage |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the destructive nature ('Delete', 'Frees disk space'), a precondition, and the return type. However, it does not explicitly state that the operation is irreversible or describe error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, front-loaded with the primary purpose in the first sentence. It contains no fluff and every sentence adds value (precondition, effect, return).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, output schema present), the description is largely complete. It covers purpose, precondition, effect, and return. It could be enhanced by noting irreversibility or error cases, but it's adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100% and already defines the 'model_id' parameter. The tool description adds no additional meaning to the parameter beyond the schema, maintaining the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Delete', the resource 'model', and the scope 'from this node's local storage'. It distinguishes from sibling tools like 'load_model' or 'serve_model_mcp' by focusing on deletion and freeing disk space.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a precondition ('model must not be currently serving') which implies when to use the tool, but does not explicitly mention alternatives or when not to use it. Usage guidance 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.
delete_webhookAInspect
Delete a webhook by id. Returns JSON-RPC error -32602 if the id is unknown.
| Name | Required | Description | Default |
|---|---|---|---|
| webhook_id | Yes | Webhook id returned by register_webhook / list_webhooks |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the burden. It discloses an important error condition (JSON-RPC error -32602 for unknown id), but does not mention other behavioral traits like idempotency, authentication needs, or side effects beyond deletion.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The first states the action, the second adds an important error detail. Perfectly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple deletion tool with one parameter and an output schema, the description covers the core purpose and a key error. Missing idempotency note, but complete enough for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the only parameter, so baseline is 3. The description adds no additional meaning beyond what the schema already provides ('Webhook id returned by register_webhook / list_webhooks').
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb+resource: 'Delete a webhook by id.' The action is unambiguous. However, it does not distinguish itself from sibling tools like register_webhook or list_webhooks, which would earn a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you have a webhook id and want to delete it. No explicit when-not or alternative tools are mentioned, so it is adequate but not strong on guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
deploy_contractBInspect
Deploy a smart contract to the Tenzro ledger. Supports EVM (Solidity bytecode), SVM (BPF programs), and DAML (DAR packages). Returns the deployed contract address.
| Name | Required | Description | Default |
|---|---|---|---|
| vm_type | Yes | Target VM: 'evm', 'svm', or 'daml' | |
| bytecode | Yes | Contract bytecode (hex-encoded, with optional 0x prefix) | |
| deployer | Yes | Deployer address (hex) | |
| gas_limit | No | Gas limit for deployment (default: 3000000) | |
| signature | No | Optional hex-encoded signature over 'tenzro:deploy_contract:{vm_type}:{deployer}' proving deployer ownership (min 64 bytes) | |
| constructor_args | No | ABI-encoded constructor arguments (hex, optional) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries full burden. It mentions the return of the deployed contract address but omits critical behavioral traits like gas consumption, funding requirements, sync/async nature, confirmation times, or error handling for deployment failures.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the purpose and key supported variants. 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the core function but lacks details on post-deployment behavior, error scenarios, and state changes. With an output schema likely present, return value is covered, but overall completeness for a deployment tool is moderate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 adds minimal value beyond the schema, such as repeating supported VM types already in the schema. No additional clarity on parameters like gas_limit, signature, or constructor_args.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Deploy', the resource 'smart contract to the Tenzro ledger', and specifies supported VM types (EVM, SVM, DAML). It distinguishes itself from sibling tools as the only deployment tool, with no overlap in functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, such as token creation or contract interaction tools. The description lacks prerequisites, context for when this deployment is appropriate, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
derive_keyBInspect
Derive a 256-bit encryption key from a password using Argon2id KDF. Returns the derived key in hex.
| Name | Required | Description | Default |
|---|---|---|---|
| password | Yes | Password to derive a 256-bit key from using Argon2id |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden but does not disclose important behaviors: no mention that it is a safe read-only operation, no discussion of computational cost (Argon2id can be expensive), and no prerequisites (e.g., password length constraints). The agent is left unaware of these traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the action and algorithm, with 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter, the description is nearly complete. It specifies the output format (hex) and algorithm. Minor gaps: could explicitly mention the output length (64 hex characters) or potential errors, but the omission is acceptable given the tool's low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'password' is fully described in the schema (100% coverage). The description adds no extra semantic context beyond what the schema already provides, earning a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action ('Derive a 256-bit encryption key'), the algorithm ('Argon2id KDF'), and the output format ('Returns the derived key in hex'). This distinguishes it from sibling tools like hash_keccak256, hash_sha256, or generate_keypair, which serve different cryptographic purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., hash functions or key generation). Missing context such as 'Use for password-based encryption' or 'Not for random key generation' reduces the agent's ability to select the right tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
detectAInspect
Run object detection on an image. Returns an array of detections with bounding box (x0,y0,x1,y1), label_id, and confidence score. NMS-free for DETR-family models — just sigmoid + score threshold.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered detector id (e.g. 'rf-detr-base', 'rf-detr-nano', 'd-fine-l') | |
| image_base64 | Yes | Base64-encoded image bytes | |
| score_threshold | No | Score threshold (0.0–1.0). Detections below this are dropped. Default 0.25. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully describes the core behavior: it runs detection, returns an array of specific fields, and explains the NMS-free scoring approach. This adds meaningful behavioral context beyond what structured fields would capture.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences that front-load the purpose and output, then provide a key behavioral highlight. Every sentence earns its place without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity and the presence of an output schema, the description covers the main purpose, output format, and a distinctive behavioral trait. It could be improved by mentioning that the model must be loaded beforehand, 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, so the baseline is 3. The description adds minimal additional parameter insight beyond the schema, only briefly referencing the score threshold role. It does not significantly augment parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action ('Run object detection on an image') and specifies the output format with exact details (bounding box coordinates, label_id, confidence score). It distinguishes itself from sibling tools like 'load_detection_model' by focusing on inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 provides a behavioral note about NMS-free handling but lacks context on prerequisites or exclusions. Usage is implied but not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
detect_teeAInspect
Detect available Trusted Execution Environment (TEE) hardware on this node. Returns detected TEE type (Intel TDX, AMD SEV-SNP, AWS Nitro, NVIDIA GPU CC) or simulation mode.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It describes the return value (detected type or simulation) and implies read-only behavior. However, it lacks details on permissions, failure cases, or whether the tool requires specific hardware access.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys purpose, supported types, and return value. No fluff or unnecessary repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, output schema exists), the description adequately explains what the tool does and what it returns. It lists specific TEE types and mentions simulation mode, which is sufficient for an agent to understand its use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and schema coverage is 100% (empty schema). With no parameters, the description does not need to add meaning; baseline score is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it detects available TEE hardware, lists specific supported types (Intel TDX, AMD SEV-SNP, AWS Nitro, NVIDIA GPU CC) and mentions simulation mode. This is a specific verb-resource combination that distinguishes it from sibling tools like list_tee_providers or get_tee_attestation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage before TEE-dependent operations but does not explicitly state when to use versus alternatives (e.g., get_tee_attestation, verify_tee_attestation). No when-not or exclusion criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
discover_agentsBInspect
Discover registered AI agents on the Tenzro Network. Filter by capability or agent type. Returns agent DIDs, capabilities, endpoints, and reputation scores.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of agents to return (default 20) | |
| agent_type | No | Filter by agent type: 'autonomous', 'assistant', 'validator', 'oracle' | |
| capability | No | Filter by capability (e.g. 'inference', 'settlement', 'bridge') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose all behavioral traits. It states the tool returns specific data (DIDs, capabilities, endpoints, reputation scores), which is good. However, it does not mention if the operation is read-only, requires authentication, has rate limits, or any 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, then filter and return information. Every word is necessary; no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (3 optional params, no required fields) and the presence of an output schema, the description adequately covers what the tool does and returns. Missing behavioral context (e.g., default limits, pagination) would push it higher.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 (limit, agent_type, capability). The description's mention of 'filter by capability or agent type' adds no new meaning beyond the schema, earning a baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool discovers registered AI agents, lists filter options, and specifies returned fields. It is specific and actionable, but does not explicitly differentiate from sibling tools like 'find_best_agent_for_capability' or 'list_providers'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions filtering by capability or agent type but provides no guidance on when to use this tool versus alternatives, nor does it specify prerequisites or exclusions. With over 200 sibling tools, this is a significant gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
discover_modelsAInspect
Discover available AI models on the Tenzro Network. Filter by category, serving status, or max price. Returns model IDs, providers, pricing, and endpoints.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Optional model category filter: 'text', 'image', 'audio', 'multimodal' | |
| serving_only | No | Only return models currently being served | |
| max_price_wei | No | Maximum price per 1k tokens in wei (1 TNZO = 10^18 wei). Accepts u64 number or decimal string. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It conveys read-only behavior (discover) but does not disclose idempotency, rate limits, or any side effects. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with front-loaded purpose. Every sentence is informative and necessary, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description adequately covers purpose, filters, and return fields. Could mention ordering or default behavior, but overall complete for discovery tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions. The description summarizes filtering by category, status, and price, but adds minimal value 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (Discover) and resource (AI models on Tenzro Network). It distinguishes from similar sibling tools like 'list_models' by specifying filtering capabilities and return fields.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for discovery with filters but does not explicitly guide when to use this tool over alternatives like 'list_models' or category-specific lists. No when-not-to-use or exclusion criteria provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
download_agent_templateBInspect
Download and instantiate an agent template. Creates a new agent identity from the template with optional configuration overrides. Returns the new agent DID and wallet.
| Name | Required | Description | Default |
|---|---|---|---|
| template_id | Yes | Agent template ID to download and instantiate | |
| controller_did | Yes | DID of the controller that will own the instantiated agent | |
| config_overrides | No | Optional JSON configuration overrides for the template |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully convey behavior. It mentions creation and return values but omits side effects, required permissions, idempotency, or error scenarios. The description is accurate but insufficient for a complete understanding of risks.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the core action and outcome. Every phrase is meaningful with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential purpose and key outputs. An output schema exists, reducing the need to detail return values. However, it could mention that the template must exist and what happens on success/failure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already describes each parameter. The description adds minimal value by noting 'optional configuration overrides' for config_overrides, but does not explain template_id or controller_did beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Download and instantiate an agent template' and specifies outcomes. However, it does not differentiate from the very similar sibling tool 'spawn_agent_from_template', which likely performs a similar function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'spawn_agent_from_template' or 'run_agent_template'. The description implies usage for instantiation but offers no 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.
download_modelAInspect
Download a model from the Tenzro model registry or HuggingFace Hub to this node's local storage. Performs SHA-256 integrity verification. Returns download status and progress.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Model ID to download (e.g. 'gemma3-270m', 'qwen3.5-0.8b') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It mentions SHA-256 verification and returns status/progress, but omits details like overwrite behavior, asynchronicity, or storage limits. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no redundancy. Purpose is front-loaded, and every word adds value. Very efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return value explanation is not needed. However, missing context about permissions, network requirements, or conflicts with existing files. Minimal but functional for a simple download.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a description of model_id. The description adds concrete examples ('gemma3-270m', 'qwen3.5-0.8b') that provide meaningful context beyond the schema's abstract definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it downloads a model from either the Tenzro model registry or HuggingFace Hub to local storage, with integrity verification. It distinguishes from siblings like list_models (listing) and load_audio_model (loading into memory). The verb 'download' and resource 'model' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 load_model, or prerequisites such as needing a model_id from list_models. The description does not mention 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.
eip7702_build_designatorAInspect
Build the 23-byte EIP-7702 delegation designator (0xef0100 || delegate_address) that gets written into the EOA's code slot once an authorization is accepted. Returns {designator, length: 23, prefix: '0xef0100', delegate_address}.
| Name | Required | Description | Default |
|---|---|---|---|
| delegate_address | Yes | 20-byte delegate contract address (0x-prefixed hex). Embedded into the 23-byte designator after the 0xef0100 prefix. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses the designator format and return structure. No annotations provided, but the description is transparent about the operation. It does not cover error handling or side effects, but for a pure builder this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with return fields; no redundant information. Front-loaded with action and key details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool, the description fully covers purpose, parameter, and return format. Output schema is described in text, making it complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the description adds no new information beyond the schema's parameter description. Baseline score of 3 is appropriate as per guidelines.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly specifies the verb 'Build' and resource 'EIP-7702 delegation designator', detailing its structure and return format. Distinguishes from siblings like eip7702_parse_designator by focusing on construction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Describes what the tool does but does not explicitly state when to use it versus alternatives (e.g., parsing). Context is implied but lacks explicit guidance on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eip7702_parse_designatorAInspect
Decode an account's code (hex with or without 0x prefix) and extract the delegate address if it is a valid EIP-7702 designator. Returns {is_designator: false, delegate_address: null} for code that is not a 23-byte 7702 designator.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Account code bytes as hex (with or without 0x prefix). Returns is_designator=true only if exactly 23 bytes and starts with 0xef0100. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It explains the return format for both designator and non-designator cases, and implies the parse logic (check length and prefix). However, it does not explicitly cover edge cases like invalid hex or non-string inputs, which are handled by the input schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the main action and result. Every sentence adds value: the first states the primary function, the second clarifies the negative case. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple tool with one parameter and an output schema, the description is complete. It explains input format (hex with/without 0x), the condition for a valid designator, and the return object for both true and false cases. No obvious gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a detailed description for the single 'code' parameter. The tool description adds the return format, but for parameter semantics specifically, it does not add meaning beyond what the schema already provides. Baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Decode an account's code') and the resource ('account's code'). It specifies the output (extract delegate address) and distinguishes from sibling tools like eip7702_build_designator by focusing on parsing existing code rather than building or querying protocol info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when you need to check if code is a designator and get the delegate address, but it does not explicitly state when to use this tool vs alternatives like eip7702_build_designator. No 'when-not' or comparative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eip7702_protocol_infoAInspect
Read static metadata about the EIP-7702 support surface — tx type (0x04), magic byte (0x05), designator prefix (0xef0100), designator length (23 bytes), signing scheme (secp256k1), and operator notes on the current transaction-side integration state.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states 'Read static metadata,' indicating read-only behavior, but does not explicitly disclose that the call has no side effects, is idempotent, or requires any permissions. More explicit behavioral context would improve this.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the purpose ('Read static metadata') and packs all essential details without waste. Every phrase adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lists the metadata fields returned and there is an output schema (not shown but noted). However, it does not mention any prerequisites (e.g., network access) or clarify the 'operator notes' part. For a simple read tool, it is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so no parameter descriptions are needed. The baseline for 0 parameters is 4, and the description adds no unnecessary param info, earning a 5.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Read') and resource ('static metadata about the EIP-7702 support surface'), and enumerates concrete items (tx type, magic byte, etc.) that clearly distinguish it from sibling tools like eip7702_build_designator or eip7702_signing_hash.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for retrieving static metadata, but it does not explicitly state when to use it versus alternatives, nor does it provide any exclusions or preconditions. Sibling tools exist for different EIP-7702 operations, but no guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eip7702_signing_hashAInspect
Compute the secp256k1 signing hash for an EIP-7702 authorization tuple (chain_id, delegate_address, nonce). The returned signing_hash is what the EOA's secp256k1 private key signs client-side; full preimage is MAGIC(0x05) || rlp([chain_id, delegate_address, nonce]). Returns {signing_hash, signing_data, magic_byte}.
| Name | Required | Description | Default |
|---|---|---|---|
| nonce | Yes | EOA authorization nonce (separate from the EOA's transaction nonce) | |
| chain_id | Yes | EIP-155 chain ID the authorization is bound to | |
| delegate_address | Yes | 20-byte delegate contract address (0x-prefixed hex) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It describes the computation and return values, which implies a stateless, pure function. However, it does not explicitly state safety properties (e.g., read-only, non-destructive) or side effects, which is a gap without annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loading the core purpose and input tuple, then adding details on return value and preimage. Every sentence contributes essential information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (3 params, output defined), the description explains inputs, output fields, and the preimage formula. However, it does not explicitly define the 'signing_data' field (likely the preimage), leaving a minor ambiguity. Still largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter described, but the description adds value by explaining how the parameters form the authorization tuple and the preimage structure ("full preimage is MAGIC(0x05) || rlp([chain_id, delegate_address, nonce])"). This provides meaningful context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool computes the secp256k1 signing hash for an EIP-7702 authorization tuple, specifying the inputs and output. It distinguishes itself from sibling tools like eip7702_build_designator and eip7702_parse_designator by focusing on the signing hash, with precise detail on the preimage construction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for client-side signing ("what the EOA's secp256k1 private key signs client-side") but does not explicitly state when to use this tool versus alternatives, nor does it mention when not to use it. No exclusions or alternative tools are referenced.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
encode_functionAInspect
ABI-encode a function call. Takes a Solidity-style function signature and arguments, returns hex-encoded calldata. Useful for preparing EVM contract interactions.
| Name | Required | Description | Default |
|---|---|---|---|
| args | Yes | Function arguments as JSON array (e.g. ['0xabc...', '1000000']) | |
| function_sig | Yes | Function signature (e.g. 'transfer(address,uint256)') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry behavioral disclosure. It only states it 'returns hex-encoded calldata' but does not describe error conditions, idempotency, or potential invalid input behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the action and add context. Every sentence is informative with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, rich schema with 100% coverage, and presence of an output schema, the description is sufficiently complete. No missing critical details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 context by restating 'Solidity-style function signature and arguments', not significantly enhancing the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'ABI-encode a function call' with specific inputs and output. It distinguishes from related tools like decode_result and hash functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions it is 'useful for preparing EVM contract interactions', implying when to use. However, it does not explicitly state when not to use or mention alternatives among the many encoding siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
encrypt_dataBInspect
Encrypt data using AES-256-GCM symmetric encryption. Returns the ciphertext and nonce in hex.
| Name | Required | Description | Default |
|---|---|---|---|
| key_hex | Yes | Hex-encoded 32-byte AES-256-GCM key | |
| plaintext_hex | Yes | Hex-encoded plaintext data |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full burden. It discloses the output format (ciphertext and nonce in hex) but omits details like error behavior on invalid keys or nonce generation. This is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the purpose and output. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple and the output schema exists. The description adequately covers the essential behavior. Minor missing context (e.g., key length requirement) but not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes both parameters with 100% coverage. The description adds no additional 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it encrypts data using AES-256-GCM and returns ciphertext and nonce in hex. However, it does not differentiate from sibling tools like seal_data or decrypt_data, which might overlap in functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as decrypt_data or seal_data. The description lacks any contextual cues for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc7683_get_fillAInspect
Fetch a single ERC-7683 FillRecord by (order_id, origin_chain_id). Returns the record JSON, or -32000 if no fill has been recorded.
| Name | Required | Description | Default |
|---|---|---|---|
| order_id | Yes | 32-byte order id (hex). | |
| origin_chain_id | Yes | CAIP-2 numeric origin chain id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the return value (record JSON or error code -32000) and implies a read-only operation, but does not discuss side effects, authentication needs, or rate limits. The error case is helpful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 17 words, front-loading the purpose and key parameters. No redundant or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 parameters, no nested objects), the description adequately covers the core behavior and error condition. The output schema existence compensates for not detailing the return structure. Minor gap: no mention of what happens if multiple records exist for the same key.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are fully described in the input schema (order_id as hex string, origin_chain_id as integer with limits). The description slightly adds value by mentioning the composite key structure, but does not go beyond the schema details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Fetch'), the resource ('a single ERC-7683 FillRecord'), and the key parameters ('by (order_id, origin_chain_id)'). It also distinguishes from siblings by specifying it returns a single record, contrasting with list and order tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (for retrieving a specific fill by composite key) but does not explicitly state when to use this tool versus alternatives like erc7683_list_fills or erc7683_get_order. No exclusion criteria or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc7683_get_orderAInspect
Fetch a single Tenzro7683Order envelope by 32-byte order_id. Envelope is persisted in CF_SETTLEMENTS under the 7683_origin: keyspace. Order state machine: Open → AwaitingProof → Settled / Refunded / ForceRefundEligible.
| Name | Required | Description | Default |
|---|---|---|---|
| order_id | Yes | 32-byte order id (hex, with or without 0x prefix). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description discloses key behavioral context: the envelope is persisted in CF_SETTLEMENTS under the `7683_origin:` keyspace and outlines the state machine lifecycle (Open → AwaitingProof → Settled / Refunded / ForceRefundEligible). It does not mention error handling if order_id is missing, but for a read operation, this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. The first sentence states the core purpose, and the second provides essential context. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-id tool with an output schema (not shown but indicated by context), the description covers purpose, identifier type, data source, and state machine. It is complete for an agent to understand and use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with a clear description of the order_id parameter (hex with optional 0x prefix). The tool description adds no additional meaning 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Fetch') and the resource ('a single Tenzro7683Order envelope') along with the identifier ('by 32-byte order_id'). This distinguishes it from sibling tools like erc7683_list_orders and erc7683_get_fill.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context about the keyspace and state machine but does not explicitly state when to use this tool over alternatives like erc7683_list_orders. Usage is implied: use when you have a specific order_id, but no explicit when-not-to-use or alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc7683_list_fillsAInspect
List every recorded destination-side FillRecord on this node. Cardinality is bounded — registry holds at most one FillRecord per cross-chain order ever filled here.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosing behavior. It reveals the tool lists all destination-side fills with a bounded cardinality. However, it does not mention performance, pagination, or access requirements, leaving some gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, no fluff, front-loading the key action and cardinality constraint. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and an output schema, the description adequately explains the scope (destination-side, this node) and cardinality. It is complete for a simple list tool, though it could mention that all records are returned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has zero parameters, so the description need not add parameter details. The baseline for no parameters is 4, and the description does not detract.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists destination-side FillRecords and distinguishes itself from sibling tools like erc7683_get_fill and erc7683_list_orders by noting the scope and cardinality. The verb 'list' and resource 'FillRecord' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (to list all fills) but does not explicitly state when not to use or mention alternatives. It provides context about cardinality but lacks clear differentiation from similar list/get tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc7683_list_ordersAInspect
Paginated scan over persisted ERC-7683 orders in the 7683_origin: keyspace. Optional state filter (open / awaiting_proof / settled / refunded / force_refund_eligible) and CAIP-2 dest_chain filter.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of envelopes to return (default 50). | |
| state | No | Optional state filter — one of: open, awaiting_proof, settled, refunded, force_refund_eligible. | |
| dest_chain | No | Optional CAIP-2 numeric destination chain id filter. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions 'paginated scan' but does not disclose read-only behavior, pagination mechanics, or any side effects. Minimal 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with inline enumeration of filters; every word is necessary and contributes to understanding. No redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and full parameter documentation, the description adequately covers the tool's purpose and filters. Lacks pagination details, but is otherwise complete for a listing tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all three parameters with descriptions. The description lists the state enum values and notes the dest_chain filter, but does not add significant meaning beyond what the 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool scans persisted ERC-7683 orders with optional state and dest_chain filters, specifying the keyspace. It distinguishes from siblings like erc7683_get_order by indicating a list operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 erc7683_get_order or erc7683_list_fills. Usage is implied by the description, but no when-not-to or alternative naming.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc7683_record_fillAInspect
Destination-side commit of an ERC-7683 FillRecord (single-shot per order_id — re-submission returns -32010 OrderAlreadyFilled). Required fields: order_id, origin_chain_id, origin_settler, filler, recipient (32-byte), fill_tx_hash, filled_at_ms, proof_route, outputs[].
| Name | Required | Description | Default |
|---|---|---|---|
| filler | Yes | Filler address on the destination chain (hex). | |
| outputs | Yes | Outputs array (each entry: { token, amount, recipient, chain_id }). | |
| order_id | Yes | 32-byte order id (hex). | |
| recipient | Yes | Recipient (32-byte left-padded) on the destination chain (hex). | |
| proof_route | Yes | Proof route — one of: layerzero, wormhole, debridge, hyperlane. | |
| fill_tx_hash | Yes | Destination-chain fill transaction hash (hex). | |
| filled_at_ms | Yes | Wall-clock millis at which the fill landed. | |
| origin_settler | Yes | Origin settler contract address (hex). | |
| origin_chain_id | Yes | CAIP-2 numeric origin chain id. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses the write nature, the idempotency constraint (re-submission error), and required fields. However, it omits success behavior, authorization needs, and 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with a parenthetical and a list, making it efficient. However, the list of required fields is redundant given the schema, slightly reducing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The explanation covers purpose and constraints but lacks context about the overall cross-chain fill process, prerequisites, or output meaning. Output schema exists but description does not leverage it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the description merely restates required fields without adding new meaning beyond what the schema already provides. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool commits a FillRecord on the destination side, which is a specific verb+resource. It also distinguishes from sibling tools (get/list) and mentions the single-shot constraint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies it's for committing fills after a fill transaction, but does not explicitly state when to use or when not to. The single-shot constraint hints at idempotency, but no explicit alternatives are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_decode_get_agentAInspect
Decode the (address, string) return data of an IdentityRegistry.getAgent() eth_call into { agent_address, metadata_uri }.
| Name | Required | Description | Default |
|---|---|---|---|
| return_data | Yes | Hex-encoded return data from a getAgent(bytes32) eth_call |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Given no annotations, the description carries full burden. It clearly discloses the decoding nature, input format, and output structure. There are no hidden behaviors or side effects mentioned, which is appropriate for a pure decode function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words. It efficiently communicates the tool's function, input, and output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description, combined with the input schema and output schema, provides complete information for using this tool. It covers the input, output, and the specific call it decodes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter fully described. The description adds meaning by specifying the output fields and the origin of the return data (getAgent(bytes32) eth_call), going beyond the schema's description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool decodes specific return data from IdentityRegistry.getAgent() eth_call into a structured format with fields agent_address and metadata_uri. It differentiates from sibling decode tools by naming the exact contract function and output format.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 return data from getAgent), but does not provide explicit guidance on when not to use or how it compares to other decode/encode sibling tools like erc8004_decode_get_metadata.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_decode_get_metadataBInspect
Decode the bytes return data of an IdentityRegistry.getMetadata() eth_call into { metadata_value }.
| Name | Required | Description | Default |
|---|---|---|---|
| return_data | Yes | Hex-encoded return data from a getMetadata(uint256,string) eth_call |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It states the tool decodes hex-encoded return data from a specific eth_call, implying pure computation with no side effects. However, it lacks details on input validation, error behavior, or output format beyond the vague { metadata_value }.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence of 15 words. Extremely concise with no wasted words. Front-loads the action 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.
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 presence of an output schema (not shown), the description is sufficiently complete. It identifies the source of return data and the expected output format, which is adequate for a decoding function.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (one parameter fully described). The description adds minimal extra meaning beyond the schema: it mentions 'bytes return data' and 'into { metadata_value }', hinting at output structure. This provides some added context but not substantial.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it decodes bytes return data from IdentityRegistry.getMetadata() eth_call into { metadata_value }. It is specific about the resource and action, distinguishing it from sibling decode tools like erc8004_decode_get_agent. However, it does not explain what metadata_value represents, which slightly reduces clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., other decode tools). The name implies it's for getMetadata return data, but the description does not provide context like prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_append_responseAInspect
ABI-encode ReputationRegistry.appendResponse(uint256 agentId, bytes32 feedbackId, string responseURI) (ERC-8004 v0.6+ mutator). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID (uint256) — must own the feedback. Accepts a JSON number, decimal string, or 0x-prefixed hex. | |
| feedback_id | Yes | Feedback ID being responded to (bytes32 hex, 0x-prefixed) | |
| response_uri | Yes | Resolvable URI to the response payload |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It clearly states the tool is a 'mutator' (indicating state-changing on-chain) and returns hex calldata, implying it only encodes and does not execute. However, it does not disclose potential revert conditions, gas costs, or that the tool itself is read-only (it just encodes). The description is adequate but minimal for a pure encoding tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that clearly conveys the tool's purpose, the function being encoded, the standard version, and the output format. Every part is informative without any fluff or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (simply encoding a function call), the description is largely sufficient. It covers the purpose and output. However, it lacks usage context such as when to use this vs other encode tools, and does not explain that the tool does not execute the transaction. For a simple tool, these are minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% parameter description coverage, so baseline is 3. The description adds value by providing the exact function signature with parameter names and types (uint256, bytes32, string), which gives semantic context beyond the schema descriptions. The schema already provides good descriptions for each parameter, but the ABI signature in the description helps clarify the expected Solidity types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: ABI-encode the specific function 'ReputationRegistry.appendResponse' with exact parameter types. It explicitly mentions the standard (ERC-8004 v0.6+ mutator) and the output format (hex calldata). This distinguishes it from sibling tools like erc8004_encode_feedback which encode different functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 among the many sibling encode tools. It mentions the function is a 'mutator' but does not explain prerequisites (e.g., agent must own the feedback) or state that this tool only encodes calldata and does not send the transaction. No explicit when-to-use or when-not-to-use information is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_feedbackBInspect
ABI-encode ReputationRegistry.submitFeedback(bytes32 subjectAgentId, int8 rating, string contextURI). Rating is in -100..=100.
| Name | Required | Description | Default |
|---|---|---|---|
| rating | Yes | Rating in the range -100..=100 (Tenzro convention) | |
| context_uri | Yes | Resolvable URI to feedback context (e.g. ipfs:// or https:// link) | |
| subject_agent_id | Yes | Subject agent ID — uint256 of the agent being rated. Accepts a JSON number, decimal string, or 0x-prefixed hex. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full burden of disclosing behavior. It only states the encoding operation and rating constraint, but does not mention that this is a pure computation with no side effects, permissions, or state changes. Minimal transparency beyond the basic function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences. The first front-loads the core purpose (ABI encoding a specific function), and the second adds the critical rating constraint. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema, the description does not need to explain return values. However, it could be more complete by stating that the output is ABI-encoded hex data for on-chain submission. As is, it is adequate but minimal for a tool in a technical domain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 the rating range (-100..100) and the exact Solidity function signature, but these are largely redundant with the schema descriptions (which already specify the rating range and parameter types). No significant new semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that this tool ABI-encodes the ReputationRegistry.submitFeedback function with specific parameters, distinguishing it from other erc8004_encode_* siblings by naming the exact function. However, it does not explicitly state the output format, though an output schema exists.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 erc8004_encode_append_response or erc8004_encode_get_feedback. The usage context is implied by the function name, but the description lacks explicit when-to-use or when-not-to-use criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_get_agentAInspect
ABI-encode IdentityRegistry.getAgent(uint256 agentId). Returns hex calldata for an eth_call lookup.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID — uint256 returned by register(...) at registration time. Accepts a JSON number, decimal string, or 0x-prefixed hex. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description accurately discloses the tool's behavior: it returns hex calldata for an eth_call. With no annotations, it fully captures the pure encoding nature, no side effects, and expected output. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that contains all essential information without superfluous words. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, presence of an output schema, and clear description of return value, the description is complete. It covers the essential aspects for the 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides a detailed description of agent_id, including type and accepted formats. The tool description does not add additional meaning, so it meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the contract, function, and parameter type ('ABI-encode IdentityRegistry.getAgent(uint256 agentId)'), and distinguishes from siblings by naming the exact function. It includes the return type, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for preparing calldata for an eth_call lookup on getAgent. However, it does not explicitly state when to not use it or mention alternatives (e.g., decode_get_agent). Still, the context is clear enough for an agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_get_agent_uriAInspect
ABI-encode IdentityRegistry.getAgentURI(uint256 agentId) (ERC-8004 v0.6+ read). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID — uint256 returned by register(...) at registration time. Accepts a JSON number, decimal string, or 0x-prefixed hex. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the tool performs ABI encoding (no state change) and returns hex calldata. Since there are no annotations, the description provides sufficient transparency about its non-executing, read-only nature. Could mention that it does not submit the transaction, but this is implicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence containing all essential information: operation, function signature, standard, and output type. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, output schema present), the description is complete enough for an agent to understand its purpose and output. Minor improvement could note that it does not execute the call, but not required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of the parameter description, including accepted formats. The tool description adds no extra semantic value 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool ABI-encodes a specific Ethereum function (IdentityRegistry.getAgentURI) and returns hex calldata. It includes the exact function signature, parameter type, ERC standard version, and read nature. This distinguishes it from many sibling encode tools for different functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing to encode the getAgentURI call, but does not explicitly state when to use this encoding tool versus alternatives (e.g., decoding tools or direct contract calls). No guidance on prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_get_agent_walletAInspect
ABI-encode IdentityRegistry.getAgentWallet(uint256 agentId) (ERC-8004 v0.6+ read). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID — uint256 returned by register(...) at registration time. Accepts a JSON number, decimal string, or 0x-prefixed hex. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It mentions the tool is a 'read' operation and returns hex calldata, which implies no state change. However, it does not explicitly state that encoding does not execute the contract call or disclose potential authentication needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys function, version, read nature, and output. It is front-loaded with key information. Could be slightly more structured (e.g., separating version info) but remains clear and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 parameter, output schema exists), the description is adequate. It specifies the function, version, read nature, and output format. However, it does not clarify that encoding is separate from execution, which might be assumed by experienced users.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The parameter description adds significant value: it explains what agent_id is (returned by register), its type (uint256), and acceptable input formats (JSON number, decimal string, hex). This goes beyond the schema's basic description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: ABI-encode a specific function (IdentityRegistry.getAgentWallet) for a given agent ID. It includes the ERC standard version and indicates it's a read operation. The tool name further distinguishes it from many sibling erc8004_encode_* tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing to encode getAgentWallet calldata but does not explicitly state when to use this tool vs alternatives (e.g., decode variants). No guidance on prerequisites or alternatives is provided, leaving room for ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_get_feedbackAInspect
ABI-encode ReputationRegistry.getFeedback(bytes32 subject, uint256 index). Returns hex calldata for an eth_call lookup.
| Name | Required | Description | Default |
|---|---|---|---|
| index | Yes | Index into the subject's feedback array | |
| subject_agent_id | Yes | Subject agent ID — uint256. Accepts a JSON number, decimal string, or 0x-prefixed hex. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden. It states the return value (hex calldata) but does not disclose potential side effects, permissions, or prerequisites. For a read-only encoding tool, this is minimally adequate but leaves gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, focused sentence that immediately states the purpose and output. No extraneous words; front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists (context signals indicate true), the description does not need to detail return values, but it does mention 'returns hex calldata'. For a simple encoding tool, this is nearly complete; however, a brief example or usage note could enhance completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 tool description does not add further meaning beyond the schema; it only references the function signature. Baseline 3 is appropriate as the schema already provides parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool's action (ABI-encode), the specific function (getFeedback), and the output format (hex calldata for eth_call). It distinguishes from sibling tools by naming the exact function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 function signature is provided, making it clear it's for encoding getFeedback calls. Sibling tools exist for other functions, so the agent can infer usage from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_get_feedback_countAInspect
ABI-encode ReputationRegistry.getFeedbackCount(bytes32 subject). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| subject_agent_id | Yes | Subject agent ID — uint256. Accepts a JSON number, decimal string, or 0x-prefixed hex. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It states 'Returns hex calldata' and names the function, but does not explicitly mention that encoding is a pure operation with no side effects. The behavior is somewhat inferred from the name 'encode'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence that conveys all essential information without waste. It is front-loaded and immediately understandable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists (context indicates 'Has output schema: true'), the description does not need to detail return values. It covers the encoding purpose and output format, but could mention that no on-chain interaction occurs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema coverage is 100% for the single required parameter. The description adds format details (accepts JSON number, decimal string, or 0x-prefixed hex) beyond the schema's basic description. However, it does not explain how the subject_agent_id maps to the bytes32 subject in the function call.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool ABI-encodes a specific function call (ReputationRegistry.getFeedbackCount) with a bytes32 parameter and returns hex calldata. This is precise and distinguishes it from sibling encoding tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for encoding getFeedbackCount data but does not provide explicit guidance on when to use this tool versus alternatives. No when-not or context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_get_feedback_responsesAInspect
ABI-encode ReputationRegistry.getFeedbackResponses(uint256 agentId, bytes32 feedbackId) (ERC-8004 v0.6+ read). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID — uint256 returned by register(...) at registration time. Accepts a JSON number, decimal string, or 0x-prefixed hex. | |
| feedback_id | Yes | Feedback ID (bytes32 hex, 0x-prefixed) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that it returns hex calldata and is a read operation. With no annotations, the description carries the burden well, though it doesn't mention limitations like required ABI knowledge or that it's purely offline.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no wasted words. Includes function signature, version, and return type in a compact format.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple encoding tool with full schema coverage and output described, the description provides all necessary context. No missing details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions already cover parameter details (type, accepted formats). Description adds value by specifying the exact function signature and contract, helping differentiate parameter meaning across similar tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it ABI-encodes a specific function call (ReputationRegistry.getFeedbackResponses) with parameters, protocol version, and return type. Distinguishes from sibling encode tools like erc8004_encode_get_agent or erc8004_encode_feedback by naming the exact function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 (e.g., other encode functions or decoding tools). Merely describes its operation without context of selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_get_metadataAInspect
ABI-encode IdentityRegistry.getMetadata(uint256 agentId, string metadataKey) (ERC-8004 v0.6+ read). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID — uint256 returned by register(...) at registration time. Accepts a JSON number, decimal string, or 0x-prefixed hex. | |
| metadata_key | Yes | Metadata key string |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the burden. It explicitly states the operation is a 'read' (non-destructive) and that the output is 'hex calldata'. This is transparent for a pure encoding function. However, it could mention that no contract call is made.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the essential information: function name, parameters, version, read nature, and output format. No redundant words or structural issues.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple encoding tool with complete schema coverage and an output schema, the description is fully adequate. It covers what the tool does, what parameters it takes, and what it returns, without requiring additional elaboration.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already describes both parameters. The description adds the function signature context (uint256, string) but does not provide additional meaning beyond what the schema offers. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the exact function being encoded, including its signature (IdentityRegistry.getMetadata with uint256 and string parameters). It specifies the ERC-8004 version and that it is a read operation. This distinguishes it from other encode tools for different functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for encoding calldata for a specific getter, but it does not explicitly state when to use this tool versus alternatives (e.g., other encode tools for different functions). No usage exclusions or context are provided beyond 'read'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_get_validationAInspect
ABI-encode ValidationRegistry.getValidation(bytes32 requestHash) (ERC-8004 v0.6+ read). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| request_hash | Yes | Request hash from the original validationRequest (bytes32 hex, 0x-prefixed) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior. It states the tool is a 'read' and returns 'hex calldata', indicating a pure encoding operation with no side effects. It specifies the ERC-8004 version, adding context. It could mention it is a stateless encode operation, but the current description is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the main action (ABI-encode), specifies the function and arguments, and notes the return type. No extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity tool with one parameter and an output schema, the description covers the purpose, behavior (read), and return format. It does not need to explain return values since an output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers the single parameter with a description. The tool description adds no further details about the parameter. Schema coverage is 100%, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool ABI-encodes the getValidation function, specifies the exact method signature and contract (ValidationRegistry), and indicates it is a read operation. It distinguishes from sibling encode tools by naming the specific function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 or avoid this tool. Usage is implied by the function name ('when you need to encode getValidation'), but no alternatives or exclusions are mentioned. Given the many sibling encode tools, explicit guidance would help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_is_feedback_revokedAInspect
ABI-encode ReputationRegistry.isFeedbackRevoked(uint256 agentId, bytes32 feedbackId) (ERC-8004 v0.6+ read). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID — uint256 returned by register(...) at registration time. Accepts a JSON number, decimal string, or 0x-prefixed hex. | |
| feedback_id | Yes | Feedback ID to check (bytes32 hex, 0x-prefixed) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description notes it is a 'read' operation, but with no annotations, more detail would be helpful (e.g., deterministic, requires no authentication). Basic behavioral context is present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the purpose, function signature, ERC standard version, and return type. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and fully covered input schema, the description is complete for an encoding tool. It states the return type and covers all necessary aspects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline 3. The tool description does not add extra meaning beyond what the schema already provides, and parameter info is adequately detailed in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool ABI-encodes the function ReputationRegistry.isFeedbackRevoked with parameters, and lists the return type. It distinguishes from sibling tools that encode other functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., when to encode vs call directly, or which encoding tool to choose among many erc8004_encode_* siblings).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_registerAInspect
ABI-encode IdentityRegistry.register() (ERC-8004 v0.6+ no-arg overload — caller becomes agent owner; registry allocates a sequential uint256 agentId). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the caller becomes agent owner and the registry allocates a sequential agentId. It also states the output is hex calldata, which is transparent for an encoding tool. No side effects or contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, dense sentence that conveys all necessary information without verbose or redundant phrasing. It is front-loaded with the key action and efficiently explains the overload and outcome.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema exists, so return value details are not needed. The description covers the function purpose, overload, ownership, agent ID allocation, and output format. For an encoding tool, it provides complete context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters (0 params), and schema coverage is 100%. Baseline is 4. The description adds context about the function's behavior, which is sufficient for parameter-less tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it ABI-encodes the IdentityRegistry.register() function, specifies the no-arg overload, and mentions the caller becomes agent owner and a sequential agentId is allocated. This distinguishes it from sibling encode tools like erc8004_encode_register_with_metadata and erc8004_encode_register_with_uri.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for the basic register case without metadata or URI, but it does not explicitly state when to use this tool versus alternatives or any prerequisites. It provides some context via 'no-arg overload' but lacks clear guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_register_with_metadataAInspect
ABI-encode IdentityRegistry.register(string agentURI, (string,bytes)[] metadata) (ERC-8004 v0.6+ overload with metadata entries). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| metadata | Yes | Initial metadata batch — array of {key, value} entries written atomically with the agentId allocation | |
| agent_uri | Yes | Off-chain metadata URI bound atomically with the agentId allocation |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description accurately states it returns hex calldata and discloses the function signature and version. Since it is a pure encoding function, no side effects or destructive actions exist, and the description is clear. However, it could note that no blockchain interaction occurs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 19 words conveying all essential information: action, function signature, version, and output. No redundant or missing elements.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is sufficient for the tool's purpose (encoding). It covers what, how (ABI-encode), and output (hex calldata). With an output schema presumably present, further detail on return structure is unnecessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 context by mapping parameters to Solidity types (string agentURI, (string,bytes)[] metadata) and specifying metadata as key-value pairs. This reinforces parameter meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool ABI-encodes the IdentityRegistry.register function with a specific overload (v0.6+ with metadata entries) and returns hex calldata. It clearly distinguishes from siblings like erc8004_encode_register (without metadata) by mentioning the metadata parameter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for registering with metadata but does not explicitly state when to use this tool over siblings (e.g., erc8004_encode_register, erc8004_encode_register_with_uri). No direct alternatives or exclusion criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_register_with_uriAInspect
ABI-encode IdentityRegistry.register(string agentURI) (ERC-8004 v0.6+ overload with agent URI). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_uri | Yes | Off-chain metadata URI (ipfs:// or https:// link to agent metadata JSON). Pass an empty string to register without a URI. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but description clearly states it is an encoding function (returns hex calldata) with no side effects. It does not disclose any additional constraints or potential failures, but the behavioral impact is minimal for such a deterministic pure operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero wasted words, front-loaded with the function and variant, then output specification. Maximally efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple encoding tool with one parameter and an output schema, the description is mostly complete. It explains the ABI encoding, the specific function, and the output format. It lacks explicit mention of whether the hex is prefixed (0x), but that is a minor omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters, and the description adds no new meaning beyond the schema's description. The description provides no extra guidance about the URI format or empty string usage that isn't already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'ABI-encode' specifies action, resource 'IdentityRegistry.register(string agentURI) with overload', and output 'hex calldata'. This distinguishes from sibling tools like erc8004_encode_register and erc8004_encode_register_with_metadata by naming the overload.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description mentions the overload and ERC-8004 v0.6+, implying when to use it, but does not explicitly compare to alternatives or state prerequisites. Agent would need to infer usage from context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_revoke_feedbackAInspect
ABI-encode ReputationRegistry.revokeFeedback(uint256 agentId, bytes32 feedbackId) (ERC-8004 v0.6+ mutator). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID owning the feedback — uint256. Accepts a JSON number, decimal string, or 0x-prefixed hex. | |
| feedback_id | Yes | Feedback ID to revoke (bytes32 hex, 0x-prefixed) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It correctly identifies the tool as an encoder that returns hex calldata and references the underlying mutator function, clarifying it does not execute the mutation. However, it does not mention potential error conditions or input validation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the key action and purpose. Every word is informative, and there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple encoding tool with two parameters and an output schema, the description covers the function, return type, and ERC standard. It lacks broader context about when encoding is needed, but given the tool's simplicity, completeness is good.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for both parameters. 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool ABI-encodes the revokeFeedback function on ReputationRegistry, specifying the contract, function signature, and ERC-8004 version. It distinguishes from sibling encode tools by naming the exact function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 other encode tools (e.g., encode_feedback, encode_get_feedback). No prerequisites, context, or conditions for use are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_set_agent_uriAInspect
ABI-encode IdentityRegistry.setAgentURI(uint256 agentId, string metadataURI) (ERC-8004 v0.6+ mutator). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID — uint256 returned by register(...) at registration time. Accepts a JSON number, decimal string, or 0x-prefixed hex. | |
| metadata_uri | Yes | Updated off-chain metadata URI |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Labels it a 'mutator', indicating state-changing, and says it returns hex calldata. Without annotations, more detail (e.g., permissions, side effects) would be helpful, but basic behavioral traits 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single concise sentence (20 words) conveying purpose, version, and output. No redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple encoding tool with output schema, description is sufficient. Lacks usage guidance but covers essential purpose and behavioral type.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover both parameters (100% coverage). Description adds no extra parameter details beyond the function signature. Baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it ABI-encodes IdentityRegistry.setAgentURI with exact parameters and version. Distinguishes from sibling erc8004_* encoding tools by specifying the unique method name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use vs alternatives. Implied for encoding setAgentURI calldata, but lacks context like prerequisites or when other encode tools are preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_set_agent_walletAInspect
ABI-encode IdentityRegistry.setAgentWallet(uint256 agentId, address newWallet, uint256 deadline, bytes signature) (ERC-8004 v0.6+ wallet rotation). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID — uint256 returned by register(...) at registration time. Accepts a JSON number, decimal string, or 0x-prefixed hex. | |
| deadline | Yes | Unix-seconds deadline after which the signature is invalid | |
| signature | Yes | Hex-encoded EIP-712 signature (0x-prefixed) authorizing the wallet rotation | |
| new_wallet | Yes | New wallet / controller EVM address (0x-prefixed hex) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It clearly states the tool's behavior: ABI-encoding a specific function and returning hex calldata. It does not mention side effects or security, but as a pure encoding function, this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, complete sentence with no unnecessary words. All essential information is present and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple encoding tool with comprehensive schema and output schema present, the description covers the function, inputs, and output format. No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 the function signature with parameter types (e.g., uint256 agentId), reinforcing meaning. However, the schema already describes each parameter, so additional value is limited.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the exact function being encoded, including the contract, function signature, parameter types, and version. It explicitly distinguishes from sibling tools by naming 'setAgentWallet' and mentions 'wallet rotation', which aligns with the function's purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for wallet rotation via 'ERC-8004 v0.6+ wallet rotation', but does not explicitly state when to use this tool versus alternatives (e.g., other encoding tools) or when not to use it. It lacks clear context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_set_metadataAInspect
ABI-encode IdentityRegistry.setMetadata(uint256 agentId, string metadataKey, bytes metadataValue) (ERC-8004 v0.6+ key-value metadata). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID — uint256 returned by register(...) at registration time. Accepts a JSON number, decimal string, or 0x-prefixed hex. | |
| metadata_key | Yes | Metadata key string (free-form ASCII identifier) | |
| metadata_value | Yes | Metadata value as 0x-prefixed hex bytes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Accurately describes the tool's behavior: ABI encoding of a specific function, returning hex calldata. No annotations exist, so description carries full burden. It is transparent about the pure computational nature, though could mention that it does not execute the transaction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, concise sentence that front-loads the purpose, includes function signature, standard version, and return type. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Clearly states output (hex calldata). Could mention this is only encoding, not transaction execution, but the tool name 'encode' implies that. Complete enough for a simple encoding utility.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 new semantic meaning beyond referencing the parameter names in the function signature.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description exactly states the function being encoded (IdentityRegistry.setMetadata), the parameters, the standard version (ERC-8004 v0.6+), and the return type (hex calldata). It clearly differentiates from other erc8004_encode_* siblings by naming the specific function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. Implicit from the function name and sibling context, but no situational context or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_validation_requestAInspect
ABI-encode ValidationRegistry.validationRequest(address validatorAddress, uint256 agentId, string requestURI, bytes32 requestHash). Returns hex calldata.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID of the subject being validated — uint256. Accepts a JSON number, decimal string, or 0x-prefixed hex. | |
| request_uri | Yes | Resolvable URI to the work being validated | |
| request_hash | Yes | 32-byte commitment over the work (bytes32 hex, 0x-prefixed) — storage key for the matching response | |
| validator_address | Yes | Validator address (20-byte EVM address, 0x-prefixed) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It accurately describes the behavior (returns hex calldata) without contradictions. For a simple encoding function, this is sufficient, though it could mention that it has no 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, information-dense sentence with no redundancy. It efficiently communicates the tool's core function and output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity of the tool (simple encoding), the description is complete. It names the contract function, parameters, return type, and format. The presence of an output schema further reduces the need for description of return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed parameter descriptions. The description adds context about the overall function but does not enhance individual parameter semantics beyond what the 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is an ABI-encoding function for a specific Solidity function, including the full signature and return type. It distinguishes itself from sibling tools (e.g., erc8004_encode_feedback) by naming the exact contract method.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 is provided. The purpose is clear enough to imply usage for encoding validation requests, but no alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
erc8004_encode_validation_responseAInspect
ABI-encode ValidationRegistry.validationResponse(bytes32 requestHash, uint8 response, string responseURI, bytes32 responseHash, string tag). Response is a 0..=100 quality score.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | Yes | Short categorical label (e.g. 'valid', 'invalid', 'abstain') | |
| response | Yes | Quality score 0..=100 (Tenzro convention: 0..=49 invalid, 50..=79 partial, 80..=100 valid) | |
| request_hash | Yes | Request hash from the matching validationRequest (bytes32 hex, 0x-prefixed) | |
| response_uri | Yes | Resolvable URI to proof material (ZK proof CID, TEE quote CID, etc.) | |
| response_hash | Yes | 32-byte commitment over the response payload (bytes32 hex, 0x-prefixed) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It adds that the response is a quality score but does not disclose what the tool returns (e.g., ABI-encoded bytes), side effects, or any behavioral traits. The output schema exists but isn't referenced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the core information. It is not verbose, though it could be slightly more structured by separating the signature from the note.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters and an output schema, the description is adequate but minimal. It could explain the purpose of the encoded output (e.g., for on-chain submission) and the role of the tag parameter, which is included in the signature but not described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 the function signature mapping but does not provide new meaning beyond what the schema already describes for each parameter. The note about quality score reiterates the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: to ABI-encode the ValidationRegistry.validationResponse function. It includes the full function signature, distinguishing it from sibling encode tools that target different ERC-8004 functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives. Usage is implied by the name and function, but no exclusions or context are given for the sibling encode tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
exchange_tokenAInspect
RFC 8693 OAuth 2.0 Token Exchange. Mint a narrower child JWT from a parent JWT, bound to a different DPoP key with a strict subset of the parent's RAR grants and AAP capabilities. The child token's controller_did is set to the parent's sub, extending the act-chain by one hop. Subset enforcement is performed by the AS; over-scoped requests are rejected.
| Name | Required | Description | Default |
|---|---|---|---|
| requested_rar | Yes | RFC 9396 typed scope envelope the child should carry. Must be a strict subset of the parent's authorization_details. JSON object with `authorization_details: [...]` field. | |
| subject_token | Yes | Parent JWT (the `subject_token` per RFC 8693). The AS validates its signature, exp, and revocation state before issuing the child token. | |
| child_dpop_jkt | Yes | RFC 7638 JWK thumbprint of the child holder's Ed25519 public key. The child token is DPoP-bound to this key. | |
| child_bearer_did | Yes | DID that will be the `sub` of the new child JWT — typically a delegated agent or sub-agent in the act-chain | |
| requested_ttl_secs | No | Optional TTL override for the child token in seconds. Clamped to the engine's max_ttl_secs and the parent's remaining lifetime. | |
| requested_aap_capabilities | Yes | AAP `aap_capabilities` claim list — per-action constraints layered over RAR. Must be a subset of the parent's capabilities. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description carries full burden. It explains core behavior: token exchange subset enforcement, act-chain extension, and rejection of over-scoped requests. However, it lacks details on return format, error modes, or additional operational aspects like 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences efficiently convey the tool's purpose, mechanism, and constraints. No redundant information; critical details are front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the core operation well given the tool's complexity and the presence of an output schema. It omits prerequisites (e.g., valid parent token) and error scenarios, but the schema and annotations might supplement these.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 6 parameters are described in the input schema with 100% coverage. The tool description does not add extra parameter-specific meaning beyond the schema, but the schema descriptions are comprehensive, justifying baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool mints a narrower child JWT from a parent JWT, bound to a different DPoP key. It specifies the resource (JWT), action (exchange), and constraints (subset of grants, act-chain extension), clearly distinguishing it from sibling tools like introspect_token.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (need a child token with reduced scope) and mentions that over-scoped requests are rejected, but does not explicitly state when not to use or provide alternatives among the many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_keystoreAInspect
Export a wallet's keystore as an encrypted JSON file. Uses Argon2id KDF for key derivation. The exported keystore can be imported on another node.
| Name | Required | Description | Default |
|---|---|---|---|
| password | Yes | Password to encrypt the keystore file | |
| wallet_id | Yes | Wallet ID (UUID) to export |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses use of Argon2id KDF and encrypted JSON output but lacks details on side effects (e.g., wallet must be unlocked, export does not modify wallet).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences, each adding value. No repetition or filler. Front-loaded with key action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With output schema present, description covers main purpose, output format, and importability. Lacks prerequisite info (wallet existence, unlocking) but is nearly complete for a non-critical tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters. Description adds context about encryption and KDF but does not significantly extend beyond schema meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it exports a wallet's keystore as an encrypted JSON file, mentions Argon2id KDF, and notes importability. Distinguishes from import_keystore.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. The mention of importability implies usage context but does not direct the agent to alternative tools or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
file_insurance_claimAInspect
File an insurance claim against a bonded agent (Agent-Swarm Spec 9). The claim enters Open status awaiting governance adjudication; payout (if approved) is settled by a separate PayInsuranceClaim transaction. Returns the full ClaimRecord including the deterministic claim_id.
| Name | Required | Description | Default |
|---|---|---|---|
| nonce | Yes | Nonce used to derive a deterministic claim_id | |
| narrative | No | Optional narrative describing the harm (capped to 1024 bytes) | |
| claimant_did | Yes | Claimant DID (the harmed party) | |
| receipt_refs | No | Receipt references: tx hashes, settlement ids, log refs | |
| amount_requested | Yes | Requested payout amount in wei (decimal string) | |
| claimant_address | Yes | Claimant wallet address (hex). Receives payout if approved. | |
| against_agent_did | Yes | DID of the bonded agent the claim is filed against |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It explains the initial state (Open), the dependency on a separate transaction for payout, and the return value (full ClaimRecord with claim_id). It does not discuss authentication, side effects, or deduplication, but the deterministic claim_id implies nonce-based uniqueness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences (42 words), front-loading the primary action and context. Every sentence adds essential information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and the tool's complexity (7 parameters), the description is complete. It covers the action, lifecycle, and return value, with no critical gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed descriptions for all 7 parameters. The description adds no additional semantic value beyond what the schema provides, meeting the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action ('File'), the resource ('insurance claim'), and the context ('against a bonded agent'). It distinguishes the tool from a separate payout transaction (PayInsuranceClaim) and references the specification (Agent-Swarm Spec 9), leaving no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states the purpose and the workflow (claim enters Open status, payout handled separately). It provides clear context but does not explicitly list when to avoid using this tool or mention prerequisites. However, given no direct sibling for filing claims, the implied guidance is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_best_agent_for_capabilityAInspect
Find the best agent on this node for a given capability. Prefers TEE-backed attestations (most recent wins), falling back to any agent with the capability registered. Returns the chosen agent_id and the total candidate count.
| Name | Required | Description | Default |
|---|---|---|---|
| capability | Yes | Capability short-form name: 'nlp', 'vision', 'code', 'data', 'blockchain', 'smart_contract', 'api_integration', 'coordination', or any custom-capability name. Returns the agent with the most recent TEE-backed attestation (preferred), falling back to any agent with the capability. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral traits. It discloses the selection algorithm and what is returned (agent_id and candidate count). However, it does not explicitly state that the operation is read-only, nor does it mention any permissions or side effects. The selection criteria are clear, but additional behavioral context is absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the purpose and efficient. Every sentence adds value: first sentence states purpose, second explains selection criteria and return. No redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 param) and presence of an output schema, the description is largely complete. It explains the selection logic and return values. It does not cover error cases (e.g., no agent found) or edge cases, but overall it provides sufficient context 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (1 parameter with full description). The parameter description repeats the main description's selection logic, adding no new meaning beyond what is already stated. Baseline 3 is appropriate as the schema already documents the parameter adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Find the best agent on this node for a given capability.' It specifies the resource (agents) and action (find, best), and differentiates from sibling tools like get_agent_capability_attestations by focusing on selection rather than listing all attestations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 tool and how it selects among candidates (prefers TEE-backed attestations, most recent wins, falls back to any). It does not explicitly state when not to use or list alternatives, but the selection logic is well explained.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
forecastAInspect
Run a univariate timeseries forecast on a registered model. Pass history (most-recent-last context series), horizon (steps ahead), and optional quantiles (e.g. [0.1, 0.5, 0.9]) and frequency_seconds. Returns point forecasts and (when supported) quantile bands.
| Name | Required | Description | Default |
|---|---|---|---|
| history | Yes | Univariate context series (most-recent-last). Non-empty. | |
| horizon | Yes | Forecast horizon (steps ahead). Must be > 0. | |
| model_id | Yes | Registered forecast model id (e.g. 'timesfm-2.5-200m') | |
| quantiles | No | Optional output quantile levels in (0,1) (e.g. [0.1, 0.5, 0.9]). Defaults to model-native quantiles. | |
| frequency_seconds | No | Optional sampling frequency in seconds (used by frequency-aware models) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions return values (point forecasts and quantile bands) but does not disclose whether the tool is read-only, modifies state, or has any side effects. It does not contradict annotations (none present).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with purpose, and every sentence adds meaningful information. It is concise with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters and an output schema, the description covers the main functionality, parameter hints, and return type. It does not explain model availability or failure modes, but these are addressed by sibling tools and schema details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 value by explaining 'history' as most-recent-last, giving example quantiles, and mentioning frequency_seconds. It also states return behavior, which is not in schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool runs a univariate timeseries forecast on a registered model, with specific verb 'Run' and resource 'forecast on a registered model'. It distinguishes from sibling tools like 'list_forecast_catalog' and 'load_forecast_model' by specifying execution.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for generating forecasts and lists required parameters, but does not explicitly state when to use versus alternatives, prerequisites (e.g., model must be registered), or exclusion cases. No comparison to other tools is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
forget_identityAInspect
TDIP/GDPR Article 17 right-to-erasure. Hard-deletes a previously revoked identity from the registry and persistent storage. The DID must already be in Revoked status — call revoke_did (RPC) first, allow cascading revocation to propagate, then call this. Distinct from revoke (logical delete).
| Name | Required | Description | Default |
|---|---|---|---|
| did | Yes | DID to resolve (e.g. did:tenzro:human:uuid or did:tenzro:machine:controller:uuid) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It reveals destructive nature (hard-deletes) and references GDPR, but lacks details on error handling (e.g., what if DID not revoked), idempotency, or success/failure feedback. Output schema exists but description doesn't leverage it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tightly packed sentences: purpose, prerequisite/sequence, and distinction. Every sentence earns its place. Front-loaded with key information, no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 1-param destructive tool, description covers purpose, prerequisite, and sibling distinction. Output schema exists so return format is covered. However, lacks authorization hints or error scenarios. Despite missing some behavioral details, it provides enough context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single parameter 'did' with 100% schema coverage. Description adds critical context that the DID must already be revoked, going beyond the generic schema description 'DID to resolve'. This helps validate input state.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool performs hard-deletion of a previously revoked identity, citing GDPR Article 17 and distinguishing itself from revoke. The verb 'hard-deletes' and specific resource 'identity from registry and persistent storage' are precise.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly specifies the prerequisite (DID must be in 'Revoked' status) and provides a sequential workflow: call revoke_did first, allow cascading propagation, then call this. Also clarifies distinction from revoke, aiding tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
freeze_addressAInspect
Freeze an address for a specific token under ERC-3643 compliance. A frozen address cannot send or receive the specified token. Returns the freeze record.
| Name | Required | Description | Default |
|---|---|---|---|
| reason | Yes | Reason for freezing the address | |
| address | Yes | Hex-encoded address to freeze | |
| token_id | Yes | Token ID (hex, 32 bytes) or symbol |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It discloses the compliance context and return of a freeze record, but omits details about reversibility, permissions, or side effects. Adequate but not thorough 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences efficiently convey the action, effect, and return value. No unnecessary information. Front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists, the description adequately covers what the tool does and returns. However, it lacks mention of preconditions or error scenarios. For a simple mutation, it is mostly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds little beyond what the schema provides. It mentions 'freeze an address for a specific token' which echoes token_id and address parameters. No additional semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (freeze an address for a specific token), the context (ERC-3643 compliance), and the effect (cannot send or receive the token). It is specific and distinguishes from siblings since no other freeze/unfreeze tools exist.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool vs alternatives or any preconditions. However, given the uniqueness of the operation, usage is implied but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fund_user_walletAInspect
Fund a user wallet from the app's master wallet. Transfers TNZO (wei) from the master address to the user address.
| Name | Required | Description | Default |
|---|---|---|---|
| amount_wei | Yes | Amount in wei as a decimal string (1 TNZO = 10^18 wei). Example: '5000000000000000000' for 5 TNZO. | |
| user_address | Yes | Hex-encoded user wallet address (destination) | |
| master_address | Yes | Hex-encoded master wallet address (source of funds) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It mentions 'transfers' but does not disclose behavioral traits like whether it submits a blockchain transaction, requires approvals, is irreversible, or any side effects. Minimal disclosure for a financial transfer tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. First sentence states core purpose, second adds detail. Front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple transfer tool with an output schema, the description is mostly complete. It lacks context about prerequisites (e.g., master wallet availability) and potential error conditions, but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, providing clear parameter descriptions. The description adds context ('from the app's master wallet') but does not significantly enhance parameter understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it funds a user wallet from the app's master wallet, transferring TNZO in wei. It distinguishes from siblings like 'create_user_wallet' and 'send_transaction' by specifying the source (master) and purpose (funding).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for funding user wallets but provides no explicit when-to-use, when-not-to-use, or alternatives. It does not guide the agent on scenarios like initial funding vs. top-up or mention prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_keypairBInspect
Generate a new cryptographic keypair. Returns the public key, private key, and derived address in hex.
| Name | Required | Description | Default |
|---|---|---|---|
| key_type | Yes | Key type: 'ed25519' or 'secp256k1' |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior. It states generation and return values but omits whether the operation is stateless, safe, or has side effects. A statement like 'locally generates, no persistent state' would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, front-loaded sentence with no wasted words. Clearly communicates action and output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and an output schema, the description covers the essential purpose and return values. A minor omission: it doesn't clarify that generation is stateless, but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter 'key_type' is already well-documented in the schema (value enumeration). The description adds no extra semantic detail, meeting the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'Generate' and resource 'cryptographic keypair' directly state the tool's function. It distinguishes well from siblings like 'derive_key' which implies derivation rather than new generation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like 'derive_key' or 'import_keystore'. The description does not mention prerequisites or conditions for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_vrf_proofAInspect
Generate a Tenzro VRF proof (RFC 9381 ECVRF-EDWARDS25519-SHA512-TAI). Returns the public key, 80-byte proof, and 64-byte deterministic output. Do not use with secret inputs — the try-and-increment encoding is data-dependent.
| Name | Required | Description | Default |
|---|---|---|---|
| alpha | Yes | Hex-encoded input message (alpha). Use public data: block hash, request ID, NFT mint nonce | |
| secret_key | Yes | Hex-encoded 32-byte VRF secret key (Ed25519-compatible seed) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the output sizes and the data-dependent try-and-increment encoding, adding some transparency. However, it omits details on permissions, side effects, or validation behavior beyond the warning.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using two sentences to convey purpose, outputs, and a critical security note. Every word adds value, and the most important action is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (per context) and fully documented parameters via schema, the description adds useful details on return values and a security warning. It lacks error handling or preconditions, but overall is fairly complete for a cryptographic generation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters fully documented (hex encoding, examples). The tool description does not add new parameter information beyond what the schema already provides, so baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a Tenzro VRF proof and specifies the exact output components (public key, 80-byte proof, 64-byte deterministic output). It references the RFC standard, distinguishing it from siblings like verify_vrf_proof.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description only provides a negative usage hint (avoid secret inputs) but does not offer positive guidance on when to use this tool versus alternatives, such as verify_vrf_proof or generate_keypair. No explicit context or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_agent_bondAInspect
Inspect an AgentBond by agent DID. Returns lifecycle state (Active / Cooldown / Frozen / Slashed / Returned), amount, controller, cooldown_until, last_modified_block, and promotion eligibility. Returns null if no bond exists.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_did | Yes | Agent DID to look up |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It accurately describes a read-only inspection with a specific null return case. No side effects mentioned, which is acceptable for a read tool. Could mention authorization needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with action and key return fields, then edge case. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description's listing of return fields is slightly redundant but helpful. It covers the main behavior and edge case. Lacks mention of any pagination or limits, but not needed for a single-item lookup.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'agent_did' is fully described in the schema (100% coverage). The description adds no additional meaning beyond 'Agent DID to look up'. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Inspect') and resource ('AgentBond'), clearly states the input (agent DID), and lists the return fields. It also distinguishes itself from the sibling 'post_agent_bond' which creates bonds.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to inspect bond details, which is clear enough given sibling names like 'post_agent_bond'. However, it does not explicitly state when to prefer it over alternatives or note any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_agent_capability_attestationsAInspect
Fetch all capability attestations issued for a specific agent (by agent ID). Returns the agent's registered capabilities, every attestation that names the agent across all capabilities, and the agent's registered wallet address (used by the self-attestation guard).
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Agent ID to fetch capability attestations for |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full burden. It discloses the return structure (capabilities, attestations, wallet address) and mentions the wallet's purpose (self-attestation guard). However, it does not mention read-only nature, permissions, or side effects, leaving some transparency gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly written sentences: the first states the action and key identifier, the second lists the return items. No wasted words, front-loaded with the core purpose. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema (not shown), the description does not need to detail return types. It already enumerates the three return components and their significance. It could mention ordering or limits, but for a simple fetch-by-ID, it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter 'agent_id', with a description in the schema. The tool description adds context about the wallet address but not about the parameter parameter itself. Baseline 3 is appropriate as the schema already handles semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches capability attestations for a specific agent by ID, and details the return contents. It distinguishes itself from the sibling 'get_capability_attestations' by specifying the agent-specific scope, though no explicit contrast is made.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 agent ID and want its attestations) but provides no guidance on when not to use or alternatives (e.g., the generic version). It sets clear context but lacks explicit usage restrictions or comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_agent_daily_spendAInspect
Read the current UTC-day spend window for a machine agent. Mirrors tenzro_getAgentDailySpend: the handler resets the window if the last_reset crossed UTC midnight before returning. Returns {agent_did, current_daily_spend, max_daily_spend, remaining, last_reset}. Use to enforce the runtime SpendingPolicy ceiling (defence-in-depth on top of the on-chain ERC-7579 spending-limit validator).
| Name | Required | Description | Default |
|---|---|---|---|
| agent_did | Yes | Agent DID (`did:tenzro:machine:...`). The wire RPC triggers a UTC-midnight window reset before reading, so this value reflects only the current calendar day. Returns {agent_did, current_daily_spend, max_daily_spend, remaining, last_reset}. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but the description discloses the critical reset behavior: 'handler resets the window if the last_reset crossed UTC midnight before returning'. This adds significant transparency beyond 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, each serving a distinct purpose: purpose, reset behavior, return fields, usage guidance. No wasted words, information front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists, description covers purpose, behavior, return shape, and usage. Does not cover error handling or prerequisites, but for a simple read tool this is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so schema describes agent_did fully. The description adds context about DID format and effect of reset on the returned value, enhancing meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verb 'Read' and resource 'current UTC-day spend window for a machine agent', clearly distinguishing from siblings like get_spending_limits. It includes a unique behavior (window reset) that further clarifies the tool's purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use: 'Use to enforce the runtime SpendingPolicy ceiling (defence-in-depth...)'. It provides clear context but does not mention when not to use or compare to alternatives like get_spending_limits.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_agent_jwkAInspect
Resolve a single agent JWK by RFC 9421 keyid. Accepts did:tenzro:... (first compatible key) or did:tenzro:...#fragment (specific key). Mirrors GET /.well-known/jwks.json/:keyid.
| Name | Required | Description | Default |
|---|---|---|---|
| keyid | Yes | RFC 9421 keyid — `did:tenzro:...` (first compatible key) or `did:tenzro:...#fragment` (specific key) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It implies a read operation via 'Resolve' and 'Mirrors GET', but does not disclose permissions, error behavior, or authentication requirements. This is adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core action, and contains no filler. Every sentence adds value, making it efficient for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description does not need to explain returns. It adequately covers input semantics and references a standard endpoint. Minor gaps: no mention of error handling or prerequisites, but overall sufficient for a simple fetch tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 the two variants ('first compatible key' vs 'specific key'), which is beyond the schema description. This helps the agent choose the correct input format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it resolves a single agent JWK by RFC 9421 keyid, and distinguishes from sibling 'list_agent_jwks' by specifying 'single'. It also details the acceptable keyid formats, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use which keyid format (full DID or with fragment) and references the standard GET endpoint. However, it lacks explicit contrast with 'list_agent_jwks' or conditions for not using this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_agent_templateAInspect
Get details about a specific agent template in the Tenzro Agent Marketplace. Returns template configuration, capabilities, pricing, and usage statistics.
| Name | Required | Description | Default |
|---|---|---|---|
| template_id | Yes | Agent template ID to retrieve |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It describes the tool as a read operation (get details) but does not explicitly state idempotency, read-only behavior, or any side effects. The description is adequate but lacks explicit safety hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action and resource. Each sentence adds value: the first defines what the tool does, the second lists the return fields. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has one parameter and an output schema exists, the description is largely complete. It covers the purpose and output. A minor gap is the lack of mention of prerequisite (e.g., need to have a template_id from a list), but this is implied.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the single parameter (template_id) with 100% coverage. The description adds context by mentioning 'Tenzro Agent Marketplace' but does not add new meaning or usage syntax beyond what the schema provides. Baseline score applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get details about a specific agent template') and the resource ('Tenzro Agent Marketplace'). It specifies the returned information (configuration, capabilities, pricing, usage statistics), which distinguishes it from listing or searching tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you have a specific template_id, but does not explicitly state when to use this tool versus alternatives like list_agent_templates or search_agent_templates. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_agent_template_statsAInspect
Get statistics for an agent template on the Tenzro Network marketplace. Returns total spawns, average rating, and total number of ratings.
| Name | Required | Description | Default |
|---|---|---|---|
| template_id | Yes | Agent template ID to get stats for |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of behavioral disclosure. It implies a read-only operation by stating it returns data, but does not explicitly mention side effects, permissions, rate limits, or data freshness. Basic transparency but could be improved.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence that efficiently communicates purpose and return values. No extraneous words, front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists, the description adequately covers the return values. For a simple statistics retrieval tool, it is complete. Minor omission: no mention of potential empty results or error conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter (template_id) described. The description does not add additional meaning or usage hints beyond the schema's own description. Baseline score of 3 is appropriate as schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action (get statistics), the resource (agent template on Tenzro Network marketplace), and the specific return values (total spawns, average rating, total number of ratings). It distinguishes from siblings like get_agent_template and rate_agent_template.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (to retrieve statistics), but does not explicitly provide when-to-use vs alternatives, nor any exclusions or prerequisites. Sibling tools exist for related purposes but no guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_approvalAInspect
Fetch a single approval record by id. The engine lazy-transitions an expired Pending record to Expired on this read path, so a returned Pending record is guaranteed to still be live. Returns the full record JSON; returns -32000 if id is unknown. Requires AuthEngine to be initialised on the node.
| Name | Required | Description | Default |
|---|---|---|---|
| approval_id | Yes | Engine-assigned approval id. A returned `Pending` record is guaranteed to still be live (lazy expiry runs on this read path). Returns -32000 if id is unknown. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description provides important behavioral details: lazy expiry transition, guarantee that returned Pending is live, return format (full record JSON or error code -32000), and the requirement for AuthEngine. This is sufficient for an agent to understand the tool's side effects and preconditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, each adding unique value: purpose, behavioral detail, and prerequisite. It is front-loaded and contains no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description appropriately omits return value details. It covers core behavior, error handling, and a prerequisite. It is complete for a simple fetch tool, though a mention that it is read-only could add clarity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with a detailed description for 'approval_id', including the same lazy expiry note and error behavior. The tool description adds no new parameter-specific information beyond what the schema already 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Fetch' and the resource 'a single approval record by id'. It also mentions lazy expiry behavior, which clarifies the tool's action. However, it does not differentiate itself from sibling tools like get_approval_gate or list_pending_approvals.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a prerequisite (AuthEngine initialised), which implies when the tool can be used. However, it does not explicitly state when to use this tool versus alternatives like decide_approval or list_pending_approvals, nor does it provide exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_approval_gateAInspect
Fetch an approval gate by 32-byte hex id. Returns the approver set (single / threshold / role / delegated), m-of-n threshold, on-event trigger, and effect.
| Name | Required | Description | Default |
|---|---|---|---|
| gate_id | Yes | 32-byte hex approval gate id |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description bears the burden of behavioral disclosure. It implies a read-only operation via 'Fetch' and lists returned fields, but does not explicitly state idempotency, permissions, or side effects. The absence of annotations is partially compensated by the description's clarity, but lacks full transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, efficient sentence that covers the action, identifier format, and returned fields. No extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists (not shown but signaled), the description appropriately summarizes key return fields without redundancy. For a simple fetch-by-id tool, this provides sufficient context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema's description of 'gate_id' matches the tool description. The description adds no new meaning beyond the schema, meeting the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Fetch', the resource 'approval gate', the identifier format '32-byte hex id', and lists the specific fields returned. This distinguishes it from sibling tools like 'get_approval' or 'get_approval_request' which deal with different approval entities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'get_approval' or 'list_pending_approvals'. The description does not provide context for when a user should fetch an approval gate specifically.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_approval_requestAInspect
Fetch an open or finalized approval request by 32-byte hex id. Returns the gate, decisions collected, threshold progress, and final outcome (approved / rejected / pending).
| Name | Required | Description | Default |
|---|---|---|---|
| request_id | Yes | 32-byte hex approval request id |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the behavior as read-only ('Fetch') and lists what is returned (gate, decisions, threshold progress, final outcome). It also notes it handles both open and finalized requests.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first states purpose and parameter, second lists return fields. No fluff, well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a simple parameter and an output schema (not shown). The description covers the essential return fields and context. Given the sibling set and complexity, it is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already describes the parameter as '32-byte hex approval request id'. The description reinforces this format. Since schema coverage is 100%, the description adds marginal but useful emphasis on the id format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Fetch', the resource 'approval request', and the identifier format '32-byte hex id'. It distinguishes from siblings like 'get_approval' by specifying that it returns gate, decisions, threshold, and outcome.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for fetching a specific approval request by ID but does not provide explicit when-to-use guidance or contrast with alternative tools like 'list_pending_approvals' or 'decide_approval'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_balanceAInspect
Get the TNZO token balance of an account on the Tenzro ledger
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Hex-encoded account address (with or without 0x prefix) |
Output Schema
| Name | Required | Description |
|---|---|---|
| address | Yes | Hex-encoded account address (with `0x` prefix). |
| balance_wei | Yes | Account balance in TNZO base units (wei, 10^18 per TNZO). Decimal string to avoid JSON precision loss for u128 values. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry full behavioral disclosure. It only states the action without noting that it is read-only, has no side effects, or any other 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that precisely conveys the tool's purpose with no extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (not shown but indicated as present), the description need not explain return values. It sufficiently covers the tool's function.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with a clear description for the 'address' parameter. The description adds no additional semantics 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.
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 'TNZO token balance', and the context 'on the Tenzro ledger'. It distinguishes from siblings like get_token_balance by specifying the token type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for querying TNZO balance but provides no explicit guidance on when to use versus alternatives like get_token_balance or what prerequisites exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_blockAInspect
Get a block by height from the Tenzro ledger, including transactions and metadata
| Name | Required | Description | Default |
|---|---|---|---|
| height | Yes | Block height to retrieve |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description discloses return content (block with transactions and metadata) but omits any side effects, permissions, rate limits, or data volume constraints. Adequate for a simple read operation, but lacks 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with action and resource. Every word serves a purpose, no redundancy. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple getter with one parameter and an output schema, the description is complete. It covers what the tool returns (transactions and metadata) and the source ledger. No gaps given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter 'height' described as 'Block height to retrieve'. The description adds no additional meaning beyond the schema, meeting the baseline but not improving it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'Get', the resource 'block by height', the specific ledger 'Tenzro', and the scope 'including transactions and metadata'. It effectively distinguishes from siblings like 'get_block_range' (range) and 'get_transaction' (single transaction).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 purpose implies use for retrieving a specific block by height, but there is no mention of when not to use it or reference to siblings like 'get_block_range' for multiple blocks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_block_rangeAInspect
Fetch a contiguous range of blocks by height (default 64, max 256). Returns block summaries plus next_height and more_available so a lagging client can paginate forward until caught up.
| Name | Required | Description | Default |
|---|---|---|---|
| end_height | Yes | Last block height to fetch (inclusive) | |
| max_results | No | Maximum number of blocks to return (default 64, capped at 256) | |
| start_height | Yes | First block height to fetch (inclusive) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses pagination via next_height and more_available, and constrains block range (64 default, 256 max). Lacks disclosure on authentication, rate limits, error handling, or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence efficiently conveys purpose, constraints, and return behavior. Every phrase adds value, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists, so description need not detail return shape. It covers pagination (next_height, more_available) and default/max limits, which suffices for a data-fetching tool. Minor omission: no mention of error cases for invalid ranges.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% coverage with descriptions for all three parameters. Description adds value by stating default and max for max_results, and clarifying 'contiguous range' and 'paginate forward', which reinforces understanding beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'Fetch' and resource 'contiguous range of blocks by height', with details on default and max sizes. It distinguishes from sibling tools that fetch single blocks (e.g., get_block).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage for lagging clients needing forward pagination, but does not explicitly contrast with alternatives like get_block for single block retrieval or other tools. However, the pagination pattern is clearly described.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_bridge_routesBInspect
Get available bridge routes between two chains, including estimated fees, time, and which adapter handles the route
| Name | Required | Description | Default |
|---|---|---|---|
| dest_chain | Yes | Destination chain | |
| source_chain | Yes | Source chain (e.g. 'tenzro', 'ethereum', 'solana') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool returns routes with fees, time, and adapter, but does not disclose whether it is read-only, requires authorization, has rate limits, or any other behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured sentence that front-loads the core purpose and includes key outputs. No superfluous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the tool's purpose and what it returns. With a complete input schema and an output schema present, the description is adequate for a simple query tool, though it lacks mention of potential errors or chain compatibility.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with basic descriptions for source_chain and dest_chain. The description adds no additional meaning to the parameters 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets available bridge routes between two chains, with additional details like fees, time, and adapter. It uses a specific verb ('Get') and resource ('bridge routes'), distinguishing it from sibling bridge tools that execute transactions or provide quotes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 bridge_quote or bridge_tokens. The description implies its use for discovery, but doesn't mention prerequisites or that execution requires different tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_capability_attestationsAInspect
Fetch all attestations registered for a given capability. Each attestation carries the agent ID, attestation timestamp, TEE-backed flag, attester address, attester public key, signature, and metadata. Set verified_only=true to filter for attestations that pass query-time signature/expiry verification.
| Name | Required | Description | Default |
|---|---|---|---|
| capability | Yes | Capability short-form name: 'nlp', 'vision', 'code', 'data', 'blockchain', 'smart_contract', 'api_integration', 'coordination', or any custom-capability name registered by an agent. | |
| verified_only | No | If true, run query-time signature/expiry checks before returning. Default false: registry already verifies signatures eagerly at submit time per #52. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the fields returned and explains the `verified_only` parameter behavior, including default and rationale. However, it does not cover authentication requirements, rate limits, or potential side effects, though the tool is read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the main purpose, followed by parameter behavior. No extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description covers the essential purpose and key parameter behavior. It lacks a usage guideline but is otherwise sufficient for a fetch operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes both parameters (100% coverage). The description adds value by explaining the default for `verified_only` and the reason ('registry already verifies signatures eagerly'), providing context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Fetch' and the resource 'attestations registered for a given capability', with a specific scope. It distinguishes from the sibling `get_agent_capability_attestations` by the grouping (capability vs agent).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 `get_agent_capability_attestations`. The description does not mention when-not-to-use or provide comparative context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_capital_intentBInspect
Read a capital intent record (status, quotes, legs, escrow, receipt). Mirrors tenzro_getCapitalIntent.
| Name | Required | Description | Default |
|---|---|---|---|
| intent_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden. It states 'Read', implying a read-only operation, but does not explicitly confirm no side effects, permissions needed, or other behavioral traits like idempotency. The listing of fields provides some transparency about output, but not enough for a comprehensive behavioral profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the main purpose, and wastes no words. It efficiently communicates the core function and lists fields, making it easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of many sibling tools, zero schema description, and no annotations, the description is too minimal. It lists fields but does not explain how this read tool relates to other capital intent operations, when to use it, or what the output schema covers. The existence of an output schema reduces some burden, but the description still lacks completeness for effective tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description should compensate by explaining the intent_id parameter, but it only mentions 'Read a capital intent record' without any description of what intent_id is, how to obtain it, or its format. This leaves the agent without necessary guidance on parameter usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool reads a capital intent record and lists the fields included (status, quotes, legs, escrow, receipt). It distinguishes itself from action-oriented siblings like capital_intent_assign or capital_intent_execute by focusing on reading. However, it does not explicitly mention the scope (e.g., retrieval by intent_id) or reinforce that it's read-only.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description only mentions it mirrors another tool (tenzro_getCapitalIntent), which may hint at an alternative but does not provide explicit guidance on when to use this tool versus siblings. No when-not-to-use or prerequisite information is given, 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.
get_disputeAInspect
Fetch a single channel dispute by id. Returns the full ChannelDispute (challenger, evidence blobs, status, opened_at / timeout_at / resolved_at, resolution). Returns -32004 if no dispute with that id exists. Requires ChannelManager.
| Name | Required | Description | Default |
|---|---|---|---|
| dispute_id | Yes | Dispute id. Returns the full ChannelDispute record (challenger, evidence blobs, status, opened_at/timeout_at/resolved_at, resolution). Returns -32004 if no dispute with that id exists. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses return structure, error condition (-32004), and requirement ('ChannelManager'). Assumed read-only, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-loading the purpose, return fields, error, and requirement. No wasted words, every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists (not shown but noted), description lists return fields. Provides sufficient info for a single-fetch tool, though could mention pagination or more details about optional filtering.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter 'dispute_id'. Description adds no new semantic info beyond what the schema already provides, earning baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it fetches a single channel dispute by id, lists return fields (challenger, evidence blobs, status, timestamps, resolution), and mentions error code -32004. Distinguishes from sibling 'list_disputes_by_channel'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Mentions requirement 'Requires ChannelManager', which is a useful prerequisite. No explicit when-to-use vs alternatives or when-not-to-use guidance, leaving room for improvement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_download_progressAInspect
Check the download progress of a model. Returns bytes downloaded, total size, percentage complete, and estimated time remaining.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Model ID to check download progress for |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states what it returns, not behavioral traits like idempotency, required preconditions, or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action, no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and existence of an output schema, the description covers return fields well, though it lacks context about prerequisites and error scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description for 'model_id'. The tool description adds no additional parameter semantics, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Check' and resource 'download progress of a model', clearly distinguishing it from siblings like 'download_model' which initiates a download.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies it is used to monitor download progress after initiating a download, but it does not explicitly state when to use it versus alternatives or provide any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_escrowAInspect
Read a single escrow record by its 32-byte escrow_id (hex, with or without 0x prefix). Returns {escrow_id, payer, payee, amount, asset_id, status, created_at, expires_at, release_conditions}. Requires EscrowManager to be initialised.
| Name | Required | Description | Default |
|---|---|---|---|
| escrow_id | Yes | Escrow id — 32-byte SHA-256 digest derived by the VM during CreateEscrow. Accepts both 0x-prefixed and bare hex. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but description explicitly declares read-only nature, return structure, and prerequisite ('Requires EscrowManager to be initialised'). Transparent about non-destructive behavior and preconditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two front-loaded sentences covering action, parameter format, return structure, and prerequisite. No extraneous words; highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool, description fully covers input format, return shape, and precondition. Context signals indicate existing output schema, but description's return field list adds immediate clarity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (1 param described). Tool description adds value by detailing hex format (including 0x prefix) and explaining how escrow_id is derived (SHA-256), beyond schema's description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Read a single escrow record by its 32-byte escrow_id', specifying exact verb and resource. Distinguishes from sibling list/filter tools by focusing on single-record retrieval by ID.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies context: use when you have the escrow ID and need one record. Sibling names (list_escrows_by_payee, refund_escrow) provide natural alternatives, though no explicit when-not statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_eventsAInspect
Query historical events from the Tenzro ledger. Supports cursor-based pagination. Filter by block range, event type, and involved addresses. Returns events ordered by sequence number.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of events to return (default 50, max 200) | |
| to_block | No | Maximum block height (optional) | |
| addresses | No | Filter by involved addresses (hex, optional) | |
| from_block | No | Minimum block height (optional) | |
| event_types | No | Event types to filter: 'transfer', 'mint', 'burn', 'stake', 'bridge', 'settlement', 'nft_transfer', 'compliance' (optional, returns all if omitted) | |
| from_sequence | No | Start from a specific event sequence number for cursor-based pagination |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that events are ordered by sequence number and supports cursor-based pagination. However, it does not explicitly state that the operation is read-only or mention any rate limits, permissions, or side effects. For a query tool, the transparency is good but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences are each purposeful: first states the main action, second mentions a key feature (pagination), third lists filters and ordering. No redundant or unclear phrasing. The description is front-loaded and efficiently conveys essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters, an output schema, and no annotations, the description covers the core functionality: querying, filtering, pagination, and ordering. It does not explain event structure or how to use cursor steps, but the output schema likely fills that gap. The description is mostly complete for a query tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value beyond the schema by explaining that from_sequence enables cursor-based pagination and the overall ordering by sequence number. It groups filters (block range, event type, addresses) and highlights the return order, providing meaningful context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool queries historical events from the Tenzro ledger, with specific capabilities: cursor-based pagination, filtering by block range, event type, and addresses, and returns events ordered by sequence number. This action-resource pairing is distinct from sibling tools like get_block or subscribe_events.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for querying historical ledger events with filters, but does not explicitly state when to use this tool over alternatives (e.g., subscribe_events for real-time, list_workflows for workflows). No exclusions or alternative suggestions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_fee_marketAInspect
Inspect the EIP-1559 fee market: current effective gas price (base fee + suggested tip), suggested priority tip, and recent base-fee history. Use this to size maxFeePerGas / maxPriorityFeePerGas on Type-2 transactions. Base fee adjusts ±12.5% per block based on parent gas usage vs. the 15M target.
| Name | Required | Description | Default |
|---|---|---|---|
| blocks | No | Number of recent blocks to summarize in fee history (1..=1024, default 10) | |
| reward_percentiles | No | Tip percentiles to request, e.g. [25.0, 50.0, 75.0]; pass [] or omit to skip percentile sampling |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description provides some behavioral context (base fee adjusts ±12.5%) but lacks details on read-only nature, authentication requirements, or rate limits. It adds value beyond the bare minimum.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences cover purpose, usage, and a behavioral detail. No redundant words, front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (not provided), the description adequately covers purpose, usage, and a behavioral trait. It could mention network context but is largely complete for a simple inspection tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 mentions 'recent base-fee history' which indirectly relates to the 'blocks' parameter but does not add explicit meaning beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool inspects the EIP-1559 fee market, listing specific outputs (effective gas price, priority tip, base fee history). It uses specific verbs and resource, and distinguishes from siblings by its unique focus.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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: to size maxFeePerGas and maxPriorityFeePerGas on Type-2 transactions. While it does not list exclusions, the context is clear and no alternative tool exists among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_fee_routeAInspect
Fetch a fee route by 32-byte hex id. Fee routes describe how a settlement payout is split across recipients in basis points (must sum to 10_000).
| Name | Required | Description | Default |
|---|---|---|---|
| fee_route_id | Yes | 32-byte hex fee route id |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description explains what a fee route represents (settlement split in basis points summing to 10,000), which adds context but does not disclose behavioral traits like read-only nature, authentication needs, or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first states the action concisely, second provides essential context about fee routes. No redundant information, every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description sufficiently explains what a fee route is, aiding understanding of the output. However, it lacks mention of error cases or validation of the ID format beyond 'hex'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single parameter described as '32-byte hex fee route id'. The description reinforces the parameter format and adds meaning by explaining the concept of fee routes, adding value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Fetch', the resource 'fee route', and the identifier format '32-byte hex id'. It distinguishes from sibling 'list_fee_routes' by implying a specific ID lookup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you have a specific fee route ID, but does not explicitly state when to use this tool versus alternatives like 'list_fee_routes'. No exclusion criteria or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_network_statsAInspect
Get a snapshot of libp2p network metrics: connection counts, gossipsub publish/accept/reject counters, Kademlia routing table size, gossipsub mesh size, and peer_address_migrations_total (QUIC path migration / mobile network switch / NAT rebinding observability)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It lists the metrics returned, which is transparent, but does not disclose safety (read-only), authorization needs, or potential side effects. While the metrics suggest a read operation, this is implicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence listing metrics with parenthetical clarification for one metric. No wasted words, front-loaded with purpose. Highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 0 parameters and presence of output schema, the description covers the returned metrics well. Lacks mention of any prerequisites or usage constraints, but for a simple snapshot tool, it is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has 0 parameters, and schema coverage is 100% (trivially). Per rubric, baseline for 0 params is 4. Description does not need to add parameter info.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Get a snapshot of libp2p network metrics' and enumerates specific metrics (connection counts, gossipsub counters, etc.). It distinguishes from sibling tools like 'get_node_status' and 'get_provider_stats' by focusing solely on libp2p networking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage for fetching network metrics, but no explicit guidance on when to use this tool versus alternatives (e.g., get_node_status). No when-not-to or scenario exclusions provided, which is a gap given the large sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_nft_infoAInspect
Get information about an NFT collection or a specific token within a collection. If token_id is provided, returns token-level details (owner, URI). If omitted, returns collection-level info (name, symbol, total supply).
| Name | Required | Description | Default |
|---|---|---|---|
| token_id | No | Token ID within the collection (optional — if omitted, returns collection-level info) | |
| collection_id | Yes | Collection ID (UUID) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description discloses what is returned (owner, URI, name, symbol, total supply) but does not mention side effects, authorization needs, rate limits, or error conditions. Adequate but could be more thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded, and every sentence provides essential information with no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Description covers the two modes and key return fields. Output schema exists, so detailed return structure is not required. Adequate for an agent to decide when to use this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters. Description adds value by explaining the optional nature of token_id and the resulting behavior, surpassing the schema's basic text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it gets information about an NFT collection or token, and distinguishes between token-level and collection-level info. It differentiates from sibling NFT tools like mint_nft, transfer_nft, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly explains conditional usage based on token_id presence: if provided, token-level; if omitted, collection-level. Does not mention when not to use it, but the conditional logic provides clear guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_node_statusAInspect
Get the current status of the Tenzro node including health, block height, peer count, uptime, and role
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the tool gets status, which implies read-only, but lacks details on authentication, error behavior, or idempotency. For a tool with no annotations, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is clear and front-loaded with the key purpose. It lists example outputs but is not overly verbose. Minor improvement could be avoiding the list if it's in the output schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature of a status check and the presence of an output schema, the description covers the essential information. It does not explain failure modes or edge cases, but for this type of tool it is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so schema coverage is effectively 100%. The description does not need to explain parameters but adds meaning by describing what the tool returns, which is beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 'current status of the Tenzro node', listing specific properties (health, block height, peer count, uptime, role). It is specific enough to distinguish from many sibling get_* tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 get_network_stats or get_swarm_status. It does not mention prerequisites, typical 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.
get_obligationAInspect
Fetch an obligation record by 32-byte hex id. Returns the obligor / oblige / kind / amount / status / discharge proof.
| Name | Required | Description | Default |
|---|---|---|---|
| obligation_id | Yes | 32-byte hex obligation id |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description lists returned fields, implying a read operation with no side effects. However, it does not disclose authorization requirements, rate limits, or any other behavioral traits. Since no annotations exist, the description could be more thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first specifies action and parameter, second lists output fields. Every word earns its place; no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description does not need to explain return values, but it still lists them for clarity. The tool is simple with one parameter and clear return fields, making the description complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 parameter as '32-byte hex obligation id'. The description adds only the context that it is an 'obligation record', which is minimal value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Fetch' and the resource 'obligation record', and specifies the unique identifier '32-byte hex id'. This distinguishes it from other sibling tools, as no other tool targets obligation records.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: when you need to fetch an obligation by its hex ID. No explicit alternatives or when-not-to-use guidance, but the purpose is so specific that 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.
get_privacy_domainAInspect
Fetch a privacy domain by 32-byte hex id. Returns members, X25519 envelope policy, freeze status. Members see plaintext, non-members see Deny (indistinguishable from non-existence).
| Name | Required | Description | Default |
|---|---|---|---|
| domain_id | Yes | 32-byte hex privacy domain id |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description carries full burden. It discloses that members see plaintext and non-members get a Deny indistinguishable from non-existence, which is critical behavioral context. However, does not explicitly state idempotency or side effects (though implied read-only).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. Front-loaded with action and key details. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists, so no need for detailed return format. Description covers core return members and behavioral nuance. Complete for a simple fetch tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with description '32-byte hex privacy domain id'. Description reinforces '32-byte hex id' but adds no new meaning beyond schema. Baseline 3 for full coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Fetch a privacy domain by 32-byte hex id' with specific output details (members, X25519 envelope policy, freeze status). Distinguishes from sibling tools like list_privacy_domains_for_did by specifying unique behavior (member vs non-member visibility).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implicitly indicates when to use (if you have a domain id), but no explicit guidance on alternatives or when not to use. Could mention that list_privacy_domains_for_did is for enumerating domains.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_provider_pricingAInspect
Get the current pricing configuration for a provider node. Returns the price per 1k tokens, minimum charge, and last updated timestamp.
| Name | Required | Description | Default |
|---|---|---|---|
| provider_address | Yes | Hex-encoded provider address |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool returns pricing data but fails to disclose any behavioral traits such as authentication requirements, error conditions (e.g., invalid provider address), or side effects. For a read operation, minimal disclosure is insufficient when annotations are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences (19 words), front-loaded with the purpose, and contains no unnecessary information. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 enums, no nested objects, output schema present), the description covers the essential return fields. It lacks mention of error handling or guarantees, but is adequate for a straightforward getter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter 'provider_address' is fully described in the schema ('Hex-encoded provider address'). The description adds no additional meaning beyond what the schema provides. Schema coverage is 100%, 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.
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 'current pricing configuration for a provider node'. It specifies the return fields (price per 1k tokens, minimum charge, last updated timestamp), which distinguishes it from its sibling 'set_provider_pricing'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for reading pricing information. While it doesn't explicitly mention when not to use or alternatives, it is clear that this is a read-only counterpart to 'set_provider_pricing'. Slight lack of explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_provider_scheduleAInspect
Get the availability schedule for a provider node. Returns the configured hours, days, and timezone when the provider accepts inference requests.
| Name | Required | Description | Default |
|---|---|---|---|
| provider_address | Yes | Hex-encoded provider address |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It states the return content but does not clarify read-only nature, error scenarios (e.g., missing provider), permissions, or side effects. The verb 'Get' implies read-only, but explicit disclosure is absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences: the first states the purpose, the second describes the return. It is front-loaded and contains no extraneous information, though it could be slightly more compact.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has a single required parameter, an output schema (not shown but present), and no nested objects, the description adequately covers the core functionality. It does not mention edge cases (e.g., provider not found), but the completeness is sufficient for this simple getter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (the sole parameter 'provider_address' has a description: 'Hex-encoded provider address'). The tool description adds no additional parameter meaning beyond what the schema already provides, 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.
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 ('availability schedule for a provider node') with clear return content ('hours, days, and timezone'). It distinguishes from sibling tools like 'get_provider_pricing' and 'get_provider_stats' by focusing on schedule information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 (e.g., 'set_provider_schedule'). It implies usage for querying availability but lacks context about prerequisites or decision criteria for choosing this tool over related ones.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_provider_statsBInspect
Get provider statistics including served models, inference count, staking info, and earnings. Omit address to get stats for the local node.
| Name | Required | Description | Default |
|---|---|---|---|
| address | No | Hex-encoded provider address (with or without 0x prefix). If omitted, returns stats for the local node |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It implies a read operation but does not explicitly state that it is read-only, nor does it mention side effects, authentication needs, or error handling. The local node fallback is noted, but other behaviors (e.g., latency, permissions) are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences (18 words), front-loading the purpose and essential usage detail. Every word adds value, with no repetition or fluff. It is efficiently structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has a single optional parameter and an output schema exists, the description lists the key categories of statistics but omits details about the output format or field structure. It is adequate for a simple read tool but could be more informative about what 'statistics' includes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the tool description echoes the schema's parameter description (hex-encoded address, omit for local node). The description adds no new semantic information beyond the schema; it reinforces the local node behavior but does not deepen understanding. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves provider statistics with specific fields (served models, inference count, staking info, earnings). It distinguishes from sibling tools by the scope (provider-specific stats), but does not explicitly differentiate from other stats tools like get_network_stats.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides guidance on omitting the address to get local node stats, but lacks any information on when to use this tool over alternatives (e.g., get_provider_pricing) or when not to use it. No prerequisites or context for tool selection are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_reserveBInspect
Read the current reserve attestation for a tokenized asset. Mirrors tenzro_getReserve.
| Name | Required | Description | Default |
|---|---|---|---|
| asset_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description must disclose all behavioral traits. Only states 'Read' (idempotent, non-destructive). No mention of performance, authorization, error cases, or side effects. Insufficient for a 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences. Front-loaded with action and resource. Second sentence adds useful cross-reference. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists, return values need not be explained. However, missing context about what a reserve attestation is, its role in tokenized assets, and relation to other attestation tools. Minimal but adequate for a simple read.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage for asset_id. Description adds no meaning about format, constraints, or examples. Fails to compensate for schema's lack of documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it reads a 'reserve attestation for a tokenized asset' using a clear verb 'Read'. Distinguishes from sibling 'submit_reserve_attestation' implicitly, but does not explicitly differentiate from other read tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies use when current reserve attestation is needed, but no explicit guidance on when to use vs alternatives like 'submit_reserve_attestation' or prerequisites for asset_id.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_secure_mint_policyCInspect
Read the Secure-Mint policy for an asset.
| Name | Required | Description | Default |
|---|---|---|---|
| asset_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only says 'Read', implying idempotent read, but omits details like required permissions, error cases, rate limits, or side effects. The output schema exists but is not described here.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one sentence of 7 words, extremely concise but at the cost of omitting critical information. It is front-loaded with the verb but fails to include necessary context, making it under-specified rather than efficiently concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given low complexity (1 required param, output schema exists), the description should at least hint at the response or policy structure. It doesn't mention what the policy contains, any prerequisites, or how to interpret the output, leaving the agent with insufficient context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage for its single parameter 'asset_id'. The description does not mention this parameter at all, leaving the agent without any semantic meaning for what 'asset_id' represents or how to format it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the verb 'Read' and specifies the resource 'Secure-Mint policy for an asset', clearly distinguishing it from sibling tools like 'set_secure_mint_policy' or 'clear_secure_mint_policy' that imply write or delete operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, no mention of prerequisites, context, or exclusions. It simply states what it does without helping the agent decide when to invoke it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_skill_usageAInspect
Get usage statistics for a registered skill on the Tenzro Network. Returns total invocations and last used timestamp.
| Name | Required | Description | Default |
|---|---|---|---|
| skill_id | Yes | Skill ID to get usage stats for (e.g. 'openclaw-tenzro', 'solana-defi') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool returns statistics but does not disclose whether it is a read-only operation, required permissions, rate limits, or error scenarios. The behavioral context is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the main action, no redundant words. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 1 parameter and an output schema, the description adequately covers core functionality. It could mention that the skill must be registered, but for a simple read tool it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter skill_id is well-described with examples in the input schema. The description does not add additional meaning beyond the schema, 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.
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 'usage statistics for a registered skill', and specifies the return values 'total invocations and last used timestamp'. It distinguishes from sibling tools like 'get_tool_usage' by focusing specifically on skills.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the skill must be registered but does not explicitly state when to use this tool vs alternatives like 'get_tool_usage' or 'get_usage_stats'. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_snapshot_chunkAInspect
Fetch one chunk of a local snapshot by (height, chunk_index). The returned data_b64 is the base64-encoded chunk bytes; verify against manifest.chunk_hashes_hex[chunk_index] before applying. Returns {height, chunk_index, data_b64}.
| Name | Required | Description | Default |
|---|---|---|---|
| height | Yes | Block height of the snapshot the chunk belongs to | |
| chunk_index | Yes | Index of the chunk to fetch (0..manifest.num_chunks) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that data_b64 is base64-encoded and advises verification against manifest, adding behavioral context beyond the schema. However, it does not address potential side effects (though likely read-only) or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences that are front-loaded with the main purpose and include essential details. Every word serves a purpose, no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists (as indicated by context signals), the description does not need to detail return values. It covers the fetch operation, verification step, and data format, making it complete for a simple retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already has 100% coverage with descriptions for both height and chunk_index. The description adds value by instructing verification against manifest.chunk_hashes_hex[chunk_index], providing application-level semantics not captured in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it fetches a chunk by height and chunk_index, with specific verb 'Fetch' and resource 'snapshot chunk'. It also mentions the return format and verification step, distinguishing it from sibling tools like get_snapshot_manifest.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage after obtaining a manifest (by referencing manifest.chunk_hashes_hex), but does not explicitly state when to use this tool versus alternatives like apply_snapshot_chunk or list_snapshots. No when-not-to-use or exclusion criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_snapshot_manifestAInspect
Fetch the full snapshot manifest at height, including per-chunk SHA-256 hashes used to verify chunks before applying. Returns JSON-RPC error -32004 no snapshot at height if no snapshot exists at that height. The manifest contains state_root_hex which the caller MUST verify against a trusted QC at the same height before offering this manifest to another node.
| Name | Required | Description | Default |
|---|---|---|---|
| height | Yes | Block height of the snapshot to fetch the manifest for |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses error behavior (JSON-RPC error -32004), required verification step, and key content (per-chunk hashes, state_root_hex). It doesn't mention read-only nature, but it's implicitly fetching data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with verb and resource. Every sentence adds value: what it does, error case, and mandatory verification step. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (not shown but indicated), the description doesn't need to detail return format. It covers the essential behavioral aspect (verification requirement) and error handling, making it complete for a one-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter height is fully described in the schema and the description adds no extra semantics beyond what the schema provides. Schema coverage is 100%, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches the full snapshot manifest at a specific height, including per-chunk SHA-256 hashes. It distinguishes itself from sibling tools like get_snapshot_chunk and apply_snapshot_chunk by focusing on the manifest retrieval and verification step.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use it (to get manifest for verification) and includes a critical usage instruction: the caller must verify state_root_hex against a trusted QC before offering the manifest. While it doesn't explicitly say when not to use it, the context and sibling names imply alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_spending_limitsBInspect
Get the current spending limits for a wallet. Returns the daily limit, per-transaction limit, and current daily usage.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet_id | Yes | Wallet ID (UUID) to query spending limits for |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully convey behavioral traits. While 'Get' implies read-only, the description does not explicitly state it is non-destructive, does not mention authorization needs, rate limits, or error conditions. The agent cannot assess safety for autonomous invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with action, no filler. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite lacking usage guidelines and behavioral transparency, the description clearly outlines the return values (daily limit, per-transaction limit, current daily usage) which adds value beyond the parameter schema and output schema. For a simple read tool, this is mostly complete, though prerequisites and error handling are omitted.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; the single parameter wallet_id is described in the schema as 'Wallet ID (UUID) to query spending limits for'. 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.
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 'spending limits for a wallet', and specifies exactly what is returned: daily limit, per-transaction limit, and current daily usage. This provides unambiguous purpose and distinguishes it from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives like get_balance or set_spending_limits. It does not specify prerequisites, context, or exclusions, leaving the agent without decision-making support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_svm_cross_vm_program_infoAInspect
Return the canonical Tenzro Cross-VM SVM-native program ID and 4 instruction discriminators (bridge_to_evm, bridge_from_evm, register_token_pointer, transfer_cross_vm). Use this to construct SVM Instructions targeting the Tenzro Cross-VM native program from any SVM client.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Describes a read-only retrieval of static metadata; no side effects mentioned. Clearly non-destructive but could state 'read-only' explicitly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first describes output, second describes usage. No wasted words, front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given low complexity, no parameters, and existence of output schema, the description fully covers what the tool returns and why. Complete for its purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, baseline 4 per rubric. No additional parameter info needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it returns the canonical program ID and four instruction discriminators, specifically for the Tenzro Cross-VM native program. Distinct from siblings as it is a pure info retrieval tool for this specific program.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to use for constructing SVM instructions targeting the program. Provides clear context but lacks 'when not to use' or alternative tool references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_swarm_statusAInspect
Get the current status of a Tenzro agent swarm including lifecycle status, member count, and per-member agent statuses, roles, and results.
| Name | Required | Description | Default |
|---|---|---|---|
| swarm_id | Yes | Swarm ID to query |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It describes the output but does not explicitly state that the tool is read-only or require no side effects, though the verb 'Get' implies it. Lacks disclosure of any behavioral traits beyond output.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the tool's purpose and output details without any redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema, the description adequately covers the return content. However, it could mention potential error conditions or ensure the swarm exists, but it is largely complete for a simple query.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with 'Swarm ID to query'. The description adds context (getting status) but does not enhance parameter meaning beyond schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 'current status of a Tenzro agent swarm', listing included details (lifecycle status, member count, per-member statuses, roles, results). It clearly distinguishes from sibling tools like 'create_swarm' and 'terminate_swarm'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for obtaining swarm status but provides no explicit guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_taskAInspect
Get details about a specific task on the Tenzro Task Marketplace. Returns task description, status, requester, assigned agent, quotes, and completion data.
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Task ID to retrieve |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses return data (description, status, requester, assigned agent, quotes, completion). Could be more explicit about being read-only, but 'Get' implies no 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with purpose and returns. No unnecessary words. Efficient description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Single parameter, clear operation, and output schema exists. Description covers what the tool does and what it returns. No missing context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with param 'task_id' described as 'Task ID to retrieve'. Description adds marketplace context but no additional parameter details beyond schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Get details' and resource 'specific task on the Tenzro Task Marketplace', lists return fields. Distinguishes from siblings like list_tasks, assign_task, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage when needing details of a specific task by ID, but does not explicitly mention alternatives or when not to use. Context is clear but lacks exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tee_attestationAInspect
Generate a TEE attestation report from the node's hardware enclave. The attestation proves the code is running in a genuine TEE. Optionally specify the TEE type or auto-detect.
| Name | Required | Description | Default |
|---|---|---|---|
| tee_type | No | TEE type: 'tdx', 'sev-snp', 'nitro', 'nvidia-gpu', or 'auto' (detect best available) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description bears full burden. It discloses that the attestation proves code runs in a genuine TEE, but lacks prerequisites (e.g., hardware TEE support) or potential side effects. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first defines purpose, second explains the optional parameter. No wasted words, front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a single optional parameter and presence of output schema, the description is mostly complete. Could mention that this tool requires TEE-capable hardware or provide guidance on when to use each TEE type.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (the single parameter 'tee_type' is documented). The description reaffirms that the parameter is optional and can be auto-detected, adding little beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Generate') and the resource ('a TEE attestation report from the node's hardware enclave'). It distinguishes itself from sibling tools like 'verify_tee_attestation' (verifies) and 'detect_tee' (detects) by focusing on generation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (generate attestation) and mentions an optional parameter, but does not explicitly when not to use or provide alternatives. Sibling tool names hint at other operations but are not referenced.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_token_balanceAInspect
Get the TNZO balance for an address across all VMs. Shows native balance (18 decimals), EVM wTNZO balance (18 decimals), SVM wTNZO balance (9 decimals), and DAML holding amount.
| Name | Required | Description | Default |
|---|---|---|---|
| token | No | Token symbol (default: 'TNZO') | |
| address | Yes | Address to query (hex) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool is read-only and returns multiple balances with decimal precision, but does not mention permissions, rate limits, or whether the query is computationally expensive. Decent but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the purpose and immediately lists what is shown. 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (multi-VM balances) and the presence of an output schema, the description adequately explains the return values without needing to detail schema structure. It covers the essential info for an agent to understand the output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers both parameters with descriptions. The description adds meaning by clarifying that the output includes specific balance types and decimals, though it could resolve ambiguity about the 'token' parameter's default value (description says TNZO, schema says default null).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves the TNZO balance for an address across all VMs, and enumerates the specific balances shown (native, EVM wTNZO, SVM wTNZO, DAML holding). This distinguishes it from sibling tools like 'get_balance' and 'token_balance' by focusing on TNZO and multi-VM scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'get_balance' or 'token_balance'. While it implies focus on TNZO, it lacks guidance on context or exclusions, leaving the agent to infer usage from the token parameter.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_token_infoBInspect
Get information about a token by symbol, token ID, or EVM address. Returns the full token definition including cross-VM addresses.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | No | Token symbol (e.g. 'TNZO') | |
| token_id | No | Token ID (hex, 32 bytes) | |
| evm_address | No | EVM contract address (hex) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose whether this operation is read-only, idempotent, or has any side effects. Basic purpose is stated but no behavioral context beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences front-load the purpose and output, no fluff. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool is simple lookup with output schema present, so return docs not needed. However, lacks usage guidelines and behavioral transparency, which are gaps for a complete definition.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all three parameters with descriptions. The description notes that any of the three can be used and mentions cross-VM addresses in output, adding minimal value beyond schema. Baseline 3 due to high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool retrieves token info by symbol, ID, or address, and specifies return includes full definition and cross-VM addresses. Distinct from sibling tools like get_nft_info or list_tokens.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, nor when to prefer one parameter over another. Siblings include list_tokens and get_nft_info, but no differentiation is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tool_usageAInspect
Get usage statistics for a registered tool on the Tenzro Network. Returns total invocations and last used timestamp.
| Name | Required | Description | Default |
|---|---|---|---|
| tool_id | Yes | Tool ID to get usage stats for (e.g. 'tenzro-solana-mcp', 'tenzro-ethereum-mcp') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. It correctly states the return values but does not mention whether authentication is required, if it's read-only, or any other constraints. Adequate but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, covering purpose and output succinctly. No extraneous information, and key details are front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the tool's purpose and output, and the presence of an output schema compensates for missing return format details. However, it could be more complete by mentioning if the tool must be registered beforehand (already implied) or error cases. Still sufficient for a simple retrieval operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the parameter 'tool_id' is well-defined. The description adds value by providing concrete examples ('tenzro-solana-mcp', 'tenzro-ethereum-mcp'), which clarifies the expected format beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The name and description clearly indicate the tool retrieves usage statistics for a registered tool. It specifies the exact output (total invocations, last used timestamp) and distinguishes from similar siblings like 'get_skill_usage'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'get_skill_usage'. Usage is implied (for getting tool stats), but no exclusion or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_transactionAInspect
Look up a transaction by its hash on the Tenzro ledger, returning type, sender, recipient, amount, status, and block height
| Name | Required | Description | Default |
|---|---|---|---|
| tx_hash | Yes | Hex-encoded transaction hash (with or without 0x prefix) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry full burden. It mentions it's a read operation (returns data) but does not disclose side effects, auth requirements, rate limits, or behavior for invalid/unknown hashes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundant words. Directly communicates what the tool does and its key outputs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description need not detail return values. It lists key fields and covers the main purpose. Lacks error handling details but is sufficient for a simple lookup tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and schema already describes tx_hash format. Description only reiterates 'by its hash' without adding new semantics (e.g., length constraints, regex pattern). Baseline 3 for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action (look up), resource (transaction), method (by hash), and lists specific return fields (type, sender, recipient, amount, status, block height). Distinct from siblings like get_block or get_token_info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage is looking up a specific transaction by hash, but no explicit guidance on when to use vs. alternatives (e.g., get_block_range, get_balance). No when-not or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_usage_statsAInspect
Get usage statistics for an application. Returns total transactions, gas spent, active users, and wallet count.
| Name | Required | Description | Default |
|---|---|---|---|
| app_id | Yes | Application ID (UUID) to get usage stats for |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It states that the tool returns data but does not disclose whether it requires authentication, has rate limits, or is a read-only operation. The lack of side-effect information is a gap for a tool that likely queries state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The first sentence states the purpose, the second specifies return fields. Information is front-loaded and succinct.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple retrieval tool with one parameter and an output schema, the description covers the essential purpose and return fields. It could benefit from usage guidelines, but overall it is sufficiently complete given the tool's low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides a full description of the single parameter (app_id). The description adds no additional meaning beyond what the schema states, earning the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get usage statistics') and the specific resource ('for an application'). It lists the return fields (total transactions, gas spent, active users, wallet count), distinguishing it from sibling stats tools that target different scopes (e.g., network, provider, skill, tool).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 get_network_stats or get_provider_stats. The description implies application-level scope but does not provide decision criteria or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_validator_stateAInspect
Fetch a single validator's registry entry by hex-encoded 32-byte address (with or without 0x prefix). Returns null when the address is not registered. Read-only — validators self-register via the staking transaction path.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Hex-encoded 32-byte validator address (with or without 0x prefix) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses read-only nature and null return for unregistered addresses, compensating for absent annotations. Does not detail output structure, but output schema exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no redundancy; front-loads essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequately covers purpose, behavior, and return value for a simple fetch tool with output schema present; no gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter description; tool description repeats same info, adding no new semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'Fetch', resource 'a single validator's registry entry', and input format (hex-encoded 32-byte address). Distinct from sibling list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly marks as read-only and notes self-registration via staking; no explicit alternative mention but context implies use for single validator lookup.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_voting_powerAInspect
Get the governance voting power of an address. Returns the staked TNZO balance used as voting weight. Delegated power is included.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Hex-encoded address to query voting power for |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses that the tool returns staked TNZO balance and includes delegated power, but does not specify if the operation is read-only, requires authentication, or has any side effects. For a simple query, this is adequate but lacks explicit behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no redundancy. The purpose is front-loaded, and each sentence adds necessary context (what is returned and inclusion of delegated power).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema, the description does not need to detail return format. It explains the core return value and behavior (delegated power included). For a simple query tool, this is nearly complete, though edge cases (e.g., invalid address) are not mentioned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for the single parameter 'address', already describing it as 'Hex-encoded address to query voting power for'. The description adds no additional meaning beyond this, 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the verb 'Get' and the resource 'governance voting power of an address'. It details the return value ('staked TNZO balance used as voting weight') and notes that delegated power is included, which distinguishes it from related tools like 'delegate_voting_power' or 'vote_on_proposal'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for querying voting power but provides no explicit guidance on when to use this tool versus alternatives, nor does it mention prerequisites or exclusions. Among sibling tools like 'delegate_voting_power' and 'vote_on_proposal', the description does not clarify when this query tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_workflowAInspect
Fetch a workflow by 32-byte hex id. Returns the full Workflow record (creator, participants, obligations, approval gates, status, canton_mirror, signatures). Read-only. Writes use send_transaction with the workflow privileged-VM selectors.
| Name | Required | Description | Default |
|---|---|---|---|
| workflow_id | Yes | 32-byte hex workflow id (with or without 0x prefix) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description states it is read-only and lists the returned fields. This gives sufficient transparency for a simple fetch operation, though it could explicitly mention safety (no side effects) and idempotency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences. The first sentence front-loads the action and identifier format. The second adds return content and directs to the write tool. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema exists (implied by 'Returns the full Workflow record'), so the description does not need to detail return structure. It covers purpose, parameter, usage context, and read-only nature, which is complete for a simple fetch tool with good schema support.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description simply restates the parameter format (32-byte hex id) without adding semantic detail beyond the schema. Thus it meets the baseline for well-documented parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Fetch a workflow') and specifies the resource (workflow by 32-byte hex id). It lists the returned fields and distinguishes this read operation from the sibling write tool 'send_transaction', making it easy for an agent to select correctly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Read-only' and directs writes to 'send_transaction', providing clear guidance on when to use this tool versus the write alternative. However, it does not mention alternatives among other get/list tools for fetching multiple workflows.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_workflow_lifecycleAInspect
Full lifecycle history for a workflow: ordered list of LifecycleTransition entries (from-status, to-status, reason, actor, at). Useful for audit and dispute resolution.
| Name | Required | Description | Default |
|---|---|---|---|
| workflow_id | Yes | 32-byte hex workflow id (with or without 0x prefix) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the return structure (ordered list with specific fields) and the tool's read nature (implied by 'history'). However, it does not mention ordering guarantees, pagination, side effects, or authorization requirements. The description is adequate but not highly transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loading the core purpose (full lifecycle history) and providing context (ordered list, fields, use cases). Every sentence adds value without redundancy or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has a single parameter, an output schema (presumably), and the description explains the return structure, it is largely complete. However, it could be improved by explicitly differentiating from sibling workflow tools (e.g., get_workflow_saga) to help the AI select the correct tool. Still, it covers the essential information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter (workflow_id) is fully described in the input schema with format details (32-byte hex). The tool description does not add additional meaning beyond that, so the baseline score of 3 applies, as the schema already provides sufficient semantic coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns the full lifecycle history as an ordered list of LifecycleTransition entries with specified fields (from-status, to-status, reason, actor, at). It distinguishes from sibling tools like get_workflow (current state) and get_workflow_receipt (receipt) by focusing on historical transitions, and mentions specific use cases (audit and dispute resolution).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for historical tracking and audit, but does not explicitly state when to use this tool versus alternatives like get_workflow_saga or get_workflow_operational_metrics. There is no exclusion guidance or mention of when not to use it, leaving the AI to infer based on context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_workflow_operational_metricsAInspect
Snapshot of workflow operational metrics (workflows/obligations/approvals partitioned by status, signature totals, canton-mirror count, fee routes, privacy domains). Returns the same data as the /metrics scrape, but as typed JSON.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description indicates this is a read-only snapshot returning typed JSON. However, it does not disclose authentication needs, rate limits, or whether the data is real-time or cached. Basic behavioral context is present but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loading the purpose and key details. Every word adds value, with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and an output schema exists, the description covers the essential information: what the tool returns (a snapshot of metrics) and how it compares to another method. It lacks explicit differentiation from sibling tools, but is complete for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, so the schema covers everything. The description adds value by listing what metrics are included (e.g., signature totals, canton-mirror count), helping the agent decide if this tool is appropriate for specific metric needs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides a snapshot of workflow operational metrics and lists the categories (workflows/obligations/approvals by status, etc.). It distinguishes from sibling tools like get_workflow by focusing on aggregated metrics rather than individual workflow details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions an alternative method (the /metrics scrape) but does not explicitly state when to use this tool versus other workflow-related tools. Usage context is implied rather than directly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_workflow_receiptAInspect
Fetch a single workflow receipt by 32-byte hex id. Receipts are append-only and form a per-workflow hash chain via prev_receipt for audit.
| Name | Required | Description | Default |
|---|---|---|---|
| receipt_id | Yes | 32-byte hex receipt id |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description provides helpful behavioral context: 'Receipts are append-only and form a per-workflow hash chain via prev_receipt for audit.' It implies a read-only operation via 'Fetch', but could be more explicit about idempotency or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: the first states the action and scope, the second provides essential behavioral context. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (assumed) and the straightforward nature of fetching by ID, the description adequately explains the tool's purpose and the receipt concept. Could mention that it returns a single receipt object, but the action is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% coverage for the single parameter, and the description merely restates '32-byte hex id' which matches the schema's description, adding no new semantics beyond what is already present.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Fetch a single workflow receipt by 32-byte hex id' and explains the nature of receipts as append-only with a hash chain for audit, distinguishing it from list_workflow_receipts by focusing on fetching a single receipt.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for fetching a specific receipt by ID but does not explicitly compare with sibling tools like list_workflow_receipts or state when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_workflow_sagaAInspect
Read the current state of a saga workflow (steps, statuses, escrows, receipt). Mirrors tenzro_getWorkflowSaga.
| Name | Required | Description | Default |
|---|---|---|---|
| workflow_id | Yes | Workflow id to read |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description indicates a read operation ('Read the current state') but does not explicitly state idempotency, lack of side effects, or other behavioral traits. Functional but minimal transparency beyond 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences. Purpose is front-loaded. No extraneous information. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists, the description appropriately lists key output fields (steps, statuses, escrows, receipt). Could mention pagination or format but is largely complete for a simple read tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and describes the sole parameter (workflow_id). Description does not add detail beyond the schema; it mentions output components but not parameter semantics. Baseline score applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'Read', the resource 'saga workflow', and lists components: steps, statuses, escrows, receipt. Distinguishes from siblings like get_workflow and get_workflow_lifecycle by specifying 'saga' and mirroring tenzro_getWorkflowSaga.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is for saga workflows but does not provide explicit guidance on when to use this vs. other get_workflow* tools. No exclusions or alternatives are mentioned beyond mirroring a specific API.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hash_keccak256AInspect
Compute the Keccak-256 hash of hex-encoded data. Returns the 32-byte hash in hex. Used for Ethereum-compatible hashing.
| Name | Required | Description | Default |
|---|---|---|---|
| data_hex | Yes | Hex-encoded data to hash |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It correctly identifies the function as a deterministic, read-only hash computation with no side effects. Input and output formats are specified, although additional details (e.g., error handling, optional '0x' prefix) are omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two short sentences. It front-loads the core action and adds necessary context in the second sentence. No unnecessary words or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, single-parameter hash function, the description covers the essential aspects: purpose, input/output format, and typical use case. It does not specify constraints like hex length or character set, but these are reasonable assumptions. The output schema (implied) is adequately described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the schema already describes 'data_hex' as 'Hex-encoded data to hash.' The description reiterates this without adding new semantic information. Baseline is 3 since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (compute hash), input format (hex-encoded data), output format (32-byte hash in hex), and intended use (Ethereum-compatible hashing). It effectively distinguishes from sibling tool 'hash_sha256' by specifying Keccak-256 and Ethereum compatibility.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions 'Used for Ethereum-compatible hashing,' which provides context but does not explicitly state when to use versus alternatives or when not to use. No exclusions or prerequisites are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hash_sha256AInspect
Compute the SHA-256 hash of hex-encoded data. Returns the 32-byte hash in hex.
| Name | Required | Description | Default |
|---|---|---|---|
| data_hex | Yes | Hex-encoded data to hash |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the operation (compute SHA-256 hash), the required input format (hex), and the output format (32-byte hex). However, it does not disclose that the function is pure, stateless, or requires no special permissions. For a simple cryptographic hash, this is minimally adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no superfluous information. Every word contributes to understanding the tool's function and output. It is efficiently front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, no-side-effect hash function, the description covers the necessary aspects: algorithm, input format, and output format. It does not address error handling (e.g., invalid hex) but that is often acceptable for such a straightforward tool. The presence of an output schema (though not shown) is hinted by the return description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 parameter 'data_hex' is already described in the schema as 'Hex-encoded data to hash'. The tool description repeats this and adds 'SHA-256' algorithm context, but does not provide additional semantic detail beyond what the schema already conveys.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Compute' and clearly identifies the resource: 'SHA-256 hash of hex-encoded data'. It distinguishes from siblings by naming the algorithm directly, and the purpose is unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives like hash_keccak256. The description does not mention any selection criteria, preferred contexts, or scenarios where SHA-256 is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hyperlane_dispatchCInspect
Dispatch a Hyperlane V3 message through the canonical Mailbox. Tenzro runs a sovereign Tenzro-validator-set ISM, so inbound messages on Tenzro are verified against the active Tenzro validator BLS / ML-DSA set.
| Name | Required | Description | Default |
|---|---|---|---|
| sender | No | ||
| body_hex | Yes | Arbitrary message body (0x-prefixed hex) | |
| recipient | Yes | 32-byte destination recipient (0x-prefixed hex) | |
| origin_domain | Yes | ||
| destination_domain | Yes | ||
| interchain_gas_payment | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must disclose behavioral traits. It only states the action and ISM verification, but omits side effects, return value, mutation impact, or success/failure conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences, front-loading the primary action. However, the second sentence about Tenzro ISM is specific but adds value, so no significant waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool dispatches messages requiring domain knowledge and integration (e.g., quoting, gas payments), the description omits references to hyperlane_quote_dispatch, output schema details, and chain prerequisites, making it incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With only 33% schema description coverage, the description adds no meaning beyond the schema for parameters like sender, origin_domain, destination_domain, or interchain_gas_payment. It does not clarify format or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Dispatch a Hyperlane V3 message through the canonical Mailbox', using a specific verb and resource. It distinguishes from sibling tools like hyperlane_get_message and hyperlane_list_chains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 quoting first via hyperlane_quote_dispatch. It mentions Tenzro-specific ISM but does not explain prerequisites or selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hyperlane_get_messageBInspect
Look up a Hyperlane message by id.
| Name | Required | Description | Default |
|---|---|---|---|
| message_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavioral traits. It only states the basic function, omitting details like read-only nature, error handling, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundancy. However, it could be more informative without becoming verbose; missing key details that would fit concisely.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description need not detail return values. However, it lacks context about typical usage, error scenarios, and prerequisites, making it minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has zero description coverage for the only parameter (message_id). Description adds no extra meaning beyond 'by id', leaving the agent to infer format or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states action (look up), resource (Hyperlane message), and identifier (by id). It distinguishes from siblings like hyperlane_dispatch and hyperlane_list_chains, which are for sending or listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 context of 'by id' implies retrieval, but the description does not state when to choose this over other Hyperlane tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hyperlane_list_chainsAInspect
List supported Hyperlane chains and their canonical domain ids. Coverage: Ethereum, Polygon, Arbitrum, Optimism, Base, Avalanche, BSC, Mantle, Blast, Scroll, Linea, Manta, zkSync, Celo, Moonbeam, Mode, Fraxtal, Tenzro.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It describes output (chains and domain IDs) and coverage, but does not explicitly state read-only nature, authentication requirements, or side effects. Adequate for a simple 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no waste. First sentence states purpose, second provides specific coverage info. Front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and a simple list output, the description is sufficiently complete. It tells the agent what the tool returns. The output schema likely covers return types, so no further elaboration needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, so schema coverage is 100% trivially. The description adds value by specifying what the output contains (chains and domain IDs) and listing the specific chains, going beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists supported Hyperlane chains and their domain IDs, and enumerates the chains covered. This specific verb and resource, along with the sibling tools like `axelar_list_chains`, distinguishes it well.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly indicates use for Hyperlane chains without alternatives. Explicit guidance for when to use this over similar tools (e.g., `axelar_list_chains`) is absent, but the name and content are self-explanatory.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hyperlane_quote_dispatchCInspect
Quote the interchain gas payment for a Hyperlane dispatch.
| Name | Required | Description | Default |
|---|---|---|---|
| sender | No | ||
| body_hex | Yes | Arbitrary message body (0x-prefixed hex) | |
| recipient | Yes | 32-byte destination recipient (0x-prefixed hex) | |
| origin_domain | Yes | ||
| destination_domain | Yes | ||
| interchain_gas_payment | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose any behavioral traits such as idempotency, side effects, or authorization needs. Since there are no annotations, the description carries the full burden but provides no transparency beyond the verb 'Quote', which implies it is read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, consisting of a single sentence. While brevity is good, it omits important details, making it too minimal. Better structure with bullet points or separate sections would improve clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters, no annotations, and low schema coverage, the description is incomplete. It does not explain the relationship to sibling tools (e.g., that quoting should precede dispatch) or hint at the output (which an output schema exists for).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33%; only two of six parameters have descriptions. The description does not add any information about the parameters, failing to compensate for the gap. For example, it does not explain what 'sender' or 'interchain_gas_payment' mean.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it quotes the interchain gas payment for a Hyperlane dispatch, which distinguishes it from sibling tools like hyperlane_dispatch (which likely executes the dispatch) and hyperlane_get_message. However, it lacks specificity about what exactly comprises the quote or how it's computed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., before hyperlane_dispatch) or any prerequisites. The description is purely declarative, offering no usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
import_keystoreBInspect
Import a wallet from an encrypted keystore JSON. Decrypts with the provided password and adds the wallet to the local node.
| Name | Required | Description | Default |
|---|---|---|---|
| password | Yes | Password to decrypt the keystore file | |
| keystore_json | Yes | JSON-encoded keystore data |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description mentions decryption and addition to node but lacks details on side effects (e.g., overwriting, authentication needs, storage behavior). No annotations provided to supplement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-loading the main purpose. No extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Basic purpose is clear, but lacks details on output (e.g., returned wallet address) or constraints for a mutation tool. Output schema exists but is not referenced.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with descriptions. The tool description adds little beyond restating the parameters' purpose. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'import', resource 'wallet from encrypted keystore JSON', and specific actions 'decrypts with password' and 'adds wallet to local node'. It distinguishes from the sibling 'export_keystore'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 generate_keypair or create_wallet. Does not specify prerequisites or conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
introspect_tokenAInspect
RFC 7662 OAuth 2.0 Token Introspection. Ask the AS whether a token is currently active and, if so, return its full claim set (RAR authorization_details, AAP aap_* claims, cnf, controller_did, etc.). Per RFC 7662 §2.2 a failed validation returns {active: false} with no other fields — the AS does not leak why the token is inactive.
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | JWT to introspect. The AS returns `{active: true, ...claims}` on success or `{active: false}` per RFC 7662 §2.2 if the token is unknown, expired, or revoked. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description fully handles transparency by detailing failure response per RFC 7662 §2.2, listing claim types, and noting non-leakage of reasons. Missing idempotency but sufficient for read-only tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tightly-written sentences with front-loaded purpose, clear structure, and no waste—each sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple introspection tool with one parameter and output schema, description adequately covers purpose, response, and standard reference. Slightly lacking on edge cases but sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage 100%, but description adds value by explaining parameter 'token' is a JWT and linking response behavior, going beyond the schema's description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description explicitly states the tool implements RFC 7662 OAuth 2.0 Token Introspection, with clear verb 'Ask' and resource 'AS', and distinguishes from sibling tools by naming a specific standard.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clearly states when to use (to check token activity and get claims), but lacks explicit exclusion guidance or comparison to alternatives among many token-related siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
iroh_fetch_blobAInspect
Fetch a content-addressed tenzro://blob|model|gradient|shard|receipt/... URI from the local iroh-blobs store (auto-populates from peers as needed). Returns base64-encoded bytes plus the parsed URI and size.
| Name | Required | Description | Default |
|---|---|---|---|
| tenzro_uri | Yes | Content-addressed tenzro:// URI to fetch (blob / model / gradient / shard / receipt). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full burden. It discloses that the tool auto-populates from peers as needed, which is key behavioral context. However, it does not mention error handling, timeout behavior, or what happens if the URI is not found or peers are unavailable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the action and includes key details (return format, auto-population). No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (though not shown), the description need not detail return values. It covers core behavior: what is fetched, from where, and the outcome. Missing details on failure modes slightly reduce completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter description in the schema already explains the URI types. The tool description adds the auto-population context but does not provide additional parameter semantics beyond what the schema already offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Fetch', the resource 'content-addressed tenzro:// URI', and the return format (base64-encoded bytes plus parsed URI and size). It differentiates from sibling tool 'iroh_publish_blob' and other similar tools by specifying the local store with auto-population.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving content-addressed blobs, but does not provide explicit when-not-to-use guidance or comparison with alternatives like 'iroh_get_info' or other fetch methods. No explicit exclusion criteria are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
iroh_get_infoAInspect
Show the local iroh endpoint id, Pkarr relay URL, and ALPNs registered on the shared router. Returns an internal error iff the iroh transport failed to bind at startup.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that it returns an internal error if iroh transport fails at startup, adding behavioral context beyond the lack of annotations. For a read-only info tool, this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with all essential information front-loaded and no extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description explains what the tool returns and under what error condition, and the output schema is provided separately, making it complete for a 0-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so the baseline is 4. The description does not need to add anything about parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it shows the local iroh endpoint id, Pkarr relay URL, and ALPNs, which distinguishes it from sibling tools like iroh_fetch_blob and iroh_publish_blob.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
While not explicit about when to use versus alternatives, the description clearly implies it is for retrieving local iroh info, not for blob operations, which provides adequate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
iroh_publish_blobAInspect
Publish raw bytes to the shared iroh-blobs store. Returns a content-addressed tenzro://blob/<blake3-hex> URI that any iroh peer can fetch (subject to NAT/discovery reachability).
| Name | Required | Description | Default |
|---|---|---|---|
| bytes_b64 | Yes | Base64-encoded payload to publish to the shared iroh-blobs store. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose all behavioral traits. It reveals the output (URI) and a caveat (reachability), but does not mention idempotency, persistence duration, size limits, or error conditions. For a write operation, more transparency is expected, but the description covers the key aspects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at two sentences, front-loading the action and following with the result and a caveat. Every word adds value, and there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one parameter, output schema present), the description is nearly complete. It explains the purpose, output format, and a limitation. Missing details like error cases or usage examples are acceptable for a straightforward tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameters with a description for bytes_b64. The tool description adds no extra insight into the parameter beyond what the schema provides, so it meets the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Publish raw bytes') and the resource ('shared iroh-blobs store'), and distinguishes from sibling tools like iroh_fetch_blob by focusing on publishing. It also describes the output format, leaving no ambiguity about the tool's purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for sharing data via iroh network but does not explicitly guide when to use it over alternatives, nor does it mention prerequisites or when not to use it. The mention of reachability caveats provides some context, but explicit usage guidance is lacking.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
join_as_participantAInspect
Join the Tenzro Network as a MicroNode — a zero-install full participant. Auto-provisions a TDIP decentralized identity (DID) and MPC wallet. Grants access to all 10 network capabilities: inference, payments, agent collaboration, MCP tools, task execution, chain queries, smart contracts, TEE services, cross-chain bridge, and governance. Works from any entry point: Claude, ClawBot, MCP, A2A, SDK, API, CLI, or app. No hardware, no binary installation required.
| Name | Required | Description | Default |
|---|---|---|---|
| origin | No | Entry point: 'mcp' | 'claude' | 'clawbot' | 'a2a' | 'sdk' | 'api' | 'cli' | 'app' | |
| display_name | No | Display name for this participant (human-readable, optional) | |
| participant_type | No | Participant type: 'human' | 'agent' | 'bot' |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It discloses key behaviors: auto-provisioning of DID and MPC wallet, granting access to 10 capabilities, and no hardware/installation required. It does not mention potential side effects like costs or limits, but is fairly transparent overall.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of five sentences, front-loaded with the core action. It is concise and efficient, though breaking into bullet points could improve scannability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (joining a network with many capabilities), the description covers the purpose, identity provision, capabilities granted, entry points, and requirements (none). An output schema exists, so return values are not required. The description is complete for an onboarding tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 three parameters meaningfully. The description adds context about the overall process but does not significantly enhance parameter-specific meaning beyond the schema, warranting a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Join the Tenzro Network as a MicroNode — a zero-install full participant.' It uses a specific verb and resource, and distinguishes itself from numerous sibling tools by focusing on network joining rather than specific actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use the tool (to join as a participant) and lists compatible entry points. However, it does not explicitly state when not to use it or provide alternatives, which would improve guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_active_validatorsAInspect
List only currently-Active validators. Convenience over list_validators with status='Active'. Useful for SRE dashboards that need the current committee size and stake distribution.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the filtering behavior (only active validators) and the intended use case, which is sufficient for a simple read-only tool. However, it does not elaborate on output details or potential side effects, which are minimal but not fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences, front-loading the core purpose and providing immediate context. Every sentence contributes meaning without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool with an output schema, the description sufficiently covers purpose, usage, and differentiation from siblings. No additional information is needed for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With no parameters and full schema coverage, the description does not need to add parameter details. The baseline for zero parameters is 4, and the description adds value by explaining the tool's purpose and relationship to siblings.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list' and the resource 'active validators', explicitly distinguishing it from the sibling tool 'list_validators' by noting it is a convenience for filtering by status='Active'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 as a convenience over 'list_validators' with a specific filter and provides a use case for SRE dashboards, offering clear guidance without ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_agent_jwksAInspect
List all Tenzro agent public signing keys as an RFC 7517 JWK Set. Mirrors GET /.well-known/jwks.json. External RFC 9421 verifiers (Visa TAP, Mastercard, Stripe MPP, AP2, x402) use this to resolve keyid parameters.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description bears full burden. It discloses the tool lists all keys in JWK Set format, mirrors a standard endpoint, and is used by external verifiers. No side effects or permissions mentioned, but as a read-only list operation, it is adequately transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each adding value. First sentence states main purpose and format. Second links to standard. Third provides real-world usage. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool with an output schema present, the description covers purpose, format, and use cases. No gaps identified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has zero parameters, so no parameter documentation needed. Baseline 4 applies. Description does not need to add param meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'List' and resource 'Tenzro agent public signing keys as an RFC 7517 JWK Set'. Distinguishes from sibling get_agent_jwk by indicating it returns all keys. Mentions standard endpoint mirroring.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly mentions it mirrors GET /.well-known/jwks.json and lists external verifiers that use this to resolve keyid parameters, giving clear context for when to use. Does not explicitly state when not to use, but the context is sufficient for a simple list tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_agent_templatesBInspect
List agent templates from the Tenzro Network agent marketplace. Browse available AI agent configurations that can be deployed. Filter by type, tag, creator, or price.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Filter by tag (optional, must have this tag) | |
| limit | No | Maximum number of results (default 20, max 100) | |
| offset | No | Offset for pagination | |
| creator | No | Filter by creator address (optional) | |
| free_only | No | Only show free templates | |
| template_type | No | Filter by template type (optional) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states the tool is for listing. It does not disclose behavioral traits such as read-only nature, pagination behavior (though hinted in schema), 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences: the first states the core action, and the second adds filtering details. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description covers the main purpose and filter options, it does not mention pagination (limit/offset) or provide context about the output schema or when to choose this tool over the sibling 'search_agent_templates'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 some semantic mapping (e.g., 'type' to template_type, 'price' to free_only) but introduces a slight mismatch by using 'price' instead of 'free_only'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists agent templates and mentions filtering options. However, it does not differentiate from the sibling 'search_agent_templates', which may have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for browsing and filtering templates but provides no explicit guidance on when to use this tool over alternatives like 'search_agent_templates' or 'get_agent_template'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_api_keysAInspect
Operator-only. List every API key the node has issued — active and revoked. Requires X-Tenzro-Admin-Token. Returns key_id, subject, label, scopes, class, created_at, revoked_at, active.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description covers behavioral traits: it lists both active and revoked keys, requires admin token, and lists return fields. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first states purpose and scope, second gives auth and return fields. Front-loaded, no superfluous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with no parameters and listed return fields, description is complete. Adequately informs agent of what the tool does and how to use it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has no parameters; baseline is 4. Description adds value by explaining the scope and return fields without needing parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'list', identifies resource 'API keys', and states scope 'every API key the node has issued — active and revoked'. Differentiates from sibling tool 'list_my_api_keys' by specifying 'Operator-only'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clearly states 'Operator-only' and requires 'X-Tenzro-Admin-Token', indicating when to use. However, does not explicitly mention the alternative 'list_my_api_keys' for non-operator users.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_audio_catalogAInspect
Browse the curated ONNX ASR catalog: Moonshine v2 (tiny/base, MIT, on-device), Distil-Whisper (small.en/medium.en/large-v3, MIT), Whisper Large-v3-turbo (MIT, flagship), Parakeet-TDT-0.6B-v3 (CC-BY-4.0, 25 European langs), Canary-1B-Flash (CC-BY-4.0, multilingual). The catalog is stable; the ORT-backed transcribers ship in the next wave (today the runtime returns ProviderNotAvailable).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description adds some behavioral context: it notes the catalog is stable and mentions runtime behavior ('today the runtime returns ProviderNotAvailable'). However, it does not disclose read-only nature or other side effects, which would be expected for a list operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with the main action front-loaded ('Browse the curated ONNX ASR catalog'). Every word adds value; no wasted space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters, the description covers the catalog contents and adds a behavioral note. The existence of an output schema likely covers return format details, so the description is reasonably complete for a list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters and schema coverage is 100%. The description adds meaning by detailing the catalog's contents (specific models and licenses), which is useful context beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool is for browsing the curated ONNX ASR catalog, listing specific models such as Moonshine v2, Distil-Whisper, Whisper Large-v3-turbo, etc. This distinguishes it from sibling tools like list_audio_models which might refer to a different list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for browsing ASR models, and mentions the catalog is stable with a note about ORT-backed transcribers, providing context. However, it does not explicitly state when to use this tool versus alternatives or specify 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.
list_audio_modelsAInspect
List ASR (speech-to-text) models currently loaded on this node. The catalog covers Moonshine v2, Distil-Whisper, Whisper-large-v3-turbo, Parakeet-TDT-0.6B-v3, and Canary-1B-Flash, all backed by ORT sessions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states it lists models loaded on the node and mentions ORT sessions, but does not disclose further behavioral traits (e.g., caching, dynamic updates).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no redundancy. The purpose is front-loaded, and specific model names are listed efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is sufficient for a simple list tool with no parameters and an output schema. It provides all necessary context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema has 100% coverage. The description does not need to add parameter details; baseline for zero parameters is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action (list), the resource (ASR speech-to-text models), and the scope (currently loaded on this node). It also names specific models, distinguishing it from sibling list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (to see loaded models on the node) but does not explicitly state when not to use or provide alternatives among siblings. Context is clear but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_bridge_adaptersAInspect
List all registered bridge adapters (LayerZero, Chainlink CCIP, deBridge, Canton)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It states a read-only listing operation but does not disclose any further details like output format, pagination, or authentication requirements. The existence of an output schema partially compensates, but the description itself is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys all necessary information without redundancy. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple listing tool with no parameters and an output schema present, the description is fully complete. It tells the agent what to expect (list of registered adapters with examples) and the tool's purpose is unambiguous.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, and schema coverage is 100%. The description adds value by enumerating example bridge adapters, giving the agent an idea of what the list will contain, which is beyond the schema's empty structure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies the action ('List all registered bridge adapters') and gives concrete examples (LayerZero, Chainlink CCIP, deBridge, Canton), making it clear what the tool does and distinguishing it from sibling tools that perform operations on specific bridges.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. However, the context of sibling bridge tools (e.g., bridge_quote, bridge_tokens) implies this is for discovering available adapters, but the description lacks explicit when/when-not directives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_canton_domainsAInspect
List Canton synchronizer domains configured on this node. Returns domain IDs, connection status, and participant info for enterprise DAML integration.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. The verb 'List' implies a read-only operation with no side effects, but the description does not explicitly state this, nor does it mention permissions, rate limits, or other constraints. The added context about 'enterprise DAML integration' is helpful but not sufficient for full transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. It front-loads the action and resource, followed by return value details and context. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, list operation) and the presence of an output schema, the description is fully complete. It states what the tool does, what it returns, and provides relevant context about DAML integration. No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, and schema description coverage is 100%. The description adds no parameter information because none is needed. Per guidelines, the baseline is 3 when coverage is high, and no additional value is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') combined with a clear resource ('Canton synchronizer domains configured on this node'). It also outlines the return values (domain IDs, connection status, participant info) and provides context (enterprise DAML integration). This clearly distinguishes it from sibling list tools such as list_daml_contracts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (when you need to see configured domains) but does not explicitly state when to use this tool versus alternatives, nor does it provide any exclusions or prerequisites. While minimal guidance is acceptable for a simple list tool, it lacks explicit when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_capabilitiesAInspect
List all registered capabilities on this Tenzro node. Returns each capability with the count of agents that have it, the count of attestations, and the list of agent IDs supporting that capability. Use to discover what specialized work the local agent runtime can route.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It accurately describes the read-only listing operation and the return format, but does not mention authorization requirements, rate limits, or whether results are paginated. The information is adequate but lacks depth expected for a tool without annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of three sentences: the first states the action, the second enumerates returned data, and the third provides usage guidance. It is concise, front-loaded, and contains no extraneous information. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that the tool has no input parameters and an output schema exists (though not shown), the description sufficiently covers the return fields. It does not mention pagination or whether the list is exhaustive, which could be a minor completeness gap, but the context of a local node suggests it may not be an issue.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is empty (no parameters), so schema description coverage is 100% trivially. The description goes beyond the schema by explaining the return structure (capabilities with counts and agent IDs), which adds meaningful context. This meets the baseline for zero-parameter tools and adds extra value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists all registered capabilities on the Tenzro node, and specifies the return fields (count of agents, attestations, agent IDs). It distinguishes itself from sibling tools like 'get_capability_attestations' by offering a broad overview rather than detailed attestations for a single capability.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use to discover what specialized work the local agent runtime can route,' providing clear usage context. While it does not explicitly contrast with alternatives like 'get_capability_attestations,' the intent is clear and sufficient for an agent to decide when to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_daml_contractsAInspect
List active DAML contracts on a Canton domain. Filter by template ID. Returns contract IDs, parties, and payload data for enterprise workflow automation.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of contracts to return (default 50) | |
| domain_id | Yes | Canton domain ID to query contracts from | |
| template_filter | No | Optional DAML template filter (e.g. 'MyModule:MyTemplate') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It states the tool lists 'active' contracts and 'returns' data, implying a read-only operation, but does not explicitly confirm no side effects. It also doesn't discuss authentication requirements, rate limits, or any potential impacts. The description is adequate but lacks explicit safety guarantees.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, very concise and front-loaded with the main action: 'List active DAML contracts on a Canton domain.' Every sentence adds distinct information (what it does, filtering, return data). No redundant or filler content. Excellent conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has three simple parameters with 100% schema coverage and an output schema (not shown but noted as present). The description covers the core functionality, filtering, and return fields. It lacks explicit usage guidelines and behavioral transparency, but given the tool's simplicity and existing schema support, the description is mostly complete. A bit more context on when to use it versus submit_daml_command would improve it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (all three parameters documented in JSON schema). The description adds context for 'domain_id' (required, 'Canton domain ID') and 'template_filter' ('Optional DAML template filter'), aligning with the schema. However, 'limit' is not mentioned in the description, though its schema description notes a default of 50. The description adds modest value beyond the schema, consistent with a baseline of 3 when schema coverage is high.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'List active DAML contracts on a Canton domain.' It specifies the resource (DAML contracts), the action (list), and the scope (Canton domain). It also mentions filtering by template ID and return fields (contract IDs, parties, payload data). Among siblings like list_canton_domains and submit_daml_command, this tool is distinctly identified as a read-only listing operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing active DAML contracts with optional filtering, but does not explicitly state when to use it versus alternatives such as submit_daml_command or other list tools. No direct guidance on prerequisites or context is provided, leaving the agent to infer usage from the tool name and description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_detection_catalogAInspect
Browse the curated ONNX detection catalog: RF-DETR (nano/small/medium/base/large/2xl) — first real-time detector >60 AP on COCO (ICLR 2026); D-FINE (n/s/m/l/x). All Apache-2.0.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry the burden. It indicates a read-only browsing operation and lists model types, but does not mention behaviors like pagination, ordering, or empty responses. Adequate for a simple parameterless 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence efficiently conveys the tool's purpose and key models. No wasted content; front-loaded with action verb 'Browse'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has zero parameters and output schema exists. Description lists specific models and license, providing complete context for a browsing tool. No further details needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist; schema coverage is 100% trivially. The description adds value by specifying model families included, which is beyond the empty schema. Baseline 4 for zero parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it browses a curated ONNX detection catalog, listing specific model families (RF-DETR, D-FINE) and their variants. It distinguishes itself from sibling tools like list_detection_models by specifying 'curated ONNX' and detailing included models, but does not explicitly contrast with alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 other list tools (e.g., list_detection_models). The description implies its purpose for browsing the catalog but lacks 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.
list_detection_modelsAInspect
List object detection models currently loaded on this node (RF-DETR, D-FINE). Use list_detection_catalog to browse the curated catalog.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations present, so description carries full burden. It reveals that models are loaded on this node and gives examples (RF-DETR, D-FINE), but could further clarify preconditions (e.g., models must be loaded via load_detection_model) or state implications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the main action, followed by a concise alternative suggestion. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and an output schema (so return values need not be described), the description is mostly complete. It specifies node locality and examples, though could mention if pre-loading is required for the list to be non-empty.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema is empty, so description adds no parameter information. Baseline of 4 is appropriate since no parameters exist to document.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it lists object detection models currently loaded on the node, and distinguishes from the sibling tool list_detection_catalog by specifying scope (loaded vs curated).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells when to use the alternative tool (list_detection_catalog for browsing curated catalog), providing clear guidance on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_disputes_by_channelAInspect
List every dispute (open or historical) attached to a channel. Returns {channel_id, count, disputes: [...]}. Empty list is not an error — a channel with no disputes returns count: 0. Requires ChannelManager.
| Name | Required | Description | Default |
|---|---|---|---|
| channel_id | Yes | Channel id. Returns {channel_id, count, disputes: [...]} — every dispute (open or historical) attached to the channel. Empty list is not an error (count: 0). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Describes return format, scope, error behavior, and permission requirement. Lacks details on pagination or rate limits, but adequate 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, well-structured. Front-loaded with purpose, then return format, then edge case and requirement. No redundant words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With output schema present, description appropriately focuses on behavior beyond return structure. Covers purpose, scope, error handling, and permission. Sufficient for a simple list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 for the parameter. The description text for channel_id repeats the tool description. Baseline at 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'list' and resource 'disputes attached to a channel'. Specifies scope (open or historical), distinguishing it from singular get_dispute and other list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides context on when to use (to get all disputes for a channel) and clarifies that empty result is not an error. Notes required role (ChannelManager). Could explicitly name sibling alternatives like get_dispute for contrast.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_escrows_by_payeeAInspect
List every escrow held for the given payee address. Returns {payee, count, escrows: [...]}. Backed by the escrow_payee: secondary index in CF_SETTLEMENTS. Requires EscrowManager.
| Name | Required | Description | Default |
|---|---|---|---|
| payee | Yes | Payee address (the recipient on successful release). Returns {payee, count, escrows: [...]} from the `escrow_payee:` secondary index in CF_SETTLEMENTS. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Includes data source index and return structure, but does not mention if it's read-only, pagination limits, or side effects. Adequate but could be more transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences. First states purpose, second gives return format, third adds technical details and requirement. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Provides return format and technical backing. Output schema exists meaning detailed return structure is covered. Lacks mention of pagination or rate limits, but overall sufficient for a simple list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter description in schema mirrors the tool description. No additional value added 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.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action (list) and resource (escrows for a payee). Specifies return format and differentiates from sibling 'list_escrows_by_payer' by using different index.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states the required role 'EscrowManager', implying usage context. Does not explicitly mention when not to use or alternatives, but name and description distinguish from siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_escrows_by_payerBInspect
List every escrow funded by the given payer address. Returns {payer, count, escrows: [...]}. Backed by the escrow_payer: secondary index in CF_SETTLEMENTS. Requires EscrowManager.
| Name | Required | Description | Default |
|---|---|---|---|
| payer | Yes | Payer address (the wallet that created the escrow). Returns {payer, count, escrows: [...]} from the `escrow_payer:` secondary index in CF_SETTLEMENTS. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It mentions the backing index and return format but lacks details on side effects (none expected for a read), rate limits, pagination, or potential performance implications of listing every escrow. The description is insufficiently transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at three sentences, front-loading the action and purpose. Every sentence adds relevant information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has a single parameter, full schema coverage, and an output schema, the description should cover expected behavior for list operations such as pagination, error conditions, or limits. It lacks these details, making it incomplete for an agent to use safely and effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 little beyond what the schema already provides for the 'payer' parameter. Both describe the same details about the parameter and return structure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists every escrow funded by a given payer address, with a specific verb and resource. It distinguishes from the sibling 'list_escrows_by_payee' by specifying 'funded by the given payer address' instead of payee.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes a prerequisite ('Requires EscrowManager') but does not provide guidance on when to use this tool versus alternatives like 'list_escrows_by_payee' or when not to use it. There is no explicit context for selection among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_fee_routesBInspect
List every registered fee route. Each route has a label, splits in bps, and a derived 32-byte id used by Workflow.fee_route.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does not disclose pagination, rate limits, or any side effects. It only describes the result structure, not behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no extraneous words. Information is front-loaded and efficiently presented.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with no parameters, the description covers purpose and result structure. Output schema exists but is not needed due to clarity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has zero parameters. Baseline is 4. The description adds context about the returned fields, which is valuable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists fee routes and enumerates the fields (label, splits, id). It is specific but does not explicitly differentiate from sibling tools like get_fee_route.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., get_fee_route). No context about prerequisites or conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_forecast_catalogAInspect
Browse the curated ONNX forecast (timeseries) catalog. Returns models like TimesFM 2.5 — each with HF repo, context length, max horizon, and quantile support.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior. It explains what is returned (models with specific attributes) but does not explicitly state that the operation is read-only or have any side effects, though it's implied 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the core purpose and includes useful detail (example model, returned fields) without wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and an output schema, the description adequately explains the return content. It could mention if any filtering or sorting is possible, but the tool's simplicity makes this sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so the description cannot add parameter meaning beyond the schema. Baseline score of 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Browse' and identifies the resource as a 'curated ONNX forecast (timeseries) catalog', which distinguishes it from sibling tools like 'list_forecast_models' by specifying the format and curation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies using the tool to browse the catalog but does not explicitly state when to use it versus other list tools (e.g., list_forecast_models) or provide alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_forecast_modelsAInspect
List forecast (timeseries) models currently loaded on this node. Use list_forecast_catalog to browse available models from the curated catalog.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It clearly states the scope ('currently loaded on this node') and the nature of the resource (forecast/timeseries models). While it omits details like permissions or side effects, the read-only listing nature 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first conveys the primary action, second provides a clear alternative. No wasted words. Front-loaded with the main purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the tool's purpose, scope, and provides a sibling. An output schema exists, so return format details are handled elsewhere. This is complete for a simple list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters (schema coverage 100% and empty). With 0 parameters, the baseline is 4. The description adds context about the result set, which is sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('forecast models') with scope ('currently loaded on this node'). It explicitly distinguishes from the sibling tool 'list_forecast_catalog', which is for browsing the curated catalog.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by stating the tool lists currently loaded models and directs users to 'list_forecast_catalog' for browsing the catalog. It does not explicitly state when not to use this tool, but the alternative is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_memory_recordsAInspect
List newest-first memories for an agent. Optional kind filter ('granted' | 'recalled' | 'self_noted' | 'archived'). Pure read against the on-tier text index. Use memory_recall for query-driven hybrid retrieval.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | Filter by record kind: 'granted' | 'recalled' | 'self_noted' | 'archived' | |
| limit | No | Max records to return (default 50) | |
| agent_did | Yes | Agent DID to scope the listing to |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description must carry the burden. It states 'Pure read against the on-tier text index,' indicating read-only behavior, but omits details like pagination, authentication needs, rate limits, or what happens if agent_did is invalid. The existence of an output schema helps, but more behavioral context would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, concise and front-loaded with the core purpose. Every word serves a purpose—no redundancy or filler. Ideal length for quick parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists and parameters are well-described, the description covers the essentials: what it does, ordering, filter, and alternative tool. It could mention default limit or pagination, but overall it is adequate for selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 value by specifying the 'newest-first' ordering (not in schema) and the optional nature of the kind filter. This extra context enhances understanding beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'List newest-first memories for an agent' with an optional kind filter, and distinguishes itself from sibling memory_recall by specifying 'Use memory_recall for query-driven hybrid retrieval.' This provides a specific verb+resource+ordering, making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly contrasts with memory_recall, guiding when to use this list tool versus query-driven retrieval. It also mentions the optional kind filter. However, it does not explicitly state when not to use this tool or address other potential alternatives among the many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_model_endpointsAInspect
List all model service endpoints with their API and MCP URLs, model details, and status
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only says it lists endpoints but does not disclose read-only nature, authentication needs, or pagination behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, directly states purpose and scope, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With output schema present and no parameters, description adequately covers what is returned; could be improved by mentioning if pagination applies.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has no parameters (0), baseline is 4. Description adds value by specifying it returns 'all' endpoints with specific details, beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it lists model service endpoints with specific details (API/MCP URLs, model details, status), distinguishing it from other list_* tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 list_models or list_providers; lacks when-not or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_modelsAInspect
List AI models available on the Tenzro network. Shows all models with availability: 'local' (served on this node, free), 'network' (available from remote providers, costs TNZO), or 'downloadable' (in catalog but not yet available). Filter by category or search by name
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Filter by name substring (optional) | |
| category | No | Filter by model category/modality: 'text', 'image', 'audio', 'video', 'text_image', 'text_audio', 'multimodal' (optional) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It explains that the tool shows model availability and cost implications for network models, but it does not disclose any potential side effects, required permissions, rate limits, or pagination behavior. This is insufficient for a listing tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is composed of two concise sentences. The first establishes the primary action and resource, and the second provides key details on availability and filtering. No extraneous information is included.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and full parameter coverage, the description is mostly complete. It explains what data is returned (availability categories) and how to filter. However, it lacks details on pagination, sorting, and default behavior, which are common for list endpoints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% as both 'name' and 'category' parameters have descriptions. The tool description reiterates the filtering intent, which adds minimal extra meaning. By heuristic, baseline 3 is appropriate when schema already covers parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'List AI models' and the resource 'available on the Tenzro network'. It specifies distinct availability categories ('local', 'network', 'downloadable'), which helps differentiate from other list tools (e.g., list_audio_models) that are more specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by mentioning filtering options and availability categories. However, it does not explicitly state when to use this tool versus alternatives like 'discover_models' or 'list_model_endpoints', nor does it provide when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_my_api_keysAInspect
Subject-gated. List every API key belonging to the caller's own subject. Requires the caller's MCP request to carry an X-Tenzro-Api-Key header identifying the subject.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the subject-gating and the required header for authentication. However, it does not explicitly state that the operation is read-only or describe error handling if the header is missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loading the key qualifier 'Subject-gated'. Every word is necessary, and there is no extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and the existence of an output schema, the description is complete. It explains the core function, scope, and requirement without needing to describe return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, and the schema coverage is 100%. The description adds no parameter info because none exist. Per guidelines, 0 params baseline is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List every API key belonging to the caller's own subject', using specific verb 'list' and resource 'API keys'. It distinguishes from sibling 'list_api_keys' by noting it is 'subject-gated', indicating that it only returns keys for the caller, not all keys.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells when to use the tool (to list the caller's own API keys) and the prerequisite (the request must carry an 'X-Tenzro-Api-Key' header). It implies not to use it when listing all keys, differentiating from 'list_api_keys'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_nft_collectionsAInspect
List all NFT collections registered on the Tenzro ledger. Optionally filter by creator address or NFT standard (erc721/erc1155).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of results (default 50, max 100) | |
| creator | No | Filter by creator address (hex, optional) | |
| standard | No | Filter by standard: 'erc721' or 'erc1155' (optional) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the transparency burden. It describes a read operation and optional filters, but does not discuss pagination behavior, authentication needs, or performance implications. It is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste: the first states the primary purpose, the second adds optionality. Information is front-loaded and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (3 optional params, output schema exists), the description is complete. It explains what the tool does and how to filter. Pagination via limit is covered in the schema, so no redundancy needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value by specifying the filter options (creator address, erc721/erc1155 standards) beyond the schema descriptions, clarifying acceptable values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (list) and resource (NFT collections on Tenzro ledger), and the optional filters distinguish it from sibling list tools like list_tokens or list_providers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing NFT collections with optional filters, but does not explicitly state when to use versus alternatives. However, the context is clear for a dedicated list tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_payment_protocolsAInspect
List the payment protocols supported by this Tenzro node, including MPP (session-based streaming), x402 (stateless one-shot), and native TNZO transfers
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description does not disclose that it is a read-only, non-destructive operation, nor any other behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no wasted words, efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Complete for a parameterless list tool with output schema; examples clarify scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters in schema; description adds no parameter info, but none needed. Baseline 4 for zero-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'List' and resource 'payment protocols', with specific examples (MPP, x402, TNZO) that distinguish it from other list_* tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use vs alternatives like list_x402_schemes; usage is implied but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_pending_approvalsAInspect
List every approval in Pending state for the given approver DID. Lazy-expires stale records server-side before returning, so the caller never sees expired entries. Returns {approver_did, count, pending: [{approval_id, requester_did, approver_did, created_at_ms, expires_at_ms, status, decided_at_ms, summary, action}]}. Requires AuthEngine to be initialised on the node.
| Name | Required | Description | Default |
|---|---|---|---|
| approver_did | Yes | Approver DID (e.g. 'did:tenzro:human:alice'). Returns every approval in `Pending` status whose approver_did matches. Lazy-expires stale records server-side before returning. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully describes behavior: it lists pending approvals, lazy-expires stale records server-side, and returns a specific response structure. It also notes the auth requirement ('Requires AuthEngine to be initialised on the node'). Missing some details like error handling or side effects, but overall transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action, and contains no unnecessary words. It efficiently conveys purpose, behavior, and requirements.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple input (1 param) and explicit output schema in the description, the description is complete. It covers what, how, response format, and auth requirement. No gaps identified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema describes the sole parameter 'approver_did' with full coverage (100%). The description adds the lazy-expiry context but mostly repeats schema info. Baseline 3 is appropriate as the schema already does the semantic work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The tool name 'list_pending_approvals' clearly indicates listing approvals in pending state. The description reinforces this with 'List every approval in `Pending` state for the given approver DID.' It uses a specific verb and resource, differentiating from sibling tools like 'get_approval' (single) and 'decide_approval' (action).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states the tool is for listing pending approvals for a specific approver DID. It provides context on lazy-expiry but does not explicitly say when NOT to use it or mention alternatives. However, the purpose is clear enough that an agent can infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_privacy_domains_for_didAInspect
List privacy domains a given DID is a member of. Caller-side filtered to the DIDs the requester is authorized to see.
| Name | Required | Description | Default |
|---|---|---|---|
| did | Yes | DID string |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description carries full burden. It mentions 'filtered to DIDs the requester is authorized to see,' implying read-only behavior with no side effects. However, it does not explicitly state non-destructive nature or describe result format/pagination.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler, front-loaded with primary purpose. Each sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple list operation and availability of output schema, description adequately covers purpose and authorization context. Sufficient for an AI agent to understand scope and constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter 'did' described as 'DID string'. The description adds no extra semantic meaning beyond what the schema provides, maintaining baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the resource ('privacy domains a given DID is a member of'). It distinguishes from siblings like 'get_privacy_domain' (which likely returns details of one domain) by specifying the list scope for a DID.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides context on when to use ('list privacy domains for a DID') and notes authorization filtering ('Caller-side filtered...'). Does not explicitly mention alternatives or when not to use, 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.
list_proposalsAInspect
List governance proposals on the Tenzro Network. Filter by status (active/passed/rejected/pending). Returns proposal IDs, titles, vote tallies, and deadlines.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of results (default 20) | |
| offset | No | Pagination offset | |
| status | No | Filter by status: 'active', 'passed', 'rejected', 'pending'. If omitted, returns all. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the filtering and return fields but omits pagination behavior (though schema has limit/offset), sorting, or rate limits. Basic behavioral context is present 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with the verb and resource. No redundant information; every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and simple tool nature, the description covers purpose, filtering, and return fields adequately. Minor gaps: no mention of error handling or default ordering, but these are not critical for a list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 value by listing the specific status filter options and the return fields (IDs, titles, vote tallies, deadlines), which go beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists governance proposals on the network, specifies filtering options by status, and enumerates return fields. It distinguishes from siblings like create_proposal and vote_on_proposal.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for listing and filtering proposals but provides no explicit guidance on when to choose this over sibling tools like adaptive_burn_list_proposals, nor does it mention prerequisites or 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.
list_providersBInspect
List all providers discovered on the Tenzro Network. Providers broadcast announcements every 60s on the tenzro/providers gossipsub topic. Returns both the local node (if serving) and all remotely discovered providers. Optionally filter by provider_type: 'llm', 'tee', or 'general'.
| Name | Required | Description | Default |
|---|---|---|---|
| provider_type | No | Optional filter by provider type: 'llm', 'tee', or 'general'. If omitted, all providers are returned. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description provides behavioral context: providers broadcast every 60s on a specific gossipsub topic, and the tool returns both local and remote providers. No annotations exist, so the description partially carries the burden. It does not mention read-only nature, side effects, or permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loads the main purpose, and efficiently conveys key details. No redundant or extraneous content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists (not shown), the description covers the tool's behavior and data source adequately. However, it lacks clarification on how it relates to sibling list_tee_providers and does not mention pagination, limits, or ordering.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter provider_type is fully described in the schema (100% coverage). The description restates the same meaning, adding no new 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all providers discovered on the Tenzro Network, mentions the gossipsub topic, return contents, and optional filtering. However, it does not differentiate from sibling 'list_tee_providers', which likely returns a filtered subset.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 list_tee_providers or other list_* tools. The description does not mention use cases or when to prefer this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_segmentation_catalogAInspect
Browse the curated ONNX segmentation catalog: SAM 2 (base/large), EdgeSAM, MobileSAM. SAM 3 / 3.1 are text-promptable with a different decoder ABI and are not exposed via this point/box segment tool.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description discloses that it is a curated list, specifies included models, and notes that SAM 3/3.1 are text-promptable with a different decoder ABI and not exposed via this tool, offering useful behavioral insight despite missing output format details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no wasted words, front-loading the key action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and no annotations, the description adequately covers the tool's purpose and limitations for browsing a catalog. It does not mention the output schema, but that is a minor omission for a simple list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the input schema is empty, so description adds no parameter information. Following the baseline rule for 0 parameters, a score of 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool browses a curated ONNX segmentation catalog, listing specific models (SAM 2, EdgeSAM, MobileSAM) and explicitly excludes SAM 3/3.1, making its purpose distinct from siblings like list_segmentation_models.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly suggests using this tool to browse available segmentation models, but it does not provide explicit when-to-use or when-not-to-use guidance compared to alternative tools like list_segmentation_models.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_segmentation_modelsAInspect
List segmentation models currently loaded on this node (SAM 2, EdgeSAM, MobileSAM). Use list_segmentation_catalog to browse the curated catalog.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries the burden. It discloses the tool lists currently loaded models on the node, implying a lightweight, read-only operation. While it doesn't detail side effects, the context of listing with no parameters makes it adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. First sentence states purpose immediately. Second sentence provides alternative. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and the presence of an output schema, the description provides sufficient context: what is listed (loaded segmentation models) and how to access the full catalog. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is empty (0 parameters). The description adds meaning by specifying the scope ('currently loaded on this node') and examples, which goes beyond the schema. Baseline for 0 parameters is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verb 'List' and identifies the resource as 'segmentation models currently loaded on this node' with examples (SAM 2, EdgeSAM, MobileSAM). It clearly distinguishes from the sibling tool 'list_segmentation_catalog'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 and directs users to 'list_segmentation_catalog' as an alternative for browsing the curated catalog, providing clear usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_snapshotsAInspect
List local snapshots available for state-sync. Per-chunk hashes are elided for compactness — use get_snapshot_manifest to fetch the full manifest with chunk_hashes_hex[]. Returns {snapshots: [{height, state_root_hex, num_chunks, created_at, format}, ...]}.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It clearly states that per-chunk hashes are omitted for compactness and that the tool returns a list of snapshots with specific fields. This is transparent about what is and isn't returned, though it could explicitly mention side-effect-free read-only behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first sentence states the core purpose, second sentence clarifies the limitation and suggests an alternative. No wasted words, perfectly front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and an output schema, the description is complete. It explains the output format, the omission of chunk hashes, and points to the sibling tool for more detail. Combined with the existing output schema, the agent has all necessary information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has no parameters (0 parameters, 100% coverage). The description adds value by documenting the exact return structure: `{snapshots: [{height, state_root_hex, num_chunks, created_at, format}, ...]}`. This compensates for the lack of parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description starts with 'List local snapshots available for state-sync' – a specific verb+resource that clearly states the tool's function. It distinguishes from siblings by noting that chunk hashes are elided and referencing the more detailed get_snapshot_manifest tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells the agent when not to use this tool: if full manifest with chunk_hashes_hex is needed, use get_snapshot_manifest instead. This provides clear guidance on alternatives and context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tasksAInspect
List tasks from the Tenzro Network task marketplace. Filter by type, status, poster address, or maximum price. Defaults to showing open tasks. Use this to discover tasks agents can fulfill.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of results (default 20, max 100) | |
| offset | No | Offset for pagination | |
| poster | No | Filter by poster address (optional) | |
| status | No | Filter by status: open, assigned, in_progress, completed, cancelled, expired, disputed (optional, default: open) | |
| task_type | No | Filter by task type (optional) | |
| max_price_wei | No | Maximum price filter in wei (only show tasks at or below this price). Accepts u64 number or decimal string. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions defaults and filtering but does not explicitly state that this is a read-only operation or discuss pagination behavior, rate limits, or data freshness. The schema covers pagination, but the description lacks explicit 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceptionally concise, with three short sentences. Each sentence adds distinct value: action, filtering options and defaults, and usage context. No wasted words, and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (not shown but signaled), the description does not need to explain return values. It covers purpose, filters, default, and use case. Could mention pagination explicitly, but the schema handles that. Overall complete for a list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so each parameter is already documented. The description summarizes the filters ('type, status, poster address, or maximum price') which adds value by grouping them, but does not add new semantic information beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List tasks from the Tenzro Network task marketplace' with a specific verb (list) and resource (tasks). It distinguishes from sibling tools like get_task (single task) and post_task (create) by focusing on discovery and listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Use this to discover tasks agents can fulfill' provides a clear use case. However, it does not explicitly state when not to use this tool or mention alternative tools like search_tasks or get_task for specific filtering.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tee_providersAInspect
List all registered TEE providers on the network, including their TEE type, attestation status, and supported capabilities.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the output fields but does not mention potential limitations (e.g., pagination, rate limits, authentication requirements) or behavioral traits like read-only nature. Adequate but could be more transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that conveys all essential information without waste. It is front-loaded with the action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, the description is sufficiently complete. It mentions key output fields that likely correspond to the output schema. However, it lacks context on prerequisites or edge cases, but for a list tool this is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, and schema coverage is 100% vacuously. The description adds no parameter information, which is acceptable given the baseline of 3 for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List', the resource 'TEE providers', and the scope 'on the network'. It also specifies included attributes (TEE type, attestation status, supported capabilities), fully distinguishing it from sibling tools like 'list_providers'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives (e.g., 'list_providers'). It implies usage through specificity but lacks when-not or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_text_embedding_catalogAInspect
Browse the curated ONNX text-embedding catalog: Qwen3-Embedding (0.6B/4B/8B), EmbeddingGemma-300M, BGE-M3, Snowflake Arctic-Embed. Each entry carries embedding_dim, supported Matryoshka truncations, and license tier.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that each entry includes embedding_dim, supported Matryoshka truncations, and license tier, which adds context about the output. However, it does not mention any side effects (e.g., read-only status), performance characteristics, or authentication requirements, so it is moderately transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences. The first sentence front-loads the purpose and key examples, and the second adds output fields. Every word earns its place; there is no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and presence of an output schema, the description covers the catalog's content well. However, it lacks behavioral context (e.g., read-only hint) and usage guidance relative to numerous sibling list tools. It is adequate but not fully contextual for an agent to understand when to invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so schema coverage is trivially 100%. The description reinforces that no parameters are needed by simply stating the tool browses a catalog. It adds meaning by describing the catalog content, which indirectly assures the agent that no inputs are required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the purpose with a specific verb 'Browse' and a specific resource 'curated ONNX text-embedding catalog'. It lists concrete models and attributes, distinguishing it from sibling tools like list_text_embedding_models by emphasizing the curated nature and specific models.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 list_text_embedding_models, list_vision_catalog, or other list tools. It does not mention any prerequisites, exclusions, or use cases, leaving the agent to infer usage from the name and content.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_text_embedding_modelsAInspect
List text-embedding models currently loaded on this node (Qwen3-Embedding, EmbeddingGemma, BGE-M3, etc.). Use list_text_embedding_catalog to browse the curated catalog.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations present; description only states 'currently loaded on this node' but does not disclose read-only nature, update frequency, or behavior when empty. Adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words, front-loaded with purpose and sibling differentiation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose and differentiator; could mention use case (e.g., checking available models before embedding) but sufficient for a simple list tool with output schema present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters (schema empty), so baseline is 4. Description adds no parameter info, but none needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool lists text-embedding models currently loaded on the node, with examples (Qwen3-Embedding, etc.). Distinct from sibling list_text_embedding_catalog, which is for the curated catalog.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises using list_text_embedding_catalog for the curated catalog, providing clear guidance on when to use each tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_text_segmentation_catalogBInspect
Browse the curated ONNX text-promptable segmentation catalog: SAM 3 / SAM 3.1 (Meta) — open-vocabulary text-promptable segmenter, ViT-H backbone, 1008x1008 input, 32-token CLIP BPE language encoder.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It only describes catalog content (models and specs) but does not mention any behavioral traits like side effects, authentication needs, rate limits, or response format. For a read tool, basic safety info is missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with front-loaded purpose. While it includes technical details, it remains concise without extraneous text. Could be slightly more streamlined but overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple listing tool with no parameters and an output schema. Description covers catalog contents but lacks behavioral context (e.g., pagination, ordering, or response structure). With output schema existing, return format is partially handled, but behavioral completeness remains a gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so schema coverage is 100%. Description adds context by specifying ONNX, text-promptable, and model architecture details, enriching understanding of what the tool returns beyond the empty schema. Baseline 4 for zero parameters is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Browse the curated ONNX text-promptable segmentation catalog' and specifies models (SAM 3/3.1), distinguishing it from siblings like list_segmentation_catalog (general segmentation) and list_text_segmentation_models (likely different scope). The specific verb 'browse' and resource 'catalog' provide clear purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 list_segmentation_models or list_text_segmentation_models. No mention of prerequisites, use cases, or exclusions. The description only states what it does, not when it is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_text_segmentation_modelsAInspect
List text-promptable segmenters currently loaded on this node (SAM 3 family). Use list_text_segmentation_catalog to browse the curated catalog.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full burden. It describes a list operation which is implicitly read-only, but does not explicitly state lack of side effects or authentication requirements. The description is adequate but could be more transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two sentences, each adding value: first defines purpose, second provides sibling guidance. No redundant or unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters and an output schema present, the description covers the essential purpose and sibling differentiation. It lacks explicit mention of output structure or behavior, but the output schema compensates. The scope 'currently loaded on this node' is adequately defined.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, and schema coverage is 100%, so baseline is 3. The description does not add any parameter information, which is acceptable given no parameters exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list', the resource 'text-promptable segmenters', and the scope 'currently loaded on this node (SAM 3 family)'. It also distinguishes from the sibling tool 'list_text_segmentation_catalog'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly directs to use 'list_text_segmentation_catalog' for browsing the curated catalog, implying that this tool is for loaded models. However, it does not explicitly state when to use this tool versus the sibling, 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.
list_tokensCInspect
List all registered tokens in the unified token registry. Optionally filter by VM type or creator address.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of tokens to return (default: 50, max: 100) | |
| vm_type | No | Filter by VM type: 'evm', 'svm', 'daml', 'native' |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It fails to mention behavioral traits such as pagination, default/max limit (though present in schema), or response structure. The mention of a 'creator address' filter that does not exist in the schema adds confusion.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise (one sentence), but it includes an inaccurate filter mention. Brevity at the cost of correctness is not effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although an output schema exists, the description does not cover important context like pagination or default values. The misleading filter detail further reduces completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100% for the two parameters (limit, vm_type). However, the description incorrectly adds an optional filter by 'creator address' which is not in the schema, making it misleading and contradictory.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 in the unified token registry, with optional filters. The verb 'List' and resource 'tokens' are specific, and it distinguishes from sibling list tools by specifying the registry.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions optional filters for VM type or creator address, implying when to use them. However, it does not provide explicit guidance on when not to use this tool or alternatives among the many sibling list tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_user_walletsAInspect
List all user wallets belonging to an application. Returns wallet addresses, labels, and current balances.
| Name | Required | Description | Default |
|---|---|---|---|
| app_id | Yes | Application ID (UUID) to list wallets for |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description indicates a read/list operation, which is generally safe. However, it lacks explicit statements about being read-only or any side effects. Since there are no annotations, the description carries the full burden, but it is acceptable for a simple 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, both front-loaded with essential information. No redundant or extraneous text; every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 presence of an output schema, the description fully covers what the tool does and what it returns. No missing information for an AI agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter, app_id, is fully described in the schema (UUID). The description does not add additional semantic meaning beyond what the schema provides, maintaining the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool lists all user wallets for a specific application, with a concrete verb and resource. It distinguishes itself from siblings like create_user_wallet or fund_user_wallet by focusing on listing existing wallets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage context: when you need to list wallets for an application, providing the app_id. However, it does not mention when not to use this tool or suggest alternatives, nor does it explicitly state prerequisites or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_validatorsBInspect
List validators in the on-chain registry, optionally filtered by status ('Active' | 'Candidate' | 'PendingActive' | 'PendingExit' | 'Exited' | 'Jailed'). Each entry carries base58 address, Ed25519 + ML-DSA-65 + BLS12-381 pubkeys, self_stake (u128 decimal string), and epoch lifecycle markers.
| Name | Required | Description | Default |
|---|---|---|---|
| status | No | Optional status filter: 'Active' | 'Candidate' | 'PendingActive' | 'PendingExit' | 'Exited' | 'Jailed' |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It reveals the return fields (address, pubkeys, stake, epoch markers) but does not state that the operation is read-only, mention rate limits, pagination, or authentication requirements. The intent is conveyed but safety profile is not explicitly clarified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is three sentences, front-loaded with purpose and filter, then return fields. It is reasonably concise but could be slightly tighter (e.g., removing repetitive 'each entry carries' phrasing). Still, it avoids unnecessary verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has an output schema (not shown). Description provides a useful overview of return fields, but lacks details on pagination, sorting, maximum results, or whether the filter is exact match. For a listing tool with potentially many entries, these omissions reduce completeness. Score is adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%; the schema already documents the 'status' parameter with enum values and nullability. The description repeats this information without adding extra context such as case sensitivity, default behavior, or format constraints. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool lists validators from the on-chain registry with optional status filtering. It specifies the verb 'List', resource 'validators', and provides a detailed enumeration of the return fields, distinguishing it from the sibling 'list_active_validators' which is more specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'list_active_validators'. The description does not mention use cases, preconditions, or exclusions, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_video_catalogAInspect
Browse the curated ONNX video encoder catalog. Advertises the V-JEPA 2 family (vjepa2-vitl-256, vjepa2-vith-256, vjepa2-vitg-384 — Meta AI, MIT / Apache-2.0). Loading is gated on per-model ONNX export until each entry has a published model.onnx artifact.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that loading is gated on per-model ONNX export, which is a useful behavioral trait. However, it does not mention other traits like read-only nature 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the purpose. It efficiently conveys the core function and a key behavioral note without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with no parameters and an output schema, the description provides sufficient context: curated catalog, specific models, and gating condition. The output schema handles return value documentation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, so schema coverage is 100%. Per guidelines, baseline is 4. The description adds no parameter semantics, which is acceptable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool browses a curated ONNX video encoder catalog, specifying the V-JEPA 2 family. However, it does not explicitly differentiate from sibling tools like list_video_models or list_vision_catalog, which could cause confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lacks guidance on when to use this tool vs alternatives. It does not mention exclusions or provide context for appropriate usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_video_modelsAInspect
List video encoder models currently loaded on this node. The V-JEPA 2 family (ViT-L / ViT-H / ViT-g) is advertised in the catalog; loading is gated on per-model ONNX export.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behaviors. It adds the important constraint that loading is gated on per-model ONNX export. However, it does not mention permissions required, side effects, or whether the listing includes failed loads, leaving some gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, front-loaded with the main action, and the second sentence adds a specific detail (ONNX export gating). Every word is purposeful; no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with no parameters and an output schema present, the description fully covers the tool's purpose and adds a key constraint. It is complete enough for agents to select and invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are 0 parameters, so schema coverage is 100%. The baseline for zero-parameter tools is 4, as the description need not add parameter info. It meets this baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 (video encoder models), and the scope (currently loaded on this node). It distinguishes from sibling tools like list_video_catalog which likely lists available models, by specifying 'currently loaded'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by mentioning 'currently loaded', but it does not explicitly state when to use this tool versus alternatives like list_video_catalog or list_models. No exclusions or when-not guidance are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_vision_catalogAInspect
Browse the curated ONNX vision encoder catalog: DINOv3 (small/base/large), SigLIP2 (base/large/so400m), CLIP ViT-B/32 + L/14, DINOv2. Each entry carries input_size, embedding_dim, normalization preset, and license tier.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It does not mention side effects, authentication needs, rate limits, or what happens if the catalog is empty. It only describes the content, not the behavior of the tool itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. The key verb 'Browse' is front-loaded, and the content details are concise and structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description need not explain return values. It lists example entries and fields, which is adequate for a simple listing tool. However, it could mention if the list is exhaustive or if there are any ordering or filtering limitations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so schema coverage is 100% trivially. Baseline for 0 params is 4. The description adds context about the content of the catalog, which is sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it's for browsing a curated ONNX vision encoder catalog, listing specific model families (DINOv3, SigLIP2, CLIP, DINOv2) and the fields each entry carries. It distinguishes from sibling list tools by specifying the domain (vision encoder catalog).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for obtaining available vision encoders, but does not explicitly state when to use this tool versus alternatives like list_vision_models or other list_*_catalog tools. No exclusions or 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.
list_vision_modelsAInspect
List vision encoder models currently loaded on this node (DINOv3, SigLIP2, CLIP, etc.). Use list_vision_catalog to browse available models.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description carries full burden. It specifies 'currently loaded on this node' indicating dynamic state and local scope. Does not explicitly state read-only nature, but 'list' implies it. Good behavioral context added.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two efficient sentences: first defines purpose with examples, second provides sibling alternative. No wasted words, front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Description covers purpose, scope (currently loaded on node), and examples. Output schema exists so return format is covered. Slightly lacking mention of dynamic nature or emptiness possibility, but sufficient for simple list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 0 parameters, so baseline is 4 per rubric. Description does not need to provide param info; it is sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'List vision encoder models currently loaded on this node' and provides examples of models. It distinguishes from sibling tool list_vision_catalog by specifying the latter is for browsing available models, clarifying the scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells agent when to use alternative: 'Use list_vision_catalog to browse available models.' This provides clear guidance on tool selection and context of use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_webhooksAInspect
List every registered webhook. Returns each webhook's id, url, active flag, event_types/addresses filters, and delivery counters (total_deliveries, failed_deliveries). Secret hashes are NOT returned — secrets are write-only.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description provides key behavioral info: it lists returned fields and explicitly states secrets are not returned. This adds transparency beyond the name and schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no redundancy, front-loaded with purpose. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool with an output schema, the description is complete, covering return fields and a notable omission (secrets). No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, and schema coverage is 100%. The description does not need to add parameter info, so baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action ('List every registered webhook') and details the returned fields. It distinguishes from sibling tools like register_webhook and delete_webhook by explicitly covering the listing behavior.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly states it lists all webhooks, implying usage for retrieval. However, it lacks explicit guidance on when not to use or alternatives, though no filtered list sibling exists.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_workflow_receiptsAInspect
Walk a workflow's receipt chain from head backwards via prev_receipt. Returns receipts oldest-last, bounded by max (default 256). Use this for audit trails and dispute history.
| Name | Required | Description | Default |
|---|---|---|---|
| max | No | Maximum receipts to return (default 256) | |
| workflow_id | Yes | 32-byte hex workflow id |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description carries full burden. Discloses traversal direction, ordering, and bounding. Lacks details on error cases or prerequisites, but adequate for a simple 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two efficient sentences with no wasted words. Front-loaded with action and key constraints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Complete for a 2-param tool with output schema. Covers traversal, ordering, bounding, and use cases. Nothing missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and description adds only that max defaults to 256 (already in schema). Minimal added value beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (walk a workflow's receipt chain backwards) and the resource (workflow receipts). It distinguishes from siblings like 'get_workflow_receipt' by specifying chain traversal and ordering.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit use cases ('audit trails and dispute history'). Doesn't mention when not to use it or alternatives, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_workflows_by_creatorAInspect
List workflow ids created by a given DID. Returns up to all workflows the DID has authored, regardless of status.
| Name | Required | Description | Default |
|---|---|---|---|
| creator_did | Yes | Creator DID (did:tenzro:human:... or did:tenzro:machine:...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It discloses that the tool returns workflow IDs only and includes all statuses. However, it lacks details on pagination, ordering, return limits, or authorization requirements. For a simple read operation, this is adequate but not exemplary.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the purpose. Every word adds value, and there is no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description does not need to explain return values. It covers the key aspect of filtering by creator and includes the 'regardless of status' qualifier. Minor absence of pagination mention prevents a perfect score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description adds minimal extra meaning beyond the schema's parameter description. The description contextualizes the parameter but does not add new semantics, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'workflow ids', and specifies filtering by creator DID. It distinguishes the tool from siblings like list_workflows_by_status and list_workflows_by_participant by focusing on creator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use: when needing all workflow IDs authored by a given DID, regardless of status. It does not explicitly mention alternatives or when not to use, but the context is clear for an AI agent familiar with the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_workflows_by_participantAInspect
List workflow ids that include a DID as a participant (regardless of role). The DID may be the creator, an obligor, an oblige, or an approver.
| Name | Required | Description | Default |
|---|---|---|---|
| did | Yes | DID string |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that it returns workflow IDs and explains the role condition. With no annotations, it clearly indicates a read-only listing operation. Minor gap: no mention of pagination or limits, but the output schema likely covers structure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, front-loading the core purpose and adding role clarification. Every sentence serves a purpose with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists, the description adequately covers the tool's input and behavior. It lacks explicit differentiation from similar list tools, but the core functionality is sufficiently described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema describes 'did' as 'DID string' with 100% coverage. The description adds meaning by explaining how the DID is used (as a participant in various roles), providing context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists workflow IDs that include a DID as a participant in any role, and it lists specific roles (creator, obligor, oblige, approver), effectively distinguishing it from sibling tools like list_workflows_by_creator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing workflows by participant role, but it does not explicitly state when to use this tool versus alternatives like list_workflows_by_creator or list_workflows_by_status. No explicit guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_workflows_by_statusAInspect
List workflow ids in a given status. Status: draft | awaiting_signatures | active | suspended | settling | completed | failed | disputed | cancelled.
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | Workflow status: draft | awaiting_signatures | active | suspended | settling | completed | failed | disputed | cancelled |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It indicates a read operation ('List') with no destructive side effects. However, it does not mention pagination, sorting, or the exact return format (e.g., only IDs or full objects), which would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence followed by a list of statuses. It is highly concise, front-loads the action, and contains 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.
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 presence of an output schema (context signal), the description adequately conveys the filtering behavior and status options. It does not need to explain return values. The description is nearly complete for this straightforward use case.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already fully describes the 'status' parameter with all possible values (100% coverage). The description only repeats these values without adding new semantic meaning, so it adds no extra value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'workflow ids' with the filter 'in a given status'. It differentiates from sibling tools like list_workflows_by_creator or list_workflows_by_participant by specifying the status filter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use the tool: to list workflow IDs filtered by status. It lists all permissible status values, providing clear context. However, it does not explicitly mention when not to use it or suggest alternatives, so it lacks exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_x402_schemesAInspect
List the x402 scheme backends registered on this node. Each scheme corresponds to a different verification path under the x402 protocol: 'tenzro-hybrid' (Ed25519 hybrid sig over canonical preimage), 'exact-eip3009' (USDC EIP-3009 meta-tx via CDP facilitator), 'permit2' (Uniswap Permit2 via CDP facilitator), 'erc7710' (delegation redemption). Use the returned ids in the 'extra.scheme' field of an x402 PaymentRequirement.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. While the tool is likely read-only (listing), the description does not explicitly state that it has no side effects, is safe to call repeatedly, or any other behavioral traits. Adding a 'Read-only list' note would improve clarity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences. The first sentence states the action, and the second provides usage context and lists the schemes. Every sentence serves a purpose without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters but has an output schema, the description adequately explains what is returned (list of schemes with descriptions) and how to use the results. No additional context is needed for this simple list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and schema coverage is trivially 100%. The description adds significant value by enumerating the specific scheme names ('tenzro-hybrid', 'exact-eip3009', 'permit2', 'erc7710') with explanations, which the empty schema cannot convey.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'List the x402 scheme backends registered on this node' with a specific verb and resource. It details each scheme name and its verification path, clearly distinguishing this tool from siblings (no other list_x402 variant exists).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: 'Use the returned ids in the 'extra.scheme' field of an x402 PaymentRequirement.' This tells the agent when to use the output. No exclusion or alternative tools are mentioned, but given the tool's simplicity, the guidance is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_zk_circuitsAInspect
List all available ZK circuits on the node — name, AIR type, field, and hash function.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears the full burden. It discloses the tool lists circuits with specific fields, but omits behavioral details like pagination, rate limits, or idempotency. Given the simplicity of a list operation, the description is adequate but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured sentence that front-loads the purpose and lists the output fields. Every word earns its place, with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and an output schema exists (context: has output schema=true), the description sufficiently covers what the tool does and what it returns. The mention of output fields adds context beyond the schema's existence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so schema description coverage is 100%. The description adds no parameter information because none exist. Baseline for no parameters is 4, and the description meets that baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' with a clear resource 'ZK circuits' and enumerates the returned fields (name, AIR type, field, hash function). It distinguishes the tool from sibling tools like create_zk_proof and verify_zk_proof by explicitly stating its listing purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (before creating proofs) but provides no explicit guidance on when to use this tool versus alternatives, nor any exclusion criteria or prerequisites. A higher score would require explicit when/when-not or alternative tool references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
load_audio_modelAInspect
Load an ASR ONNX model (Moonshine, Distil-Whisper, Whisper-v3-turbo, Parakeet-TDT-v3, Canary-1B-Flash). Either pass catalog_id to inherit family / max_audio_seconds / whisper_variant from the catalog, or set them explicitly. The transcriber lands in a follow-up wave — today, transcribe returns ProviderNotAvailable; loading is wired for end-to-end testing once the transcriber arrives.
| Name | Required | Description | Default |
|---|---|---|---|
| family | No | Required if catalog_id is not provided. One of: 'moonshine', 'whisper', 'parakeet', 'canary' | |
| model_id | Yes | Model id to register under (e.g. 'whisper-large-v3-turbo') | |
| catalog_id | No | Optional catalog id. If set, family / max_audio_seconds / whisper_variant are read from the catalog. | |
| decoder_path | Yes | Filesystem path to the decoder ONNX (decoder_model_merged.onnx for KV-cache) | |
| encoder_path | Yes | Filesystem path to the encoder ONNX | |
| tokenizer_path | Yes | Filesystem path to the tokenizer (tokenizer.json) | |
| whisper_variant | No | Required for family='whisper'. One of: 'distil-en', 'distil-large-v3', 'large-v3-turbo' | |
| max_audio_seconds | No | Max audio duration the encoder accepts (default 30s) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behaviors. It mentions the follow-up wave and testing nature, but does not cover side effects, permissions, thread safety, or resource consumption.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loading purpose and options. Efficient and no fluff, though could be slightly more structured for scanability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists but description doesn't mention return values. Covers current limitations and usage modes, but given the complexity (8 params, no annotations), it could provide more guidance on prerequisites or error states.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions already present. The description adds context about the mutually exclusive paths (catalog_id vs. explicit parameters) but does not significantly enhance beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Load an ASR ONNX model' and lists specific model families (Moonshine, Distil-Whisper, etc.), clearly distinguishing it from sibling tools like list_audio_models and transcribe.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides two distinct usage paths (catalog_id vs. explicit parameters) and warns about the current limitation of transcribe returning ProviderNotAvailable. Lacks explicit when-not-to-use or alternatives, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
load_detection_modelAInspect
Load a detector ONNX (RF-DETR, D-FINE). Wave-1: the underlying RPC handler returns JSON-RPC -32004 until the ONNX loader for this modality lands. Exposed for surface symmetry.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Filesystem path to the ONNX file | |
| family | No | Detector family: 'rf-detr' or 'd-fine' | |
| model_id | Yes | Model id to register under (e.g. 'rf-detr-base') | |
| catalog_id | No | Optional catalog id. Wave-1 RPC stub: returns -32004 until ONNX loader lands. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations present, so description carries full burden. It discloses that the underlying RPC returns error -32004 until ONNX loader lands, which is a significant behavioral trait. However, it does not describe side effects or normal behavior when successful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with 4 sentences. It front-loads the purpose and includes a critical warning. Minor redundancy with 'Load a detector ONNX (RF-DETR, D-FINE)' could be slightly tighter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (4 params, output schema exists), the description warns of potential error but does not explain what a successful load returns or prerequisites. It is adequate but leaves gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all 4 parameters with descriptions. The tool description adds value only for catalog_id by noting the RPC stub error. For path, model_id, and family, it adds no beyond schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool loads a detector ONNX model, specifying families (RF-DETR, D-FINE). It distinguishes from sibling tools like load_audio_model by focusing on detection. The warning about Wave-1 RPC error adds specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for loading detection models but does not explicitly guide selection versus alternatives. The note 'Exposed for surface symmetry' suggests it's for API completeness, but no when-to-use or 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.
load_forecast_modelAInspect
Load a forecast (timeseries) ONNX model into the node's runtime. The file at path must be a valid ONNX export. Pass context_length and max_horizon to match the export. For multi-output graphs (TimesFM 2.5 transformers export), set output_name to select the prediction tensor and batch_size=2 to satisfy the export's flip-invariance averaging.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Filesystem path to the ONNX file | |
| model_id | Yes | Model id to register under (e.g. 'timesfm-2.5-200m') | |
| batch_size | No | Optional fixed leading batch dim. Defaults to 1. TimesFM 2.5 transformers ONNX requires 2 (flip-invariance averaging). | |
| max_horizon | Yes | Maximum forecast horizon supported by this export | |
| output_name | No | Optional explicit prediction output tensor name. Required for multi-output ONNX graphs where the first output is not the forecast (e.g. TimesFM transformers export). | |
| context_length | Yes | Context length (number of input timesteps the encoder accepts) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It mentions the model is loaded into runtime (state change) and gives parameter-specific behavior like batch_size default and requirement for TimesFM. However, it lacks details on side effects (e.g., memory impact), failure modes, or what happens if the model is already loaded.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, well-structured, front-loading the main action and then detailing special cases. 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 params, no annotations, and presence of output schema, the description covers loading details, required params, and special cases. It lacks mention of potential errors (invalid path) or model overwriting behavior, but overall complete for typical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. The description adds meaningful context beyond the schema: explains batch_size default and TimesFM requirement, output_name for multi-output graphs, and clarifies purpose of context_length and max_horizon. This adds value over just repeating schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool loads a forecast (timeseries) ONNX model into the node's runtime, specifying verb, resource, and context. It differentiates from siblings like list_forecast_models and unload_forecast_model by focusing on loading.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use the tool: to load a valid ONNX model, with specific requirements like matching context_length and max_horizon to the export. It also provides special instructions for multi-output graphs. However, it does not explicitly state when not to use or list alternatives, slightly limiting guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
load_segmentation_modelAInspect
Load a segmenter ONNX (SAM 2 base/large, EdgeSAM, MobileSAM). Wave-1: the underlying RPC handler returns JSON-RPC -32004 until the ONNX loader for this modality lands. Exposed for surface symmetry — agents should branch on the catalog status before calling.
| Name | Required | Description | Default |
|---|---|---|---|
| family | No | SAM family: 'sam1' or 'sam2' | |
| model_id | Yes | Model id to register under (e.g. 'sam2-base') | |
| catalog_id | No | Optional catalog id. Wave-1 RPC stub: returns -32004 until ONNX loader lands. | |
| decoder_path | Yes | Path to the decoder ONNX | |
| encoder_path | Yes | Path to the encoder ONNX |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It transparently discloses that the underlying RPC handler returns error -32004 until the ONNX loader lands, a critical behavioral trait. This helps set correct expectations despite the tool name implying readiness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences efficiently convey purpose, current limitation, and rationale. Front-loaded with key information. Could be slightly more concise, but the necessary caveat earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema covers return values, so no need to describe them. However, the description lacks details on successful behavior once loader lands, and prerequisites (e.g., model file existence) are not mentioned. Adequate for a stall tool but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds minimal extra semantics beyond listing supported families. The schema already defines all parameters. Baseline 3 is appropriate as no significant enhancement is made.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Load a segmenter ONNX (SAM 2 base/large, EdgeSAM, MobileSAM)', clearly identifying the tool's function and supported model families. It also distinguishes from siblings like list_segmentation_models and unload_segmentation_model. However, the caveat about -32004 error may cause confusion about actual availability.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises agents to 'branch on the catalog status before calling' due to the current -32004 error. This provides direct guidance on when not to use the tool. No alternatives are mentioned, but the warning effectively prevents misuse.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
load_text_embedding_modelAInspect
Load a text-embedding ONNX model. Wave-1: the underlying RPC handler returns JSON-RPC -32004 until the ONNX loader for this modality lands. Exposed for surface symmetry; agents should branch on the catalog (which ships empty in wave 1) rather than calling this blind.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Filesystem path to the ONNX file | |
| model_id | Yes | Model id to register under | |
| catalog_id | No | Optional catalog id (e.g. 'qwen3-embedding-0.6b'). Wave-1 RPC stub: returns -32004 until ONNX loader lands. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the RPC handler returns error code -32004 until the ONNX loader lands, and that the catalog ships empty in wave 1. This is transparent about the current broken state. It does not mention side effects, permissions, or what happens in future waves, but the immediate behavior is well communicated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. The purpose is front-loaded, followed by essential behavioral and guidance notes. Perfectly sized for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the tool's purpose, its broken state in wave 1, and recommended usage pattern. Given the presence of an output schema, it does not need to detail return values. It is complete for a model-loading tool with known limitations, though slightly more explicit linking to the catalog tools would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema already describes all 3 parameters (100% coverage). The description adds value by noting that 'catalog_id' is a stub that returns an error in wave 1, which is not obvious from the schema alone. This extra context helps the agent understand the parameter's current limitation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Load a text-embedding ONNX model' with a specific verb and resource. However, it includes a caveat about wave-1 limitations that may confuse agents about its current functionality. It distinguishes it from siblings like 'load_audio_model' by specifying modality, but the guidance to use the catalog implies it's not fully functional yet.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly advises agents not to call the tool blind in wave 1, directing them to branch on the catalog instead. This provides clear when-to-use and when-not-to-use guidance. However, it does not name a specific alternative tool (e.g., 'list_text_embedding_catalog') which would be more actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
load_text_segmentation_modelBInspect
Download (or reuse cached) the SAM-3 family ONNX bundle from HuggingFace Hub and register it under model_id. Bundle contains image encoder, language (CLIP) encoder, decoder, and CLIP tokenizer.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered model id (the same id used at load time) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It mentions download/cache and registration, and lists components. However, it doesn't disclose authentication needs, side effects of caching, or output behavior. Partial transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the action and content. It is front-loaded and contains no filler, though it could be slightly more structured for readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists (not shown), the description is adequate but lacks information on caching behavior, errors, and prerequisites like HuggingFace access. For a load tool, it's minimally sufficient but could be more comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the parameter fully. The description adds context by stating the model_id is used for registration and is the same as at load time. This clarifies the parameter's role beyond the schema's description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool downloads/reuses a SAM-3 family ONNX bundle and registers it. It specifies the model family and components. However, the inclusion of an image encoder in a 'text segmentation' model is slightly confusing, and the name suggests a more text-focused tool, so it's not perfectly aligned.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 load_segmentation_model or load_text_embedding_model. The description lacks any context about when to choose this tool over siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
load_video_modelAInspect
Load a video encoder ONNX. The V-JEPA 2 catalog entries (vjepa2-vitl-256 / vith-256 / vitg-384) are licensed permissively but ship as safetensors upstream; until per-model model.onnx exports land, the RPC handler returns JSON-RPC -32004. Until then, agents should pool per-frame vision_embed.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Filesystem path to the ONNX file | |
| model_id | Yes | Model id to register under | |
| catalog_id | No | Optional catalog id (e.g. 'vjepa2-vitl-256'). Returns -32004 until the V-JEPA 2 ONNX export pipeline lands (tools/video-export). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the error code -32004 and mentions licensing and safetensors upstream, but does not describe successful loading behavior or registration details. Partial transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is fairly concise, with main purpose front-loaded. However, includes some extraneous details about licensing and upstream formats that may not be essential for agent invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema, the description adequately covers error conditions, workaround, and catalog examples. It is complete enough for a model-loading tool with simple parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description adds context for catalog_id (error implications and example) but repeats schema info for path and model_id. Does not significantly enhance beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool loads a video encoder ONNX, specifies the resource type, and references V-JEPA 2 catalog entries. It implicitly distinguishes from sibling model-loading tools by focusing on video, but doesn't explicitly differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit guidance provided: if ONNX exports are not ready, agents should use vision_embed instead. Also warns about error -32004 for V-JEPA catalog entries until exports land, helping agents decide when to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
load_vision_modelAInspect
Load a vision encoder ONNX into the node. Either pass catalog_id to inherit input_size/embedding_dim/normalization from the curated catalog, or set them explicitly. Returns when the ORT session is ready.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Filesystem path to the ONNX file | |
| model_id | Yes | Model id to register under (e.g. 'dinov3-vitb16') | |
| catalog_id | No | Optional catalog id. If set, input_size/embedding_dim/normalization are read from the catalog and the explicit params below may be omitted. | |
| input_size | No | Image input edge in pixels (square). Required if catalog_id is not provided. | |
| embedding_dim | No | Output embedding dimension. Required if catalog_id is not provided. | |
| normalization | No | Normalization preset ('clip', 'imagenet', 'siglip'). Optional override of catalog default. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavioral traits. It only says 'Returns when the ORT session is ready,' leaving out side effects (e.g., model registration in the node), error conditions, idempotency, and resource lifecycle. This is insufficient for a tool that presumably modifies state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—two sentences with no redundant words. The main action is front-loaded, and the alternative parameter strategies are succinctly summarized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The presence of an output schema reduces the need to describe return values, but the description misses important context: what 'node' means, whether the model persists (sibling unload_vision_model exists), and concurrency or resource implications. For a tool that loads a resource, this is a moderate gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already describes each parameter. The description adds value by explaining the two usage modes (catalog_id vs explicit) and that normalization has a catalog default that can be overridden. This clarifies relationships beyond the schema definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Load') and a specific resource ('vision encoder ONNX'), and distinguishes it from sibling tools by naming the model type. It also clarifies the two operational modes (catalog_id vs explicit parameters), which adds precision beyond the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives guidance on when to use each parameter path (use catalog_id to inherit settings, otherwise set explicitly), but does not explicitly compare this tool with sibling 'load_*_model' tools (e.g., load_audio_model). The tool name and resource type make the distinction clear, so the lack of explicit alternatives is a minor gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_archiveAInspect
Archive a memory record. Pushes the canonical payload to the configured DA backend, then rewrites the on-tier rows with kind='archived' and the resulting DaPointer attached. Frees hot search budget; payload is fetchable on demand via the pointer.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_did | Yes | Agent DID owning the record (used to scope the lookup). | |
| record_id | Yes | Memory record id (UUID v4) to archive. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully discloses behavior: it pushes to a DA backend, rewrites rows with kind='archived', attaches a DaPointer, frees hot search budget, and makes the payload fetchable on demand. No hidden side effects or contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each providing key information without redundancy. It is front-loaded with the primary action and efficiently conveys the full process and implications.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and full parameter coverage, the description covers all necessary aspects: what the tool does, how it operates, and its effects. It is complete for an archiving operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 does not add additional semantic meaning beyond what the schema already provides, meeting the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool archives a memory record, detailing the process (pushes to DA backend, rewrites rows, attaches pointer) and effects (frees budget, fetchable via pointer). This specificity distinguishes it from sibling tools like memory_grant and memory_recall.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies archiving is for freeing hot search budget and making payload fetchable, but it does not explicitly state when to use this tool versus alternatives (e.g., when to archive vs. delete or recall). No exclusions or alternative suggestions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_grantAInspect
Grant a memory to an agent on the Tenzro Network. Embeds the text via the configured TextEmbeddingRuntime and writes to both the Lance vector index and the Tantivy BM25 index. Returns the persisted MemoryRecord including its UUID.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | Memory kind: 'granted' (default), 'recalled', 'self_noted', or 'archived'. | |
| text | Yes | The text payload to remember. Indexed for both vector and BM25 recall. | |
| source | No | Memory source: 'controller' (default), 'tool', 'peer', or 'self'. | |
| metadata | No | Free-form JSON metadata stored alongside the record. | |
| agent_did | Yes | Agent DID the memory belongs to (e.g. 'did:tenzro:machine:...') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses the write side-effect (embedding and indexing) and return of a MemoryRecord. However, it does not mention idempotency or whether duplicates are allowed, leaving some behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with the main purpose front-loaded. The technical details about embedding and indexing are relevant but could be slightly trimmed for brevity. Still concise overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and 100% parameter coverage, the description provides sufficient context for the core action. However, it lacks error handling or edge-case details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds little beyond the schema's own descriptions. It does not elaborate on parameters like 'kind' or 'source' 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'grant' and resource 'memory'. It specifies that it embeds text and writes to vector and BM25 indexes, distinguishing it from siblings like 'memory_recall' and 'memory_archive'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'memory_recall' or 'memory_archive'. It lacks prerequisites or exclusions, so guidance is minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_recallAInspect
Recall memories for an agent. Mode 'hybrid' (default) merges Lance vector kNN and Tantivy BM25 via Reciprocal Rank Fusion (k=60); 'vector' or 'text' restrict to one backend. Returns ranked MemoryRecord stubs (no embeddings).
| Name | Required | Description | Default |
|---|---|---|---|
| k | No | Top-k results to return per backend (default 10). | |
| mode | No | Search mode: 'hybrid' (default, RRF k=60), 'vector', or 'text'. | |
| query | Yes | Natural-language query. Embedded for vector recall, parsed for BM25. | |
| agent_did | Yes | Agent DID whose memory tier should be searched. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool returns ranked MemoryRecord stubs without embeddings and describes the RRF fusion. It does not mention any side effects, but the tool is likely read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences efficiently convey the core functionality and mode details. No extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description sufficiently covers the return type and behavior. It could mention idempotency or safety (read-only), but overall is complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 explaining how the mode parameter works (e.g., hybrid merges via RRF k=60) and how query is processed differently for vector vs. text. This goes beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it recalls memories for an agent, explaining the hybrid mode and its backends. It distinguishes itself from sibling tools like memory_archive and memory_grant by focusing on recall.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
While the description explains the modes (hybrid, vector, text) and their behavior, it does not explicitly state when to use this tool versus alternatives like memory_archive or memory_grant. Usage is implied but not contrasted.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mint_nftAInspect
Mint a new NFT in an existing collection. For ERC-721, each token_id is unique. For ERC-1155, you can mint multiple copies of the same token_id. Returns the minted token details.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Hex-encoded recipient address | |
| uri | Yes | Token metadata URI (e.g. 'https://metadata.tenzro.com/collection/1.json') | |
| amount | No | Amount to mint (only for ERC-1155, default 1) | |
| token_id | Yes | Token ID within the collection (numeric string, e.g. '1') | |
| collection_id | Yes | Collection ID (UUID from create_nft_collection) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the return of minted token details and standard-specific behavior but lacks information on permissions, error conditions, side effects, or idempotency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences: one for purpose, one for standard details and return. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema exists, so return details are covered. However, the description lacks guidance on prerequisites, errors, and usage vs. many sibling tools. It is adequate but not fully comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 value by explaining the role of the 'amount' parameter in ERC-1155, which goes beyond the schema. It also ties 'collection_id' to an existing collection.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool mints a new NFT in an existing collection, and distinguishes between ERC-721 and ERC-1155 behavior. It differentiates from sibling tools like 'attested_mint' or 'crosschain_mint' by focusing on standard NFT minting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by explaining standard-specific behavior and the need for an existing collection. However, it does not explicitly state when to use this tool versus alternatives or mention prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
oauth_discoveryAInspect
RFC 8414 / RFC 9728 OAuth Authorization Server / Protected Resource Metadata. Returns the same metadata document the AS publishes at GET /.well-known/openid-configuration, augmented with AAP-specific extensions (authorization_details_types_supported, aap_claims_supported, dpop_signing_alg_values_supported).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It describes the returned document but does not disclose behavioral traits such as caching, rate limits, or authentication requirements. The standard behavior is implied but not explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: three sentences that front-load the standard reference, then specify the exact URL and the extensions unique to this implementation. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with an output schema (not shown), the description is largely complete. It specifies what is returned and how it differs from the standard OpenID Connect discovery. Minor gap: lacks any mention of potential error conditions or prerequisites.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, and the schema coverage is 100% (vacuously). The description does not need to add parameter semantics, so baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as retrieving OAuth Authorization Server metadata per RFC 8414/9728, referencing a specific well-known URL and listing AAP-specific extensions, which distinguishes it from all sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for OAuth metadata discovery but does not explicitly specify when to use this tool versus alternatives. However, the context is clear given the standard referenced.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
offer_snapshotAInspect
Register an inbound snapshot manifest received from a peer. The caller MUST verify state_root_hex against a trusted QC at the same height before invoking — this RPC only registers the offer and provisions the spool directory; it does not itself validate the manifest against chain state. Returns {accepted: true, height, num_chunks}.
| Name | Required | Description | Default |
|---|---|---|---|
| format | Yes | Manifest format version (current: 1) | |
| height | Yes | Block height of the snapshot being offered | |
| created_at | Yes | Wall-clock time the snapshot was produced (ISO 8601, UTC) | |
| num_chunks | Yes | Number of chunks. Chunk indices are 0..num_chunks. | |
| state_root_hex | Yes | Hex-encoded state root committed at `height`. Caller MUST have verified this against a trusted QC at the same height before invoking this RPC. | |
| chunk_hashes_hex | Yes | Per-chunk SHA-256 hash (hex), indexed by chunk number. Length must equal num_chunks. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully discloses behaviors: it registers the offer and provisions the spool directory, and explicitly states it does not validate the manifest. Returns format is documented, ensuring complete transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the action, no unnecessary words. Every sentence adds essential information: purpose, precondition, and return value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 6 parameters with full schema coverage and an output schema, the description covers preconditions, side effects (provisions spool directory), and return values completely. No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so all parameters are already described. The description adds value by reinforcing a critical precondition in the state_root_hex parameter context, though it does not introduce new parameter semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verb 'Register' and resource 'inbound snapshot manifest' to clearly state the tool's purpose. It also differentiates from related tools (e.g., apply_snapshot_chunk) by noting that this RPC does not validate the manifest against chain state, providing strong sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states mandatory preconditions: 'The caller MUST verify state_root_hex against a trusted QC at the same height before invoking'. Also clarifies what the RPC does and does not do, giving clear guidance on when to use this tool versus other snapshot-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
open_payment_channelAInspect
Open a micropayment channel for off-chain per-token billing. Sender deposits TNZO into the channel for streaming payments to the recipient. Returns the channel ID.
| Name | Required | Description | Default |
|---|---|---|---|
| sender | Yes | Hex-encoded sender address (opens and funds the channel) | |
| recipient | Yes | Hex-encoded recipient address | |
| deposit_wei | Yes | Initial deposit amount in wei (1 TNZO = 10^18 wei). Accepts u64 number or decimal string. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose behavioral traits such as side effects (e.g., on-chain transaction costs), permissions required, or reversibility. Without annotations, the description fails to convey important operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. It front-loads the core action and result, making it easy for the agent to quickly understand the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description covers the basic operation and return value, it lacks details about channel capacity, deposit usage, and potential errors. Given that an output schema exists but is not visible, the description could be more comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions are detailed and add meaning (e.g., 'opens and funds the channel', 'Accepts u64 number or decimal string'). With 100% coverage, the baseline is 3, but the descriptions provide extra context, earning a 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Open', the resource 'micropayment channel', and the purpose 'for off-chain per-token billing'. It also distinguishes from sibling tools like close_payment_channel and settle_payment by specifying the action and return value.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., direct payments, other channel operations). The description lacks context on prerequisites or scenarios where this tool is applicable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pause_agentAInspect
Pause an agent (reversible). Halts all outbound A2A messaging and inference dispatch but preserves stake. Requires controller_did to match the agent's registered controller. NOTE: this MCP tool describes the operation only — the transaction must be signed and submitted via tenzro_signAndSendTransaction with type=PauseAgent.
| Name | Required | Description | Default |
|---|---|---|---|
| reason | Yes | Free-text reason recorded on the kill-switch receipt | |
| agent_did | Yes | DID of the agent to pause | |
| controller_did | Yes | DID of the controller authorizing the pause (must match controller_did on the agent identity) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses reversibility, what is halted (outbound A2A, inference dispatch), stake preservation, auth requirement, and the need for a separate signing step. This is thorough for a pause operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three efficient sentences front-loading purpose and effects, followed by requirement and note. No redundant information. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With output schema present, description needn't detail return values. Covers all important aspects: what, effects, prerequisites, workflow. Adequate for selecting and invoking the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and description adds context: for controller_did, clarifies it must match the agent's registered controller; for reason, mentions 'kill-switch receipt' which is beyond schema. This adds meaningful semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Purpose is clearly stated: pause an agent, halting A2A messaging and inference dispatch while preserving stake. Reversibility is noted. However, no explicit differentiation from sibling tools like terminate_agent or quarantine_agent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Describes prerequisites (controller_did must match) and notes that the transaction must be signed and submitted separately. Does not say when to use this tool over alternatives or when not to use it, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
permit2_digestAInspect
Compute the EIP-712 digest a user signs for a Permit2 SignatureTransfer. If witness is provided, binds the permit to that 32-byte witness (used by ERC-7683 origin opens to bind to a specific cross-chain order). Returns {digest, struct_hash, domain_separator}.
| Name | Required | Description | Default |
|---|---|---|---|
| nonce | Yes | Nonce — 256-bit-per-word bitmap position as decimal string | |
| owner | Yes | 20-byte token owner (0x-prefixed hex) | |
| token | Yes | 20-byte ERC-20 token address (0x-prefixed hex) | |
| amount | Yes | Amount (decimal string) | |
| spender | Yes | 20-byte spender (0x-prefixed hex) | |
| witness | No | Optional 32-byte witness (0x-prefixed hex). When present, binds the permit to the witness — used by ERC-7683 origin opens. | |
| chain_id | Yes | ||
| deadline | Yes | Unix-seconds deadline | |
| witness_type_string | No | Optional EIP-712 witness type string. Required when `witness` is present. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the return object format and the conditional behavior of the witness parameter, but does not discuss side effects, error conditions, or prerequisites (e.g., need for permit2 deployment). For a read-like compute tool, this is acceptable but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. The first sentence states the core function, and the second adds conditional context. All information is relevant and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (mentioned) and high schema coverage, the description is fairly complete. It covers the main purpose, a key optional parameter (witness), and the return format. It does not mention error cases or prerequisites, but for a computation tool with well-documented parameters, this is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 89%, meaning most parameters are already described. The description adds value by explaining the witness parameter's binding behavior and its relation to ERC-7683, which is not covered in the schema. This improves understanding beyond the raw schema definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool computes an EIP-712 digest for Permit2 SignatureTransfer, with a specific verb ('Compute') and resource. It distinguishes from sibling tools like permit2_domain_separator and permit2_verify_and_consume by its unique function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context about the witness parameter's use case (ERC-7683 origin opens) but does not explicitly guide when to use this tool versus alternatives like permit2_domain_separator or permit2_nonce_used. Usage is implied but not directly compared.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
permit2_domain_separatorAInspect
Read the EIP-712 domain separator for the canonical Tenzro Permit2 contract (0x0000…00001023) on chain_id. Returns {domain_separator, verifying_contract, chain_id}.
| Name | Required | Description | Default |
|---|---|---|---|
| chain_id | Yes | EIP-155 chain ID for the Permit2 domain separator |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It correctly describes the operation as a read returning specific fields. It does not mention authentication or error conditions, but for a simple read-only endpoint, this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no extraneous information. The description is concise and front-loaded with the action and result.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 (one parameter, read-only, output schema specified in description), the coverage is adequate. The return format is explicitly stated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides a description for chain_id, and this tool's description adds the specific contract address, enhancing meaning. With 100% schema coverage, the description adds marginal but valuable context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it reads the EIP-712 domain separator for a specific canonical contract, using a verb ('Read') and a specific resource. It distinguishes from sibling tools like permit2_digest or permit2_nonce_used.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates it is for reading the domain separator, but does not explicitly state when to use it versus other permit2 tools or provide exclusions. The context is clear enough for a specialized read operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
permit2_nonce_usedCInspect
Check whether a (owner, nonce) Permit2 slot has been consumed. Returns {used, owner, nonce}.
| Name | Required | Description | Default |
|---|---|---|---|
| nonce | Yes | ||
| owner | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description is the sole source of behavioral info. It only states the tool checks consumption, but does not disclose idempotency, permission requirements, error handling, or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, consisting of one sentence plus a return format hint. While effective, it could be slightly restructured for better readability, but it earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 (2 parameters, no nested objects) and the presence of an output schema (though not shown), the description provides the core intent. However, it lacks details on return behavior and edge cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no descriptions (0% coverage), and the description does not elaborate on parameter meanings beyond their names 'owner' and 'nonce'. No context on format or expected values is given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'check' and resource 'Permit2 slot', indicating a read-only operation. It distinguishes from the sibling 'permit2_verify_and_consume' by implication, but does not explicitly differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, nor are there any recommendations or exclusions. The description is purely functional.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
permit2_verify_and_consumeCInspect
Atomically verify a signed Permit2 message and consume its (owner, nonce) bitmap slot. Returns {consumed, word_pos, bit_pos}.
| Name | Required | Description | Default |
|---|---|---|---|
| nonce | Yes | ||
| owner | Yes | ||
| token | Yes | ||
| amount | Yes | ||
| spender | Yes | ||
| witness | No | ||
| chain_id | Yes | ||
| deadline | Yes | ||
| signature | Yes | 65-byte ECDSA signature (0x-prefixed hex) | |
| witness_type_string | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It states 'Atomically verify' and 'consume', but does not disclose side effects (e.g., writes to blockchain), required permissions, failure behavior, or idempotency. The atomicity hint is present but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with the return type, which is concise and front-loaded with the core action. However, it sacrifices parameter and usage details, making it efficient but incomplete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 10 parameters, no annotations, and low schema coverage, the description is too sparse. It does not explain what a Permit2 message is, the meaning of bitmap slot consumption, or any prerequisites. The return format is covered, but overall context is lacking.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 10%, yet the description adds no parameter explanations. It does not describe what owner, token, amount, spender, nonce, deadline, witness, or witness_type_string represent. The only param info comes from the signature description in the schema, which is insufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool atomically verifies a signed Permit2 message and consumes a bitmap slot, specifying the return fields. However, it does not explicitly differentiate from sibling tools like permit2_digest or permit2_nonce_used, though the combined action of verify+consume is distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, scenarios, or when not to use it. The intended usage is only implied by the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
post_agent_bondAInspect
Post an AgentBond surety against an agent DID (Agent-Swarm Spec 9). An Active bond ≥ bond_min_for_promotion promotes a Machine identity into the Delegated admission lane even when its controller is unknown / sub-Enhanced KYC. NOTE: this MCP tool describes the operation only — sign and submit a PostAgentBond transaction via tenzro_signAndSendTransaction.
| Name | Required | Description | Default |
|---|---|---|---|
| from | Yes | Controller wallet address (hex). Must match the signing key. | |
| amount | Yes | Bond amount in wei as a decimal string (1 TNZO = 10^18 wei) | |
| agent_did | Yes | DID of the agent the bond is posted against (e.g. did:tenzro:machine:...) | |
| controller_did | Yes | Controller DID (e.g. did:tenzro:human:...) authorizing the bond |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that this tool only describes the operation and that the actual transaction must be submitted via tenzro_signAndSendTransaction. It also explains the bond's effect on admission lanes. No contradiction with annotations (none present).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences plus a crucial note, all efficiently packed. Every part adds value: purpose, effect, and execution guidance. No redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is an output schema (not shown) so return values are covered. The description explains the tool's role in the broader workflow (requires separate signing tool) and the business context (bond minimum for promotion). It could mention prerequisites like the controller DID existence, 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all four parameters with clear descriptions. The description adds minimal extra meaning beyond referencing the spec and business effect. Given 100% schema coverage, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Post' and the resource 'AgentBond surety against an agent DID', and distinguishes it from the sibling 'get_agent_bond'. The note about needing to sign and submit via tenzro_signAndSendTransaction further clarifies the tool's role.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context for when to use the tool (to post a bond for promoting a Machine identity) but does not explicitly state when not to use it or list alternatives. However, the context is clear enough for an AI agent to determine applicability.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
post_taskAInspect
Post a new task to the Tenzro Network task marketplace. Returns the created task with its UUID. Tasks can request AI inference, code review, data analysis, content generation, agent execution, translation, or research.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes | Input data or prompt for the task | |
| title | Yes | Short title for the task (e.g. 'Translate README to Spanish') | |
| deadline | No | Optional: Unix timestamp deadline for task completion | |
| priority | No | Task priority: low, normal, high, urgent (default: normal) | |
| task_type | Yes | Task type: inference, code_review, data_analysis, content_generation, agent_execution, translation, research, or custom:<value> | |
| description | Yes | Detailed description of the task and expected output | |
| max_price_wei | Yes | Maximum price willing to pay in wei (1 TNZO = 10^18 wei). Accepts u64 number or decimal string. | |
| poster_address | Yes | Hex-encoded address of the task poster | |
| required_model | No | Optional: minimum model size required (e.g. '7b', '70b') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral traits. It notes the return of a UUID but omits details on mutability, side effects, auth requirements, or idempotency, leaving significant gaps 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core action, and contains no redundant or wasted information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 9 parameters (6 required) and no annotations, the description is moderately complete: it states the return value and lists task types, but lacks prerequisites (e.g., funding) or behavioral context needed for a creation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds context by listing example task types (inference, code review, etc.), but does not provide additional per-parameter meaning beyond what the schema already covers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Post a new task to the Tenzro Network task marketplace' with a specific verb and resource, and lists example task types, distinguishing it from siblings like assign_task or complete_task.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating a task but does not provide explicit guidance on when to use this tool versus alternatives (e.g., quote_task for pricing) 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.
quarantine_agentAInspect
Quarantine an agent (reversible). Halts messaging AND freezes all stake (blocks unstake/withdraw, allows slash). Requires controller_did to match the agent's registered controller. Optionally accepts a 32-byte evidence hash for off-chain audit linkage. NOTE: this MCP tool describes the operation only — the transaction must be signed and submitted via tenzro_signAndSendTransaction with type=QuarantineAgent.
| Name | Required | Description | Default |
|---|---|---|---|
| reason | Yes | Free-text reason recorded on the kill-switch receipt | |
| agent_did | Yes | DID of the agent to quarantine (freezes stake, blocks all messaging) | |
| evidence_hash | No | Optional 32-byte evidence hash (hex-encoded, with or without 0x prefix) | |
| controller_did | Yes | DID of the controller authorizing the quarantine |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully carries the transparency burden. It discloses side effects: halts messaging, freezes stake (blocks unstake/withdraw, allows slash), and notes reversibility. It also clarifies the tool is only descriptive and requires external signing, which adds important 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (3-4 sentences), front-loads the primary effect, and includes all critical information without redundancy. Every sentence serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (mutation with auth and signing), the description covers effects, preconditions, optional parameters, and the need for separate signing. With an output schema present, return values are adequately handled. No gaps identified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds significant value: it explains the purpose of each parameter (e.g., 'reason recorded on the kill-switch receipt', 'evidence hash for off-chain audit linkage'), specifies the hash format (32-byte hex), and clarifies the controller authorization requirement, going well beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'quarantine' and noun 'agent', clearly stating the action and distinguishing from siblings like 'pause_agent' (temporary) and 'terminate_agent' (permanent) by noting reversibility and specific effects on messaging and stake.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a precondition (controller_did must match) and mentions optional evidence hash, but does not explicitly guide when to use this tool vs alternatives like pause or terminate, nor does it state 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.
quote_taskAInspect
Submit a price quote for a task in the Tenzro Network task marketplace. Providers call this to bid on open tasks. The quote includes price, model to use, and estimated completion time.
| Name | Required | Description | Default |
|---|---|---|---|
| notes | No | Optional notes from the provider | |
| task_id | Yes | UUID of the task to quote | |
| model_id | Yes | Model ID the provider will use to complete the task | |
| price_wei | Yes | Quoted price in wei (1 TNZO = 10^18 wei). Accepts u64 number or decimal string. | |
| confidence | No | Provider confidence score 0-100 | |
| estimated_secs | Yes | Estimated time to complete the task in seconds | |
| provider_address | Yes | Hex-encoded address of the provider submitting the quote |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Only states it submits a quote; lacks disclosure on side effects (e.g., binding nature, reversibility, permission requirements). Minimal 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no fluff, front-loaded with action. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Description covers main action but omits prerequisites (e.g., task must be open, provider must be registered). Output schema exists, so return details not needed. Adequate for a simple action but could be more comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description mentions price, model, and estimated time, which correspond to schema fields, but adds no new semantics beyond what schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb (Submit), resource (price quote for a task), and role (Providers). Distinguishes from siblings like assign_task and post_task by specifying it's for bidding on tasks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Providers call this to bid on open tasks', giving clear context for when to use. However, does not explicitly mention when not to use or provide alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rate_agent_templateBInspect
Rate an agent template on the Tenzro Network marketplace. Ratings are 1-5 and help others discover quality templates. Optionally include a text review.
| Name | Required | Description | Default |
|---|---|---|---|
| rating | Yes | Rating from 1 (worst) to 5 (best) | |
| review | No | Optional review comment | |
| template_id | Yes | Agent template ID to rate |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral traits. It confirms the action is rating but does not disclose whether ratings can be updated, if the operation is idempotent, or if authentication is required. This lack of detail limits transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, concise and front-loaded with the core action. Every sentence adds value without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and the simplicity of the tool (3 params, all explained), the description adequately covers the essential context. It could mention idempotency or update behavior, but for a straightforward rating action, it is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description repeats the rating range (1-5) already in the schema and adds the optional review mention. This adds marginal context 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Rate an agent template') and the resource ('Tenzro Network marketplace'), and explains the purpose ('help others discover quality templates'). It distinguishes from sibling tools like register_agent_template or update_agent_template, but does not explicitly differentiate, so a 4 is appropriate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description notes that ratings are 1-5 and help discover quality templates, implying when to use the tool. However, it does not provide explicit guidance on when not to use it or list alternatives, such as searching or downloading templates instead. The 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.
refund_escrowAInspect
Refund escrowed funds back to the payer via a signed RefundEscrow transaction. Only the original payer can refund, AND the escrow must be expired (or use Timeout/Custom release conditions).
| Name | Required | Description | Default |
|---|---|---|---|
| payer | Yes | Hex-encoded payer address (must match the bearer's wallet) | |
| escrow_id | Yes | 32-byte escrow ID (hex, with or without 0x prefix) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It mentions a signed transaction and conditions for refund, adding some behavioral context, but does not detail signing process, gas costs, or failure scenarios.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no fluff; front-loaded with the action and followed by critical conditions. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists, return values need not be described. The description covers purpose, conditions, and parameter roles sufficiently for a simple refund tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 for parameters (payer and escrow_id). It reiterates conditions but does not elaborate on formats beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('refund escrowed funds'), the resource (escrow via signed transaction), and distinguishes from siblings by specifying the condition that only the original payer can refund and the escrow must be expired.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear context for when to use (payer, expired escrow) and implies when not to (non-payer or non-expired), but does not explicitly name alternatives like release_escrow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
register_agentAInspect
Register a new AI agent identity on the Tenzro Network. Two modes: (1) provisioner — node provisions a server-side hybrid wallet (FROST Ed25519 + ML-DSA-65 + BLS12-381), returns the classical_public_key + pq_verifying_key_len + bls_verifying_key_len; (2) BYOK — caller supplies public_key (32B Ed25519), pq_public_key (1952B ML-DSA-65), and bls_public_key (48B BLS12-381 G1) hex, registration is self-custodial. Returns agent_id, wallet_address, tenzro_did, registration_fee, and byok flag.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Human-readable agent name | |
| creator | Yes | Hex-encoded creator address (the human/machine address that owns this agent). 20- or 32-byte hex, with or without 0x prefix. | |
| public_key | No | BYOK: optional 32-byte Ed25519 verifying key (hex). If supplied, `pq_public_key` and `bls_public_key` MUST also be supplied. When all three are present, no server-side wallet is provisioned and the agent is registered self-custodially with the caller's keys. When all three are absent, the node provisions a server-side hybrid (FROST Ed25519 + ML-DSA-65 + BLS12-381) wallet. | |
| capabilities | No | Capability short names: 'nlp', 'vision', 'code', 'data', 'blockchain', 'smart_contract', 'api_integration', 'coordination'. Anything else is treated as a Custom capability with that name. Defaults to a single 'general' capability when omitted. | |
| pq_public_key | No | BYOK: optional 1952-byte ML-DSA-65 verifying key (hex). Required iff `public_key` is supplied. | |
| bls_public_key | No | BYOK: optional 48-byte BLS12-381 G1-compressed verifying key (`min_pk` scheme, hex). Required iff `public_key` is supplied. Used for HotStuff-2 vote aggregation if the agent later stakes as a validator. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It correctly discloses the two modes, the conditions for each, and the return values including the 'byok' flag. It states that BYOK mode is self-custodial. It does not cover authorization or error states, but the core behavior is well described.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single coherent paragraph that front-loads purpose, then explains modes, then return values. Every sentence adds information, though it could be slightly more concise. It is well-structured and readable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (two modes, 6 parameters, output schema mentioned), the description is fairly complete. It explains the two modes, key requirements, return fields, and the 'byok' flag. It does not cover error scenarios or performance implications, but overall adequately prepares an agent for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 value by explaining the relationship between parameters (e.g., if public_key supplied, pq_public_key and bls_public_key must also be supplied) and the two modes, which is not fully captured in individual parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool registers a new AI agent identity on the Tenzro Network, with specific verb 'register' and resource 'AI agent identity'. It distinguishes two modes (provisioner and BYOK), but does not explicitly differentiate from sibling registration tools like register_identity or register_provider.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides implicit guidance by explaining the two modes and the conditions for each (supplying keys vs. not). However, it lacks explicit when-to-use vs. alternative registration tools, and no prerequisites or context for decision-making are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
register_agent_templateBInspect
Publish an agent template to the Tenzro Network agent marketplace. Templates define reusable AI agent configurations with system prompts, capabilities, and pricing. Others can discover and deploy your template.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name of the agent template | |
| tags | No | Comma-separated tags for discoverability (e.g. 'coding,rust,debugging') | |
| pricing | No | Pricing model: free, per_execution:<price>, per_token:<price>, subscription:<monthly>, revenue_share:<bps> | |
| version | No | Version string in semver format (default: 1.0.0) | |
| docs_url | No | URL to documentation or repository | |
| creator_did | No | Optional creator DID binding (e.g. 'did:tenzro:human:uuid' or 'did:tenzro:machine:uuid'). If provided, the template is publicly attributed to this identity. | |
| description | Yes | Detailed description of what the agent does | |
| system_prompt | Yes | System prompt / agent instructions | |
| template_type | Yes | Template type: autonomous, tool_agent, orchestrator, specialist, multi_modal, or custom:<value> | |
| creator_wallet | No | Optional hex-encoded payout wallet address for creator revenue. REQUIRED when pricing is not 'free' — paid templates without a payout wallet will be rejected. | |
| creator_address | Yes | Hex-encoded address of the template creator |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It does not disclose side effects (e.g., immediate discoverability, fees, or modification limitations). Key behavioral aspects like required wallet for paid pricing are omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is three sentences, front-loaded with action, and no wasted words. It could include more behavioral info without becoming verbose, but current structure is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite output schema and good parameter descriptions, the tool is complex with 11 parameters and marketplace implications. Description omits prerequisites, return expectations, error handling, and operational context like timing or fees.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 definitional context but does not elaborate on parameters beyond what the schema already provides. No additional semantic value for complex fields like pricing or template_type.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool publishes an agent template to the marketplace. The verb 'Publish' and resource 'agent template' are specific. It distinguishes itself from siblings like list, get, update, and search by focusing on the creation action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when wanting to publish a template but provides no explicit guidance on when not to use or alternatives (e.g., update vs register). Basic context is present but lacks exclusions or comparative advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
register_appAInspect
Register a new application on the Tenzro Network. The master wallet address will sponsor gas for user operations. Returns the app ID and API key.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Application name | |
| master_wallet_address | Yes | Hex-encoded master wallet address that funds user operations |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Mentions sponsor relationship ('master wallet address will sponsor gas for user operations') and return values, but does not disclose side effects, idempotency, or permissions needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose. No redundant or extraneous information. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Simple tool with 2 params and output schema present. Description covers registration, sponsorship, and return values (app ID and API key). Sufficiently complete for its complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description adds no new meaning beyond schema; the sponsor gas mention aligns with the master_wallet_address schema description. No elaboration on the 'name' parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'register' and resource 'new application on the Tenzro Network'. Distinguishes from sibling registration tools (e.g., register_agent, register_agent_template) by specifying 'application'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage (to register an app) but lacks explicit guidance on when to use vs. alternatives or when not to use. No mention of exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
register_complianceAInspect
Register ERC-3643 compliance rules for a token. Defines KYC requirements, holder limits, country restrictions, and balance caps. All transfers of this token will be checked against these rules.
| Name | Required | Description | Default |
|---|---|---|---|
| token_id | Yes | Token ID (hex, 32 bytes) or symbol | |
| max_holders | No | Maximum number of token holders (0 for unlimited) | |
| require_kyc | Yes | Require KYC verification for all holders | |
| min_kyc_tier | Yes | Minimum KYC tier: 0 (unverified), 1 (basic), 2 (enhanced), 3 (full) | |
| allowed_countries | No | Allowed country codes (ISO 3166-1 alpha-2, e.g. ['US', 'GB', 'DE']). Empty array means all allowed. | |
| blocked_countries | No | Blocked country codes | |
| max_balance_per_holder | No | Maximum amount a single address can hold (base units, 0 for unlimited) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses that all transfers will be checked against these rules, but does not mention side effects like overwriting existing rules, permission requirements, or atomicity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: first states purpose, second lists parameters, third describes behavioral effect. No wasted words, front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter tool with full schema coverage and an output schema (not described), the description adequately covers purpose and effect. Lacks mention of update behavior or error conditions, but is sufficient for basic understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 summarizes parameter categories (KYC, limits, restrictions) but adds no new meaning beyond the schema's own field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool registers ERC-3643 compliance rules for a token, specifying what the rules cover (KYC, holder limits, country restrictions, balance caps). It distinguishes from sibling 'check_compliance' by implying registration precedes checking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage before transfers but does not explicitly state when to use or avoid this tool, nor does it reference alternatives like 'check_compliance'. No when-not or alternative guidance provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
register_identityAInspect
Register a human or machine identity on the Tenzro Decentralized Identity Protocol (TDIP). Human identities are self-sovereign; machine identities require a controller DID and receive a delegation scope
| Name | Required | Description | Default |
|---|---|---|---|
| display_name | Yes | Display name for the identity | |
| identity_type | Yes | Identity type: 'human' or 'machine' | |
| controller_did | No | Controller DID (required for machine identities, e.g. did:tenzro:human:uuid) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses that machine identities require a controller DID and receive a delegation scope, but omits critical behavior like whether registration is mutable, idempotent, or requires authorization.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the purpose and efficiently explain the variation between human and machine identities. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate given the presence of an output schema (not shown) for return values, but lacks context on prerequisites, error conditions, or idempotency—common for registration tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 explaining the semantics of identity_type (human vs machine) and the necessity of controller_did for machine identities, plus introduces the concept of delegation scope not in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool registers an identity on TDIP, distinguishes human (self-sovereign) vs machine (requires controller DID and delegation scope), and is distinct from sibling register tools (e.g., register_agent, register_app).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (for human or machine identity registration) and hints at machine identity requirements, but does not explicitly state when not to use or compare with alternatives among many sibling register tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
register_nft_pointerAInspect
Register a cross-VM pointer for an NFT collection. Maps the collection to a contract address on another VM (EVM, SVM, or DAML) enabling cross-VM NFT discoverability.
| Name | Required | Description | Default |
|---|---|---|---|
| vm | Yes | Target VM: 'evm', 'svm', or 'daml' | |
| address | Yes | Contract address on the target VM (hex-encoded) | |
| collection_id | Yes | Collection ID (UUID) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the registration action and the mapping effect, but does not disclose idempotency, reversibility, side effects, or permission requirements. The behavioral disclosure is minimal but not misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the key action, and no superfluous information. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (3 params, all required, with schema documentation and output schema), the description is nearly complete. It covers the high-level purpose and mapping, though it could mention prerequisites (e.g., collection existence) or validation steps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions already present. The description adds no additional parameter 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Register a cross-VM pointer for an NFT collection' using a specific verb and resource. It explains the mapping purpose and cross-VM discoverability, which distinguishes it from sibling tools like 'create_nft_collection' or 'cross_vm_transfer'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied (for enabling cross-VM NFT discoverability), but no explicit when-to-use or when-not-to-use guidance is provided. Alternatives are not named, though the purpose suggests it is distinct from related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
register_providerBInspect
Register as a service provider on the Tenzro Network. Providers earn TNZO by serving AI models (inference), providing TEE enclaves (security), validating blocks, or providing storage.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Provider display name | |
| stake | No | Optional initial stake in wei as a decimal string (1 TNZO = 10^18 wei). Example: '10000000000000000000000' for 10,000 TNZO. Omit or '0' to register without staking. | |
| provider_type | Yes | Provider type: 'validator', 'model_provider', 'tee_provider', or 'storage_provider' | |
| max_concurrent | No | Maximum concurrent requests to handle (default 10) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility. Only minimally covers the registration outcome; missing behavioral traits like side effects (e.g., account creation), potential fees, required permissions, or whether registration is reversible. The description does not address safety or auth needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The first sentence states the purpose, the second adds relevant earning context. Efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema, the description fails to mention what the tool returns (e.g., provider ID) or any typical workflow. It does not cover what happens after registration, leaving an incomplete picture for an important on-boarding tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (all parameters have descriptions). The tool description adds high-level context about provider roles but does not explain parameters beyond what the schema already provides. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Register as a service provider'. It uses a specific verb-resource pair and naturally distinguishes from sibling tools like list_providers or get_provider_stats by focusing on the registration action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. There is no mention of prerequisites (e.g., needing an identity), nor conditions under which registration should be avoided. The description simply states what it does without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
register_webhookAInspect
Register a webhook URL for event notifications. The Tenzro node will POST JSON event payloads to the registered URL when matching events occur. Each POST includes an HMAC-SHA256 signature in the X-Tenzro-Signature header for verification. URL must be https://; secret must be at least 16 characters.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | HTTPS URL to receive webhook POST notifications | |
| secret | Yes | Shared secret for HMAC-SHA256 webhook signature verification (must be at least 16 characters) | |
| addresses | No | Filter by involved addresses (hex, optional) | |
| event_types | No | Event types to subscribe to: 'transfer', 'mint', 'burn', 'stake', 'bridge', 'settlement', 'nft_transfer', 'compliance' |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden. It discloses key behaviors (POST JSON, HMAC signature, constraints) but omits details like idempotency, retries, failure handling, or confirmation of registration. The output schema exists but is not referenced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, no fluff, and front-loaded with the core purpose. Every sentence adds value, making it efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (4 params, output schema exists), the description covers the main purpose and constraints. It could mention the response format or registration confirmation, but the output schema alleviates the need to describe return values. Overall adequate for decision-making.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so each parameter already has a description. The tool description adds context (https requirement, secret length) but largely repeats the schema. It does not add significant new meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: registering a webhook URL for event notifications. It explains the behavior (POST JSON payloads, HMAC signature) and constraints (https URL, secret length). This distinguishes it from sibling tools like delete_webhook or list_webhooks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (to set up webhook notifications) but does not explicitly state when not to use or mention alternatives. It provides constraints but no direct comparison to other webhook-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
release_escrowAInspect
Release escrowed funds to the payee via a signed ReleaseEscrow transaction. Only the original payer can release.
| Name | Required | Description | Default |
|---|---|---|---|
| payer | Yes | Hex-encoded payer address (must match the bearer's wallet — only the payer can release) | |
| escrow_id | Yes | 32-byte escrow ID (hex, with or without 0x prefix) | |
| proof_data_hex | No | Optional hex-encoded proof bytes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It mentions 'via a signed ReleaseEscrow transaction' and 'only the original payer can release', revealing authorization and transaction requirements. However, it does not discuss irreversibility, fees, or gas implications, which are important for a funds release operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the main action, followed by a key constraint. No unnecessary words. Could benefit from a brief note on when to use vs refund, but overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and sibling tools, the description provides minimal but adequate context: what it does and who can use it. However, it lacks details about prerequisites (e.g., wallet connection) or post-conditions, which would be useful for a release operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds no new information beyond the schema descriptions (e.g., 'payer' must match bearer's wallet is already in the schema). The description reinforces the payer constraint but does not enhance understanding of the parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Release escrowed funds to the payee') and the resource ('escrowed funds'), with a specific verb ('Release'). It distinguishes from sibling tools like create_escrow and refund_escrow by focusing on the release action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes the constraint 'Only the original payer can release', which gives some guidance on who can use it. However, it does not explicitly contrast with alternatives like refund_escrow or list_escrows, leaving the agent to infer when to select this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_faucetAInspect
Request testnet TNZO tokens from the faucet (100 TNZO per request, 24-hour cooldown per address)
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Hex-encoded recipient address (with or without 0x prefix) |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | Set when `success = false`. Either a rate-limit notice ("Rate limited. Try again in N seconds.") or a transfer-error message. |
| amount | Yes | Human-readable amount granted, e.g. `"100 TNZO"`. Empty when `success = false`. |
| success | Yes | `true` on grant; `false` if rate-limited or if the transfer failed. |
| tx_hash | Yes | Hex-encoded transaction hash on success; empty string otherwise. |
| recipient | Yes | Hex-encoded recipient address (with `0x` prefix). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the request action, token amount, and cooldown, which are key behavioral traits. However, it does not mention authorization requirements or side effects beyond the cooldown.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the purpose and includes key constraints. Every word is necessary; no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential purpose, amount, and cooldown. Output schema exists to explain return values. It does not mention prerequisites like having a wallet, but for a simple faucet this is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides a full description for the only parameter 'address' (hex-encoded, optional prefix). The tool description adds context that the tokens are testnet, but it does not add extra detail beyond the schema. With 100% schema coverage, baseline is 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Request testnet TNZO tokens from the faucet'), specifies the amount (100 TNZO), and the cooldown (24-hour per address). It uniquely identifies this tool among siblings; no other faucet tool exists.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for obtaining testnet TNZO tokens and includes a cooldown constraint. It does not explicitly state when not to use or alternatives, but no alternatives are present among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_didAInspect
Resolve a DID to its identity information, including display name, type, status, and delegation scope for machine identities
| Name | Required | Description | Default |
|---|---|---|---|
| did | Yes | DID to resolve (e.g. did:tenzro:human:uuid or did:tenzro:machine:controller:uuid) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of behavioral disclosure. It explains what the output includes but does not mention any side effects, permissions, error conditions, or lifecycle constraints. As a read operation, this is adequate but could be more thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. Every part adds value: the verb, resource, and key output fields.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there is an output schema (context signal), the description does not need to detail return values. It lists the included fields, which is sufficient for understanding. Slightly more context about the nature of DIDs could improve completeness, but it is already strong.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already has full coverage (100%) with a clear description for the single parameter 'did', including examples. The tool description adds minimal extra meaning beyond stating that the identity info includes delegation scope for machine identities, which is partially implied by the schema examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Resolve'), the resource ('a DID'), and the output ('identity information, including display name, type, status, and delegation scope for machine identities'). It distinguishes from sibling tools like 'resolve_username' by specifying DID resolution.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (to get identity info for a DID) but does not explicitly state when not to use it or mention alternatives. For example, it could note that 'resolve_username' is for username resolution.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_usernameBInspect
Resolve a username to its DID on the Tenzro Network. Returns the DID associated with the given username.
| Name | Required | Description | Default |
|---|---|---|---|
| username | Yes | Username to resolve to its DID |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description only states action and return value, lacking details on side effects, permissions, network dependencies, or error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise and front-loaded. Two sentences with no wasted words. Every sentence provides value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given simple lookup and existence of output schema, description is adequate but lacks completeness about error cases (e.g., username not found) or network behavior. Could be improved.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter description. Description adds no new parameter semantics beyond what schema already provides; return value is explained but that is not parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'Resolve' and specific resource 'username to its DID'. Distinguishes from sibling tools like resolve_did (which likely does reverse) and set_username, but does not explicitly differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like resolve_did or get_identity. Missing context about prerequisites or scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
revoke_api_keyAInspect
Operator-only. Revoke an API key by its non-secret key_id. Requires X-Tenzro-Admin-Token. Fails with -32004 if the target is an operator_protected key (those cannot be revoked via RPC, by anyone, including an admin — rotate by updating the operator secret and restarting the node).
| Name | Required | Description | Default |
|---|---|---|---|
| key_id | Yes | Non-secret `key_id` (returned by `create_api_key` / `list_api_keys`) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses operator-only access requirement, admin token necessity, failure condition with error code, and alternative action for protected keys. It does not mention side effects like immediate token invalidation, but the given information is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The first sentence delivers core purpose and requirements; the second adds the critical exception case with an alternative action. Exceptionally concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter mutation tool, the description covers purpose, usage restrictions, error conditions, and alternatives. The presence of an output schema reduces the need to describe return values. The description is complete and informative.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a description for `key_id`. The tool description merely echoes the parameter's non-secret nature, adding no substantive 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool revokes an API key using its non-secret `key_id`, and specifies it is operator-only. This distinguishes it from sibling tools like `create_api_key`, `list_api_keys`, and `revoke_my_api_key`.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides explicit when-to-use (operator-only, requires X-Tenzro-Admin-Token) and when-not-to-use (fails with -32004 for operator_protected keys, suggesting an alternative). However, it does not explicitly mention the sibling `revoke_my_api_key` for self-revocation, which would improve guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
revoke_my_api_keyAInspect
Subject-gated. Revoke an API key belonging to the caller's own subject. Requires X-Tenzro-Api-Key. Only subject-class keys are eligible. The error for "no such key" and "not your key" is intentionally the same so ownership cannot be probed.
| Name | Required | Description | Default |
|---|---|---|---|
| key_id | Yes | Non-secret `key_id` (returned by `create_api_key` / `list_api_keys`) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It transparently discloses subject-gating, API key header requirement, key class eligibility, and the intentional identical error message for security reasons, which are important behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences with front-loaded key context ('Subject-gated'). Every sentence adds distinct value: scope, requirement, eligibility, and security behavior. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple operation (1 param, no output schema concerns) the description covers purpose, usage, behavioral traits, and parameter. It could mention irreversibility, but the name and context imply it. Overall sufficiently complete for an agent to decide and invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter 'key_id' is fully described in the schema ('Non-secret key_id returned by create_api_key/list_api_keys'). The description adds no additional semantic value beyond that, so baseline 3 is appropriate given 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description starts with 'Subject-gated. Revoke an API key belonging to the caller's own subject.' This clearly states the action (revoke), resource (API key), and scope (caller's own subject), distinguishing it from the sibling 'revoke_api_key' which likely handles other keys.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies prerequisite 'Requires X-Tenzro-Api-Key' and eligibility 'Only subject-class keys are eligible.' It provides clear context but does not explicitly contrast with the sibling tool or state 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.
revoke_sessionAInspect
Revoke an active wallet session immediately. The session ID becomes invalid and any pending operations under this session are cancelled.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes | Session ID (UUID) to revoke |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description bears full burden. It transparently states that the session ID becomes invalid and pending operations are cancelled, adding context beyond schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, efficient and front-loaded with action and effect. No unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with output schema, description covers the effect sufficiently. Could mention permissions or reversibility but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and description adds no new meaning beyond the schema's 'Session ID (UUID) to revoke'. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Revoke') and resource ('active wallet session'), with immediate effect. It distinguishes from sibling 'authorize_session' by verb and consequence.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage context (revoking a session) but does not specify when not to use or mention alternatives like 'authorize_session'. 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.
rotate_keysAInspect
Rotate the key shares of an MPC wallet. Generates new shares while keeping the same public key and address. Old shares become invalid.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet_id | Yes | Wallet ID (UUID) to rotate keys for |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses key behaviors: mutation, destruction of old shares, preservation of public key/address. However, it does not mention authorization requirements, rate limits, or state dependencies (e.g., wallet must be MPC).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the action and purpose, with zero wasted words. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single parameter, existence of an output schema (not shown but indicated), and the description explaining the core behavior, the description is largely complete. It could mention preconditions (e.g., wallet type must be MPC) for extra clarity, but the tool name and context imply this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 1 parameter (wallet_id) with 100% coverage (description already present). The tool description adds no additional parameter meaning beyond what the schema 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'rotate' and the resource 'key shares of an MPC wallet'. It explains the effect: new shares, same public key/address, old shares invalid. This distinguishes it from sibling tools like create_mpc_wallet or get_key_shares.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when key rotation is needed (e.g., security) but provides no explicit when-to-use or when-not-to-use guidance, nor does it mention alternatives among the many sibling MPC tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_agent_taskBInspect
Run an agentic task loop for an agent. The agent calls an LLM with built-in tools (spawn_agent, delegate_task, collect_results, complete) and executes them iteratively until done or the maximum step limit is reached.
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | Task description for the agentic execution loop | |
| agent_id | Yes | Agent ID that will execute the task | |
| inference_url | No | Optional inference endpoint URL (default: localhost) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals that the tool runs an iterative loop with built-in tools and a maximum step limit, which is useful. However, with no annotations, it fails to disclose side effects (e.g., resource consumption, state changes) or error conditions, leaving significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded, efficient, and contains no wasted words. It clearly conveys the core functionality without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema (per context signals), the description does not explain return values or behavior in edge cases. Key details like concurrency, error handling, and lifecycle are missing, making it insufficient for a complex agent loop tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions, so the baseline is 3. The tool description does not add additional meaning beyond the schema; it merely restates the overall purpose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool runs an agentic task loop for an agent, involving LLM calls with built-in tools until completion or step limit. It is specific about the action and resource. However, it does not differentiate from sibling tools like 'spawn_agent' or 'delegate_task', which are mentioned as part of the loop but 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.
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, limitations, or scenarios where other tools (e.g., 'run_agent_template' or 'spawn_agent') would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_agent_templateAInspect
Run (invoke) a spawned agent template end-to-end. For paid templates, the payer_wallet is charged: the network commission (5%) goes to the treasury and the remainder is paid to the template's creator_wallet. tokens_estimate is used for per-token pricing. Set dry_run=true to simulate without charging fees or dispatching real transactions. Successful non-dry-run invocations are metered (invocation_count + total_revenue) and persisted.
| Name | Required | Description | Default |
|---|---|---|---|
| dry_run | No | If true, simulate execution without dispatching real transactions or charging fees (default false) | |
| agent_id | Yes | UUID of the spawned agent to run (must have been created via spawn_agent_template first) | |
| payer_wallet | No | Hex-encoded payer wallet address. REQUIRED for paid templates — will be charged the network commission (to treasury) and creator payout. | |
| max_iterations | No | Maximum iterations through the template's execution steps (default 1) | |
| tokens_estimate | No | Estimated token usage for per-token pricing. Ignored for free/per_execution/subscription pricing. Default 0. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description covers key behavioral traits: payment flow (commission to treasury, creator payout), dry_run simulation, and metering (invocation_count + total_revenue). It lacks details on authorization, failure handling, or concurrency, but is sufficiently transparent for typical use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences: first states the purpose, second explains payment details, third covers dry_run and metering. It is efficiently front-loaded with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters and an output schema (not shown), the description covers payment, dry_run, and metering. It implicitly requires a prior spawn_agent_template call but does not explicitly list prerequisites. Output schema likely explains return values, so completeness is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, yet the description adds critical context: payer_wallet is required for paid templates, tokens_estimate is for per-token pricing, dry_run avoids fees, and max_iterations has a default of 1. This goes beyond the schema's minimal descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Run (invoke) a spawned agent template end-to-end.' The verb 'run' and resource 'spawned agent template' are specific, and it distinguishes from sibling tools like spawn_agent_template and update_agent_template by implying execution after creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage after spawning an agent template but does not explicitly state when to use this tool versus alternatives like run_agent_task or list_agent_templates. It provides context on dry_run and payment but no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seal_dataAInspect
Seal (encrypt) data within the TEE enclave using hardware-derived keys. The sealed data can only be unsealed on the same TEE platform with the same key_id.
| Name | Required | Description | Default |
|---|---|---|---|
| key_id | Yes | Key ID for sealing (used for key derivation) | |
| data_hex | Yes | Hex-encoded data to seal (encrypt) within the TEE enclave |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It explains the hardware-derived key usage and the platform binding constraint, which are critical for an agent to understand the security model. However, it does not mention output format, potential errors, or permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loads the primary action (seal data), and includes the key constraint. Every word serves a purpose with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description explains the essential behavioral constraint (platform/key binding) and trusts the output schema (present but not shown) to describe return values. For a simple encryption/decryption pair, this is complete enough, though it could mention the output format (sealed blob).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear parameter descriptions. The tool description adds only the TEE enclave context and the binding constraint, which marginally extends the meaning but does not provide new syntax or format details 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool seals (encrypts) data within a TEE enclave using hardware-derived keys, and distinguishes itself from the sibling unseal_data by specifying the constraint that the data can only be unsealed on the same platform with the same key_id.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for encryption but does not explicitly state when to use it versus alternatives like unseal_data or other encryption tools. No 'when not to use' or prerequisite guidance is provided, which is a gap given the security-sensitive nature.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_agent_templatesAInspect
Search agent templates on the Tenzro Network marketplace by query. Matches against template name, description, and tags using case-insensitive substring search.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query to match against template name, description, and tags |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses substring matching behavior but omits details like pagination limits or sorting; no annotations to compensate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two brief, front-loaded sentences with no fluff; each sentence adds distinct value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers core behavior adequately; output schema handles return values, but could mention pagination or sorting for completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, description echoes schema but adds no extra meaning beyond the schema's parameter description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action (search), resource (agent templates), scope (by query, case-insensitive substring), and distinguishes from sibling list_agent_templates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies use when needing to search by query, and sibling list_agent_templates suggests alternative for full listing, but no explicit when-not or alternatives mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
secure_mint_applyAInspect
Atomic check + circulating increment. Use after the invariant check has passed off-chain.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Amount (u128 decimal string) | |
| asset_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It mentions atomicity and circulating increment but does not describe failure modes, side effects, or what happens if the check condition is not met. This is minimal for a state-changing operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences no wasted text. The first sentence summarizes the action, the second provides usage context. Ideal front-loading and efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter tool with an output schema, the description covers purpose, timing, and atomicity. It omits details about failure behavior or the exact nature of the 'check,' but overall is sufficient for a low-complexity tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50% (amount has a description in schema but asset_id does not). The description adds little beyond noting that amount is the increment value, and provides no extra context for asset_id or parameter constraints. Baseline is acceptable but not compensatory.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs an atomic check and circulating increment, and it distinguishes its role from siblings like secure_mint_check and secure_mint_record_burn by indicating it is the final step after off-chain invariant validation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use after the invariant check has passed off-chain,' providing clear timing context. Does not list excluded scenarios or explicitly name the alternative secure_mint_check, but the guidance is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
secure_mint_checkAInspect
Read-only invariant check for a proposed mint. Returns {would_succeed, reserve, circulating, headroom, reason?}.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Amount (u128 decimal string) | |
| asset_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It correctly identifies the tool as 'read-only' and discloses the return fields. No side effects are mentioned, which is consistent with a check operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of one sentence that immediately conveys the tool's purpose and adds detail on the return type. Every element serves a clear function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Considering the tool's complexity (2 required parameters, output schema exists), the description provides a solid overview. It lists the return fields, which somewhat compensates for the lack of explanation of individual parameters. The presence of an output schema reduces the need for extensive description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description does not add any meaning beyond the input schema. The 'amount' parameter has a schema description but 'asset_id' does not. The tool description fails to clarify the purpose of 'asset_id', leaving a gap for a parameter with no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs a read-only invariant check for a proposed mint, specifying the return fields. It effectively distinguishes itself from sibling tools like secure_mint_apply by emphasizing the pre-check nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool should be used before calling secure_mint_apply to check if a mint would succeed. While it does not explicitly list alternatives or exclusions, the context of related tools makes the usage clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
secure_mint_record_burnAInspect
Record a redemption — decrements circulating. Call after the off-chain burn is finalized.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Amount (u128 decimal string) | |
| asset_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the key effect (decrements circulating) but omits details like required permissions, reversibility, or behavior if called incorrectly. It is minimally transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with a dash for clarity. Every word is necessary; no waste. It is appropriately sized and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 2 required params and an output schema, the description is brief. It covers purpose and sequence but lacks parameter details and output description. Acceptable but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides no explanation for either parameter. Schema coverage is only 50% (only 'amount' has a description). The description does not compensate, leaving the agent to infer parameter semantics from names and schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool records a redemption, decrementing circulating supply, and is called after the off-chain burn is finalized. It uses a specific verb and resource, and distinguishes from siblings like 'secure_mint_apply' and 'secure_mint_check' by noting the temporal ordering after burn finalization.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage sequence: call after off-chain burn is finalized. While it doesn't explicitly list when not to use or name alternatives, the sequential context is sufficient for an agent to understand its place among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seed_agent_get_charterAInspect
Fetch a SeedAgent governance charter by 32-byte id. Charter enumerates OperationKind (InferenceConsumer / TaskMarketplaceConsumer / etc.), spend caps, throughput target, counterparty filter, and sunset deadline.
| Name | Required | Description | Default |
|---|---|---|---|
| charter_id | Yes | 32-byte charter id (hex, with or without 0x prefix). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It uses 'Fetch' implying a read-only operation, which is appropriate, but it does not explicitly state that the function is non-destructive or safe to call. Additional context about permissions or side effects would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loading the purpose and then detailing the charter contents. Every word adds value, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has one parameter and an output schema (from context signals), so the description does not need to explain return values. It covers the tool's purpose, required input, and the charter's constituent fields, making it sufficiently complete for a simple fetch operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning the schema already explains the charter_id parameter (a hex string of 32 bytes). The description adds no new meaning beyond the schema, so it meets the baseline but does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Fetch a SeedAgent governance charter by 32-byte id', specifying the resource (charter) and action (fetch). It also lists the charter's fields (OperationKind, spend caps, etc.), distinguishing it from sibling tools like seed_agent_get_earmark or seed_agent_get_network_activity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. Given the large number of sibling tools (e.g., seed_agent_list_charters, seed_agent_get_earmark), explicit when-to-use or when-not-to-use advice would be helpful but is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seed_agent_get_earmarkAInspect
Show the genesis SeedAgent treasury earmark — total TNZO allocation, draw-down to date, decay schedule, seed-agent count, surplus burn bps at sunset. The earmark funds protocol-owned bootstrap agents for the first 12 months.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the tool shows data and mentions the purpose, but does not address authorization requirements, side effects, or limitations (e.g., static data). The read-only nature is clear, but behavioral traits beyond that are minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two substantive sentences. First sentence lists data fields, second explains purpose. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and an existing output schema, the description adequately explains what the tool returns. It could mention that it's a static snapshot or note the absence of inputs, but it is complete enough for a simple getter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so baseline is 4. The description does not need to add parameter meaning. It implicitly communicates that no input is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it shows the genesis SeedAgent treasury earmark with specific components (total TNZO, draw-down, decay schedule, seed-agent count, surplus burn bps). It also explains the purpose (funds bootstrap agents for 12 months). This distinguishes it from sibling tools like seed_agent_list or seed_agent_get_charter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 is provided. The context implies it's a read-only informational tool, but no alternatives or exclusions are mentioned. The description is adequate but lacks usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seed_agent_get_network_activityAInspect
Get network activity counters (inference / settlement / bridge / ERC-7683). exclude_seed=true filters out flows where either side is_seed_agent, isolating organic activity from protocol bootstrap traffic.
| Name | Required | Description | Default |
|---|---|---|---|
| window | No | Time window — '1h', '24h', '7d', or '30d'. Default '24h'. | |
| exclude_seed | No | Skip transactions where either side is a registered seed agent. Default false. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It mentions the effects of the exclude_seed parameter but does not state that the operation is read-only, nor does it cover data freshness, pagination, or rate limits. The behavior is partially transparent but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no fluff. The first sentence states the tool's purpose, and the second explains a key parameter. Information 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 optional parameters, no nested objects, output schema exists), the description is nearly complete. It covers the main purpose and the crucial filtering option. However, it could be slightly more explicit about what 'counters' means (e.g., raw counts or aggregated metrics), but the output schema likely fills that gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions already present. The description adds value by explaining the activity categories and clarifying the effect of exclude_seed, which goes beyond the raw schema. This is a modest addition above the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves network activity counters for four specific categories (inference, settlement, bridge, ERC-7683), and explains the exclude_seed parameter. This is a specific verb+resource and distinguishes it from other seed_agent tools like seed_agent_get_charter or seed_agent_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains what the tool does but does not provide guidance on when to use it over siblings such as seed_agent_list or other network-related tools. Usage context is implied by the tool name and the activity categories, but no explicit when-to-use or when-not-to-use advice is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seed_agent_listAInspect
List provisioned SeedAgent records. Each record carries agent_did, controller_did, status (Active/Paused/Quarantined/Terminated), allocation drawn, and optional bond id. Filter by charter_id to scope to one charter's roster.
| Name | Required | Description | Default |
|---|---|---|---|
| charter_id | No | Optional 32-byte charter id filter (hex). Omit to list every seed agent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but description conveys read-only behavior and lists returned fields, though lacks details on pagination or ordering.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with purpose, no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists, so description need not detail return format; it adequately covers purpose, key fields, and filtering for a simple list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters; description adds context by linking charter_id filter to 'roster', enhancing understanding beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists 'provisioned SeedAgent records', specifies the key fields returned, and mentions filtering by charter_id, distinguishing it from other list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Includes guidance on filtering by charter_id, but does not explicitly state 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.
seed_agent_list_chartersAInspect
List every SeedAgent governance charter registered on this node.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full burden. It clearly states this is a read-only listing operation with no side effects, sufficient for the agent to understand its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no wasted words. Every part is meaningful and earned.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter list tool with an output schema, the description is fully complete: it states the scope and resource without missing any critical information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters (100% schema coverage), and the description adds value by specifying exactly what is listed (governance charters), beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies a clear verb ('List') and resource ('every SeedAgent governance charter registered on this node'), differentiating it from siblings like seed_agent_get_charter (which likely fetches a single charter) and seed_agent_list (which probably lists agents).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as seed_agent_get_charter. The context is only implied by the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
segmentBInspect
Run prompt-driven image segmentation. prompts is an array of {type:'point', x, y, label} (label=1 foreground / 0 background) or {type:'box', x0, y0, x1, y1} objects. Returns one mask per prompt with confidence scores.
| Name | Required | Description | Default |
|---|---|---|---|
| prompts | Yes | Prompts: array of `{type:'point', x, y, label}` or `{type:'box', x0, y0, x1, y1}` objects | |
| model_id | Yes | Registered segmenter id (e.g. 'sam2-base', 'sam2-large', 'edgesam', 'mobilesam') | |
| image_base64 | Yes | Base64-encoded image bytes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It states returns 'one mask per prompt with confidence scores' but lacks details on permissions, side effects, or behavior under edge cases (e.g., invalid prompts, unsupported images). Minimal disclosure beyond basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with core action, then prompt details. Efficient but could be improved with structured bullet points or prerequisites. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists, so returns are covered. However, missing critical context: model must be loaded first, image format expectations, error cases, and how to interpret confidence scores. Given sibling tools for model management, this gap hinders correct usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. Description adds structure details for 'prompts' (point and box objects). For model_id and image_base64, it merely restates schema descriptions. Adds some value but not significant beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool does 'prompt-driven image segmentation' with specific prompt types (point and box). It distinguishes from sibling tools like list_segmentation_models or load_segmentation_model by focusing on the core segmentation action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 load_segmentation_model first. Missing prerequisites (e.g., model must be loaded) or criteria for model_id selection. With multiple segmentation-related siblings, explicit usage context is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
send_agent_messageAInspect
Submit a hybrid-signed (Ed25519 + ML-DSA-65) AgentMessage to a recipient agent's queue. Signing preimage: SHA-256(AgentMessage::signing_data()) — which includes both wallet addresses (resolved from registry, not wire). Both signature legs are required when the router enforces signing (production default); half-signed messages are rejected. Returns message_id, status, timestamp, and signed flag.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Recipient agent_id (same format). Must be registered with the local node's MessageRouter. | |
| from | Yes | Sender agent_id (16-byte hex, as returned by register_agent). Must already be registered with the local node's AgentRuntime. | |
| message | Yes | UTF-8 message body. Becomes AgentMessage.payload. | |
| reply_to | No | Optional message_id of a prior message this is a reply to. Changes the canonical hash, so callers must include it BEFORE signing. | |
| signature | No | Hybrid signing: 64-byte Ed25519 signature (hex) over SHA-256(AgentMessage::signing_data()). Required (with pq_signature) when the router enforces signing. | |
| message_type | No | Optional message type: 'task_request' (default), 'task_response', 'query', 'query_response', 'notification', 'coordination', 'error'. | |
| pq_signature | No | Hybrid signing: 3309-byte ML-DSA-65 signature (hex) over the same hash. Required (with signature) when the router enforces signing. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully discloses behavioral traits: hybrid signing (Ed25519 + ML-DSA-65), the signing preimage components, conditions for acceptance, and the return fields (message_id, status, timestamp, signed flag). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, efficiently conveying the main purpose and key constraints. It could be slightly more concise, but no unnecessary information is included.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (7 parameters, hybrid signing, output schema exists), the description covers essential aspects such as return fields and signing conditions. It does not mention error cases or prerequisites beyond agent registration, but the schema and context signals fill some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 context about signing data structure and requirement but does not elaborate on individual parameters 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool submits a hybrid-signed AgentMessage to a recipient agent's queue, specifying the signing mechanism and necessary conditions. It distinguishes itself from other messaging tools by detailing the hybrid signing requirement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description advises that both signature legs are required when the router enforces signing (production default) and that half-signed messages are rejected. It does not explicitly mention when to use this tool versus alternatives like send_transaction, but the context is clear enough for agents familiar with the system.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
send_transactionAInspect
Send a TNZO transfer transaction on the Tenzro ledger. Two supported paths: (a) ambient OAuth/DPoP — omit signature/public_key/timestamp; the server will look up the wallet bound to the bearer DID and sign; (b) pre-signed — supply signature + public_key + timestamp matching the signed Transaction::hash(). The legacy private_key inline-signing path has been removed.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Hex-encoded recipient address | |
| from | Yes | Hex-encoded sender address | |
| nonce | No | Transaction nonce (default 0) | |
| amount | Yes | Amount in TNZO base units | |
| chain_id | No | Chain ID (default 1337) | |
| gas_limit | No | Gas limit (default 21000) | |
| gas_price | No | Gas price in wei (default 1 Gwei) | |
| signature | No | Either (a) omit all of signature/public_key/timestamp and rely on ambient OAuth/DPoP auth — the server will look up the wallet bound to the bearer DID and sign on its behalf — or (b) supply all three for a pre-signed transaction. | |
| timestamp | No | Transaction timestamp in ms since Unix epoch — MUST match the timestamp used when computing the signed hash (required if pre-signing) | |
| public_key | No | Hex-encoded 32-byte Ed25519 public key (required if pre-signing) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying RPC result envelope verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It explains the two signing mechanisms and that the server can sign on behalf of the bearer DID. However, it does not detail what happens after sending (e.g., broadcast, confirmation, fees) or error conditions like invalid signature. The description adds value but leaves gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, with the first sentence stating the core purpose and the second detailing the two paths. It is front-loaded and efficient, though the second sentence is somewhat long and could be split for easier reading.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (10 parameters, 3 required) and the existence of an output schema, the description adequately covers the two signing paths, defaults, and the removal of the legacy path. It lacks explicit handling of edge cases (e.g., conflicting inputs) but is largely complete for the intended use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, baseline 3. The description adds specific defaults (nonce=0, chain_id=1337, gas_limit=21000, gas_price=1 Gwei) and explains the conditional requirements for signature, timestamp, and public_key based on the signing path. This goes beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool sends a TNZO transfer transaction on the Tenzro ledger. It specifies two distinct signing paths (ambient OAuth/DPoP and pre-signed) and notes the removal of the legacy private_key path, making the purpose unambiguous and distinguishing it 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.
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 each path: omit signature/public_key/timestamp for ambient OAuth, supply all three for pre-signed. However, it does not explicitly compare this tool to sibling tools like sponsor_transaction or stake_tokens, which also involve transfers. The usage context is clear but lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
serve_model_mcpBInspect
Start serving a downloaded model for inference. The model must be downloaded first. Returns the serving endpoint URL and configuration.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Model ID to start serving (must be downloaded first) | |
| max_concurrent | No | Optional maximum number of concurrent inference requests |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It only states the prerequisite and that it returns an endpoint URL and configuration. It does not mention side effects like resource consumption, concurrency limits (despite max_concurrent parameter), or error conditions. Minimal 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two sentences) and front-loaded with the action. Every sentence earns its place, though it could potentially be more informative without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (mentioned in context) and the brief description, it covers the essential action, prerequisite, and return type. However, it lacks error conditions, guidance on concurrent usage, and differentiation from other model management tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 meaning beyond the schema; it merely restates 'Model ID to start serving (must be downloaded first)' and does not mention max_concurrent at all. No added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Start serving a downloaded model for inference' with a specific verb and resource. It distinguishes from siblings like download_model and stop_model.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a prerequisite 'The model must be downloaded first,' but provides no guidance on when to use this tool versus alternatives or when not to use it. No exclusions or context about conflicting states.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_delegation_scopeBInspect
Set the delegation scope for a machine identity, defining spending limits, allowed operations, payment protocols, and chains the agent may use
| Name | Required | Description | Default |
|---|---|---|---|
| machine_did | Yes | Machine DID to set delegation scope for | |
| allowed_chains | No | Allowed chains (e.g. ['tenzro', 'base', 'ethereum']) | |
| max_daily_spend | No | Maximum daily spend across all transactions | |
| allowed_operations | No | Allowed operations (e.g. ['InferenceRequest', 'Transfer', 'Stake']) | |
| max_transaction_value | No | Maximum transaction value (in smallest unit, e.g. 10000000 = $10 USDC) | |
| allowed_payment_protocols | No | Allowed payment protocols (e.g. ['mpp', 'x402', 'native']) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It implies mutation but does not explain consequences (e.g., whether previous scope is overridden, if ongoing operations are affected, or authorization requirements).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. Every part contributes to defining the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need not be explained. However, the description omits the required parameter (machine_did) and does not provide context on when delegation scope should be set or how it interacts with other delegation tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 no additional meaning beyond listing parameter categories; it does not explain formats or units that are already in the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool sets delegation scope for a machine identity and enumerates the categories (spending limits, operations, protocols, chains). It distinguishes from siblings like set_spending_limits by covering broader scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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., set_spending_limits). The description does not mention prerequisites or context such as requiring an existing machine identity or authorization.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_provider_pricingAInspect
Set the per-token pricing configuration for a provider node. Prices are wei per token (1 TNZO = 10^18 wei). Returns the updated pricing config.
| Name | Required | Description | Default |
|---|---|---|---|
| provider_address | Yes | Hex-encoded provider address | |
| input_price_per_token_wei | Yes | Wei per input token (decimal string; 1 TNZO = 10^18 wei) | |
| output_price_per_token_wei | Yes | Wei per output token (decimal string; 1 TNZO = 10^18 wei) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full weight. It states the return value (updated config) but does not disclose side effects (state mutation), permission requirements, or failure modes. This is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core purpose, no wasted words. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers purpose, parameters, and return value. It is complete for a setter, though it could mention whether prices can be zero or if the operation overwrites existing config. Output schema exists but is not shown here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 reinforces the unit (wei) and provides the TNZO conversion, adding value beyond the schema but not significantly more.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Set', the resource 'per-token pricing configuration for a provider node', and specifies the units (wei per token). It distinguishes itself from siblings like get_provider_pricing and set_provider_schedule.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context for use (setting pricing for a provider) but lacks explicit guidance on when not to use it or alternatives. It does not mention prerequisites like an existing provider node.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_provider_scheduleAInspect
Set the availability schedule for a provider node. Define which hours and days the node will accept new inference requests. Returns the updated schedule.
| Name | Required | Description | Default |
|---|---|---|---|
| schedule | Yes | Availability schedule as JSON (e.g. {"timezone": "UTC", "hours": "0-23", "days": "mon-sun"}) | |
| provider_address | Yes | Hex-encoded provider address |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description alone must disclose behavioral traits. It states it sets and returns the updated schedule, but does not clarify if the operation is destructive (overwrites existing schedule), if authorization is needed, or if it affects active tasks. Basic mutation transparency is present, but significant gaps remain.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the core action, and contains no extraneous information. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given two straightforward parameters and an output schema that likely includes the updated schedule, the description provides sufficient context for a setter tool. It could mention validation or error conditions, but overall it is complete enough for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters. The description adds 'Define which hours and days' which aligns with the schedule parameter's schema description. However, it does not provide additional context beyond what the schema already conveys, resulting in a baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool sets the availability schedule for a provider node, specifying hours and days for accepting inference requests. It distinguishes from siblings like get_provider_schedule by using the verb 'Set' and specifying the resource (availability schedule).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for defining availability but does not explicitly state when to use this tool over alternatives, such as set_provider_pricing, or any prerequisites like provider registration. No exclusion criteria or context on 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.
set_secure_mint_policyAInspect
Set or update a Secure-Mint policy for a tokenized real-world asset. Enforces per-token 1:1 reserve attestation circulating + amount ≤ reserve at every mint.
| Name | Required | Description | Default |
|---|---|---|---|
| reserve | Yes | Reserve (u128 decimal string) | |
| asset_id | Yes | ||
| ttl_secs | Yes | ||
| attested_at | Yes | ||
| circulating | No | ||
| por_feed_id | Yes | ||
| attester_did | Yes | ||
| attestation_hash | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description carries full burden. It discloses the invariant 'circulating + amount ≤ reserve' and that it's enforced at mint, but lacks details on side effects, permissions, idempotency, or update behavior for a mutation tool with 8 parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two succinct sentences: first states action, second adds key constraint. No filler. Front-loaded with purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 parameters and no annotations, the description is incomplete. It lacks context on what a Secure-Mint policy is, prerequisites (e.g., token creation), or side effects. However, the presence of an output schema reduces burden for return values, and the invariant is a critical detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 13%, yet the description barely adds meaning to parameters. It mentions 'reserve' and implies 'circulating' but does not explain the other 6 parameters (e.g., por_feed_id, attester_did, attestation_hash). Fails to compensate for low schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Set or update' and resource 'Secure-Mint policy for a tokenized real-world asset'. It also mentions the invariant enforced, distinguishing it from sibling tools like get_secure_mint_policy (read) and clear_secure_mint_policy (delete).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied but not explicitly stated. The description does not provide when-to-use guidance compared to alternatives like 'get_secure_mint_policy' or 'secure_mint_apply'. No exclusions or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_spending_limitsAInspect
Set spending limits for a wallet. Defines the maximum daily spend and per-transaction limit in TNZO. Transactions exceeding these limits will be rejected.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet_id | Yes | Wallet ID (UUID) | |
| daily_limit | Yes | Maximum daily spend in TNZO (e.g. 1000.0) | |
| per_tx_limit | Yes | Maximum per-transaction amount in TNZO (e.g. 100.0) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses the key behavioral property that transactions exceeding limits will be rejected, which is useful. However, it lacks details about whether limits are overwritten, if the change is instantaneous, any authorization requirements, or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at three sentences, front-loaded with the primary action. Every sentence adds value: first states core function, second details limit types and currency, third explains behavioral consequence. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple setter tool, the description covers the essential aspects: what it sets, the limits, and the effect on transactions. The presence of an output schema (not shown but indicated) reduces the need to document return values. However, it misses context like error conditions or authorization requirements.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for each parameter (wallet_id, daily_limit, per_tx_limit). The description adds minimal additional meaning beyond the schema, such as noting limits are in TNZO and the rejection effect. While helpful, the schema already provides the necessary semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'set', the resource 'spending limits for a wallet', and specifies the limits are daily and per-transaction in TNZO. It also explains the behavioral effect that transactions exceeding these limits will be rejected, which distinguishes it from the sibling tool 'get_spending_limits'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, nor does it mention prerequisites (e.g., wallet must exist, user permissions) or contexts where it should not be used. There is no explicit usage context beyond the basic purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
settle_paymentBInspect
Execute an immediate settlement between two addresses on the Tenzro Network. Transfers TNZO from payer to payee for a specific service type. Returns the settlement receipt.
| Name | Required | Description | Default |
|---|---|---|---|
| payee | Yes | Hex-encoded payee address | |
| payer | Yes | Hex-encoded payer address | |
| amount_wei | Yes | Amount in wei as a decimal string (1 TNZO = 10^18 wei). Example: '1500000000000000000' for 1.5 TNZO. | |
| reference_id | No | Optional reference ID for this settlement | |
| service_type | Yes | Service type: 'inference', 'tee', 'storage', 'general' |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Only states 'immediate settlement' and 'returns receipt'. Lacks disclosure on reversibility, fees, error handling, or side effects like on-chain confirmation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, no filler, clearly structured with action, transfer details, and output mention.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers main purpose and output but lacks details on prerequisites, failure modes, or integration with other tools. Could be more comprehensive for a payment tool with 5 parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all 5 parameters with descriptions (100% coverage). Description adds context about 'between two addresses', 'service type', and receipt, but doesn't significantly enhance understanding beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it executes an immediate settlement, transfers TNZO, and returns a receipt. It distinguishes from other payment tools like 'open_payment_channel' by specifying 'immediate', though it doesn't explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like channel-based payments. Does not explain prerequisites (e.g., balance, approvals) 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.
set_usernameBInspect
Set a globally unique username for a DID on the Tenzro Network. Usernames provide human-readable aliases for DIDs (e.g. 'alice' instead of 'did:tenzro:human:uuid').
| Name | Required | Description | Default |
|---|---|---|---|
| did | Yes | DID to associate the username with (e.g. did:tenzro:human:uuid) | |
| username | Yes | Globally unique username to register (alphanumeric, underscores, hyphens) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. It does not mention idempotency, what happens if username is already taken, authorization requirements, or any side effects. This is a critical gap 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no extraneous information, directly stating the action and benefit. Efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema, the description lacks completeness for a mutation tool: no mention of return values, error scenarios, or behavior when username conflicts occur. The simplicity of the tool partially compensates, but the missing behavioral transparency is a significant gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 (e.g., 'globally unique', example), so a baseline of 3 is appropriate. No further parameter guidance is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Set') and resource ('globally unique username for a DID') and provides a clear purpose with an example, distinguishing it from siblings like 'resolve_username' which reads usernames.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not specify when to use this tool versus alternatives like 'register_identity', nor does it mention prerequisites (e.g., DID must exist) or conditions like username availability. The agent receives no guidance on 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.
sign_messageAInspect
Sign a message with a private key. Returns the hex-encoded signature. Supports Ed25519 and Secp256k1 key types.
| Name | Required | Description | Default |
|---|---|---|---|
| key_type | No | Key type: 'ed25519' (default) or 'secp256k1' | |
| message_hex | Yes | Hex-encoded message bytes to sign | |
| private_key | Yes | Hex-encoded private key (with or without 0x prefix) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral traits. It mentions the return format and supported key types but lacks details on side effects, authorization needs, error conditions, or security considerations (e.g., how the private key is handled). This is a significant gap for a tool dealing with private keys.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the core purpose and output format. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (3 params, 2 required, output schema present) and 100% schema coverage, the description covers the core aspects. However, it omits usage guidelines and behavioral context for security, which would be helpful for a tool handling private keys.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 does not add significant meaning beyond the schema; it mentions key types and default, which are already in the schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Sign a message'), the resource ('private key'), and the output ('hex-encoded signature'). It also specifies supported key types (Ed25519 and Secp256k1), distinguishing it from siblings like 'verify_signature'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (when signing is needed) and supports key types, but it does not explicitly state when to use this tool over alternatives such as 'verify_signature' or other signing tools. No when-not or preferred context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sla_get_paramsAInspect
Read the SLA fault-detector parameters this validator is using: slash_threshold (number of missed probes before slashing fires for a provider), slash_amount_wei (per-crossing slash amount in wei, decimal string), and this validator's vrf_pubkey (0x-prefixed hex).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It states 'Read', indicating no side effects. It could be more explicit about being read-only, but the description is sufficient for understanding the tool's safe nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with backtick formatting for parameter names. No extraneous words, efficiently conveys the tool's purpose and output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Even though an output schema exists, the description usefully enumerates output fields. It lacks clarity on 'this validator' scope but is otherwise complete for a simple read operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has no parameters (0 parameters, 100% coverage). Description adds value by listing output fields with explanations. Baseline for 0 params is 4, and the description meets this by clarifying what the tool returns.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it reads SLA fault-detector parameters, listing the exact fields (slash_threshold, slash_amount_wei, vrf_pubkey). It is distinct from sibling tools like sla_issue_probe and sla_list_outstanding_probes, which deal with probe operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for checking current SLA configuration. While it doesn't explicitly exclude alternatives, the context of sibling tools (probe-related) makes the purpose clear. No when-not-to guidance is provided, but for a simple read, this is adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sla_issue_probeAInspect
Issue a VRF-bound SLA liveness probe to a ModelProvider / TeeProvider DID and broadcast it on the tenzro/sla gossipsub topic. Validator-only — on a non-validator node this returns -32000 SlaManager not initialized. The probe is addressed by a 32-byte VRF output (challenge_nonce). deadline_ms is a Unix-millisecond timestamp; if the provider does not respond before this deadline the probe is counted as missed against the fault-detector's slash threshold.
| Name | Required | Description | Default |
|---|---|---|---|
| epoch | Yes | Validator epoch the probe is issued in | |
| round | Yes | Probe round within the epoch | |
| deadline_ms | Yes | Unix-millisecond deadline by which the provider must respond before the probe is considered missed | |
| provider_did | Yes | DID of the ModelProvider / TeeProvider being probed |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It explains the broadcast, the error condition for non-validators, the role of deadline_ms, and the consequence of missed probes (slashing). This provides sufficient 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each serving a clear purpose: defining the action, stating a prerequisite, and explaining a key parameter. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of SLA liveness probes and the presence of an output schema (not provided but acknowledged), the description covers the essential aspects: purpose, condition, and consequence of missed probes. It could mention the return value or asynchronous nature, but the core is covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters have schema descriptions (100% coverage). The tool description adds no new information about the parameters beyond explaining deadline_ms as a Unix-millisecond timestamp, which is already present. Mention of a non-existent 'challenge_nonce' parameter may cause minor confusion.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it issues a VRF-bound SLA liveness probe to a ModelProvider/TeeProvider DID and broadcasts it on a gossipsub topic. The action, target, and mechanism are specific, distinguishing it 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies the tool is validator-only and explains when it is appropriate to use (validators issuing probes). It does not explicitly compare to alternative tools, but the constraint is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sla_list_outstanding_probesBInspect
List every in-flight SLA probe awaiting a response, regardless of issuer. Returns {count, probes: [...]} with challenge_nonce, provider_did, epoch, round, deadline_ms, and issuer for each probe. Used by operators to spot stuck probes whose deadline has already elapsed without a matching response.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must cover behavior. It states the tool lists all in-flight probes (read-only implication), returns specified fields, and is used to identify stuck probes. It does not mention authentication, rate limits, or side effects, but provides essential 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences: the first clearly states the action and return format, the second explains the use case. It is front-loaded, concise, and has no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (0 parameters, return structure described), the description sufficiently explains the tool's purpose and application context (spotting stuck probes). It does not mention ordering or pagination, but for a zero-param tool, it is adequately complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is empty (0 parameters) and schema description coverage is 100%. No parameter information is needed, so the description adds no additional value 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists in-flight SLA probes awaiting response, specifying verb (list), resource (SLA probes), and scope (regardless of issuer). It does not explicitly differentiate from sibling tools like sla_get_params or sla_issue_probe, but the purpose is distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It mentions usage by operators to spot stuck probes, but lacks explicit guidance on when to use this tool vs alternatives, when not to use it, or any prerequisites. No exclusions or selection criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
spawn_agentAInspect
Spawn a child agent under a parent agent on the Tenzro Network. The child inherits the parent's controller DID and can be delegated tasks. Maximum 50 children per parent agent.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name for the new child agent | |
| parent_id | Yes | Parent agent ID (UUID) | |
| capabilities | No | Agent capability strings (e.g. nlp, vision, code) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses key behaviors (inheritance of controller DID, delegatable tasks, limit of 50 children), but lacks information on authorization, idempotency, or failure modes. The presence of an output schema (according to context) reduces the need to describe return values.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. It front-loads the purpose in the first sentence and adds a critical constraint in the second. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of spawning an agent and the lack of annotations, the description is somewhat incomplete. It omits prerequisites (e.g., parent must exist), error handling, and whether the operation is synchronous. However, the output schema likely covers return values, so the description covers the essential semantics of the action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 context that the child inherits the parent's controller DID, which relates to the 'parent_id' parameter, but does not significantly enhance understanding of other parameters beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Spawn a child agent under a parent agent' and the network 'Tenzro Network'. It includes specific details like inheriting the parent's controller DID and a maximum of 50 children per parent, which distinguishes it from generic tool names like 'register_agent'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context for when to use (to create a child agent) and a constraint (max 50 children), but it does not explicitly state when not to use or compare with similar siblings like 'spawn_agent_from_template'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
spawn_agent_from_templateCInspect
Spawn an agent from a marketplace template on the Tenzro Network. Creates a new agent instance with its own identity, wallet, and capabilities based on the template definition.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Display name for the spawned agent | |
| template_id | Yes | Agent template ID to spawn from | |
| parent_machine_did | No | Optional parent machine DID. When set, the spawned agent's delegation scope is the strict intersection of the parent's scope and the template's spec — the child can never be broader than its parent on any axis. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool creates a new agent (a mutation), but does not mention side effects, cost, reversibility, or required permissions. The description is insufficiently transparent for a creation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences, each providing essential information. No fluff, but could be restructured to front-load the most critical detail (spawning from template) which it does.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (per context signals) and comprehensive input schema, the description covers the core functionality. However, it lacks details on the creation process, such as whether the agent is immediately active or requires further steps, making it minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear parameter descriptions. The tool description adds no additional meaning beyond what the schema already provides, 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool spawns an agent from a marketplace template, specifying the creation of identity, wallet, and capabilities. It implicitly distinguishes from sibling 'spawn_agent' by specifying the template source, but does not explicitly compare.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'spawn_agent' or 'register_agent_template'. There is no mention of prerequisites, such as needing a registered template or permissions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sponsor_transactionAInspect
Sponsor a transaction using the master/paymaster wallet. The gas cost is paid by the master address while the transaction is sent on behalf of the user. Uses ERC-4337 account abstraction.
| Name | Required | Description | Default |
|---|---|---|---|
| user_tx | Yes | User transaction object to sponsor. Must include `gas_limit` and `gas_price` (and any other tx fields). The master pays gas_limit * gas_price out of its TNZO balance. | |
| master_address | Yes | Hex-encoded master/paymaster address that sponsors the gas |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that gas costs are paid by the master address and that the transaction is sent on behalf of the user, but omits details on failure modes, balance requirements, or return values.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the key action, no wasted words. Efficient and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of sponsoring a transaction via ERC-4337, the description is brief. While an output schema exists, the description does not cover prerequisites like master address balance or user_tx validity. Adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 minimal extra meaning beyond the schema, as it restates that the master pays gas. The parameters are well-described in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'sponsor' and the resource 'transaction', and explains the mechanism involving a master/paymaster wallet and ERC-4337 account abstraction. This distinguishes it from other transaction-related tools in the sibling list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'send_transaction' or other transaction tools. The description does not mention prerequisites or use cases, 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.
stake_tokensAInspect
Stake TNZO tokens to participate as a validator, model provider, TEE provider, or storage provider. Staked tokens earn rewards and increase network weight.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Amount to stake in wei as a decimal string (1 TNZO = 10^18 wei). Example: '1000000000000000000000' for 1000 TNZO. | |
| provider_type | Yes | Provider type to stake for: 'validator', 'model_provider', 'tee_provider', or 'storage_provider' |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It mentions rewards and network weight, but omits details like reversibility (unstaking), lock-up periods, or potential slashing. Adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that efficiently convey purpose, beneficiaries, and outcome. No extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given parameter richness and presence of output schema, the description covers essential information. Could mention rewards mechanics or unlocking, but overall sufficient for agent decision.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already provides thorough descriptions for both parameters (amount format and provider type enumeration). Description adds context about purpose but no new semantic detail beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb+resource combination: 'Stake tokens to participate' identifies the action and target. Lists four specific provider types, distinguishing from sibling 'unstake_tokens'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states the contexts for staking (validator, model provider, etc.), but does not mention when not to use or what prerequisites are needed (e.g., prior registration as provider).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
stop_modelAInspect
Stop serving a model on this node. The model remains downloaded but no longer accepts inference requests. Returns the stop confirmation.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Model ID to stop serving |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that the model remains downloaded, stops accepting requests, and returns a confirmation. Lacks details on whether ongoing requests are drained or cancelled, but covers the key behavioral outcomes. No annotations provided, so description carries full burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with action. No unnecessary words. Efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and an output schema, the description covers the essential behavior (stop, no delete, return confirmation). Sufficient for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Description adds no extra meaning beyond the input schema for the single required parameter 'model_id', which is already described as 'Model ID to stop serving'. With 100% schema coverage, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'stop' and resource 'model', specifying that it stops inference requests but keeps the model downloaded. This distinguishes it from siblings like unload_*_model or delete_model_mcp.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this versus alternatives (e.g., unload_*_model). No mention of prerequisites like the model must be currently serving. Implied by context but insufficient for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_daml_commandBInspect
Submit a DAML command to a Canton domain. Supports create, exercise, and create_and_exercise commands. Returns the transaction ID and updated contract state.
| Name | Required | Description | Default |
|---|---|---|---|
| party | Yes | DAML party identifier (submitting party) | |
| choice | No | Choice name for exercise commands | |
| arguments | Yes | JSON-encoded arguments for the command | |
| domain_id | Yes | Canton domain ID to submit the command to | |
| contract_id | No | Contract ID for exercise commands | |
| template_id | Yes | DAML template identifier (e.g. 'MyModule:MyTemplate') | |
| command_type | Yes | DAML command type: 'create', 'exercise', 'create_and_exercise' |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral traits. It states the tool submits commands (implying mutation) and returns results, but fails to disclose side effects, authorization requirements, error conditions, or idempotency. For a write operation, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no extraneous words. Front-loaded with the action and then specifics. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema is present (not shown), so return values are documented. The description covers key aspects but lacks setup context (e.g., need active domain and party). For a parameter-heavy tool with 7 fields, more context on parameter relationships would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds marginal value. It mentions command types and arguments but does not detail the required format for 'arguments' (JSON-encoded) or the role of 'contract_id' vs 'choice'. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool submits DAML commands with specific types (create, exercise, create_and_exercise) to a Canton domain and returns transaction ID and contract state. It distinguishes from siblings like 'list_daml_contracts' or 'list_canton_domains' which are query-only.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. While siblings include query tools, the description does not mention prerequisites (e.g., a contract must exist for exercise commands) or when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_reserve_attestationBInspect
Record a signed Proof-of-Reserve attestation backing a tokenized asset, so attested-mint can enforce 1:1 backing. Mirrors tenzro_submitReserveAttestation.
| Name | Required | Description | Default |
|---|---|---|---|
| attestation | Yes | ReserveAttestation: {asset_id, reserves, source(issuer|tee|chainlink_por|oracle), attestor_did, attested_at, signature?} |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It indicates a write operation ('Record') but does not mention any side effects, permissions, idempotency, error conditions, or whether the attestation is verified. The description only conveys purpose, not behavior beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the primary purpose, and includes a concise external reference. It is efficient with no redundant content. However, it could be slightly improved by structuring usage notes separately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, output schema exists), the description is adequate for basic understanding. However, it lacks context about input validation, handling of invalid attestations, or whether previous attestations are overwritten. This makes it less complete for a tool involved in critical financial backing workflows.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the attestation parameter's description listing subfields. The tool description adds the external reference but no additional semantic meaning beyond what the schema already provides. The baseline of 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Record' and the resource 'signed Proof-of-Reserve attestation'. It explains the purpose: backing a tokenized asset so attested-mint can enforce 1:1 backing. It distinguishes from siblings like 'attested_mint' and 'get_reserve' by specifying the recording action and provides an external reference (tenzro_submitReserveAttestation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a signed attestation is available, but it does not explicitly state when to use this tool or when not to use it. No alternatives or exclusions are mentioned, and there is no guidance on prerequisites or required prior steps (e.g., verifying the attestation before submission).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
subscribe_eventsAInspect
Register an event filter for real-time streaming via WebSocket or gRPC. Returns a subscription ID and connection URLs for receiving matching events. Events matching the filter will be pushed to connected clients.
| Name | Required | Description | Default |
|---|---|---|---|
| addresses | No | Filter by involved addresses (hex, optional) | |
| event_types | No | Event types to subscribe to: 'transfer', 'mint', 'burn', 'stake', 'bridge', 'settlement', 'nft_transfer', 'compliance' |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility. It discloses that it returns a subscription ID and connection URLs and that events are pushed, but omits critical behavior like authentication, rate limits, subscription lifetime, or how to unsubscribe. This is adequate but has clear gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, concise and front-loaded with the core purpose. Every sentence adds value: first states the action and protocol, second states return value. No extraneous text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has an output schema (not shown but indicated), so return values are covered elsewhere. However, for a subscription setup, the description misses key operational details like how clients use the connection URLs, subscription management (renewal, cancellation), and scalability considerations. Adequate but not comprehensive given the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents both parameters ('addresses' and 'event_types') with descriptions. The tool description adds no additional parameter information beyond what the schema provides, meeting the baseline expectation without enhancement.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Register an event filter for real-time streaming via WebSocket or gRPC,' identifying the specific verb and resource. It distinguishes from siblings like 'get_events' which likely handles historical data, and mentions the streaming nature explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for real-time event monitoring but does not explicitly contrast with alternatives such as 'get_events' or other subscription tools. It lacks when-not-to-use guidance or direct comparison, 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.
terminate_agentAInspect
Terminate an agent (TERMINAL — irreversible). Halts messaging, optionally slashes stake (slash_bps 0-10000), and optionally cascades to all descendant spawned agents. Requires controller_did to match. NOTE: this MCP tool describes the operation only — the transaction must be signed and submitted via tenzro_signAndSendTransaction with type=TerminateAgent.
| Name | Required | Description | Default |
|---|---|---|---|
| reason | Yes | Free-text reason recorded on the kill-switch receipt | |
| cascade | No | If true, recursively terminate all descendant agents in the spawn tree | |
| agent_did | Yes | DID of the agent to terminate (terminal state, optionally cascades to spawned children) | |
| slash_bps | No | Slash basis points 0-10000 (10000 = 100%). Default 0. | |
| evidence_hash | No | Optional 32-byte evidence hash (hex-encoded, with or without 0x prefix) | |
| controller_did | Yes | DID of the controller authorizing the termination |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that the action is terminal and irreversible, halts messaging, and optionally slashes stake or cascades. These are key behavioral traits not fully captured by schema or annotations (none provided). Adequate transparency for a destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a note, front-loading 'Terminal - irreversible'. Note about signing is important but could be clearer about whether the tool executes or only describes. Efficient overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the operation's complexity (6 params, irreversible, output schema exists), the description covers key aspects: irreversibility, effects, cascade, controller requirement, signing step. Missing details about return value but output schema handles that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents parameters. Description adds high-level context (e.g., cascade and slash_bps ranges) but does not significantly extend meaning beyond 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.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'Terminate' and resource 'agent', with key effects: halts messaging, optional slash and cascade. Distinguishes from similar tools like pause_agent (likely reversible) and spawn_agent, but does not explicitly differentiate from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides critical usage requirements: controller_did must match, and transaction must be signed and submitted via another tool. However, no guidance on when to use this versus alternatives (e.g., pause_agent, terminate_swarm), 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.
terminate_swarmBInspect
Terminate a Tenzro agent swarm and all its member agents. Attempts graceful shutdown of each member. Returns confirmation with swarm ID and terminated status.
| Name | Required | Description | Default |
|---|---|---|---|
| swarm_id | Yes | Swarm ID to terminate |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behaviors. It mentions graceful shutdown attempt and return info but omits irreversibility, permission requirements, or failure handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, 23 words, no fluff. Front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Sufficient for a simple tool with one parameter and an output schema; covers purpose and basic return info, but could mention idempotency or error states.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear parameter description; the tool description adds no extra 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.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool terminates a Tenzro agent swarm and its members, distinguishing it from sibling tools like terminate_agent (single agent) and create_swarm.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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; only states what it does without context or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
text_embedAInspect
Embed a batch of strings with a registered text encoder. Returns one row per input. Optional requested_dim enables Matryoshka truncation (e.g. 128/256/512 from a native 768/1024-dim model).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | Yes | Strings to embed. Non-empty. | |
| model_id | Yes | Registered text-embedding model id (e.g. 'qwen3-embedding-0.6b', 'embeddinggemma-300m', 'bge-m3') | |
| normalize | No | L2-normalize each row before returning (default false) | |
| requested_dim | No | Matryoshka truncation target dimension (e.g. 128/256/512). If omitted, returns the model-native dim. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It adds value by noting 'Returns one row per input' and explaining truncation, but does not disclose other behaviors like idempotency, error handling, or performance implications for large batches. The truncation detail is a positive addition beyond a basic description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two clear sentences with no waste. The description is concise, front-loads the core action, and efficiently adds key detail (return shape, truncation) without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema exists, so return values are covered. The description explains inputs, output, and optional truncation adequately for a basic embedding tool. Missing minor details like batch size limits or cost implications, but these are not critical for typical usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 context: 'registered text encoder' for model_id, 'one row per input' for return shape, and explicit truncation examples for requested_dim. This improves understanding beyond the schema, though it doesn't explain normalize or model registration requirements.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it embeds strings with a registered text encoder, returns one row per input, and specifies the optional Matryoshka truncation. This distinguishes it from sibling tools like chat_completion (text generation) or video_embed (video modality) by explicitly mentioning text and encoding.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for text embedding but does not provide explicit guidance on when to use this tool versus alternatives. No when-not-to-use or exclusions are mentioned, leaving the agent to infer context from the purpose alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
text_segmentAInspect
Run open-vocabulary text-promptable segmentation. Provide a free-text label (e.g. 'person', 'dog') and an image; optionally narrow with a normalized cxcywh box. Returns a variable number of detections, each with a bbox (x0,y0,x1,y1 pixels), score, and binary mask resampled to original image dimensions.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered SAM-3 family segmenter id (e.g. 'sam3-vit-h') | |
| box_prompt | No | Optional normalized cxcywh box prompt {cx, cy, w, h} in [0,1] | |
| text_prompt | Yes | Free-text label to segment (e.g. 'person', 'sofa', 'dog') | |
| image_base64 | Yes | Base64-encoded image bytes | |
| score_threshold | No | Score threshold in [0, 1]; detections below are dropped (default 0.5) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses output structure (variable detections, bbox, score, binary mask resampled to original dimensions) but omits potential side effects, constraints (e.g., image size limits), or performance details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core action, no extraneous words, efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers inputs (text, image, optional box) and outputs (detections with bbox, score, mask). It lacks explicit mention of model_id parameter usage but overall is sufficiently complete for a tool with a rich output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 context for text_prompt (examples) and box_prompt (optional, normalized), but does not explain model_id or score_threshold beyond schema, adding marginal value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'open-vocabulary text-promptable segmentation', specifying the verb (run), resource (segmentation), and key differentiator (text-promptable). It distinguishes from sibling 'segment' which likely is not text-promptable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains what to provide (free-text label and image, optional box) but does not specify when to use this tool versus alternatives or when not to use it, leaving usage context implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
token_balanceBInspect
Get the TNZO token balance for an address. Returns the balance in wei (1 TNZO = 10^18 wei) as a decimal string.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Hex-encoded address to query TNZO balance for |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the return format (balance in wei as decimal string), which is helpful. However, since no annotations are provided, the description does not confirm read-only behavior or other side effects, leaving some uncertainty.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no unnecessary information. The description is appropriately sized and front-loads the purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple balance query with one parameter and an output schema, the description is adequate. It includes the token name, unit conversion, and return format. Minor omission: does not specify case sensitivity or checksum requirements for the address.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter. The description does not add new meaning beyond what the schema already provides, so it meets the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets the TNZO token balance for an address, specifying the unit (wei) and return format (decimal string). However, it does not explicitly differentiate from similar siblings like get_token_balance or get_balance, which could cause ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 get_token_balance or get_balance. The description lacks context about appropriate scenarios or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
total_supplyAInspect
Get the total TNZO token supply in wei (1 TNZO = 10^18 wei). Useful for inflation monitoring and economic analysis.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden. It discloses the return unit and conversion, implying read-only. However, it does not mention potential delays, authentication needs, or data freshness, which would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with action and format, followed by use case. No filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given low complexity and presence of output schema, the description sufficiently covers purpose and usage. It could note data freshness but is complete enough for a simple query.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters; baseline score is 4. The description adds no param info (none needed) and is consistent with the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the verb 'Get' and specifies the resource 'total TNZO token supply' with clear unit (wei). It distinguishes itself from siblings as the only tool for total supply.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context for use ('inflation monitoring and economic analysis'), but does not explicitly state when not to use or mention alternatives. Since it's a unique read operation, guidance is adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
training_get_receiptAInspect
Fetch the sealed receipt for a finalized Tenzro Train run. Returns null when the run is still active. Persisted under CF_TRAINING_RECEIPTS — carries final_state_root, rounds_completed, witness_committees, optional manifest_hash, sealed_at_ms.
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Tenzro Train task id (run identifier) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but description discloses return behavior (null for active runs) and internal fields (final_state_root, rounds_completed, etc.) beyond schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: front-loaded purpose and essential details. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple parameter set and presence of output schema, description sufficiently explains the receipt contents and behavior. Fully adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single parameter task_id with 100% schema coverage; description adds no extra meaning beyond the schema. Baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Fetch the sealed receipt for a finalized Tenzro Train run' – specific verb and resource. Distinguishes from sibling tools like training_get_run and training_list_runs by focusing on the receipt.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage (when you need the receipt) but no explicit when-not-to-use or comparison with alternatives. Straightforward, but lacks guidelines.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
training_get_runAInspect
Look up a single Tenzro Train run by task_id. Returns the full read-side view (task_spec, status, current_round, state_root, enrolled_trainers, metadata, receipt-if-terminal). Returns JSON-RPC -32602 when the run is unknown.
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Tenzro Train task id (run identifier) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the return payload (full read-side view with specific fields) and error behavior (JSON-RPC -32602 for unknown run). It does not mention authentication or rate limits, but for a read-only lookup this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose and return details. The second sentence adds error behavior efficiently. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a single required parameter, no nested objects, and existence of an output schema, the description is complete. It lists key return fields and handles the unknown run case.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already describes task_id as 'Tenzro Train task id (run identifier)'. The description adds no extra parameter meaning beyond reinforcing that it is the lookup key. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action ('look up a single Tenzro Train run by task_id') with specific resource and return details. It distinguishes from sibling tools like training_list_runs (which lists multiple runs) and training_get_receipt (which returns only receipt), though not explicitly contrasting them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly states when to use this tool (to look up a single run). It implies this is the appropriate tool for obtaining the full read-side view, but does not explicitly exclude alternatives or mention when not to use it. With many sibling tools, a brief note about alternatives would improve clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
training_get_sealed_manifestAInspect
Fetch the installed sealed-shard manifest for a Confidential-tier Tenzro Train task. Returns null when no manifest has been installed (Open and Verified tiers never have a manifest). Manifest binds each trainer's encrypted shard, HPKE-wrapped data key, and enclave attestation.
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Tenzro Train task id (run identifier) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses return behavior (null if no manifest), tier constraints, and manifest composition. With no annotations, the description adequately covers the tool's behavior, though it omits auth or error handling details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each adding distinct value: action, null/tier info, and manifest contents. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (one param, output schema exists), the description covers key aspects: return value, tier specificity, and manifest content. Minor gaps in error handling or authentication are acceptable for a fetch tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and already describes task_id as 'Tenzro Train task id (run identifier)'. The description adds no further parameter-specific meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it fetches the sealed-shard manifest for Confidential-tier tasks, distinguishes from Open/Verified tiers, and describes manifest contents. Contrasts with siblings like training_get_receipt.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context on when to use (Confidential-tier tasks) and when not (Open/Verified tiers never have a manifest). Implicitly suggests alternatives via sibling context but does not explicitly name them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
training_list_runsAInspect
List every active Tenzro Train run this node is syncing. Each run carries task_id, status (Pending/Active/Completed/Failed/Cancelled), current_round, state_root, enrolled_trainers, and (once terminal) the sealed receipt. Read-only — safe for monitoring agents.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description bears full responsibility for behavioral disclosure. It correctly states read-only behavior, lists the returned fields (task_id, status, etc.), and indicates safety. It does not mention pagination or rate limits, but given zero parameters and likely no pagination, this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two efficient sentences: first states purpose and scope, second lists return fields and asserts safety. Every word adds value, no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and an output schema that documents return values, the description fully covers what the tool does, its scope, and its safety profile. No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so the baseline is 4 per guidelines. The description adds value by explaining the list's content (active runs, specific return fields) beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List', resource 'Tenzro Train runs', and scope 'active...this node is syncing'. It distinguishes from sibling list tools by specifying the domain (training runs) and the status filter (active).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly notes that the tool is 'Read-only — safe for monitoring agents', providing clear context for when to use it (monitoring) and that it has no side effects. However, it does not compare to sibling tools like 'list_tasks' or 'get_task' for alternative usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transcribeAInspect
Transcribe an audio clip (WAV/MP3/FLAC, base64-encoded) with a registered ASR model. Optional language hint, per-segment timestamps, and decoding temperature. Note: the ORT-backed transcriber lands in the next wave — today this call returns ProviderNotAvailable.
| Name | Required | Description | Default |
|---|---|---|---|
| language | No | Optional ISO language hint (e.g. 'en', 'es', 'fr'). Many models auto-detect. | |
| model_id | Yes | Registered ASR model id (e.g. 'whisper-large-v3-turbo', 'distil-whisper-small.en', 'moonshine-base-v2', 'parakeet-tdt-0.6b-v3', 'canary-1b-flash') | |
| timestamps | No | Emit per-segment / per-word timestamps in the result (default false) | |
| temperature | No | Decoding temperature (default 0.0) | |
| audio_base64 | Yes | Base64-encoded audio bytes (WAV/MP3/FLAC) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully discloses the current failure behavior (ProviderNotAvailable). It also hints at future capabilities ('ORT-backed transcriber lands in the next wave'). The output schema exists (not shown but indicated), so return values do not need description. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste. The first sentence efficiently conveys action, input requirements, and optional parameters. The second sentence is a critical caveat. Every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers purpose, parameters, and current availability status. With an output schema present, return values are handled elsewhere. It does not mention prerequisites like loading a model, but sibling tools (list_audio_models, load_audio_model) exist for that context. Overall sufficient for a tool that is currently non-functional.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. The description adds value by providing examples for language ('en', 'es', 'fr') and explaining that many models auto-detect, and by noting default temperature (0.0) and timestamp behavior. This goes beyond the schema's field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Transcribe' and the specific resource: an audio clip (WAV/MP3/FLAC, base64-encoded) with a registered ASR model. It also lists optional parameters (language hint, timestamps, temperature). The verb+resource combination is specific and distinguishes it from sibling tools, none of which are transcription-focused.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a critical usage note: 'today this call returns ProviderNotAvailable,' explicitly telling agents when not to use it and why. It also mentions optional features like timestamps and temperature, giving context on when to include them. However, it does not suggest alternative tools or list prerequisites like model loading.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transfer_nftAInspect
Transfer an NFT between addresses within a collection. Verifies the sender owns the token before transferring. Returns the updated ownership details.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Hex-encoded recipient address | |
| from | Yes | Hex-encoded sender address | |
| amount | No | Amount to transfer (only for ERC-1155, default 1) | |
| token_id | Yes | Token ID to transfer (numeric string) | |
| collection_id | Yes | Collection ID (UUID) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description adds value by stating that ownership is verified before transfer and that updated ownership details are returned. This provides behavioral context beyond the schema, though it could mention failure modes or reversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with the primary action and scope, followed by verification and return details. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description adequately covers the tool's behavior for a straightforward transfer. It could mention supported token standards (ERC-721/1155) but schema hints at that via the amount parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so each parameter is already described in the input schema. The description adds no additional meaning beyond the schema's descriptions, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (transfer), the resource (NFT), and the context (between addresses within a collection). It distinguishes itself from sibling tools like mint_nft by specifying 'transfer' and 'within a collection'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for transferring an NFT, but it does not provide explicit when-to-use, when-not-to-use, or alternative tools. No exclusions or scenarios are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unload_audio_modelAInspect
Unload a registered ASR model, freeing its ORT session.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered model id (the same id used at load time) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the behavioral detail of freeing an ORT session, which is beyond the schema. However, it doesn't discuss idempotency, consequences of unloading a model in use, or error states. Given no annotations, the description provides moderate transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that conveys the core purpose without wasted words. It could benefit from slightly more structure, but it is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having a single parameter and output schema available, the description lacks completeness. It does not explain return values, error conditions, or prerequisites. Compared to sibling tools, it is too minimal for full understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage for the single parameter 'model_id' with a clear description. The tool's description adds no additional meaning beyond what the schema already conveys, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Unload'), the resource ('registered ASR model'), and the effect ('freeing its ORT session'). It distinguishes this tool from sibling load/unload tools by specifying 'ASR' and the ORT session detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, such as other unload tools or the corresponding load tool. The context implies it is the counterpart to load_audio_model, but this is not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unload_detection_modelAInspect
Unload a registered detector, freeing its ORT session.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered model id (the same id used at load time) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions freeing the ORT session, implying memory cleanup. However, it does not disclose other behavioral traits such as impact on ongoing detections, that the model must be currently loaded, or that this is irreversible without reloading. Annotations are absent, increasing the burden on the description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no redundant words. It directly conveys the purpose and key behavioral trait (freeing the ORT session), making it efficient and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and an output schema, the description is largely complete. It lacks usage guidelines and does not explicitly state that the model must be loaded first, but the core function is well-covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes the model_id parameter fully (coverage 100%). The description adds only the context that the detector is registered, which is implied by the schema description. No additional 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (unload) and the resource (registered detector), with additional detail about freeing the ORT session, which is specific and distinguishes it from other model operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 other unload tools (e.g., unload_audio_model) or loading tools. Context signals show many sibling tools with similar naming, but the description does not mention prerequisites or typical usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unload_forecast_modelBInspect
Unload a registered forecast model from this node, freeing its ORT session.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered model id (the same id used at load time) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description carries full burden. It discloses freeing session, but lacks details on error cases, idempotency, or effects on other operations. For a destructive action, more behavioral context is needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, 13 words, front-loaded with key action. No unnecessary text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple tool with one param, but lacks usage context and behavioral details that would make it fully complete, especially given no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the param description is clear. The description adds context about node and session but no parameter-level meaning beyond schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'unload', the resource 'forecast model', and the effect 'freeing its ORT session'. It distinguishes from sibling unload_* tools by specifying 'forecast', and implies a node-specific scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, prerequisites, or when not to use. It does not mention pairing with load_forecast_model or conditions for unloading.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unload_segmentation_modelAInspect
Unload a registered segmenter, freeing its ORT session.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered model id (the same id used at load time) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that it frees an ORT session, but does not mention idempotency, error conditions (e.g., model not loaded), or irreversibility. No annotations provided, so description carries the burden but falls short on completeness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise and front-loaded with the verb. However, it is too terse and could include brief usage hints without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple tool with one parameter and an output schema. Does not mention return value (but output schema exists) or error conditions; still mostly complete given low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the parameter description is already clear. The description adds no extra meaning beyond what the schema provides, earning the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states action ('unload'), resource ('registered segmenter'), and effect ('freeing its ORT session'). Among many unload_* siblings, 'segmenter' and 'ORT session' distinguish this tool from others like unload_audio_model.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 unload_* tools), no prerequisites mentioned, and no exclusions 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.
unload_text_embedding_modelBInspect
Unload a registered text-embedding model, freeing its ORT session.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered model id (the same id used at load time) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It mentions freeing ORT session but does not disclose side effects (e.g., impact on ongoing inferences), error conditions, idempotency, or required permissions. For a mutation tool, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no fluff. Efficiently communicates the core action and side effect.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Simple tool with 1 parameter and no annotations. Output schema exists but is not visible. Description lacks usage context, error handling, and relationship to siblings. Adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents model_id. Description adds no extra meaning beyond what the schema provides. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'Unload', resource 'registered text-embedding model', and the effect 'freeing its ORT session'. It differentiates from siblings like load_text_embedding_model and other unload_* tools by specifically targeting text-embedding models.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. Does not mention prerequisites (e.g., if model must be loaded first) or what happens if the model is already unloaded. No comparison to other unload tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unload_text_segmentation_modelAInspect
Unload a registered SAM-3 segmenter, freeing its three ORT sessions (image encoder, language encoder, decoder).
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered model id (the same id used at load time) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description adds moderate transparency by noting that it frees three ORT sessions (image encoder, language encoder, decoder), but does not detail side effects, reversibility, or resource implications beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words, efficiently conveying the action and key detail about freeing sessions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple unload tool with one required parameter and an output schema, the description covers the essential behavioral context. It could mention the expected return value or connection to load_text_segmentation_model, but it's largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the parameter is already well-described in the schema. The description does not add any 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Unload' and the specific resource 'registered SAM-3 segmenter', distinguishing it from sibling unload tools by specifying it is for text segmentation and mentioning the three ORT sessions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, nor does it mention prerequisites or when not to use it. It simply states the action without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unload_video_modelAInspect
Unload a registered video encoder, freeing its ORT session.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered model id (the same id used at load time) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the main effect (freeing ORT session) but does not mention error conditions, prerequisites (e.g., model must be loaded), or side effects (e.g., shared resources). Adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no unnecessary words. Every word contributes to the meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple unload operation with one parameter and an existing output schema, the description is largely sufficient. It could mention idempotency or error handling, 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters, including a description for model_id. The tool description does not add any additional meaning beyond what the schema already provides, so baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('unload'), the resource ('registered video encoder'), and the effect ('freeing its ORT session'). It distinguishes from sibling load/unload tools by specifying the model type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for freeing resources when a video encoder is no longer needed, but it does not explicitly state when to use this tool vs alternatives (e.g., other unload_* tools) or provide conditions for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unload_vision_modelAInspect
Unload a registered vision encoder, freeing its ORT session.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered model id (the same id used at load time) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses the primary effect ('freeing its ORT session') but lacks details on idempotency, error conditions (e.g., model not loaded), or authorization requirements. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 10 words, front-loaded with the core action. 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple (1 param, output schema exists), the description omits important context like the need for the model to be loaded first and the possibility of calling this tool multiple times. It is minimally complete but leaves gaps for a thorough understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, providing clear meaning for the single parameter. The tool description adds no additional parameter information beyond what the schema already states, 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Unload' and the specific resource 'vision encoder', which distinguishes it from sibling tools for other model types (e.g., unload_audio_model). The addition of 'freeing its ORT session' provides further specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, no prerequisites (e.g., model must be loaded), and no when-not-to-use conditions. Sibling tools are similar, so differentiation is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unseal_dataAInspect
Unseal (decrypt) data that was previously sealed within the TEE enclave. Requires the same key_id used during sealing.
| Name | Required | Description | Default |
|---|---|---|---|
| key_id | Yes | Key ID used during sealing | |
| sealed_hex | Yes | Hex-encoded sealed data to unseal (decrypt) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It states that the tool decrypts data but does not mention any side effects, whether it is destructive, potential errors (e.g., wrong key_id), or the nature of the operation (read-only vs mutation). As a decryption operation, it is likely non-destructive, but this is not explicitly stated, leaving ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence containing no unnecessary words. It front-loads the action ('Unseal (decrypt) data') and includes critical context ('previously sealed within the TEE enclave' and 'Requires the same key_id used during sealing'). Every phrase earns its place, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (2 required parameters, no nested objects) and the presence of an output schema, the description does not need to explain return values. However, it lacks information about error conditions (e.g., mismatched key_id, data corruption) and any prerequisites beyond the key_id. This gap reduces completeness slightly, though the core action is well-covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents both parameters well. The description adds the requirement that the key_id must match the one used during sealing, which reinforces the schema's description. However, it does not provide additional semantic details beyond what the schema already conveys. Given the high coverage, a score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: unseal (decrypt) data that was previously sealed within a TEE enclave. It distinguishes itself from generic decryption tools (like 'decrypt_data') by explicitly referencing the TEE enclave context and the requirement for the same key_id used during sealing, which uniquely identifies this tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage condition: requires the same key_id used during sealing. This gives guidance on when to use the tool. However, it does not explicitly state when not to use it (e.g., for data not sealed in TEE enclave) or compare with sibling tools like 'seal_data' or 'decrypt_data'. Still, the context is clear enough for correct selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unstake_tokensAInspect
Unstake TNZO tokens and begin the unbonding period. After the unbonding period (typically 7 days), tokens can be withdrawn.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Hex-encoded staker address (with or without 0x prefix) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description discloses the key behavioral trait of a 7-day unbonding period. It does not cover other aspects like fees or reversibility, but the main behavior is well communicated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, consisting of two short sentences that convey all essential information without any fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, the description covers the input and process adequately. Since an output schema exists, not describing the return value is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already has 100% description coverage for the single parameter. The tool description adds no additional meaning about the address parameter beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (unstake TNZO tokens) and the resulting unbonding period, distinguishing it from related tools like stake_tokens.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context for using this tool is clear from the description, but it lacks explicit guidance on when not to use it or alternatives like withdrawing after unbonding.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_agent_templateAInspect
Update metadata for an agent template you own. Change description, version, status, or tags. Returns the updated template record.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Updated tags list | |
| status | No | New status: 'active', 'inactive', 'deprecated' | |
| version | No | New version string (e.g. '1.1.0') | |
| description | No | New description for the template | |
| template_id | Yes | Agent template ID to update |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description bears full burden. It mentions ownership constraint and return behavior, but does not disclose side effects, authorization requirements, or rate limits. Basic transparency but insufficient 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise with two sentences: first states purpose and ownership, second lists editable fields and return value. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema shown, context signals indicate its existence. Description combined with output schema is sufficient for a parameter-rich tool. No gaps identified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 listing updatable fields (already in schema). Baseline score applies as description does not significantly enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Update metadata for an agent template you own' and specifies the updatable fields (description, version, status, tags). It distinguishes from sibling tools like register_agent_template (create) and get_agent_template (read).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implicitly states usage context by mentioning ownership ('you own'), but does not explicitly exclude other tools or provide alternatives. Sibling tools like register_agent_template and get_agent_template provide contrast, but description lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_did_envelopeAInspect
Verify a Tenzro DID envelope carried as a tool argument (the hex X-Tenzro-DID-Envelope value). Supports did:tenzro (registry), did:key, did:ethr (recoverable secp256k1), and did:web (resolved over HTTPS). Returns {valid, did, method} or {valid:false, error}. MCP-native carriage: tool calls expose no HTTP headers, so the envelope rides as an argument.
| Name | Required | Description | Default |
|---|---|---|---|
| envelope | Yes | Hex-encoded Tenzro DID envelope (the X-Tenzro-DID-Envelope header value / TenzroDidEnvelope::to_header_value output) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses supported DID methods, return shape ({valid, did, method} or error), and HTTP resolution for did:web. It does not mention side effects or rate limits, but the information is sufficient for an agent to understand behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the verb and resource, and covers purpose, supported methods, return shape, and MCP context without any fluff. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists (context says true) and 100% schema coverage, the description is complete for a verification tool. It explains what it verifies, how it works, and return format. Could include an example return or error codes, but not necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (the envelope parameter already has a detailed description). The tool description adds no new information beyond repeating the hex encoding and X-Tenzro-DID-Envelope context, which is already in the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool verifies a Tenzro DID envelope, lists supported DID methods (did:tenzro, did:key, did:ethr, did:web), and distinguishes itself from siblings like resolve_did and other verification tools. No sibling does exactly this.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly indicates when to use (when you have a DID envelope to verify) but does not explicitly state when not to use or mention alternatives. It provides MCP-native carriage context, but lacks exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_paymentAInspect
Verify a payment credential against a previously created challenge and settle the payment on-chain
| Name | Required | Description | Default |
|---|---|---|---|
| asset | Yes | Payment asset: 'USDC', 'USDT', or 'TNZO' | |
| amount | Yes | Payment amount in smallest unit | |
| protocol | Yes | Payment protocol used: 'mpp', 'x402', or 'native' | |
| payer_did | Yes | Payer DID (e.g. did:tenzro:human:uuid or did:tenzro:machine:controller:uuid) | |
| signature | Yes | Hex-encoded classical (Ed25519) signature proving payment | |
| challenge_id | Yes | Challenge ID from the payment challenge | |
| pq_signature | Yes | Hex-encoded post-quantum (ML-DSA-65, FIPS 204) signature — 3309 bytes — required for internal Tenzro mpp/x402/native protocols; pass empty string for external passthroughs (visa-tap, mastercard-agent-pay) that don't yet have a hybrid signing scheme | |
| payer_address | Yes | Payer wallet address (hex-encoded) | |
| pq_public_key | Yes | Hex-encoded ML-DSA-65 verifying key — 1952 bytes — required for internal Tenzro mpp/x402/native protocols; pass empty string for external passthroughs |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It indicates the tool performs a mutation (settle on-chain), which is helpful. However, it lacks details on failure behavior (e.g., what happens if verification fails), required permissions, or side effects. The description adds some transparency but is not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise and front-loaded with the action. No filler words or redundancy. Every part of the sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (9 required parameters, no annotations, output schema exists), the description is adequate but not complete. It implies the need for a prior challenge but does not explain the overall flow or error handling. The existence of an output schema partially compensates, but the description could better guide the agent on interaction context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, so each parameter is already well-documented. The tool description does not add additional meaning beyond what the schema provides. Parameters like 'pq_signature' have detailed schema descriptions, making extra description unnecessary. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action: 'Verify a payment credential against a previously created challenge and settle the payment on-chain'. It uses a specific verb ('verify') and identifies the resource ('payment credential' and 'challenge'). This distinguishes it from sibling tools like 'create_payment_challenge' and 'settle_payment'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the prerequisite of a previously created challenge but does not explicitly state when to use this tool versus alternatives like 'settle_payment' or 'verify_signature'. No exclusions or alternative suggestions are provided, leaving the agent to infer the usage context from sibling names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_signatureBInspect
Verify a cryptographic signature against a public key and message. Returns whether the signature is valid.
| Name | Required | Description | Default |
|---|---|---|---|
| public_key | Yes | Hex-encoded public key | |
| message_hex | Yes | Hex-encoded message bytes that were signed | |
| signature_hex | Yes | Hex-encoded signature |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry behavioral info. It accurately describes the operation as read-only (verification returning boolean) with no side effects implied. However, it doesn't specify potential constraints (e.g., supported signature schemes) or edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence that is front-loaded with the action verb and includes essential purpose and output. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, full parameter descriptions in schema, and existence of output schema, the description is nearly complete. Minor gap: does not mention the signature algorithm or any format constraints beyond hex.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter having descriptions in the schema. The tool description adds no additional meaning beyond what is already in the schema (e.g., 'hex-encoded'). Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'verify' and resources 'cryptographic signature against public key and message', with explicit return boolean. Although not explicitly distinguishing from sibling verification tools (e.g., verify_did_envelope), the specific parameter combination uniquely identifies its purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like verify_did_envelope or verify_zk_proof. Lacks context about prerequisites (e.g., algorithm compatibility) or scenarios where it should not be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_tee_attestationAInspect
Verify a TEE attestation report. Checks the vendor certificate chain, signature, and measurement hashes. Returns verification status and details.
| Name | Required | Description | Default |
|---|---|---|---|
| tee_type | Yes | TEE type: 'tdx', 'sev-snp', 'nitro', 'nvidia-gpu' | |
| attestation | Yes | Hex-encoded attestation report |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must carry full burden. It discloses what is checked (certificate chain, signature, hashes) and that it returns status/details, but does not reveal side effects, network requirements, or potential failure modes. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first states purpose, second details checks and return. No wasted words, front-loaded, and appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has two parameters (both described in schema), an output schema (reducing need to explain returns), and no nested objects, the description is complete. It covers verification steps and implies the result structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for both parameters (tee_type and attestation). The tool description adds no additional parameter guidance beyond what the schema provides, so baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool verifies a TEE attestation report, specifying the checks (vendor certificate chain, signature, measurement hashes) and that it returns status and details. It distinguishes from sibling tools like 'get_tee_attestation' (retrieval) and other verify tools (DID, signature, etc.).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for verification but lacks explicit guidance on when to use this vs. alternatives (e.g., when to get_tee_attestation instead). No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_vrf_proofAInspect
Verify a Tenzro VRF proof (RFC 9381 ECVRF-EDWARDS25519-SHA512-TAI). Returns the deterministic 64-byte VRF output if the proof is valid. Used for provably-fair NFT reveals, lotteries, and randomized trait assignment.
| Name | Required | Description | Default |
|---|---|---|---|
| alpha | Yes | Hex-encoded input message (alpha). Public inputs like block hash, request ID, or NFT mint nonce | |
| proof | Yes | Hex-encoded 80-byte VRF proof: Gamma(32) || c(16) || s(32) per RFC 9381 | |
| pubkey | Yes | Hex-encoded 32-byte VRF public key (Edwards25519 compressed point) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states that a valid proof returns the 64-byte VRF output, but does not disclose behavior for invalid proofs, side effects (none implied), or any required permissions. Additional details on error handling would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, efficiently conveying purpose, algorithm, return value, and use cases without any wasted words. It is front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists, the description need not explain return values. The purpose and parameter semantics are well covered. However, it could mention error conditions or that the tool is read-only, but overall it is sufficient for the agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 mentions the algorithm and return type but does not add substantive meaning beyond the schema's parameter descriptions, which already explain the hex-encoded fields well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Verify' and the resource 'Tenzro VRF proof', specifies the exact algorithm (RFC 9381 ECVRF-EDWARDS25519-SHA512-TAI), and lists concrete use cases. This differentiates it from sibling tools like generate_vrf_proof.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context with 'Used for provably-fair NFT reveals, lotteries, and randomized trait assignment' but does not explicitly state when to use this tool versus alternatives, nor 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.
verify_zk_proofAInspect
Verify a Plonky3 STARK proof (over KoalaBear) on the Tenzro ledger. Requires a circuit_id ('inference', 'settlement', or 'identity').
| Name | Required | Description | Default |
|---|---|---|---|
| proof | Yes | Hex-encoded proof bytes — bincode-encoded p3_uni_stark::Proof | |
| circuit_id | Yes | Circuit identifier — one of 'inference', 'settlement', 'identity' | |
| public_inputs | Yes | Public inputs as JSON array of hex strings (4-byte LE KoalaBear chunks) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits. It only describes the verification action without indicating whether it is read-only, what side effects exist, or any permission requirements. The return format is not mentioned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-loaded with the action and essential details (proof type, ledger, required parameter). Every sentence earns its place with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the output schema exists (per context signals) and may cover return values, the description does not mention what the tool returns (e.g., boolean, error details) or any prerequisites. For a ZK proof verification tool, this is adequate but leaves some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 the context of Plonky3 STARK proof and KoalaBear field, which is not in the schema. However, the parameter descriptions in schema already fully define each parameter, so the description adds limited additional value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (verify), the specific proof type (Plonky3 STARK over KoalaBear), the platform (Tenzro ledger), and the required circuit_id parameter with allowed values. This distinguishes it from sibling tools like 'create_zk_proof' and other verification tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly requires a circuit_id with three specific options, guiding when to use this tool. However, it does not explicitly state when not to use it or mention alternatives for other proof types, though the sibling list provides context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
video_embedAInspect
Produce a clip-level embedding from a short video (base64-encoded). Until a V-JEPA 2 ONNX export lands, agents can fall back to per-frame vision_embed pooling.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered video encoder id. The V-JEPA 2 family (vjepa2-vitl-256, vjepa2-vith-256, vjepa2-vitg-384) is advertised in the catalog; loading is gated until per-model ONNX exports land. | |
| normalize | No | L2-normalize the pooled embedding (default false) | |
| frame_stride | No | Sub-sample frames at this stride (default model-defined) | |
| video_base64 | Yes | Base64-encoded video bytes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses that model loading is gated until ONNX exports land and that the tool is for 'short' videos (implying a size limit). It doesn't mention permissions or side effects, but the core behavioral traits (embedding generation, model dependency) are covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, both essential. The first states the core purpose and input format; the second provides fallback guidance. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema (not shown), the description doesn't need to detail return values. It explains the model dependency and fallback. However, it doesn't specify any video length/size constraints beyond 'short,' which might be expected for completeness. Still, it covers the main use case well.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 meaningful context for 'model_id' (listing specific model variants and noting gated loading), which goes beyond the schema's generic description. Other parameters have minimal extra info, but overall the description adds value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool produces a clip-level embedding from a short base64-encoded video. It also distinguishes from the sibling 'vision_embed' by mentioning fallback to per-frame pooling, making the purpose specific and differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells when to use this tool (for clip-level embedding) and when to fall back (use vision_embed if V-JEPA 2 ONNX export is unavailable). This provides clear context versus alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vision_embedBInspect
Embed a single image with a registered vision encoder. Pass base64-encoded PNG/JPEG/WebP bytes. Returns a dense feature vector (e.g. 768-dim for DINOv3-base, 1152-dim for SigLIP2-so400m).
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | Registered vision encoder id (DINOv3, SigLIP2, CLIP, etc.) | |
| normalize | No | L2-normalize the embedding before returning it (default false) | |
| image_base64 | Yes | Base64-encoded image bytes (PNG/JPEG/WebP) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden but only discloses return type and dimensionality. It omits key behavioral traits: required permissions, rate limits, image size limitations, error handling, or side effects. The read-only nature is assumed but not stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences front-load the action and key details. 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Has an output schema (not shown) which likely details return structure, so description's examples are helpful. However, it lacks mention of prerequisite model loading (list_vision_models, load_vision_model) and does not cover edge cases or batch limitations, leaving gaps for a tool with no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for all three parameters. The description adds minimal extra context (image formats) but does not elaborate on normalize behavior or model_id constraints beyond schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool embeds a single image using a registered vision encoder, specifying input format and output characteristics. It distinguishes from text embedding or video embedding but does not explicitly differentiate from vision_similarity, which is a sibling tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides input requirements (base64-encoded image) and implies usage for obtaining dense feature vectors, but offers no guidance on when to choose this over alternatives like vision_similarity or prerequisites such as loading a vision model first.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vision_similarityAInspect
Compute cosine similarity between an image embedding and a text embedding (must have matching dimension). Pure math — does not load any model. Typical use: pair vision_embed (image) with text_embed against a CLIP/SigLIP text tower.
| Name | Required | Description | Default |
|---|---|---|---|
| text_embedding | Yes | Text embedding (typically from text_embed against a CLIP/SigLIP text tower of matching dimension) | |
| image_embedding | Yes | Image embedding (typically from vision_embed) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses that the operation is pure math with no model loading, and requires matching dimensions. The output schema exists to describe return values. This is transparent and avoids surprises.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler. The first sentence states the core operation, the second gives typical use case. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 required parameters, no enums, has output schema), the description covers purpose, constraints, and typical usage. It does not elaborate on error handling, but that is acceptable for this level of complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 value by reinforcing the dimension matching requirement and typical pairing of vision_embed and text_embed, which goes beyond the schema's statements.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool computes cosine similarity between image and text embeddings, and distinguishes from embedding-producing tools like vision_embed and text_embed. The verb 'compute' and specific resources 'image embedding' and 'text embedding' make the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description provides clear context for usage: must have matching dimensions, and typical use pairs vision_embed with text_embed. It implicitly guides the agent to use embedding tools first. No explicit exclusions from alternatives, but the guidance is sufficient for a simple math tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vote_on_proposalBInspect
Vote on an active Tenzro governance proposal. Cast yes, no, or abstain. Voting power is proportional to staked TNZO. Returns the recorded vote and current tally.
| Name | Required | Description | Default |
|---|---|---|---|
| vote | Yes | Vote type: 'yes', 'no', or 'abstain' | |
| proposal_id | Yes | Proposal ID to vote on | |
| voter_address | Yes | Hex-encoded voter address |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It only states the action and result, but does not disclose side effects, authorization requirements, error handling, or idempotency. For a mutation tool, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences, front-loading the primary action. It efficiently communicates the core functionality without unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema, the description lacks contextual completeness for a mutation tool with no annotations. It does not explain prerequisites, error conditions, or the 'active proposal' constraint. The broad sibling list does not compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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. The description adds no extra meaning beyond the schema, merely restating the vote options. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: voting on active Tenzro governance proposals with options yes/no/abstain. It distinguishes from sibling tools like create_proposal, list_proposals, and delegate_voting_power.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lacks guidance on when to use this tool vs alternatives. It does not specify prerequisites (e.g., must have staked TNZO, proposal must be active) or mention alternative approaches.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
workflow_finalizeAInspect
Finalize a saga workflow once all steps are Verified: compute the receipt hash and mark it Completed. Mirrors tenzro_workflowFinalize.
| Name | Required | Description | Default |
|---|---|---|---|
| workflow_id | Yes | Workflow id (all steps must be Verified to finalize) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It mentions key actions (computing receipt hash, marking completed) but lacks details on failure modes, idempotency, or side effects. With an output schema present, the description could be more explicit about what happens beyond the stated actions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The first sentence states the core purpose, the second adds context about a mirrored function. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with an output schema, the description covers the essential: what it does, when to use, and key steps. It is sufficiently complete 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents the parameter. The description does not add further meaning beyond the schema's description. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Finalize a saga workflow'), the condition ('once all steps are Verified'), and the outputs ('compute the receipt hash and mark it Completed'). It also distinguishes the tool from siblings like workflow_step_verify.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the prerequisite ('once all steps are Verified'), guiding the agent on when to use this tool. While it doesn't list alternatives, the condition implies that it should be used after all verification steps, which is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
workflow_openAInspect
Open a multi-agent saga workflow: declare ordered steps (each with an Execute→Verify→Compensate lifecycle) plus optional per-step escrow. Returns the opened saga. Mirrors tenzro_workflowOpen.
| Name | Required | Description | Default |
|---|---|---|---|
| saga_steps | Yes | Ordered steps; each an object {id?, executor_did?, compensation?} | |
| workflow_id | Yes | Caller-chosen workflow id (e.g. "wf_abc123"); must be unique | |
| participants | No | Participant DIDs (orchestrator + step executors) | |
| orchestrator_did | Yes | DID of the orchestrator opening the workflow |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry full behavioral disclosure. It mentions that the tool opens a saga and returns it, implying persistence and mutation, but does not elaborate on side effects, required permissions, error conditions, or idempotency. This is insufficient for a tool that likely has significant state changes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences, front-loading the key action and lifecycle details. Every sentence serves a purpose, and there is no redundancy or unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema (as indicated), the description adequately covers the tool's purpose and key concepts (declaring steps, lifecycle, escrow). However, it could be more complete by mentioning that this is the initial step in a saga workflow lifecycle, but it is still fairly comprehensive for a tool with structured parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All parameters have descriptions in the schema (100% coverage). The tool description adds value beyond the schema by explaining the lifecycle pattern and optional escrow for steps, which helps the agent understand how to structure the saga_steps parameter effectively.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool opens a multi-agent saga workflow, explains the structure of ordered steps with the Execute→Verify→Compensate lifecycle, and mentions the return of the opened saga. It distinguishes itself from siblings like workflow_step_execute and workflow_finalize by focusing on initial creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for declaring and opening a new saga, but it lacks explicit guidance on when to use this tool versus alternatives (e.g., when not to use it) and does not mention prerequisites or typical scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
workflow_step_compensateBInspect
Compensate a saga step (and, with cascade=true, every lower-index executed/verified step in reverse order), refunding still-funded per-step escrow (vault→payer). Mirrors tenzro_workflowStepCompensate.
| Name | Required | Description | Default |
|---|---|---|---|
| cascade | No | If true, also compensate every lower-index executed/verified step in reverse order | |
| step_idx | Yes | Zero-based index of the step to compensate | |
| workflow_id | Yes | Workflow id |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses refunding escrow (vault→payer) and cascade behavior, but lacks details on side effects, permissions needed, or whether the operation is reversible. No annotations are provided, so the description carries the burden but only partially addresses it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, straight to the point. No unnecessary words. Could be slightly more structured (e.g., listing key behaviors), but effective for its length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks details on prerequisites (e.g., step must be executed/verified), error conditions, and return value despite having an output schema. The complexity of cascade and escrow refunds warrants more contextual information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds no additional meaning beyond what the schema already provides for cascade, step_idx, and workflow_id. The cascade parameter's behavior is already described in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb (compensate) and resource (saga step), and distinguishes from sibling tools like workflow_step_execute and workflow_step_verify by focusing on compensation and refunding escrow. The cascade behavior is also clearly explained.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like workflow_step_execute or workflow_step_verify. Does not mention prerequisites or when compensation is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
workflow_step_executeAInspect
Execute a saga step: transition it Pending→Executing and, if escrow_amount is set, lock a per-step escrow (payer→vault). Mirrors tenzro_workflowStepExecute.
| Name | Required | Description | Default |
|---|---|---|---|
| payee | No | Payee address (required when escrow_amount is set) | |
| payer | No | Payer address (required when escrow_amount is set) | |
| proof | No | Opaque execution-proof reference recorded at execute | |
| step_idx | Yes | Zero-based index of the step to execute | |
| workflow_id | Yes | Workflow id | |
| escrow_amount | No | Optional per-step escrow amount to lock (smallest unit) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the core state transition and conditional escrow behavior, but omits details on error handling, idempotency, permission requirements, or state prerequisites. This is 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. The primary action and conditional logic are front-loaded. The second sentence ('Mirrors tenzro_workflowStepExecute') is minor but does not inflate the length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists (exempting return value explanation), the description covers the essential action and escrow condition. However, it lacks prerequisite state information (step must be Pending) and does not address potential errors or side effects, leaving gaps for an agent determining applicability.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptive parameter names and comments (e.g., payee 'required when escrow_amount is set'). The description reiterates the escrow condition 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool executes a saga step with a specific state transition (Pending→Executing) and optional escrow locking. This verb+resource definition distinguishes it from siblings like workflow_step_compensate and workflow_step_verify by focusing on forward execution.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description fails to provide guidance on when to use this tool versus alternatives (e.g., step_compensate, step_verify). No prerequisites, success conditions, or explicit contrast with siblings is given, 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.
workflow_step_verifyAInspect
Verify a saga step: transition it Executing→Verified, release any per-step escrow (vault→payee), and emit ERC-8004 reputation feedback for the step executor. Mirrors tenzro_workflowStepVerify.
| Name | Required | Description | Default |
|---|---|---|---|
| step_idx | Yes | Zero-based index of the step to verify | |
| workflow_id | Yes | Workflow id | |
| outcome_score | No | Outcome score 0..=100 fed to ERC-8004 reputation (default 100) | |
| witness_signatures | No | Witness signatures / references recorded at verify |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Given no annotations, the description discloses key behavioral traits: state transition, escrow release (vault→payee), and ERC-8004 reputation emission. This is strong for a mutation tool, though it omits whether the operation is reversible or requires specific permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: the first packs the core operation and effects, the second provides a reference. No redundant words, front-loaded with critical information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a tool with full schema coverage and an output schema, but lacks details on state prerequisites (e.g., step must be in 'Executing' state), failure modes, or what the output contains. The 'Mirrors' reference is unhelpful without context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are documented. The description adds no additional meaning beyond the schema; it mentions escrow and reputation generally but doesn't connect to specific parameters like 'outcome_score' or 'witness_signatures'. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action: 'Verify a saga step' with specific state transition 'Executing→Verified', and lists concrete effects (escrow release, reputation feedback). It distinguishes from siblings like 'workflow_step_execute' and 'workflow_step_compensate' by naming the verification role.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. No prerequisites, exclusions, or context for choosing verification over other step operations. The phrase 'Mirrors tenzro_workflowStepVerify' provides no practical usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wormhole_bridgeBInspect
Bridge tokens via the Wormhole adapter registered on the BridgeRouter. Returns transfer_id, tx_hash, fee_paid, and estimated_arrival_ms on success.
| Name | Required | Description | Default |
|---|---|---|---|
| asset | Yes | Asset symbol (e.g. TNZO, USDC) | |
| amount | Yes | Amount in smallest units as a u128 decimal string | |
| sender | Yes | Sender address on source chain | |
| recipient | Yes | Recipient address on destination chain | |
| dest_chain | Yes | Destination chain name | |
| source_chain | Yes | Source chain name |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry full burden. Discloses return fields but omits side effects, error conditions, reversibility, or required approvals. Incomplete behavioral disclosure 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with verb and resource. No wasted words, but could benefit from structured formatting for easier scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists implicitly, but description provides return fields. Lacks context on when to choose this over many sibling bridging tools. Adequate for schema coverage but missing usage and behavioral context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; all parameters have descriptions in the schema. Description adds return field info but no additional parameter semantics beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action (bridge tokens), mechanism (Wormhole adapter on BridgeRouter), and specific return fields (transfer_id, tx_hash, fee_paid, estimated_arrival_ms). Differentiates from siblings like bridge_tokens or bridge_with_hook by specifying the adaptor and return structure.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 alternative bridge tools. Lacks prerequisites, limitations, or context for selection among related siblings such as bridge_tokens or bridge_with_hook.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wormhole_chain_idAInspect
Look up the Wormhole numeric chain id for a chain name (ethereum=2, solana=1, base=30, arbitrum=23, optimism=24, etc.).
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Chain name (e.g. ethereum, solana, base, arbitrum, optimism) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description fully carries the burden of behavioral disclosure. It mentions no traits beyond the core function (e.g., whether it is read-only, if it makes network calls, or any side effects). For a simple lookup, this is acceptable but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with examples. It is front-loaded, concise, and contains no unnecessary information. Every part is valuable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (single parameter, clear output), the description is complete. The parameter is fully described in schema, and there is an output schema (not shown but noted in context). No additional information is needed for correct usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (both required parameter described in schema). The description adds illustrative examples but does not provide additional semantic meaning beyond what the schema already offers. Baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool's purpose: looking up Wormhole numeric chain IDs for chain names. It provides concrete examples (ethereum=2, solana=1) that make the function immediately understandable and distinguish it from sibling tools like wormhole_bridge and wormhole_parse_vaa_id.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (when you need a chain ID) but does not explicitly state when to use this tool vs alternatives. For a simple lookup, this is adequate, but it lacks any 'when not to use' or comparison with similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wormhole_parse_vaa_idAInspect
Parse a canonical Wormhole VAA id of the form {chain}/{emitter}/{sequence} into its components.
| Name | Required | Description | Default |
|---|---|---|---|
| vaa_id | Yes | Canonical VAA id in the form {chain}/{emitter}/{sequence} |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It accurately states the transformation (parse into components) without contradictory or missing behavioral traits. The existence of an output schema covers the return format, making the behavioral scope clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that contains all necessary information with no extraneous words. Every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity, full schema coverage, and presence of an output schema, the description is complete. It defines the input and outcome, which is sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter, and its description already explains the format. The tool description adds no additional meaning beyond echoing the schema, so baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Parse' and identifies the resource as a 'canonical Wormhole VAA id', with the exact format and outcome ('into its components'). This clearly distinguishes it from sibling tools like wormhole_bridge or wormhole_chain_id.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not specify when to use this tool versus alternatives or mention any prerequisites or exclusions. It is adequate for a straightforward parse tool but lacks explicit context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wrap_tnzoAInspect
Wrap native TNZO to a specific VM representation (wTNZO ERC-20 on EVM, wTNZO SPL on SVM). In the pointer model, this is a no-op since all VMs share the same balance — the tool confirms the balance is accessible on the target VM.
| Name | Required | Description | Default |
|---|---|---|---|
| to_vm | Yes | Target VM: 'evm', 'svm', or 'daml' | |
| amount | Yes | Amount of TNZO to wrap (as string, in native 18-decimal units) | |
| address | Yes | Address to wrap TNZO for (hex) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the pointer model no-op behavior and balance confirmation, but omits details on failure modes, authorization requirements, or potential side effects. This is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences (35 words) and front-loaded with the key action. Every sentence contributes meaning without redundancy. It is concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's domain-specific nature and the presence of an output schema, the description sufficiently explains the core purpose and behavioral context. It addresses the pointer model nuance and balance confirmation, which is important for correct usage. A bit more detail on failure modes or edge cases would elevate completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 significant meaning beyond the schema descriptions for address, amount, and to_vm. It mentions the target VM representations but does not elaborate on parameter constraints or format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action (wrapping native TNZO) and the resource (specific VM representation like wTNZO ERC-20 on EVM). It distinguishes from sibling tools by explaining the pointer model no-op behavior and balance confirmation, which sets it apart from cross-vm transfer or balance check tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the pointer model context but does not explicitly state when to use this tool versus alternatives (e.g., cross_vm_transfer). It implies usage by describing what the tool does, but lacks direct guidance on exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x25519_key_exchangeBInspect
Perform an X25519 Diffie-Hellman key exchange. Returns the 32-byte shared secret in hex.
| Name | Required | Description | Default |
|---|---|---|---|
| public_key_hex | Yes | Hex-encoded X25519 public key (32 bytes) | |
| private_key_hex | Yes | Hex-encoded X25519 private key (32 bytes) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Underlying response payload verbatim. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description serves as the sole behavioral disclosure. It correctly notes the output (32-byte shared secret in hex) but omits important details like input validation, error handling, security notes, or side effects. This is partially transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two short sentences. No redundant information, though it could front-load the output format slightly better. It efficiently conveys the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description is adequate for a simple deterministic operation. However, it lacks any mention of prerequisites, security considerations, or constraints, which are important for a cryptographic tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter already described (hex-encoded X25519 public/private key). The description does not add any new semantic information beyond the schema, meeting the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Perform an X25519 Diffie-Hellman key exchange' with a specific algorithm and resource. It directly indicates the operation and outputs, distinguishing it from sibling tools like signing or verification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, such as other key exchange methods or cryptographic operations. The description only states what it does without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!