AINumbers Fintech Intelligence Suite
Server Details
530 MCP tools across 561 fintech tools: ChainGraph AP2 decisions, execution_hash. Zero PII.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- PostOakLabs/ainumbers-mcp-apps
- GitHub Stars
- 2
- Server Listing
- ainumbers-mcp-apps
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 548 of 548 tools scored. Lowest: 2.4/5.
With 548 tools, there is significant potential for confusion, but each tool has a detailed description specifying its unique purpose. However, there are many similarly named tools (e.g., multiple 'run_*_fit_diagnostic' tools) that could be difficult for an agent to distinguish without reading descriptions.
The naming convention is largely consistent with a verb_noun pattern (compute_*, validate_*, check_*, etc.), though there are minor deviations such as 'acdc_said_check' and 'baas_provider_comparator' which do not follow the pattern.
548 tools is extremely excessive for any MCP server. Even for a broad fintech suite, this number is unwieldy and likely overwhelms agents. Many tools are highly granular, leading to a bloated tool surface.
The tools cover an exceptionally wide range of fintech domains including compliance, payments, AI governance, trade, and risk management. Most major regulatory frameworks and financial operations are addressed, though minor gaps may exist in specific sub-areas.
Available Tools
632 toolsacdc_said_checkRecompute ACDC / vLEI credential SAIDs (structural integrity)ARead-onlyIdempotentInspect
Agent-facing mirror of the tools/553 browser workbench (VS-1) -- recomputes the self-addressing identifiers (SAIDs) of a pasted ACDC / vLEI credential JSON (top-level "d" plus any nested a/e/r blocks) under the KERI/CESR Blake3-256 ("E") or SHA2-256 ("I") derivation codes, and cross-checks the declared schema SAID ("s") against a pinned table of 6 official GLEIF vLEI schema SAIDs. Reuses the SAME vendored SAID-check module as T553 -- the same credential produces byte-identical findings in either surface. Returns per-field match/mismatch/unsupported/unknown findings plus a receipt. This is a STRUCTURAL check only -- NOT the KERI chain of trust, NOT issuer authority, NOT revocation state. No network egress.
| Name | Required | Description | Default |
|---|---|---|---|
| credential | Yes | ACDC / vLEI credential JSON object (v, d, i, ri, s, a, e, r fields). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only, idempotent, non-destructive. Description reinforces this by stating it returns findings and receipt, no network egress. Adds detail on derivation codes and schema cross-check, exceeding annotation basics.
Agents need to know what a tool does to the 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 tight sentences front-loading purpose, scope, behavior, and exclusions. Every sentence delivers key 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?
Description covers all necessary aspects: input, processing, derivation codes, cross-check, output type, and what is excluded. Sufficient for an agent to select and invoke correctly without 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?
Single parameter 'credential' is described as ACDC/vLEI JSON object with expected subfields (v, d, i, ri, s, a, e, r). Schema coverage 100%, but description adds meaning about how these fields are processed (SAID recomputation, schema cross-check), which is 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 it recomputes SAIDs of ACDC/vLEI credentials under specific derivation codes and cross-checks schema SAID against a pinned table. It distinguishes this as a structural integrity check separate from trust/authority/revocation 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 lists what the tool does (structural SAID check) and what it does NOT do (KERI chain of trust, issuer authority, revocation). Mentions reuse of T553 module, giving context for expected behavior.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
adjudicate_emir_reconciliationEMIR Trade-Repository Reconciliation AdjudicatorBRead-onlyIdempotentInspect
EMIR Trade-Repository Reconciliation Adjudicator: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-483-emir-break-ageing. Open at: https://ainumbers.co/chaingraph/art-482-emir-recon-adjudicator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations by stating that inputs are 'processed transiently to compute the response and are not stored, logged, or retained' and that the tool is 'Deterministic'. This aligns with the readOnlyHint and idempotentHint annotations, providing additional safety assurances.
Agents need to know what a tool does to the 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 moderately concise but includes technical jargon and a URL, which may not be immediately useful. It front-loads the title and key concept, but the density of information could be streamlined 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?
Despite the complexity (4 parameters, nested objects, no output schema), the description fails to explain what the adjudication result is or what the output artifact contains. It mentions an 'AP2 artifact' and 'execution_hash' but does not describe the return structure, leaving a significant gap 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 description coverage is 100%, so the baseline is 3. The description repeats some parameter information (e.g., compute modes) but adds context about the overall processing flow, not deep parameter semantics. It does not substantially 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 states the tool as an 'EMIR Trade-Repository Reconciliation Adjudicator' and an 'OpenChainGraph compute node', which clearly indicates its role in EMIR reconciliation. However, it does not differentiate from sibling EMIR tools like 'reconcile_emir_pairing' or 'validate_emir_trade_report', relying on the name for 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 a warning to 'Use synthetic or anonymised inputs only' and explains compute modes, but it offers no guidance on when to choose this tool over siblings or in what scenario it is appropriate. The usage context is only implied by the tool's name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
age_emir_reconciliation_breaksEMIR Reconciliation Break AgeingARead-onlyIdempotentInspect
EMIR Reconciliation Break Ageing: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-482-emir-recon-adjudicator. Open at: https://ainumbers.co/chaingraph/art-483-emir-break-ageing.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and idempotentHint=true. The description adds valuable behavioral details: transient processing (inputs not stored/logged/retained), deterministic nature, and compute mode delegation. No contradictions with annotations were found.
Agents need to know what a tool does to the 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 long and contains some redundancy (e.g., 'Deterministic OpenChainGraph compute node' appears twice). While it is information-dense, it could be more concise. The URL at the end may be extraneous 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?
Despite covering compute modes, transient processing, and chaining, the description lacks details about the output format or what the aged breaks data contains. Since there is no output schema, the description should compensate by describing the AP2 artifact's structure, which it does not adequately.
Complex tools with many parameters or behaviors need more documentation. 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 meaning by explaining the role of parent_hashes and parent_tool_ids in chain provenance and the purpose of policy_parameters as input for the decision function. This context 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 is for 'EMIR Reconciliation Break Ageing' as an OpenChainGraph compute node that exports an AP2 artifact. It mentions consuming upstream artifacts from an adjudicator, linking it to the EMIR domain. However, it does not explicitly differentiate from sibling tools like 'adjudicate_emir_reconciliation' or 'reconcile_emir_pairing', missing some 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?
The description includes a safety guideline ('Use synthetic or anonymised inputs only') and explains compute modes, but it does not specify when to use this tool over alternatives. No explicit context for selection among siblings is provided, making usage guidance 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.
agentic_mandate_sandboxAgentic Mandate SandboxARead-onlyIdempotentInspect
Simulate agent payment policies for tokenized A2A corridors: set spend caps, MCC allowlists, velocity throttles, and approval thresholds; run synthetic transactions against the policy and export the result as a Policy Mandate. Browser-based, client-side only, zero PII. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive. The description adds critical behavioral context: client-side execution, no network calls, no PII, uses AIN Bridge for inputs, and renders an interactive widget. This exceeds the information in 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 front-loaded with the main purpose and capabilities. Slight redundancy on 'client-side' and 'zero PII' across two sentences, but remains clear and well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, constraints, input mechanism, and execution environment. The mention of 'export result as a Policy Mandate' provides sufficient context for 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?
The sole parameter 'inputs' has a schema description (100% coverage). The description adds value by explaining it's a map of element IDs to values applied via AIN Bridge prefill, and referencing the manifest input_schema for 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 simulates agent payment policies with specific capabilities (spend caps, MCC allowlists, velocity throttles, approval thresholds). It distinguishes itself from siblings like 'simulate_spend_policy' by emphasizing it's a sandbox with an interactive widget and client-side 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 specifies the tool is browser-based, client-side only, and zero PII, which implies it's safe for experimentation. However, it does not explicitly mention when to use this tool over alternatives like 'simulate_spend_policy' 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.
aggregate_cbam_precursor_emissionsCBAM Precursor-Emissions AggregatorARead-onlyIdempotentInspect
CBAM Precursor-Emissions Aggregator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-68-carbon-compliance-fit-diagnostic. Output feeds: art-69-cbam-embedded-emissions-calculator, cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-72-cbam-precursor-emissions-aggregator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds important behavioral context: 'Inputs are processed transiently to compute the response and are not stored, logged, or retained.' It also mentions deterministic execution, AP2 artifact export, and chain provenance. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at 5 sentences, front-loaded with the core purpose. Every sentence adds meaningful information: purpose, compute behavior, data handling, provenance, and a link for more details. 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 that it has no output schema, 4 parameters (0 required), and comprehensive annotations, the description provides sufficient context: it explains the chain graph context, compute modes, data handling, and gives a URL. However, it does not describe the output artifact structure beyond execution_hash, which 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%, so the baseline is 3. The description adds some value for the 'compute' parameter by explaining its behavior, but for other parameters (parent_hashes, parent_tool_ids, policy_parameters) it relies on the schema descriptions. No detailed elaboration or examples 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 it is a 'CBAM Precursor-Emissions Aggregator' and an 'OpenChainGraph compute node (compliance_mandate)' with deterministic behavior. It differentiates from siblings like 'calculate_cbam_embedded_emissions' by specifying its role as an aggregator in a chain with specific upstream/downstream artifacts. However, it could be more explicit about what 'precursor emissions' are, leaving some 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?
Provides clear guidance on compute modes: 'auto', 'server', 'browser', and explains when each is used (e.g., gpu:true nodes always delegate to browser). Also advises 'Use synthetic or anonymised inputs only.' However, it does not explicitly state when not to use this tool or compare it to sibling tools for alternative uses.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aggregate_execution_receiptsAgent-Action Audit-Trail AggregatorARead-onlyIdempotentInspect
Agent-Action Audit-Trail Aggregator: OpenChainGraph compute node (cryptographic_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-30-agent-commerce-conformance-validator, art-31-a2a-x402-extension-mandate-validator, art-33-mcp-server-self-attestation-pack. Output feeds: cry-04-merkle-batch-verifier, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/cry-05-agent-action-audit-trail-aggregator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds critical context: 'Inputs are processed transiently to compute the response and are not stored, logged, or retained.' This significantly clarifies data handling behavior beyond annotations, with 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 front-loaded with the tool's purpose and type. It is well-structured but somewhat dense with technical terms (e.g., 'OpenChainGraph compute node', 'cryptographic_mandate'), which may reduce clarity for some agents. Overall, every sentence contributes 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 covers compute modes, transient processing, and artifact export. It lists upstream and downstream artifacts for chaining. However, it does not describe the response format or what the aggregated output contains, which is a gap given no output schema. The agent lacks information on the return value.
Complex tools with many parameters or behaviors need more documentation. 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 all parameters have descriptions in the schema. The description does not add meaningful new information about parameters beyond what the schema provides (e.g., compute modes are covered). Baseline 3 is appropriate; the description adds 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 identifies the tool as an 'Agent-Action Audit-Trail Aggregator' and an 'OpenChainGraph compute node', clearly indicating it aggregates execution receipts for audit trails. It specifies it is deterministic and exports an AP2 artifact. However, it does not differentiate from numerous sibling tools with similar names (e.g., 'aggregate_ownership_50pct'), relying on context rather than explicit 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?
The description explains when to use different compute modes (auto, server, browser) based on gpu and kernel availability, providing practical guidance. It also advises using synthetic or anonymised inputs only. However, it does not mention alternatives among the many sibling tools or specify 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.
aggregate_ownership_50pctOwnership 50%-Rule AggregatorCRead-onlyIdempotentInspect
Ownership 50%-Rule Aggregator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-90-sanctions-screening-fit-diagnostic. Output feeds: art-92-screening-list-coverage-checker, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-91-ownership-50pct-aggregator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds significant behavioral context: inputs are transient and not stored, logged, or retained; execution modes (server-side on Cloudflare Workers or browser delegation) are explained; and deterministic nature is stated. This goes beyond annotations and enhances 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 dense paragraph covering many technical details (compute modes, Cloudflare Workers, browser delegation, data handling). While it is structured with a clear sequence, it could be more concise and front-loaded. Some details may be unnecessary for an agent to decide on 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 complexity (4 parameters, no output schema), the description lacks completeness. It explains compute modes and data handling but does not describe the output artifact's structure or content beyond mentioning an execution_hash. The core function (what the 50% rule aggregation produces) is not fully explained. A URL is provided for more info, but the description itself is 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?
Schema description coverage is 100%, so the baseline is 3. The description mentions compute modes and references policy_parameters, but does not add substantial new meaning beyond the schema's own descriptions. The 'policy_parameters' field is left vague ('See the tool's manifest for field names'), which is a minor gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as an 'Ownership 50%-Rule Aggregator' and an 'OpenChainGraph compute node (compliance_mandate)', which hints at aggregation of ownership data under a 50% rule. However, it does not explicitly state what the tool computes or what the output represents, leaving the core purpose somewhat vague. The name and title provide partial 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?
The description mentions upstream and downstream artifact dependencies (e.g., consumes from art-90, feeds art-92 and cry-05), giving pipeline context. However, it does not provide explicit guidance on when to use this tool versus its siblings, such as compute_cdd_ownership_25pct or other aggregate tools. No 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.
aggregate_reputation_scoreProvable Reputation Score AggregatorARead-onlyIdempotentInspect
Provable Reputation Score Aggregator: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-278-reputation-score-aggregator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds value by stating determinism, transient input processing ('not stored, logged, or retained'), and output behavior ('exports an AP2 artifact with execution_hash for chain provenance'). These details enhance transparency beyond annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose and contains no superfluous sentences. It is slightly long (4 sentences) but each sentence adds essential information. Could be tightened by combining some points, but overall 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 tool complexity (4 params, nested objects, no output schema), the description covers purpose, compute modes, data handling, and output artifact. It lacks error conditions or prerequisites, but includes a reference URL for further details. Adequately complete 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 coverage is 100%, but the description adds significant context beyond schema definitions. It explains the compute mode behavior in relation to GPU nodes and browser delegation, and clarifies that policy_parameters are computed server-side for auto/server modes. This reduces ambiguity for 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 it is a 'Provable Reputation Score Aggregator' and an 'OpenChainGraph compute node', which identifies the verb (aggregate) and resource (reputation score). It distinguishes itself as part of a specific framework (OpenChainGraph with attestation mandate). However, it does not explicitly differentiate from sibling aggregation tools like aggregate_cbam_precursor_emissions or aggregate_execution_receipts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context for compute modes (auto, server, browser) and advises using synthetic or anonymized inputs. However, it lacks explicit guidance on when to choose this tool over alternative aggregation tools or when to avoid it. The mention of 'attestation_mandate' implies a specific compliance context but is not fully elaborated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aggregate_solvency2_scr_modulesSolvency II SCR Standard-Formula Module AggregatorARead-onlyIdempotentInspect
Solvency II SCR Standard-Formula Module Aggregator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-180-solvency2-scr-ratio-calculator. Open at: https://ainumbers.co/chaingraph/art-449-solvency2-scr-module-aggregator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. Description adds details: deterministic execution, transient processing (no storage), requirement for synthetic inputs, compute mode behavior, and output artifact with execution_hash. This provides useful context beyond annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is front-loaded with purpose, then explains compute modes and data handling. It is reasonably concise but could be tighter by removing redundant phrases like 'OpenChainGraph compute node' 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 complexity (4 params, nested objects, no output schema), the description covers compute modes, input restrictions, output artifact, and downstream consumer. However, it lacks explanation of the aggregation logic and output format, which would help 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%, so baseline is 3. Description adds some value by detailing compute modes, but does not explain parent_hashes, parent_tool_ids, or policy_parameters 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?
Description states it's a Solvency II SCR Standard-Formula Module Aggregator and an OpenChainGraph compute node, which clearly identifies its domain and action. However, it does not explicitly specify what 'aggregating' entails (e.g., combining module results) and relies on the title for context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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, common use cases, or exclusions, despite multiple sibling tools with similar 'aggregate_' prefixes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aggregate_taxonomy_kpi_garTaxonomy KPI & Green Asset Ratio AggregatorBRead-onlyIdempotentInspect
Taxonomy KPI & Green Asset Ratio Aggregator: OpenChainGraph compute node (model_governance). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-73-taxonomy-alignment-scorer. Output feeds: cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-74-taxonomy-kpi-gar-aggregator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: deterministic execution, compute mode handling, transient input processing, chain provenance, and the requirement to use synthetic inputs. Annotations already provide readOnlyHint, idempotentHint, destructiveHint.
Agents need to know what a tool does to the 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 informative but somewhat verbose with repeated phrases like 'Deterministic OpenChainGraph compute node'. It front-loads the purpose but could be more 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?
Despite describing execution mechanics, the description does not specify the output format or what the AP2 artifact contains, which is critical since there is no output schema. This leaves the tool's return value unclear.
Complex tools with many parameters or behaviors need more documentation. 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 briefly mentions compute modes and references the tool's manifest for policy parameters but adds 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 tool as a 'Taxonomy KPI & Green Asset Ratio Aggregator' and specifies it is an 'OpenChainGraph compute node (model_governance)'. However, it does not explicitly differentiate from sibling tools like 'score_taxonomy_alignment'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and internal mechanics but provides no guidance on when to use this tool over alternatives. 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.
allocate_ihb_interestIHB Interest AllocationARead-onlyIdempotentInspect
IHB Interest Allocation: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-259-compute-multilateral-netting, art-262-validate-ebam-acmt-flow. Open at: https://ainumbers.co/chaingraph/art-260-allocate-ihb-interest.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and destructiveHint. The description adds significant behavioral context: deterministic execution, transient input processing (no storage/logging), artifact export with execution_hash for chain provenance, and compute mode behavior. This goes beyond annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the tool's core identity and is structured in logical flow: identity, compute modes, data handling, output, dependencies. Every sentence adds necessary information, though could be slightly more 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 complexity (4 parameters, nested objects, no output schema), the description covers key aspects: compute modes, transient processing, synthetic inputs, artifact export, and upstream dependencies. However, it does not detail the AP2 artifact structure or explain what IHB interest allocation entails, leaving some context 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?
With 100% schema coverage, the baseline is 3. The description provides context for the compute parameter (explains enum values) and notes that policy_parameters are for the decision function. However, it relies on the tool's manifest for field names and does not add deep 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 it is an IHB Interest Allocation compute node for OpenChainGraph, specifying it is deterministic and explaining compute modes. It provides a specific purpose (allocation) and resource (ChainGraph compute node). However, it does not explicitly differentiate from sibling tools, though the specificity is high enough to be clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes (auto, server, browser) based on gpu:false vs gpu:true and kernel registration. It also instructs to use synthetic or anonymised inputs only. However, it does not provide guidance on when not to use this tool or mention alternative tools for similar tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
amortize_asc606_commissionsASC 340-40 Commission AmortizationARead-onlyIdempotentInspect
ASC 340-40 Commission Amortization: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-266-reconcile-commission-statement. Open at: https://ainumbers.co/chaingraph/art-265-amortize-asc606-commissions.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description provides extensive behavioral details beyond annotations: deterministic execution, compute mode options (auto/server/browser), transient data processing (not stored/logged/retained), and output as an AP2 artifact with execution_hash for chain provenance. It also warns to use synthetic/anonymized inputs. This fully discloses behavior, and no contradictions with annotations 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 concise yet comprehensive, covering purpose, compute modes, data handling, output, provenance, and workflow context in a well-structured manner. Every sentence adds necessary 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?
The description covers purpose, behavior, parameters, and output (AP2 artifact with execution_hash). With no output schema, it explains the output's role. However, it could explicitly state the expected response structure or format for completeness, but the current detail is largely sufficient given the 4-parameter schema coverage.
Complex tools with many parameters or behaviors need more documentation. 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 all parameters. The description adds meaningful context for the compute parameter by explaining the modes and their implications. It also clarifies the role of policy_parameters (computed server-side for registered kernels). The mention of the output artifact and chain provenance adds 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 tool's purpose: amortize commissions per ASC 340-40. It specifies it's a compliance-mandate OpenChainGraph compute node, distinguishing it from sibling tools like build_amortization_schedule or reconcile_commission_statement. The reference to the upstream artifact and the link further clarify its role in a workflow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 the upstream artifact (art-266-reconcile-commission-statement) and the compliance mandate, but it does not explicitly state when to use this tool versus alternatives. With a large sibling list including similar tools, explicit guidance would improve clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_dc_vs_lc_cost_benefitDocumentary Collection vs Letter of Credit Cost-BenefitARead-onlyIdempotentInspect
Documentary Collection vs Letter of Credit Cost-Benefit: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-478-analyze-dc-vs-lc-cost-benefit.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint:true, idempotentHint:true), the description adds crucial behavioral details: deterministic execution, compute mode behavior (server vs browser), transient processing with no data retention, and artifact export with execution_hash. This fully informs an agent about side effects and execution model.
Agents need to know what a tool does to the 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 well-structured with a clear purpose statement, compute mode explanation, privacy note, and output summary. It is slightly verbose with repeated 'OpenChainGraph compute node' phrase, but overall 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?
Given no output schema, the description explains the artifact export and execution_hash, but does not describe the actual return value (e.g., cost-benefit metrics, format). For a decision-support tool, this is a notable gap in 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% (all parameters documented in schema). The description adds minimal parameter value beyond the schema, mentioning compute modes generically and policy_parameters as 'input parameters'. Baseline 3 is appropriate since schema already 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 it performs a cost-benefit analysis between Documentary Collection and Letter of Credit. The title and first line both specify the comparison, and the resource is uniquely identified. This 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 does not provide guidance on when to use this tool versus alternatives. It explains compute modes but lacks context on scenarios where this analysis is appropriate or when other tools might be preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_prediction_marketPrediction Market AnalyzerARead-onlyIdempotentInspect
Prediction Market Analyzer: OpenChainGraph compute node (event_market_pnl). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-212-prediction-market-arbitrage. Open at: https://ainumbers.co/chaingraph/art-211-prediction-market-analyzer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds value beyond annotations by detailing that inputs are transiently processed and not stored, and that the tool exports an AP2 artifact with execution_hash. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose, followed by key behavioral details. It is concise given the complexity, with each sentence serving a purpose. Some redundancy could be trimmed, but overall 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 4 parameters, nested objects, and no output schema, the description covers compute modes, transient processing, artifact export, and output feed. It adequately informs about prerequisites (synthetic inputs) and behavior, though lack of output format details is mitigated by the artifact mention.
Complex tools with many parameters or behaviors need more documentation. 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 minor context, such as explaining that 'compute' modes affect where execution happens and that 'policy_parameters' are computed server-side for certain nodes. This adds some value 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?
The description clearly states the tool is a 'Prediction Market Analyzer' and an 'OpenChainGraph compute node (event_market_pnl)', which identifies its specific function. It distinguishes itself from siblings like 'find_prediction_arbitrage' by focusing on computation of PnL within the ChainGraph framework.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on when to use different compute modes (auto, browser, server) and notes that inputs should be synthetic or anonymized. However, it does not compare directly to sibling tools or specify exact scenarios for choosing this tool over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
anchor_document_integrityDocument Integrity & eIDAS Electronic Timestamp AnchorARead-onlyIdempotentInspect
Document Integrity & eIDAS Electronic Timestamp Anchor: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-122-timestamp-attestation-verifier. Open at: https://ainumbers.co/chaingraph/art-121-document-integrity-anchor.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description confirms the idempotent and read-only nature ('Deterministic', 'inputs are not stored') and explains key behaviors like compute modes and browser delegation, adding value beyond annotations which already state readOnlyHint=true and idempotentHint=true. It lacks details on error handling or default behavior when no parameters are given.
Agents need to know what a tool does to the 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 each sentence providing essential information. It is front-loaded with the core identity and purpose, followed by compute mode details, data handling, and output. No redundant or wasted sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, compute modes, data privacy, and output artifact, which is adequate given the 4 parameters (all optional) and no output schema. It references a documentation URL for further details, but could be slightly more explicit about the response format 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 description coverage is 100%, and the description repeats some schema details (e.g., compute enum) without adding significant new meaning. It provides limited additional context beyond the schema, such as clarifying gpu:true behavior for compute, but does not enrich understanding of other 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 this is a 'Document Integrity & eIDAS Electronic Timestamp Anchor' and a 'Deterministic OpenChainGraph compute node', which precisely identifies its function. It differentiates itself from siblings like 'verify_timestamp_attestation' by focusing on anchoring rather than 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 explains when to use different compute modes ('auto', 'server', 'browser') based on node type and gpu flag, and warns to use synthetic inputs only. However, it does not explicitly contrast with alternative tools for similar tasks, missing a clear when-to-use vs. alternatives statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
anchor_stampAnchor an execution_hash (or batch) at a real timestamp authorityAInspect
Calls the anchor-suite MCP server (server-to-server, not the browser CORS-gated relay) to timestamp one execution_hash, or batch-anchor an array via anchor-suite's own anchor_batch (one upstream call per batch, RFC 6962 Merkle root anchored, per-hash merkle_inclusion returned), and shapes the result as literal OCG v0.7 section 20 anchor_bindings entries ready to append to an artifact. Success is only reported after this tool independently confirms anchored_hash (or, for a batch entry, merkle_inclusion.leaf) equals the caller-supplied hash -- it does not merely trust anchor-suite's response. On ANY failure -- anchor-suite unreachable, erroring, timing out, or an equality mismatch -- returns {ok:false, unanchored:true, reason} verbatim, never a fabricated binding. Caller-invoked only; not wired into any automatic per-artifact-emission path.
| Name | Required | Description | Default |
|---|---|---|---|
| authority | No | Defaults to whatever anchor-suite's own anchor_hash/anchor_batch default to today (currently sigstore for rfc3161-tst) -- this tool does not own or hardcode a preference beyond that mirror. | |
| execution_hash | Yes | The execution_hash(es) to anchor. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations claim no read-only, no idempotency, no destructiveness. The description elaborates meaningfully: success is only reported after independent confirmation of hash equality, failures return {ok:false, unanchored:true, reason} verbatim, never fabricating bindings, and the authority default is delegated/mirrored from anchor-suite. This is deep and valuable behavior disclosure beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well organized with clear cause-effect chains, but somewhat long — the failure-mode sentence and trust rationale could be tightened. Front-loads the core action first, which is good. No wasted 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?
Complex tool (real-time authority, batch anchoring, cryptographic verification, OCG shaping) with no output schema, yet the description fully explains the success/failure contract, the verification guarantee, the batch mechanics, and the calling context. An agent can predict exactly what happens in every path.
Complex tools with many parameters or behaviors need more documentation. 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 semantics for execution_hash (single vs 2+ batch array, RFC 6962 Merkle root, per-hash merkle_inclusion) and authority (mirrors anchor-suite default). Only minor gap: array items lack 'sha256:' prefix documentation but this is minor.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear, specific action: timestamping execution_hash(es) via anchor-suite at a real timestamp authority, shaping results as OCG v0.7 section 20 anchor_bindings. Distinguishes from siblings (e.g., verify_execution_hash, verify_timestamp_attestation) by noting server-to-server vs browser relay and the explicit OCG shaping.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explains when this is called (caller-invoked only, not wired into automatic emission), the batch vs single path, and its trust posture. Lacks explicit when-not/alternative tool naming, but the caller-invoked note and clear scope give sufficient context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ap2_aml_mandate_builderAP2 AML Mandate BuilderARead-onlyIdempotentInspect
Anchor agentic tool for Cat-12. Translate AML/BSA program controls, TM rules, and customer risk policy into a structured Policy Mandate JSON for agentic payment sy Browser-based, client-side only. Zero PII. Link users to https://ainumbers.co/tools/131-ap2-aml-mandate-builder.html for interactive use. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds valuable behavioral context beyond the annotations: it confirms zero PII, client-side only, zero network, and explains it renders as a widget with inputs via AIN Bridge. Annotations already indicate readOnlyHint=true and destructiveHint=false, which are consistent. 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 and front-loads the core purpose. It efficiently conveys the transformation, execution model, and user link. Minor redundancy between the first and last sentences could be tightened, but overall it is 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's complexity (nested input, output schema exists), the description covers the transformation, execution constraints (client-side, zero PII), and directs users to an interactive version. It addresses the main aspects for an agent to understand and use the tool, though it lacks detail on output structure (output schema not shown).
Complex tools with many parameters or behaviors need more documentation. 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 'inputs' parameter, describing it as a map of element IDs to values. The tool description does not significantly add to that; it repeats 'inputs are applied via the AIN Bridge'. With high 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 it translates AML/BSA controls, TM rules, and customer risk policy into a Policy Mandate JSON. It identifies itself as an 'anchor agentic tool for Cat-12'. However, it does not differentiate from sibling tools like 'build_google_ap2_mandate' which likely has a similar purpose, missing explicit 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?
The description provides no guidance on when to use this tool versus alternatives. It mentions 'Cat-12' which implies a specific category but does not explicitly state when not to use it or how it compares to siblings like 'compile_work_mandate' or 'build_google_ap2_mandate'. Usage context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apply_climate_scenarioClimate Scenario Applicator (NGFS / Fit-for-55)ARead-onlyIdempotentInspect
Climate Scenario Applicator (NGFS / Fit-for-55): OpenChainGraph compute node (model_governance). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-68-carbon-compliance-fit-diagnostic, art-71-cbam-certificate-cost-engine. Output feeds: cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-76-climate-scenario-applicator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds behavior such as 'deterministic', transient processing without storage, and GPU delegation rules. It does not contradict annotations and provides meaningful additional context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with the tool's title and core purpose, then detailing behavior and dependencies. It is informative without excessive verbosity, though slightly long.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 key aspects: compute modes, transient processing, artifact export, and upstream/downstream links. However, it does not explain 'AP2 artifact' or the decision function in depth, which may be needed 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?
Input schema covers 100% of parameters with descriptions. The description adds context for the 'compute' parameter but does not elaborate on 'parent_hashes' or 'parent_tool_ids' beyond what the schema provides. The baseline is 3 due to 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 states the tool applies climate scenarios (NGFS / Fit-for-55) and identifies it as an OpenChainGraph compute node. It mentions upstream and downstream dependencies, distinguishing it from sibling tools that perform other specialized 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?
The description provides guidance on compute modes (auto, server, browser) and conditions for server vs. client-side execution. It advises using synthetic or anonymized inputs. However, it does not explicitly compare with alternative tools 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.
assemble_ai_addendumAI Addendum AssemblerARead-onlyIdempotentInspect
AI Addendum Assembler: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-412-ai-act-procurement-clause-mapper. Output feeds: art-409-dpa-art28-completeness-checker. Open at: https://ainumbers.co/chaingraph/art-411-ai-addendum-assembler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds beyond these: it states determinism, transient processing with no storage/logging/retention, and artifact export with execution_hash for chain provenance. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is detailed but efficient, with each sentence contributing meaningful information about purpose, behavior, parameters, and provenance. It is well-structured with technical specifics, though slightly verbose in listing upstream/downstream artifacts.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 an output schema, the description covers input behavior, compute modes, transient processing, and artifact export. It references upstream and downstream artifacts for chain context, providing sufficient completeness for an agent to use the tool 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% with descriptions for each parameter. The description adds context beyond the schema, explaining compute mode behavior (e.g., server-side on Cloudflare Workers, browser delegation for gpu:true), which enhances understanding of how to use 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 identifies the tool as an AI Addendum Assembler within the OpenChainGraph, specifying it as a compliance mandate compute node and linking to specific upstream/downstream artifacts. It distinctively mentions its role in chain provenance, though it does not explicitly differentiate from siblings like 'assemble_aiuc1_evidence_pack' or 'assemble_license_terms', which share a similar pattern.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage constraints such as using synthetic or anonymised inputs only and explains compute modes ('auto', 'server', 'browser'), but lacks explicit guidance on when to use this tool versus alternative siblings or when not to use it. The context given is helpful but not comparative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assemble_aiuc1_evidence_packAIUC-1 Evidence Pack AssemblerARead-onlyIdempotentInspect
AIUC-1 Evidence Pack Assembler: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-303-aiuc1-control-evidence-linter, cry-05-agent-action-audit-trail-aggregator. Output feeds: art-305-aiuc1-evidence-freshness-lint. Open at: https://ainumbers.co/chaingraph/art-304-aiuc1-evidence-pack-assembler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds valuable context: it confirms determinism, explains transient processing (inputs not stored/logged/retained), and describes the export of an AP2 artifact with execution_hash. This goes beyond the annotations and paints a clear picture of the tool's behavior. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded with the purpose. Key details follow in a logical order: compute modes, transient processing, input warnings, output, and chain links. There is minor redundancy ('OpenChainGraph compute node' repeated twice), but overall it is efficient and clear for an 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 complexity of four parameters (including nested objects) and no output schema, the description covers the essential aspects: compute modes, transient nature, chain provenance, and input sensitivity. It lacks details on the AP2 artifact's internal structure or hash derivation, but the read-only and idempotent annotations reduce the need. The description is largely complete for agent 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% and the schema descriptions are adequately detailed (e.g., compute enum with mode explanations, policy_parameters referencing manifest). The tool description does not add significant new meaning beyond the schema, except for the general compute mode behavior already captured. 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 as an 'OpenChainGraph compute node (compliance_mandate)' that assembles an AIUC-1 evidence pack and exports an AP2 artifact. It specifies the verb (assemble), resource (evidence pack), and role in a chain. However, it does not explicitly differentiate from similar sibling tools like 'assemble_ocg_evidence_bundle' or 'build_226j_response_evidence_pack', which could cause confusion for the 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 internal usage guidelines for compute modes ('auto', 'browser', 'server') and warns to use synthetic or anonymized inputs. It also lists upstream and downstream artifacts. However, there is no explicit when-to-use or when-not-to-use guidance compared to sibling tools, leaving the agent to infer context without clear alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assemble_license_termsLicense Terms AssemblerARead-onlyIdempotentInspect
License Terms Assembler: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-204-license-compatibility-checker. Output feeds: art-206-rights-record-builder. Open at: https://ainumbers.co/chaingraph/art-205-license-terms-assembler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readonly and idempotent. The description adds that inputs are processed transiently (not stored, logged, retained) and that it exports an AP2 artifact with execution_hash. This goes beyond annotations by detailing data handling and provenance output, with 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 moderately concise, with each sentence adding new information. It starts with the tool name and purpose, then compute modes, data handling, chain context, and URL. It is well-structured but slightly dense; could be trimmed of minor redundancies like the repeated 'deterministic OpenChainGraph compute node'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 parameters, nested objects, no output schema), the description covers purpose, compute options, data transient nature, artifact export, and chain dependencies. It does not explain return values, but the artifact export is mentioned. Overall, it provides a solid contextual 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 coverage is 100%, so the description adds limited value. It explains the compute modes and that policy_parameters are for the decision function, but this mostly paraphrases the schema. No additional parameter details like formats or constraints are provided 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 it is a 'License Terms Assembler' and an 'OpenChainGraph compute node', specifying the verb (assemble) and resource (license terms). It distinguishes from siblings by referencing the specific chain context (compliance_mandate, upstream/downstream artifacts). However, it could be more explicit about the exact action performed on license terms.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute modes (auto, server, browser) and when each is used (e.g., gpu:true nodes delegate to browser). It advises to use synthetic or anonymized inputs only, and mentions upstream/downstream artifacts, giving context for chaining. It lacks explicit exclusions or alternatives but provides sufficient context for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assemble_mutual_ndaMutual NDA ComposerARead-onlyIdempotentInspect
Mutual NDA Composer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-277-agreement-acceptance-binder. Open at: https://ainumbers.co/chaingraph/art-276-mutual-nda-composer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: deterministic computation, transient input processing (no storage), GPU delegation logic, and output of an AP2 artifact with execution_hash. Annotations already indicate readOnly and idempotent, so the description expands on safety and execution model.
Agents need to know what a tool does to the 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 paragraph with some redundancy (e.g., 'OpenChainGraph compute node' stated twice). It front-loads the title but mixes technical compute details with purpose. Slightly less concise than ideal; could be streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description explains the output artifact type and its destination ('Output feeds: art-277-agreement-acceptance-binder'). It covers compute modes and input handling. However, it does not describe the artifact's content (e.g., NDA terms, fields included). Still, it provides enough context for an agent to understand the tool's role in a pipeline.
Complex tools with many parameters or behaviors need more documentation. 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 4 parameters have schema descriptions (100% coverage), so the description adds minimal value for parameter meaning. It mentions compute modes and parent linking but does not elaborate on policy_parameters structure beyond referring to a manifest. 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 title 'Mutual NDA Composer' and description establish it as a tool for assembling mutual NDAs via an OpenChainGraph compute node. However, the description is heavy on compute node technicalities, and the purpose is not explicitly separated from sibling tools that also build documents (e.g., assemble_license_terms). Clear but lacks 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 provides usage constraints like 'Use synthetic or anonymised inputs only' and compute mode options ('auto', 'server', 'browser'). But it does not guide when to prefer this tool over alternatives (e.g., when to use a different NDA builder). No explicit when-not-to-use or intra-sibling comparison given the extensive sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assemble_ocg_evidence_bundleEvidence Bundle Tier LabelerBRead-onlyIdempotentInspect
Evidence Bundle Tier Labeler: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-408-evidence-bundle-tier-labeler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it explains compute modes (auto, server, browser), server-side vs client-side execution, transient processing with no storage, and the export of an AP2 artifact. Annotations already indicate idempotentHint and readOnlyHint, which align.
Agents need to know what a tool does to the 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 verbose with technical jargon (e.g., 'OpenChainGraph compute node (attestation_mandate)', 'gpu:false nodes', 'AP2 artifact'). It could be more concise and 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 the complexity (4 params, nested object, enums, no output schema), the description explains compute behavior well but does not clarify what the output artifact contains or what 'tier labeling' means. More detail on return value 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 covers all 4 parameters with descriptions (100% coverage). The description adds minor context for policy_parameters (decision function, manifest) 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 states it's an OpenChainGraph compute node that exports an AP2 artifact, indicating a specific verb (assemble) and resource (evidence bundle). However, it does not distinguish from sibling tools like assemble_aiuc1_evidence_pack or assemble_license_terms, which also assemble bundles.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 any guidance on when to use this tool vs alternatives. It does not mention prerequisites, when-not-to-use, or provide context about the tier labeling purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_agent_directory_publish_readinessAgent Directory Publish Readiness DiagnosticARead-onlyIdempotentInspect
Agent Directory Publish Readiness Diagnostic: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-133-agent-payment-rail-trust-crosswalk. Open at: https://ainumbers.co/chaingraph/art-134-agent-directory-publish-readiness.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as read-only, idempotent, and non-destructive. The description adds valuable beyond annotations: inputs are processed transiently and not stored, the tool exports an AP2 artifact with execution_hash, and compute modes are explained in detail. This provides transparency about processing and output behavior that annotations alone do not cover.
Agents need to know what a tool does to the 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 fairly long and includes technical details about compute modes, transient processing, and upstream artifacts. It front-loads the core purpose but then dives into specifics. While informative, it could be more concise; for example, the compute mode explanation could be streamlined. The structure is adequate but not exemplary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters with full schema coverage and no output schema. The description covers purpose, compute behavior, transient nature, output (AP2 artifact), and an upstream dependency. However, it lacks a clear explanation of the diagnostic output (e.g., what the readiness result looks like). For a diagnostic tool, describing the return format is important, and the description is insufficient in that regard.
Complex tools with many parameters or behaviors need more documentation. 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 itself documents all parameters. The description adds context for 'policy_parameters' by explaining they are computed server-side for certain conditions, but this is limited. Overall, the description does not significantly increase parameter understanding 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 is an 'Agent Directory Publish Readiness Diagnostic' and identifies it as a deterministic OpenChainGraph compute node. The verb 'assess' combined with the specific resource 'agent directory publish readiness' provides a clear purpose. While it doesn't explicitly differentiate from siblings like 'assess_mica_casp_readiness', the unique name and technical context (compliance_mandate, upstream artifact reference) sufficiently distinguish it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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, but it provides operational guidance: 'Use synthetic or anonymised inputs only' and explains behavior based on compute mode (auto/server/browser) and gpu flags. It mentions consuming upstream artifacts from a specific tool, implying a dependency chain. However, lacking explicit when-not conditions or alternative tool recommendations keeps it at 3.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_ai_act_conformityEU AI Act Credit-Scoring Conformity PackARead-onlyIdempotentInspect
EU AI Act Credit-Scoring Conformity Pack: OpenChainGraph compute node (model_governance). Regulatory deadline: 2027-12-02 (EU AI Act Annex III Part 5(b) — credit-scoring high-risk obligations fully apply 2 December 2027, per the Digital Omnibus amendments (Parliament final approval, June 2026)). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: ml-01-isolation-forest, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-05-eu-ai-act-credit-scoring-conformity.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint. The description adds that inputs are processed transiently and not stored, plus compute modes detail. 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?
Description is well-structured and front-loaded with purpose. Every sentence adds value, though dense. 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?
Covers output (AP2 artifact with execution_hash) and output feeds. However, policy_parameters field names are deferred to external manifest, and output artifact structure is not detailed. Adequate but 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?
Schema coverage is 100%, baseline 3. Description adds context on compute modes and purpose of policy_parameters, exceeding baseline by clarifying behavior beyond 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 assesses EU AI Act conformity for credit-scoring, with specific regulatory deadline and context. It distinguishes from general compliance tools 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?
Usage context is implied: for credit-scoring high-risk obligations under EU AI Act. Provides input hygiene ('synthetic or anonymised inputs only') but no explicit when-not-to-use or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_circumvention_diligenceCircumvention Diligence AssessorBRead-onlyIdempotentInspect
Circumvention Diligence Assessor: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-94-eccn-dual-use-classifier. Output feeds: art-96-no-russia-clause-pack-builder, cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-95-circumvention-diligence-assessor.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare the tool as read-only, idempotent, and non-destructive. The description adds substantial context: it is deterministic, inputs are processed transiently (not stored or retained), and it exports an AP2 artifact with execution_hash for provenance. This explains behavioral traits like side-effect freedom and data handling beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively long and contains technical details about compute infrastructure (e.g., Cloudflare Workers, gpu:false nodes, registered kernel) that may be unnecessary for an agent to decide when to use the tool. While structured, it could be more concise by focusing on core functionality and usage rather than implementation specifics.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 provides pipeline context (upstream/downstream artifacts) and input privacy warnings, which are helpful. However, it does not explain the return value beyond 'exports an AP2 artifact with execution_hash', leaving the agent unclear on what output to expect. Given the lack of an output schema, more detail on the artifact structure 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?
With 100% schema coverage, the description adds modest value beyond the schema. It explains the compute enum behavior in detail (modes, delegation) and gives an example upstream artifact for parent hashes, but for other parameters like policy_parameters it merely defers to a manifest. Overall, the description provides some additional clarity but not significantly more than 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 tool name and title indicate it assesses circumvention diligence, but the description focuses heavily on compute infrastructure (OpenChainGraph, compute modes, transient processing) rather than clearly stating what the tool actually does. The purpose is implied but not explicitly defined, making it vague for an agent to understand the core 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 mentions consuming upstream artifacts from 'art-94-eccn-dual-use-classifier' and outputting to specific downstream artifacts, which gives pipeline context. It also advises using 'synthetic or anonymised inputs only.' However, it does not explicitly state when to use this tool over alternatives or any conditions of non-use, relying on implied chain context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_cra_vuln_reporting_readinessCRA Vulnerability Reporting Readiness (Art. 14)ARead-onlyIdempotentInspect
CRA Vulnerability Reporting Readiness (Art. 14): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-139-cra-annex1-completeness-checker. Open at: https://ainumbers.co/chaingraph/art-140-cra-vuln-reporting-readiness.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that inputs are processed transiently, not stored or retained, and that the node is deterministic. These details go beyond the annotations (readOnlyHint, idempotentHint) by explaining data handling practices. There is no contradiction with annotations; the description adds valuable 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 detailed but not excessively long. It is front-loaded with the title and then systematically covers compute modes, data handling, and provenance. While some sentences could be tightened, the structure is logical and every sentence contributes useful 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 complexity (4 parameters, nested objects) and the presence of annotations and output schema absence, the description covers purpose, input handling, compute modes, data transient processing, upstream artifact dependency, and artifact export. It lacks explicit return value details but mentions 'Exports an AP2 artifact', which is sufficient for an assessment 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 meaning by explaining compute modes in detail (e.g., 'auto' computes server-side for gpu:false nodes with registered kernels) and that parent_hashes are for chaining provenance. For policy_parameters, it defers to the manifest but still provides context. This adds enough value to raise the score to 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 title and description clearly indicate it assesses CRA vulnerability reporting readiness per Article 14. The description mentions it is a deterministic ChainGraph node that exports an AP2 artifact with execution hash. While it doesn't use a simple verb+resource structure, the purpose is clear and distinguishes from siblings like 'assess_mica_casp_readiness' by focusing on CRA and referencing the specific upstream artifact.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, server, browser) and warns to use synthetic or anonymised inputs only. It explains when server-side vs browser execution occurs. However, it does not explicitly compare to alternative tools or state when not to use this tool. The guidance is present but incomplete for decision-making among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_defi_lendingDeFi Lending Health and Liquidation MonitorBRead-onlyIdempotentInspect
DeFi Lending Health and Liquidation Monitor: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-271-defi-lending-health.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds meaningful context: inputs are transient and not stored; compute modes and delegation behavior are explained; deterministic nature and artifact export are mentioned. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is informative but contains redundancy (e.g., 'OpenChainGraph compute node' repeated). It front-loads the title but could be more 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?
No output schema is provided. The description mentions exporting an 'AP2 artifact with execution_hash' but does not describe the content of the artifact (e.g., health/liquidation results). For a monitoring tool with nested objects, the output is underspecified.
Complex tools with many parameters or behaviors need more documentation. 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 extra meaning beyond the schema; 'policy_parameters' remains vague ('Input parameters for this tool's decision function').
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title 'DeFi Lending Health and Liquidation Monitor' clearly states the domain and resource type. The description expands on the compute node nature and data handling, but does not explicitly differentiate this tool from other assess_* siblings aside from naming. It's clear what the tool is about, but lacks 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?
Provides guidance on compute modes and input handling ('Use synthetic or anonymised inputs only'). However, it does not explain when to prefer this tool over alternatives, such as other assess tools or similar monitoring functions. No exclusion criteria or context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_iso42001_aims_conformanceISO 42001 AIMS Clause ConformanceARead-onlyIdempotentInspect
ISO 42001 AIMS Clause Conformance: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-172-ai-risk-impact-assessment-validator. Open at: https://ainumbers.co/chaingraph/art-171-iso42001-aims-clause-conformance.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description provides extensive behavioral context beyond annotations: deterministic execution, transient input processing with no storage/logging, compute mode implications, artifact export with execution_hash, and the requirement to use synthetic/anonymised inputs. There is no contradiction with annotations (readOnlyHint true, etc.).
Agents need to know what a tool does to the 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 well-structured, starting with the tool's purpose, then explaining compute modes, safety notes (transient processing, anonymised inputs), and output details. It is dense but each sentence provides necessary context. Minor redundancy with schema descriptions, 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?
While the description covers execution mechanics well, it lacks detail on the assessment output (e.g., what the AP2 artifact contains beyond execution_hash) and the expected structure of 'policy_parameters'. Given no output schema, the description should more clearly specify the return value. The link to a webpage partially compensates.
Complex tools with many parameters or behaviors need more documentation. 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, especially for 'compute' and 'policy_parameters'. The description adds context about Cloudflare Workers and delegation URLs for compute modes, but does not significantly deepen understanding of 'parent_hashes', 'parent_tool_ids', or 'policy_parameters' beyond the schema. 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 tool is for ISO 42001 AIMS clause conformance, identifying it as a specific assessment tool. However, it mixes implementation details (compute modes, transient processing) with the core purpose, which slightly dilutes clarity. The verb 'assess' is implied, and the resource is well-defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explicit guidance on when to use this tool versus its many siblings (e.g., assess_ai_act_conformity, assess_mica_casp_readiness). The description focuses on how the computation works (server/browser) rather than decision criteria for selection. The deterministic nature is noted but not positioned as a differentiator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_mar_crypto_surveillanceMAR-Crypto Surveillance-Readiness AssessorARead-onlyIdempotentInspect
MAR-Crypto Surveillance-Readiness Assessor: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-98-mica-casp-fit-diagnostic. Output feeds: cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-103-mar-crypto-surveillance-readiness.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable context: inputs are processed transiently and not stored/logged/retained, the tool is deterministic, and compute modes affect execution location (server vs. browser). This goes beyond the annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise at 6 sentences, front-loading the purpose. However, it includes repetitive details (e.g., 'Deterministic OpenChainGraph compute node' appears twice) and a URL that is extraneous for tool selection. It could be trimmed for better 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 no output schema, the description explains the output ('Exports an AP2 artifact with execution_hash for chain provenance'), upstream/downstream artifact links, and compute mode behaviors. It covers inputs, processing, and return format fairly completely for a tool with 4 parameters and nested objects.
Complex tools with many parameters or behaviors need more documentation. 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 provides additional context for the 'compute' parameter (default server-side for gpu:false nodes with registered kernel) and policy_parameters (decision function inputs, server-side computation conditions). However, for parent_hashes and parent_tool_ids, the description adds 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 explicitly states the tool's purpose as an 'MAR-Crypto Surveillance-Readiness Assessor' and identifies it as an 'OpenChainGraph compute node (compliance_mandate)' with a clear verb-resource combination. It distinguishes from siblings like 'assess_mica_casp_readiness' by specifying the exact regulatory scope (MAR-Crypto).
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 sibling tools is provided. The description mentions upstream and downstream artifact dependencies, hinting at workflow placement, but lacks comparative context or when-not-to-use instructions. The only usage hint is 'Use synthetic or anonymised inputs only.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_mica_casp_readinessCASP Authorization-Readiness AssessorARead-onlyIdempotentInspect
CASP Authorization-Readiness Assessor: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-98-mica-casp-fit-diagnostic, art-99-mica-transitional-deadline-router. Output feeds: art-101-mica-art67-own-funds-calculator, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-100-mica-casp-authorization-readiness.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and no destructiveness. The description adds valuable context: inputs are transient and not stored, the tool is deterministic, and it exports an AP2 artifact with execution_hash for provenance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a clear purpose statement, compute mode details, data handling, and chain context. However, it is somewhat lengthy and includes technical jargon that could be streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, the description covers purpose, compute behavior, data privacy, and chain integration. It does not explain the output format explicitly but references artifact export. The nested parameter 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%, so the description adds limited value. The 'policy_parameters' object is described incompletely ('See the tool's manifest'), and the description does not clarify its fields. Comput modes are detailed, but overall parameter semantics are not enhanced 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 identifies the tool as a 'CASP Authorization-Readiness Assessor' for OpenChainGraph, with a specific compliance mandate under MiCA. It distinguishes itself from sibling assess tools by referencing specific upstream and downstream artifacts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and advises using synthetic or anonymised inputs, but does not explicitly compare against sibling assess tools or specify when to use this tool over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_model_validation_statusModel Validation Status AssessorCRead-onlyIdempotentInspect
Model Validation Status Assessor: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-451-model-outcome-analysis. Open at: https://ainumbers.co/chaingraph/art-453-model-validation-status.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds context about transient processing, no storage, and artifact export. This adds some value but does not contradict annotations. However, it omits behavioral details like error handling or output interpretation.
Agents need to know what a tool does to the 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 verbose, containing technical details about compute modes and Cloudflare Workers that may be excessive for quick comprehension. It is front-loaded with the name but later sections could be trimmed for 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 complexity (4 params, nested objects, no output schema), the description covers compute modes and transient processing but fails to explain the output artifact's content or how to interpret the validation status result. This leaves a gap in 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 the schema already documents all four parameters. The description touches on 'compute' mode but does not add meaningful new information beyond what the schema 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 identifies the tool as a 'Model Validation Status Assessor' and a compute node, but does not explicitly define what 'model validation status' means or what specific assessment it performs. The purpose is implied by the name but not clarified in the description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 details on compute modes and transient processing but offers no guidance on when to use this tool versus its numerous sibling assess tools. It lacks explicit when-to-use or when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_naic_ais_program_readinessNAIC AI Systems Program Readiness AssessmentARead-onlyIdempotentInspect
NAIC AI Systems Program Readiness Assessment: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-239-test-bifsg-bias-thresholds. Open at: https://ainumbers.co/chaingraph/art-240-assess-naic-ais-program-readiness.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by detailing deterministic behavior, compute mode selection (auto/server/browser), transient processing (inputs not stored/logged/retained), requirement for synthetic inputs, artifact export with execution_hash, and upstream artifact consumption. Annotations only indicate readOnly, idempotent, and non-destructive; the description adds critical 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 front-loaded with the purpose and then provides technical details concisely. It is slightly dense but each sentence adds necessary information. Could potentially be 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?
Given the tool's complexity (4 parameters, nested objects, no output schema), the description covers compute modes, processing location, data handling policy, artifact export, and upstream dependency. It provides enough context for an AI agent to understand the tool's operation, safety, and integration 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%, so baseline is 3. The description adds value by explaining that policy_parameters are computed server-side for gpu:false nodes with registered kernel, and that browser mode returns delegation URL. This contextualizes parameter behavior beyond 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 identifies the tool as 'NAIC AI Systems Program Readiness Assessment' and specifies it is an OpenChainGraph compute node with compliance mandate. The name and description distinguish it from other assess_* tools (e.g., assess_ai_act_conformity) by targeting NAIC AI Systems Program specifically.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and deterministic behavior but provides no explicit guidance on when to use this tool versus sibling tools (e.g., assess_iso42001_aims_conformance, assess_model_validation_status). It does not state prerequisites, when not to use, or which scenarios warrant using this assessment over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_psd3_readinessPSD3 / PSR Readiness CheckerBRead-onlyIdempotentInspect
PSD3 / PSR Readiness Checker: OpenChainGraph compute node (compliance_mandate). Regulatory deadline: 2027-06-01 (EU PSD3 expected transposition ~2027; UK PSR enacted 2024 (APP reimbursement Oct 2024 already live)). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-04-agent-identity-attestation-checker, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-14-psd3-psr-readiness-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), the description adds that inputs are transient and not stored, that execution_hash is exported for provenance, and details compute mode behavior, including browser delegation. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured and front-loaded with key information, but contains multiple sentences that could be more concise. Each sentence adds value, though the link and output feeds list are slightly 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?
The description covers compute modes, data privacy, provenance, and output feeds. However, it lacks details on what the readiness assessment output contains (e.g., score, report), which is critical since there is no 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% with parameter descriptions. The description reiterates compute modes and vaguely mentions policy_parameters without adding specific field names. It adds some value 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 it is a PSD3/PSR Readiness Checker and explains its role as an OpenChainGraph compute node with regulatory deadlines. However, it does not explicitly differentiate from sibling 'assess_*' tools, relying on the name for context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 technical instructions on compute modes and data handling (use synthetic/anonymised inputs), but offers no guidance on when to use this tool over alternatives like assess_mica_casp_readiness or other readiness checkers.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_restaking_riskRestaking Delegation and Slashing Risk AnalyzerARead-onlyIdempotentInspect
Restaking Delegation and Slashing Risk Analyzer: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-272-restaking-risk.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by stating that 'Inputs are processed transiently to compute the response and are not stored, logged, or retained', and that it 'Exports an AP2 artifact with execution_hash'. This provides transparency on data handling and output. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with an opening statement followed by key details on compute modes, transient processing, and output artifact. Every sentence adds value, though it is slightly verbose but not wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (compute modes, deterministic, AP2 artifact) and the absence of an output schema, the description covers essential aspects: compute modes, transient processing, input guidelines, and output artifact. It could be more specific about the response structure but 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?
Schema description coverage is 100%, so the description adds no additional meaning beyond the schema. It references 'See the tool's manifest for field names' for policy_parameters, which is generic and does not enrich 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 title and description clearly state the tool is a 'Restaking Delegation and Slashing Risk Analyzer'. The description explains it is an OpenChainGraph compute node with deterministic execution, processing inputs transiently. This provides a clear purpose, though it does not explicitly differentiate from sibling tools with similar 'assess' prefixes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context such as compute modes (auto, server, browser) and advises 'Use synthetic or anonymised inputs only'. However, it lacks explicit guidance on when to use this tool versus alternatives, 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.
assess_suspect_product_statusDSCSA Suspect/Illegitimate Product Quarantine AssessorARead-onlyIdempotentInspect
DSCSA Suspect/Illegitimate Product Quarantine Assessor: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-113-saleable-returns-verifier. Open at: https://ainumbers.co/chaingraph/art-114-suspect-product-quarantine.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds key behavioral details: inputs are processed transiently and not stored, compute modes affect execution location, and the output is an AP2 artifact. This enriches the agent's understanding of side effects and data 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?
The description is structured with a clear title, followed by compute explanation and data handling policy. Each sentence contributes meaningful information, though it could be slightly more condensed without losing 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 4 parameters, nested objects, and no output schema, the description explains compute modes and data handling well but fails to specify the output structure or the decision function's return format. The 'policy_parameters' object is left vague, leaving the agent uncertain about expected input 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%, providing baseline. The description adds context for 'compute' mode (server vs. browser delegation) and hints that 'policy_parameters' drive the decision function. While not exhaustive, it complements the schema 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 is a 'DSCSA Suspect/Illegitimate Product Quarantine Assessor' and 'OpenChainGraph compute node', specifying its role in assessing suspect product status. It distinguishes from siblings by naming, but does not explicitly contrast 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 mentions inputs should be synthetic/anonymised and lists an upstream artifact ('art-113-saleable-returns-verifier'), implying a workflow. However, it lacks explicit guidance on when to use this tool versus alternatives or specific conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_traiga_exposureTRAIGA Exposure AssessorARead-onlyIdempotentInspect
TRAIGA Exposure Assessor: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-314-traiga-safe-harbor-pack-builder. Open at: https://ainumbers.co/chaingraph/art-313-traiga-exposure-assessor.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds significant behavioral details: transient processing of inputs (no storage), dynamic compute modes (auto/server/browser) depending on gpu flag, and export of an AP2 artifact with execution_hash. This helps an agent understand side effects and execution environments.
Agents need to know what a tool does to the 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 structured with clear sections: tool type, compute modes, data handling, input guidelines, output description, and links. It is informative without being overly verbose, though it could be slightly shorter for quicker 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?
The description covers compute modes, chaining, and transient processing well. However, it lacks explicit description of the output artifact's structure or what a 'TRAIGA assessment' actually contains. Given no output schema, the agent would benefit from a clearer statement of return value semantics.
Complex tools with many parameters or behaviors need more documentation. 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 goes beyond the schema by explaining the 'compute' parameter's enum values in detail (including default behavior and gpu interaction). It also clarifies 'parent_hashes' and 'parent_tool_ids' for chain provenance. The 'policy_parameters' object is referred to the manifest, which is acceptable but not fully detailed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as a TRAIGA Exposure Assessor and an OpenChainGraph compute node. It clearly states its role in compliance mandates and its deterministic nature. However, it focuses more on mechanism than a crisp verb+resource statement, and the exact output (exposure assessment) is implied rather than explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context like compute modes and a warning to use synthetic inputs only. It mentions that output feeds into a specific downstream tool (art-314-traiga-safe-harbor-pack-builder), implying a chain context. However, it does not explicitly state when to choose this tool over its many siblings, such as 'build_traiga_safe_harbor_pack'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_vida_drr_reporting_obligationViDA DRR Transaction ReporterARead-onlyIdempotentInspect
ViDA DRR Transaction Reporter: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-159-vida-einvoice-en16931-conformance-validator. Output feeds: art-161-vida-recapitulative-statement-migration-assessor. Open at: https://ainumbers.co/chaingraph/art-160-vida-drr-transaction-reporter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, idempotentHint, destructiveHint) are reinforced by description: 'Inputs are processed transiently...not stored, logged, or retained' and 'Deterministic'. Description adds context on compute delegation (gpu:true delegates to browser), client-side execution details, and privacy advice ('synthetic or anonymised inputs only'). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is well-structured with a clear header and logical flow, but somewhat lengthy due to technical details and a URL. Not every sentence earns its place; the URL and some compute mode details could be condensed. It is front-loaded with the primary 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 no output schema, the description partially compensates by mentioning exported AP2 artifact with execution_hash. It explains compute modes and pipeline dependencies. However, it does not describe the return format or the policy_parameters fields in detail (defers to manifest), leaving gaps for an agent to fully understand inputs/outputs.
Complex tools with many parameters or behaviors need more documentation. 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 does not add significant meaning beyond schema: it reiterates compute modes and briefly explains policy_parameters as decision function inputs, but relies on external manifest for field names. No additional syntax or constraints 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 identifies it as a ViDA DRR Transaction Reporter and an OpenChainGraph compute node for compliance_mandate. It explains the deterministic nature and compute modes, but the business function of 'reporting obligation' is somewhat implicit in the technical pipeline context. It distinguishes from siblings through specific artifact IDs (consumes art-159, outputs art-161).
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 as part of a ChainGraph pipeline by stating upstream and downstream artifacts. It provides details on compute modes and processing scope, but does not explicitly state when to prefer this tool over alternatives or when not to use it. No comparison with sibling tools like assess_vida_recapitulative_migration.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assess_vida_recapitulative_migrationViDA Recapitulative Statement Migration AssessorARead-onlyIdempotentInspect
ViDA Recapitulative Statement Migration Assessor: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-160-vida-drr-transaction-reporter. Open at: https://ainumbers.co/chaingraph/art-161-vida-recapitulative-statement-migration-assessor.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, etc.), the description adds critical detail: inputs are processed transiently and not stored, gpu:true delegates to browser, and it exports an AP2 artifact with execution_hash for chain provenance.
Agents need to know what a tool does to the 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 informative but slightly verbose. It is front-loaded with the purpose and uses clear structure, but every sentence earns its place. Could be slightly more 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 4 params including nested objects and no output schema, the description covers behavior, compute modes, data handling, output (execution_hash), upstream dependencies, and provides a link for more info. It is fully sufficient for an agent to understand and invoke 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?
All 4 parameters are described in the schema (100% coverage). The description adds context, particularly for 'compute' (explains the three modes) and 'policy_parameters' (describes their role in decision function).
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 is an OpenChainGraph compute node for 'ViDA Recapitulative Statement Migration' assessment, which is specific and distinguishes it from numerous sibling tools that start with 'assess_'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, server, browser) and when to use each, and advises using synthetic/anonymised inputs. However, it does not explicitly contrast with similar tools 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.
attest_bulk_disbursement_integrityBulk Disbursement IntegrityCRead-onlyIdempotentInspect
Bulk Disbursement Integrity: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-518-bulk-disbursement-integrity.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), the description discloses critical behaviors: deterministic execution, transient input handling ('not stored, logged, or retained'), compute-mode-specific client-side delegation, and AP2 artifact export with execution_hash for chain provenance. These add substantial transparency that annotations do not cover.
Agents need to know what a tool does to the 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 moderately concise but starts with a redundant phrase ('Bulk Disbursement Integrity: ...') that repeats the title. The compute-mode explanation is somewhat verbose and could be trimmed. No filler words, but the structure is not optimally 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?
Although the description covers operational details (compute modes, privacy, chain provenance), it lacks a clear statement of the tool's actual decision function or what 'bulk disbursement integrity' means. No output schema exists, and the description only mentions the AP2 artifact without detailing its structure. The provided URL offers an escape hatch but is not enough for an agent to fully understand the tool's semantics.
Complex tools with many parameters or behaviors need more documentation. 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% property coverage, so baseline is 3. The description reinforces the compute enum behavior and mentions policy_parameters as the 'decision function' input, but it does not explain what fields policy_parameters might contain or clarify parent_hashes/parent_tool_ids beyond their schema descriptions. It adds minimal value on top of 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 opens with 'Bulk Disbursement Integrity: OpenChainGraph compute node (attestation_mandate)', which restates the tool name without specifying a clear verb or core function. It never states what 'attest_bulk_disbursement_integrity' actually does (e.g., verifying or computing integrity over disbursement records), and it does not distinguish itself from sibling attest_* tools beyond the title.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 technical guidance about compute modes (auto/browser/server) and a privacy warning to use synthetic or anonymised inputs, but it does not specify when to choose this tool over alternatives. No exclusions or explicit when-to-use scenarios are given, leaving the selection rationale to the agent's guesswork.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
attest_calc_agent_independenceCalculation-Agent Independence AttestationBRead-onlyIdempotentInspect
Calculation-Agent Independence Attestation: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-559-attest-calc-agent-independence.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| trigger_ref | No | |
| calc_agent_id | No | |
| disclosure_note | No | |
| rejected_inputs | No | |
| interested_parties | No | |
| independence_asserted | No | |
| relationship_declaration | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description significantly expands on the annotations by disclosing that inputs are processed transiently and not stored/logged/retained, that compute can be server-side or browser-delegated, and that the tool is deterministic. It also mentions the export of an AP2 artifact with execution_hash, which helps the agent understand side effects and guarantees beyond the readOnlyHint and idempotentHint 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 fairly concise and front-loaded, but it repeats 'OpenChainGraph compute node' twice and includes a URL that may be unnecessary for tool selection. Each sentence adds some operational or privacy-related value, and the structure flows logically from identity to compute modes to data handling.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 and rich annotations, the description covers the essential behavioral aspects: compute execution locations, transient input handling, the synthetic/anonymised data requirement, and the artifact export. It does not mention preconditions or the precise meaning of an 'independence attestation', but the output schema likely clarifies the returned artifact.
Complex tools with many parameters or behaviors need more documentation. 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 documents all parameters exhaustively (100% coverage). The description adds context about compute mode semantics (e.g., 'auto' server-side vs 'browser' delegation) and reinforces that policy_parameters are computed server-side, but it does not detail parent_hashes or parent_tool_ids beyond what the schema provides. This is a reasonable baseline when the schema carries the load.
Input schemas describe structure but not intent. Descriptions should explain non-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 and title clearly indicate an attestation for calculation-agent independence, and the description identifies it as a deterministic OpenChainGraph compute node. However, the actual operation — that it computes an attestation response and exports an AP2 artifact — is implied rather than explicitly stated. The meaning of 'attestation_mandate' and the specific independence criteria are left vague, so a new agent cannot fully grasp what it accomplishes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some operational guidance (e.g., compute modes, browser delegation, and the warning to use synthetic or anonymised inputs), but it gives no explicit instruction on when to use this tool versus any of the many sibling tools. No alternatives or exclusions are mentioned, leaving the selection decision to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
attest_daily_reconciliationDaily Reconciliation AttestationARead-onlyIdempotentInspect
Daily Reconciliation Attestation: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-516-daily-reconciliation-attestation.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations by disclosing that the tool is deterministic, processes inputs transiently, does not store/log/retain data, and exports an AP2 artifact with execution_hash. It also explains compute-mode side effects (server-side execution vs browser delegation URL). These are non-obvious behavioral traits that materially affect invocation, and there is no contradiction with the readOnlyHint, idempotentHint, or destructiveHint 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 information-dense but somewhat repetitive: 'OpenChainGraph compute node' appears in the first two sentences, and the trailing URL is not necessary for core invocation understanding. It is front-loaded with the title and compute-node context, but could be tightened into a more concise paragraph without losing important 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?
The description covers compute behavior, privacy/transient processing, determinism, and artifact output, which is strong given the annotations and schema. However, there is no output schema, and the description only vaguely defines the AP2 artifact as containing execution_hash; it does not describe the full return structure. It also references a manifest for policy_parameters fields without embedding those details, leaving meaningful invocation gaps for a complex attestation 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 documents all four parameters with 100% coverage, so the baseline is 3. The description adds operational meaning to the compute parameter by explaining what auto/server/browser do and why gpu:true forces browser delegation. It also contextualizes policy_parameters as inputs to the decision function, though it does not list the actual field names, leaving some burden on the schema and manifest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as a deterministic OpenChainGraph compute node with an attestation_mandate and says it exports an AP2 artifact with execution_hash, but it never plainly states what the daily reconciliation attestation verifies or what attestation means in this context. It relies heavily on the title and name, and does not differentiate itself from sibling attestation tools like attest_bulk_disbursement_integrity or check_agent_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 provides concrete operational guidance: compute modes (auto/server/browser), the rule that gpu:true nodes delegate to the browser, and the instruction to use synthetic or anonymised inputs only. However, it does not state when a user should choose this tool over alternative attestation or reconciliation tools, nor does it describe prerequisites or expected use cases beyond the compute mechanics.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
attest_margin_call_lifecycleMember Margin Call LifecycleBRead-onlyIdempotentInspect
Member Margin Call Lifecycle: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-531-member-margin-call-lifecycle.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description substantially exceeds the annotations by detailing deterministic behavior, server-side execution on Cloudflare Workers, browser delegation for gpu:true nodes, transient processing with no storage/logging/retention, and AP2 artifact export with execution_hash. This provides rich behavioral context beyond the read-only, idempotent, non-destructive 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 reasonably sized and follows a logical flow: identity, compute modes, data handling, output, and a reference URL. It has minor redundancy (mentions 'OpenChainGraph compute node' twice) but is still 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?
Given the lack of an output schema, the description does explain the output artifact and data-handling guarantees, which is useful. However, it leaves the actual decision function and the meaning of 'attestation_mandate' underspecified, so an agent still lacks a clear picture of what the computation entails.
Complex tools with many parameters or behaviors need more documentation. 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 documents all parameters in detail. The tool description adds no new meaning for parameters beyond repeating compute-mode behavior already covered in the schema's 'compute' description. It does not elaborate on policy_parameters fields or parent_hashes usage 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 identifies it as an 'OpenChainGraph compute node' for 'Member Margin Call Lifecycle' and mentions exporting an AP2 artifact, but it does not state a specific action verb or explain what the attestation actually asserts. It is not merely tautological, but the core purpose remains vague and indistinguishable from sibling attest_* 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 compute-mode selection guidance (server vs. browser) and warns to use synthetic inputs, but it never states when to use this tool or what alternatives exist. There is no comparison to sibling tools, and the 'when-not-to-use' guidance is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
audit_acp_ucp_product_feedACP/UCP Product-Feed Conformance AuditorARead-onlyIdempotentInspect
ACP/UCP Product-Feed Conformance Auditor: OpenChainGraph compute node (scheme_rule). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-19-agentic-checkout-protocol-selector. Output feeds: art-21-agent-traffic-acceptance-policy-builder, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-20-acp-ucp-product-feed-conformance-auditor.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive. The description adds beyond annotations: it states the tool is deterministic, inputs are transient and not stored, and it exports an AP2 artifact with execution_hash. This provides rich behavioral context without contradicting 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 dense with technical details (upstream/downstream artifacts, compute modes, processing semantics). While front-loaded with the primary purpose, it includes verbose lists and could be more concise. Every sentence adds information, but brevity is sacrificed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters, no output schema, and rich annotations, the description provides sufficient context: compute behavior, transient nature, artifact dependencies, and a URL. It covers most operational aspects an agent would need 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?
Schema description coverage is 100%, so baseline is 3. The description adds context for the 'compute' parameter by explaining modes, and for 'policy_parameters' by linking to the tool's manifest. However, it does not significantly extend 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?
Title and description explicitly state 'Auditor' and 'ACP/UCP Product-Feed Conformance'. The verb 'audit' and resource are clear, and the tool is distinct from siblings like 'validate_acp_checkout' due to its focus on conformance auditing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, server, browser) and advises using synthetic or anonymised inputs only. However, it does not clarify when to use this tool versus other similar tools (e.g., when to choose this over a validation tool), nor does it specify prerequisites or alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
audit_agent_key_rotationAgent Key Rotation AuditorARead-onlyIdempotentInspect
Agent Key Rotation Auditor: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-133-agent-payment-rail-trust-crosswalk. Open at: https://ainumbers.co/chaingraph/art-132-agent-key-rotation-auditor.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, idempotentHint, destructiveHint) already indicate safe behavior. The description adds valuable context: inputs are processed transiently and not stored, logged, or retained. It also states determinism and server-side execution options. This goes beyond annotations and provides useful 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?
The description is moderately concise but includes technical clutter like URLs and detailed compute mode explanations that may not be necessary for a quick understanding. The first sentence is good, but the subsequent sentences are dense and could be trimmed. Every sentence earns its place, but some could be more direct.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description partially compensates by mentioning the AP2 artifact and execution_hash. However, the core auditing logic (what exactly is checked?) is not explained. The tool is complex (4 params, nested objects) and could benefit from a brief explanation of the audit procedure. The reference to an external URL may not be accessible to the 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 100%, so the schema already documents all parameters. The description mentions the 'compute' mode and 'policy_parameters' but does not add new semantic meaning. For example, 'parent_hashes' and 'parent_tool_ids' are only restated. Baseline 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 identifies the tool as an 'Agent Key Rotation Auditor' and mentions it's an OpenChainGraph compute node. The name is specific, and the description includes key details like determinism and output to another artifact (art-133). However, the heavy focus on compute modes rather than the core auditing function slightly dims clarity. Sibling tools like 'audit_acp_ucp_product_feed' suggest a family, but no explicit distinction 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 advises 'Use synthetic or anonymised inputs only', which is a clear guideline, and mentions output feeds to another tool. However, it lacks explicit when-to-use or when-not-to-use statements, and no alternatives are provided. The context of being a compliance mandate is implied but not actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
audit_mcp_oauthMCP OAuth 2.1 Authorization AuditorARead-onlyIdempotentInspect
Audit MCP OAuth 2.1 authorization: validate RFC 9728 protected-resource-metadata, check RFC 8707 audience binding, and assess token-passthrough / confused-deputy risk. Use when a developer is securing an MCP server's authorization. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| score | No | |
| findings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly and idempotent. The description adds critical context: runs client-side, zero PII, zero network, renders interactive widget. This goes well beyond annotations, providing full disclosure of 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 densely informative sentences with no wasted words. Front-loaded with the purpose, then usage, then behavioral details. Perfect structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, usage, behavioral traits, and parameter semantics. Output schema exists so return values need not be described. A minor gap: the term 'AINumbers tool' is not explained, but given the sibling 'list_ainumbers_tools', it's likely known. Overall very 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%; baseline 3. The description adds meaning by explaining that inputs come from the manifest input_schema and are applied via AIN Bridge prefill, clarifying the parameter's role beyond the schema 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 states specific RFC validations (9728, 8707) and risk assessment (token-passthrough/confused-deputy), clearly distinguishing it from siblings like 'audit_mcp_tool_scope_revocation' and 'validate_mcp_authorization_metadata'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 'Use when a developer is securing an MCP server's authorization,' providing clear context. Could be stronger by explicitly noting when not to use it or comparing to related siblings, but the guidance is effective.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
audit_mcp_tool_scope_revocationMCP Tool Scope & Revocation AuditorARead-onlyIdempotentInspect
MCP Tool Scope & Revocation Auditor: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-151-agent-obo-mandate-validator. Open at: https://ainumbers.co/chaingraph/art-150-mcp-tool-scope-revocation-auditor.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses important behavioral traits: deterministic compute, transient input processing with no storage, and artifact export with execution_hash. This goes beyond the annotations (readOnlyHint, idempotentHint) by detailing the compute mode effects and data handling, with no contradictions noted.
Agents need to know what a tool does to the 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 well-structured, front-loading the tool's identity and purpose, then explaining compute modes and data handling. It is information-dense but could be slightly more concise; for example, the compute mode details could be 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 description explains the output artifact and feed destination, but lacks clarity on the core auditing function (e.g., what specific checks are performed, what triggers revocation). Without an output schema, more detail on the audit result 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?
Schema description coverage is 100%, so the baseline is 3. The description adds some context for the compute parameter but repeats information already present in the schema for other parameters. No new semantic value is added beyond what is already in the input 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 identifies the tool as an auditor for MCP tool scope and revocation, part of a compliance mandate. It includes the specific context of 'OpenChainGraph compute node', which distinguishes it from generic tools, though it does not explicitly differentiate from sibling tools that also perform audits or validations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and their behavior (auto, server, browser). It advises using synthetic or anonymised inputs only, and notes the output feeds into a specific validator. However, it does not explicitly state when not to use the tool or mention alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
baas_provider_comparatorBaaS Provider ComparatorARead-onlyIdempotentInspect
Score and compare BaaS providers across 10 capability dimensions (regulatory standing, programme management, card issuance, rails, KYC/KYB, disputes, developer experience, pricing, FDIC pass-through, compliance tooling) with a user-adjustable 1-5 weighting matrix. Outputs a weighted comparison matrix and Markdown evaluation memo. Browser-based, client-side only, zero PII. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds valuable behavioral context: browser-based, client-side only, zero PII, zero network, and renders the AINumbers widget. This goes beyond annotations and fully discloses execution environment and privacy characteristics.
Agents need to know what a tool does to the 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 purpose and dimensions, and each sentence earns its place. 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?
Despite the tool's complexity (10 dimensions, weighting matrix, client-side execution), the description covers purpose, dimensions, output (weighted comparison matrix and Markdown memo), execution environment, privacy, and integration details. With an output schema present, the description is 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?
Schema description coverage is 100% for the single parameter 'inputs', with a description that explains it is a map of input element IDs to values. The tool description adds context about how inputs are applied via AIN Bridge prefill, which enhances understanding of the parameter's role.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 'Score and compare BaaS providers across 10 capability dimensions' with a specific verb ('score and compare') and resource ('BaaS providers'). It distinguishes from sibling tools implicitly as the only BaaS-specific comparator among many general comparison 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 implicitly indicates when to use (when comparing BaaS providers) but does not explicitly exclude alternatives or provide context for when not to use it. The context is clear but lacks exclusions or comparisons to similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
benchmark_tp_interquartile_rangeTransfer-Pricing Interquartile Range BenchmarkARead-onlyIdempotentInspect
Transfer-Pricing Interquartile Range Benchmark: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-472-cbcr-builder. Open at: https://ainumbers.co/chaingraph/art-473-interquartile-benchmark.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, non-destructive behavior. The description adds significant context: deterministic computation, transient input processing (not stored/logged), compute mode details (auto, server, browser), and GPU delegation rules. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with key information front-loaded (purpose, compute mode, transient processing, provenance). Each sentence adds value, though it could be slightly more 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?
The description covers compute modes, input handling, and provenance, but omits specifics about the benchmark output (e.g., format, values). Without an output schema, the agent lacks details on return structure. Policy_parameters are not fully explained.
Complex tools with many parameters or behaviors need more documentation. 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 value by contextualizing parent_hashes/parent_tool_ids with the specific upstream artifact (art-472-cbcr-builder) and mentioning compute mode behavior already covered in schema. The policy_parameters reference to 'tool's manifest' is vague but 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 is a 'Transfer-Pricing Interquartile Range Benchmark' and an 'OpenChainGraph compute node' with a compliance mandate. It distinguishes itself from siblings by specifying its role in the ChainGraph ecosystem and its consumption of upstream artifacts from art-472-cbcr-builder.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 within a compliance chain but does not explicitly state when to use this tool versus alternatives. It mentions consuming specific upstream artifacts but offers no guidance on selection criteria or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bind_agreement_acceptanceAgreement Acceptance BinderARead-onlyIdempotentInspect
Agreement Acceptance Binder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-276-mutual-nda-composer. Open at: https://ainumbers.co/chaingraph/art-277-agreement-acceptance-binder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint (true) and idempotentHint (true). The description adds valuable behavioral details: inputs are processed transiently and not stored/logged/retained, deterministic execution, and export of AP2 artifact with execution_hash. This goes beyond annotations and does not contradict them.
Agents need to know what a tool does to the 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 structured with key information front-loaded: identity, compute modes, data handling, security warning, output, upstream dependency, and a link. It is concise yet covers essential aspects without excessive verbosity, though some sentences could be tightened.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (multiple parameters, compute modes, artifacts, chain provenance), the description provides adequate context for an experienced user: data handling, compute modes, output artifact, and upstream dependency. However, it lacks details about the exact return format (no output schema) and assumes knowledge of 'OpenChainGraph' and 'AP2 artifact', limiting completeness for new 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 description coverage is 100%, so parameters are fully documented in the schema. The description briefly mentions the 'compute' parameter mode switching and 'policy_parameters' as input for the decision function, but adds minimal extra semantic meaning beyond what the schema already 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?
The description clearly identifies the tool as an 'Agreement Acceptance Binder' and an 'OpenChainGraph compute node (compliance_mandate)', specifying that it consumes upstream artifacts from a named tool and exports an AP2 artifact. This provides a specific verb (bind) and resource (agreement acceptance), but does not explicitly differentiate it from sibling tools like 'bind_attested_subject'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, browser, gpu:true) and warns to use synthetic or anonymised inputs only, which are usage guidelines. However, it does not state when to use this tool versus alternatives, nor does it explicitly mention when not to use it. The context of when to use is implied but not contrasted with siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bind_attested_subjectAttested Artifact Subject BinderARead-onlyIdempotentInspect
Attested Artifact Subject Binder: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-502-bind-attested-subject.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral details beyond annotations: it explicitly states that inputs are processed transiently, not stored/logged/retained, and that the node is deterministic. Annotations (readOnlyHint, idempotentHint, destructiveHint) are consistent, and there is 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?
The description is succinct but not excessively concise. It front-loads the essential purpose and then details compute modes, data handling, and output. Every sentence adds value, though it could be slightly shorter without losing 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?
Given the complexity (4 parameters, nested objects, no output schema), the description covers purpose, behavior, compute modes, input guidelines, and output nature (AP2 artifact with execution_hash). It lacks details on return values, but annotations and schema mitigate this. Overall, it provides sufficient context for an 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?
With 100% schema coverage, parameters are well-documented. The description adds meaningful context: explains the purpose of 'parent_hashes' and 'parent_tool_ids' for chaining, and clarifies that 'policy_parameters' are inputs to a decision function and are computed server-side for certain modes. This adds value 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 clearly states the tool as an OpenChainGraph compute node for binding attested subjects, specifying it exports an AP2 artifact with execution_hash for chain provenance. It distinguishes itself from siblings by being specifically about binding attested subjects and provides a link for further 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 explains the three compute modes ('auto', 'server', 'browser') with clear conditions (e.g., 'gpu:true nodes always delegate to the browser'), and advises using synthetic or anonymised inputs. It does not explicitly compare to sibling tools or state when not to use, but the context is adequate for the intended use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_226j_response_evidence_pack226J Response Evidence Pack BuilderARead-onlyIdempotentInspect
226J Response Evidence Pack Builder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-299-aca-esrp-exposure. Open at: https://ainumbers.co/chaingraph/art-300-aca-226j-response-evidence-pack.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), the description adds key behavioral traits: deterministic compute, transient input processing (no storage/logging/retention), and artifact export with execution_hash for chain provenance. This significantly aids agent understanding.
Agents need to know what a tool does to the 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 front-loaded with purpose and efficiently covers compute modes, privacy, and output. Slight redundancy (e.g., 'OpenChainGraph compute node' twice), but overall each sentence adds value. Could be marginally 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?
Covers purpose, privacy, and compute behaviors but lacks detail on the output artifact's structure (no output schema). For a tool with nested parameters and many siblings, this leaves some ambiguity for the 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 description coverage is 100% (all 4 parameters documented). The description repeats the compute mode behavior already in the schema, adding no additional meaning. Baseline 3 is appropriate as the schema already 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 tool builds a 226J Response Evidence Pack using OpenChainGraph compute node. The name and title are specific, but no explicit differentiation from sibling tools like 'assemble_ocg_evidence_bundle' 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 mentions using synthetic or anonymised inputs and consuming upstream artifacts, providing some usage context. However, it does not specify when to use this tool versus alternatives among hundreds of siblings, leaving the agent without clear selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_adverse_action_noticeBuild Adverse Action NoticeARead-onlyIdempotentInspect
Build Adverse Action Notice: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-227-validate-adverse-action-notice. Open at: https://ainumbers.co/chaingraph/art-228-build-adverse-action-notice.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description adds significant detail: deterministic behavior, transient processing (no storage or logging), compute mode behavior for server vs. browser, GPU delegation, and export of an AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose and follows a logical structure. It is somewhat lengthy but every sentence adds necessary detail. Could be trimmed slightly, but overall well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 and absence of an output schema, the description covers key aspects: purpose, compute modes, transient handling, output artifact, and downstream linkage. It lacks explicit output format details but provides enough context for typical usage within 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?
The input schema has 100% description coverage, but the description adds value by explaining the compute parameter's behavior in different modes, the role of parent_hashes and parent_tool_ids for chaining, and that policy_parameters are the decision function inputs. This enriches understanding beyond 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 builds an adverse action notice and is an OpenChainGraph compute node for compliance mandate. It distinguishes from the sibling validate_adverse_action_notice by mentioning it feeds into that validation step. The verb and resource are specific and 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 usage context: compute modes (server vs. browser), transient input handling, and that output feeds into a validation tool. It also warns to use synthetic or anonymised inputs. However, it does not explicitly state when to choose this tool over other build tools or excluding cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_agent_incident_recordAgent Incident Record ComposerARead-onlyIdempotentInspect
Agent Incident Record Composer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-379-agent-incident-record-composer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description discloses that inputs are processed transiently and not stored, and that it exports an AP2 artifact with execution_hash for chain provenance. This adds significant behavioral context not captured by 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 somewhat lengthy and includes a URL at the end. There is minor repetition ('Deterministic OpenChainGraph compute node' appears twice). It could be more concise without losing core 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 complexity (4 parameters, nested policy_parameters, no output schema), the description covers compute modes, transient processing, and artifact export. However, it lacks details about the incident record structure or output content beyond execution_hash. The external link provides some context, but 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?
The input schema has 100% description coverage, so the schema already documents each parameter. The description adds no new information about parameters beyond summarizing compute modes. 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 identifies the tool as building an agent incident record using the OpenChainGraph compute node. The verb 'build' and resource 'incident record' are specific. However, it does not explicitly distinguish this tool from sibling build tools like 'build_agent_test_evidence' or 'build_ai_decision_log_record'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, server, browser) and cautions to use synthetic or anonymized inputs. However, it does not explain when to use this tool over alternatives or provide exclusions. The context of compliance mandate 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.
build_agent_test_evidenceQuarterly Agent Test Evidence ComposerARead-onlyIdempotentInspect
Quarterly Agent Test Evidence Composer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-378-quarterly-test-evidence-composer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnly, idempotent, non-destructive. The description adds transparency about determinism, transient processing (inputs not stored/logged/retained), and AP2 artifact output with execution_hash. This goes beyond annotations, providing valuable 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?
The description is front-loaded with the tool's role and key characteristics. It is informative but slightly verbose; each sentence adds value (compute modes, data handling, output). Could be trimmed slightly without losing 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 tool with 4 parameters (including nested policy_parameters) and no output schema, the description covers: role in ChainGraph, determinism, compute modes, data privacy, output artifact type, and a reference URL. It adequately prepares the agent for invocation and chaining.
Complex tools with many parameters or behaviors need more documentation. 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 already documented. The description adds overall context (e.g., compute modes, 'See manifest for field names') but does not significantly enhance individual 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 clearly identifies the tool as a 'Quarterly Agent Test Evidence Composer' for OpenChainGraph, stating it is deterministic and computes evidence. It distinguishes itself from siblings by specifying its compute node nature and AP2 artifact output, but does not explicitly differentiate from many similar 'build_*' 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 usage context (use synthetic/anonymised inputs, compute modes) but lacks explicit guidance on when to choose this tool over alternatives or when not to use it. Among numerous sibling tools, no comparative selection criteria are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_agent_traffic_policyAgent-Traffic Acceptance Policy BuilderARead-onlyIdempotentInspect
Agent-Traffic Acceptance Policy Builder: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-20-acp-ucp-product-feed-conformance-auditor. Output feeds: ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-21-agent-traffic-acceptance-policy-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with annotations (e.g., idempotent, read-only) and adds significant detail about the compute modes, server-side vs browser execution, and transient input processing. It goes beyond what annotations provide by explaining the artifact export and chain provenance.
Agents need to know what a tool does to the 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 structured and front-loaded with the core purpose. It contains specific details (URL, artifact IDs) that, while not essential, are not overly verbose. The length is acceptable given the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 tool's purpose, compute modes, transient nature, artifact export, and upstream/downstream dependencies. However, it lacks a detailed explanation of the output artifact beyond mentioning 'execution_hash'. Overall, it is quite complete for a tool with no 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?
The input schema provides 100% coverage of parameter descriptions. The description adds minor clarification (e.g., default compute behavior) 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 that this tool is an 'Agent-Traffic Acceptance Policy Builder' and a 'deterministic OpenChainGraph compute node'. It specifies its role and distinguishes itself from sibling tools by mentioning specific artifact consumption and output, as well as the compute mode options.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context (e.g., 'Use synthetic or anonymised inputs only'), but it does not explicitly state when to use this tool versus any of its numerous sibling tools, nor does it mention alternative tools for similar tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_ai_conformity_packAI Act Conformity Pack BuilderARead-onlyIdempotentInspect
AI Act Conformity Pack Builder: OpenChainGraph compute node (model_governance). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-64-ai-act-highrisk-fit-diagnostic. Output feeds: 333-eu-ai-act-article9-risk-mgmt-builder, art-05-eu-ai-act-credit-scoring-conformity, cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-65-ai-conformity-pack-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly and idempotent. The description adds valuable detail: transient input processing (not stored/logged), compute mode selection (server vs. browser), and deterministic behavior—all beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is fairly concise given the complexity, front-loading the purpose and compute modes. It is structured with clear sections, though slightly verbose with dependency lists; could be trimmed slightly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (no output schema, nested objects, chain dependencies), the description covers transient data handling, compute options, provenance via execution_hash, and links to further documentation—adequate for agent 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?
Input schema has 100% coverage of parameter descriptions, so baseline is 3. The description mentions compute modes and policy_parameters but does not add meaning beyond the schema's own descriptions, which are already thorough.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a deterministic OpenChainGraph compute node for building AI Act Conformity Packs. It specifies its role in a chain, naming upstream and downstream artifacts, and distinguishes it from siblings by detailing compute modes and data handling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 on when to use the tool (e.g., after upstream diagnostic) and gives specific advice ('Use synthetic or anonymised inputs only'), but it does not explicitly contrast with alternative tools 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.
build_ai_decision_log_recordAI Decision Log Record Builder (EU AI Act Art 12)ARead-onlyIdempotentInspect
AI Decision Log Record Builder (EU AI Act Art 12): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-237-validate-agent-audit-trail, art-238-classify-annex3-decisioning-obligations. Open at: https://ainumbers.co/chaingraph/art-236-build-ai-decision-log-record.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds that inputs are processed transiently and not stored, logged, or retained, which is valuable beyond annotations. No contradiction detected.
Agents need to know what a tool does to the 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 moderately long but every sentence adds value. It is front-loaded with the title and key purpose. Could be slightly more concise but still effective in conveying 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 complexity (4 parameters, nested object, no output schema), the description covers purpose, compute behavior, transient processing, output artifact (AP2 with execution_hash), and links to downstream tools. It does not detail the artifact structure but hints at what is returned, which 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%, so baseline is 3. The description adds meaning for the 'compute' parameter by explaining default behavior and GPU interaction, and for 'policy_parameters' by describing it as input for the decision function. This exceeds baseline utility.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 builds an AI Decision Log Record per EU AI Act Art 12. It specifies the verb 'build' and resource, and distinguishes itself from sibling tools by being an OpenChainGraph compute node with deterministic behavior and specific compute modes. The title reinforces the 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 explains when to use different compute modes (auto, server, browser) and notes that gpu:true nodes always delegate to browser. It advises using synthetic or anonymised inputs only. However, it does not explicitly state when not to use this tool or directly name alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_ai_training_data_lineage_recordAI Training-Data Lineage RecordARead-onlyIdempotentInspect
AI Training-Data Lineage Record: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-452-build-ai-training-data-lineage-record.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it states the node is deterministic, inputs are processed transiently and not stored, and it exports an AP2 artifact with execution_hash. Annotations already indicate read-only, idempotent, non-destructive, and the description aligns with these. 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 front-loaded with the purpose and efficiently covers compute modes, transient processing, and export behavior. Each sentence adds value, though there is minor redundancy (repeating 'deterministic').
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, transient inputs, and the export of an AP2 artifact. It lacks details on the artifact structure, but the included URL provides additional reference. For a specialized tool, the description is fairly 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 descriptions for all 4 parameters. The description adds extra context for the compute parameter (default behavior) and policy_parameters (server-side computation). This adds 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 tool builds an AI Training-Data Lineage Record using an OpenChainGraph compute node. It specifies the domain (compliance_mandate) and distinguishes from other build_* tools by focusing on lineage. However, it could be more explicit about what the record contains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 the different compute modes (auto, server, browser) and provides guidance on when each is used. It also notes that inputs must be synthetic/anonymised. However, it 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.
build_ai_workpaper_recordAI-Tool-Usage Workpaper RecordARead-onlyIdempotentInspect
AI-Tool-Usage Workpaper Record: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-380-build-ai-workpaper-record.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds value beyond annotations: notes transient processing ('inputs are processed transiently... not stored, logged, or retained'), requirement for synthetic inputs, and that gpu:true nodes always delegate. These behavioral details are not in 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?
Five sentences covering key points: purpose, compute modes, data handling, input constraints, output artifact. Front-loaded with purpose. Efficient, though slightly verbose with mode details that are in 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?
For a tool with 4 parameters, 100% schema coverage, and complete annotations, the description adequately covers compute behavior, data retention, input sensitivity, and output artifact. Missing details on return format or error conditions, but acceptable given no 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 covers 100% of parameters with descriptions. Description adds marginal context (e.g., compute modes explanation, policy_parameters as decision function input) but mostly restates schema information.
Input schemas describe structure but not intent. Descriptions should explain 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 purpose as 'AI-Tool-Usage Workpaper Record: OpenChainGraph compute node (compliance_mandate).' Differentiates from siblings by specifying it's a deterministic OpenChainGraph node for recording AI tool usage, but doesn't explicitly contrast with similar build 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 usage context through compute mode descriptions and requirement for synthetic/anonymised inputs. Does not provide explicit when-to-use vs alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_allocation_decision_receiptBuild Allocation Decision ReceiptARead-onlyIdempotentInspect
Build Allocation Decision Receipt: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-515-build-allocation-decision-receipt.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses deterministic behavior, transient input processing with no storage/logging/retention, and the AP2 artifact with execution_hash output. These go beyond the annotations (readOnly, idempotent) to provide meaningful 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 well-structured and mostly succinct, but it redundantly repeats 'OpenChainGraph compute node' in the first two sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
It covers the tool's purpose, compute behavior, data handling, and output (AP2 artifact with execution_hash), and provides a reference link. Given the tool's complexity and lack of output schema, 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% (all 4 parameters have descriptions), so baseline is 3. The tool description adds no new parameter semantics beyond what the schema already explains; it merely restates compute behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 builds an Allocation Decision Receipt, identifies it as an OpenChainGraph compute node with attestation_mandate, and mentions AP2 artifact export. This distinguishes it from other build_* 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 provides context on compute modes (auto/server/browser) and gpu handling, and advises using synthetic or anonymised inputs only. However, it does not explicitly state when to prefer this tool over alternatives, so it caps at 4.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_amortization_scheduleAmortization Schedule BuilderBRead-onlyIdempotentInspect
Amortization Schedule Builder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-215-reg-z-appendix-j-apr. Open at: https://ainumbers.co/chaingraph/art-332-build-amortization-schedule.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: inputs are processed transiently and not stored, synthetic/anonymised inputs are required, compute mode behaviors are detailed, and it mentions exporting an AP2 artifact. These details are not present in the annotations (which only state readOnlyHint, idempotentHint, etc.). 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 verbose and includes technical jargon (e.g., 'OpenChainGraph compute node', 'execution_hash', 'AP2 artifact') that may not be necessary for an AI agent to understand the tool's purpose. It front-loads the core idea but then adds many details that could be omitted or moved to a more detailed section.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 input handling and output artifact but lacks explicit details on the return value structure (e.g., the fields of the amortization schedule). It references an external URL and output feed, which helps but does not fully replace an output schema. Given the tool's complexity (4 params, nested objects), the description is moderately 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?
All parameters are described in the schema (100% coverage), and the description adds minimal extra meaning – it reiterates compute modes and mentions that policy_parameters should reference the tool's manifest. The description does not clarify what fields policy_parameters expects or how parent_hashes/tool_ids are used beyond chaining.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 an 'Amortization Schedule Builder' and that it computes amortization schedules with chain provenance. However, it mixes in many implementation details (compute modes, OpenChainGraph) that obscure the primary purpose. It does distinguish from sibling 'build_*' tools by its specific output feed reference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 description focuses on compute mode behavior but does not explain the typical use case or prerequisites (e.g., 'Use this to compute an amortization schedule for a loan with given parameters'). No when-not-to-use or alternative tool comparisons are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_art5_diligence_evidenceArticle 5 Due Diligence Evidence RecordARead-onlyIdempotentInspect
Article 5 Due Diligence Evidence Record: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-509-recompute-payment-waterfall. Open at: https://ainumbers.co/chaingraph/art-510-build-art5-diligence-evidence.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations by disclosing deterministic behavior, compute mode execution details (server-side on Cloudflare Workers, browser delegation for gpu:true nodes), transient processing with no storage/logging/retention, and the artifact output with execution_hash. This is rich, actionable behavioral context consistent with the readOnlyHint and idempotentHint 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 moderately verbose, with redundant phrasing ('OpenChainGraph compute node' appears twice) and a URL that is not essential for invocation. However, it is front-loaded with the label and then covers behavior, privacy, output, and upstream dependency in a logical order. A tighter edit would remove redundancy, but overall it is acceptably 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?
With no output schema, the description must explain what the tool returns, and it does: it mentions 'returns a browser delegation URL' for browser compute mode and 'Exports an AP2 artifact with execution_hash' for the normal path. It also explains the transient input handling and upstream dependency. It does not detail the internal structure of the evidence record, but the description is complete enough for an agent to select and invoke the tool correctly in the chain 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 baseline is 3, and the tool description does not add significant meaning beyond the schema. It repeats the compute mode explanation already in the schema and references 'policy_parameters' to the manifest, but adds little new parameter-specific semantics. The upstream tool name is useful context for parent_hashes, but it is already implied by 'upstream ChainGraph AP2 artifacts' 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 identifies the tool as an 'OpenChainGraph compute node' for building an 'Article 5 Due Diligence Evidence Record' and states it 'Exports an AP2 artifact with execution_hash for chain provenance', which conveys the core purpose. It distinguishes from siblings by naming its specific upstream dependency (art-509-recompute-payment-waterfall) and its compute-node nature, though the verb 'build' is implicit and not stated 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?
Provides clear context on when to use it: as a deterministic compute node in an OpenChainGraph chain, consuming upstream artifacts from the named tool. It also offers operational guidance on compute modes ('auto' vs 'browser') and a strong constraint ('Use synthetic or anonymised inputs only'), which helps the agent decide when and how to invoke. It does not explicitly list alternatives or exclusions, but the chain-based context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_cbcr_reportOECD Country-by-Country Report BuilderARead-onlyIdempotentInspect
OECD Country-by-Country Report Builder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-473-interquartile-benchmark. Open at: https://ainumbers.co/chaingraph/art-472-cbcr-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| checks | No | |
| export_mode | No | |
| gate_status | No | |
| anomaly_flags | No | |
| jurisdictions | No | |
| schema_version | No | |
| not_submittable | No | |
| orphan_entities | No | |
| all_fatal_passed | No | |
| fatal_failure_count | No | |
| xml_schema_skeleton | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral detail beyond the annotations: deterministic execution, compute mode behavior (auto vs browser vs gpu), transient input processing with no storage/logging/retention, and AP2 artifact export with execution_hash. These are meaningful traits that help an agent understand side effects and privacy expectations, and there is no contradiction with readOnlyHint or idempotentHint.
Agents need to know what a tool does to the 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 dense but efficient, covering compute modes, privacy, output, and links in four sentences. It starts with the tool's identity and mandate, though it slightly repeats 'OpenChainGraph compute node' and includes a URL that may be considered tangential. Overall, no wasted words relative to the high information density.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (compute modes, artifact generation, transient processing, chain provenance) and the presence of an output schema and sibling tools, the description covers all essential aspects: purpose, compute behavior, data retention policy, input constraints, output format (AP2 artifact), downstream feed, and a direct link to the tool. The agent has enough context 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 schema already provides 100% coverage with detailed descriptions for all parameters. The description enhances the `compute` parameter by explaining default behavior and the relationship between compute mode and GPU nodes, which adds context beyond the schema enum values. It also clarifies that `policy_parameters` are for the decision function, reinforcing the schema 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?
The title and opening phrase 'OECD Country-by-Country Report Builder' clearly indicate the tool builds a CbCR report artifact, and the description specifies it as an OpenChainGraph compute node with a compliance mandate. It distinguishes from siblings via the specific report type and AP2 artifact output, though the description never explicitly states the verb 'builds' or 'creates'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compliance reporting and gives a strong constraint ('Use synthetic or anonymised inputs only'), but it does not explicitly state when to use this tool versus alternative builders or compute nodes. No alternatives are named, and there is no explicit when-to-use/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.
build_chaingraphBuild an executable ChainGraph DAGARead-onlyIdempotentInspect
Hash-aware sibling of build_workflow_links (ChainGraph Standard v0.1 §8.1). Returns an ordered, executable DAG over the ChainGraph suite's verifiable tools, with explicit parent_hash wiring: which upstream execution_hash each step must cite in its chain block. Pass target_tool_id to build the chain that produces that node (walks consumes-edges back to roots), or tool_ids for an explicit ordered list, or neither to list available ChainGraph nodes. Agent loop: run a node, capture its execution_hash, pass it as the parent_hash for each downstream node, then verify with verify_execution_hash.
| Name | Required | Description | Default |
|---|---|---|---|
| tool_ids | No | Explicit ordered list of ChainGraph node tool_ids to wire. | |
| target_tool_id | No | A ChainGraph node tool_id (e.g. "art-15-agent-commerce-conformance"). Builds the chain that produces it. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, covering safety. The description adds value by explaining the return structure (ordered DAG with parent_hash wiring) and the required interaction pattern (run, capture hash, pass as parent_hash, verify). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (3-4 sentences) with key information front-loaded. Every sentence adds value, stating the sibling relationship, the return type, usage modes, and the agent loop. 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 no output schema, the description adequately explains the return (ordered executable DAG with parent_hash) and provides a usage loop. It could be slightly more explicit about the exact format of the DAG (e.g., list of nodes), but overall it is sufficient for an 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% with both parameters described. The description adds context about the purpose of each parameter (target_tool_id builds chain producing that node, tool_ids for explicit list), but does not provide additional semantic detail beyond the schema descriptions. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it builds an executable DAG for ChainGraph tools with hash wiring. It specifies the verb 'build', the resource 'ChainGraph DAG', and distinguishes itself from build_workflow_links as its 'hash-aware sibling'. Three usage modes are explicitly described.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 each parameter: target_tool_id for building a chain to a specific node, tool_ids for explicit ordering, and neither for listing nodes. It also provides an agent loop pattern. While it doesn't explicitly state when not to use this tool versus siblings, 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.
build_claim_dispute_bundleClaim Dispute Bundle BuilderARead-onlyIdempotentInspect
Claim Dispute Bundle Builder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-306-agent-insurability-evidence-scorer. Open at: https://ainumbers.co/chaingraph/art-307-claim-dispute-bundle-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations, including determinism, transient processing, no storage/logging/retention, artifact export with execution hash, and detailed compute mode behaviors (server vs. browser delegation). No contradictions with annotations are 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 concise and well-structured, front-loading identity, then behavior, then constraints, then output. Every sentence adds value, though it could be slightly more terse. It is appropriately sized for the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, transient processing, synthetic data requirement, upstream dependency, and output artifact type. Given the lack of output schema, it provides adequate context for invoking the tool, though more details on the output artifact's structure 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?
With 100% schema coverage, the baseline is 3, but the description adds meaningful context by explaining compute mode behavior relative to gpu and kernel presence, and clarifying that parent_hashes and parent_tool_ids are for chaining from upstream artifacts. The policy_parameters description lacks field names, but overall adds 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 tool builds a claim dispute bundle as an OpenChainGraph compute node, with specific details on compute modes, upstream artifacts, and deterministic behavior. It distinguishes itself from generic build tools by specifying the exact use case and referencing upstream artifact art-306.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 (for claim dispute bundles, chain provenance) and includes guidelines on compute modes, synthetic inputs, and consumption of upstream artifacts. However, it does not explicitly state when not to use it or list alternative tools, missing some exclusionary guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_conditional_relief_collateral_receiptConditional-Relief Collateral ReceiptARead-onlyIdempotentInspect
Conditional-Relief Collateral Receipt: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-514-conditional-relief-collateral-receipt.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly and idempotent hints, the description discloses deterministic behavior, transient processing ('not stored, logged, or retained'), the requirement to use synthetic/anonymised inputs, compute-mode delegation rules for gpu:false and gpu:true nodes, and the AP2 artifact export with execution_hash. This is rich behavioral context that significantly exceeds the annotation-only baseline.
Agents need to know what a tool does to the 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 information-dense and front-loads the core identity, but it redundantly repeats 'OpenChainGraph compute node' in the first two sentences. The compute-mode explanation is useful, but could be tightened; overall it is adequate but not exceptionally 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 four-parameter schema with nested objects, no output schema, and rich annotations, the description covers key operational aspects: compute modes, data retention, output artifact (AP2 with execution_hash), and a reference URL. It does not fully explain the meaning of a conditional-relief collateral receipt or the exact return structure, but for a deterministic compute node this is reasonably 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 schema already documents all four parameters at 100% coverage, but the description adds meaningful operational semantics for the compute parameter (auto/server/browser behavior, Cloudflare Workers, browser delegation URL) and ties policy_parameters to the decision function. It does not add much for parent_hashes or parent_tool_ids, but the schema covers those sufficiently.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific deliverable ('Conditional-Relief Collateral Receipt') and characterizes it as an 'OpenChainGraph compute node (compliance_control)' with a clear build action. However, it does not explain the domain purpose of a conditional-relief collateral receipt or differentiate it from the many sibling build_* tool names, leaving some ambiguity about its exact 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 operational guidance, such as 'By default (compute:"auto")' and 'Use synthetic or anonymised inputs only', but it does not explicitly state when to use this tool versus alternative receipt-building tools. Usage is implied by the resource name and compliance_control tag rather than clearly delineated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_conversion_receiptConversion Receipt BuilderARead-onlyIdempotentInspect
Conversion Receipt Builder: OpenChainGraph compute node (cryptographic_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-192-conversion-receipt-verifier. Open at: https://ainumbers.co/chaingraph/art-191-conversion-receipt-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, non-destructive), the description adds that the tool is deterministic, processes inputs transiently without storage, and outputs an AP2 artifact. This enriches the agent's understanding, though the output structure is not fully detailed.
Agents need to know what a tool does to the 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 reasonably dense but contains some technical detail that may be redundant with the schema (e.g., compute mode enum values). It front-loads the key purpose, but could be more structured to separate essential from auxiliary 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 the absence of an output schema, the description should detail the output artifact more thoroughly. It mentions 'execution_hash' and a verifier link, but the overall completeness is moderate. The data handling and compute modes are well covered, but error conditions and exact input structure for 'policy_parameters' are missing.
Complex tools with many parameters or behaviors need more documentation. 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 explaining compute modes more succinctly and the default behavior, but does not fully clarify 'policy_parameters', referring to an external manifest. This is a minor gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 builds a conversion receipt as an AP2 artifact, with specific purpose as an OpenChainGraph compute node. It distinguishes itself from siblings by mentioning the output feeds to a specific verifier, though not explicitly. The verb 'build' combined with 'conversion receipt' makes the purpose clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some usage context, such as using synthetic inputs and explaining compute modes, but lacks explicit guidance on when to use this tool versus alternative siblings. No 'when to use' or 'instead of' statements are present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_digest_manifestDigest Manifest BuilderARead-onlyIdempotentInspect
Digest Manifest Builder: OpenChainGraph compute node (cryptographic_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-191-conversion-receipt-builder. Open at: https://ainumbers.co/chaingraph/art-194-digest-manifest-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds significant behavioral context: deterministic execution, transient processing with no storage/logging, conditional server-side vs browser delegation based on gpu:true, and forced delegation for gpu:true. It also warns about input sensitivity, exceeding annotation 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 information-dense and front-loaded with identity and core purpose. A minor redundancy ('Deterministic OpenChainGraph compute node' appears twice) and the inclusion of a verbose URL slightly reduce conciseness, but 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?
The description covers compute modes, transient processing, output type (AP2 artifact with execution_hash), and even the downstream consumer. However, it lacks detail on the output artifact structure (beyond hash) and does not specify how the agent should use the output. With no output schema, more return value context would be beneficial.
Complex tools with many parameters or behaviors need more documentation. 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 enriches these by explaining compute mode behavior, chaining via parent_hashes/parent_tool_ids, and policy_parameters as decision function inputs. It adds practical context (e.g., gpu:true always delegates) that aids parameter selection beyond 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 identifies the tool as a deterministic OpenChainGraph compute node that builds a digest manifest (AP2 artifact) for chain provenance. It distinguishes itself by referencing specific output feeds (art-191-conversion-receipt-builder) and compute mode behavior, making its role in the chain explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using synthetic or anonymised inputs only, which is a usage constraint. However, it does not explicitly state when to use this tool versus alternatives like build_chaining or other build tools, nor does it provide exclusion criteria. The usage context is implied through compute mode explanations but lacks direct guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_disclosure_manifestBuild a signed data-room disclosure manifestARead-onlyIdempotentInspect
Builds a Merkle-rooted disclosure manifest from a caller-supplied digest list (DATAROOM-1-BUILD-SPEC.md §DR-4) -- the agent hashes files itself and passes {path,size,digest,content_type} entries; the worker never sees file contents. Same leaf scheme as tools/546-disclosure-manifest-builder.html: sha256(path|digest|size), duplicate-last-leaf on an odd level. Entries are sorted by path before hashing so the root is order-independent. Returns the manifest object + merkle_root; sign and anchor it client-side (or via a separate §16 signing step) if a signed artifact is required.
| Name | Required | Description | Default |
|---|---|---|---|
| entries | Yes | List of {path,size,digest,content_type} -- the caller has already hashed each file. | |
| room_label | No | Label for the disclosure room. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and destructiveHint=false, so safety is clear. The description adds behavioral details: the worker never sees file contents, duplicate-last-leaf handling for odd levels, and sorting by path for order-independent roots. This provides valuable context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description fits in one paragraph and is front-loaded with the main purpose. It is slightly dense with technical details (e.g., duplicate-last-leaf, sorting), but every sentence adds value. Could be trimmed slightly without losing substance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 2 parameters and no output schema, the description covers input requirements, the algorithmic process (Merkle tree construction), and the return value (manifest object + merkle_root). It also hints at post-processing steps. Complete enough 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 parameters are well-documented structurally. The description adds meaning by explaining the caller hashes files and passes {path,size,digest,content_type}, and mentions the Merkle leaf scheme (sha256(path|digest|size)). This goes beyond the schema for the entries parameter, though room_label lacks extra 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 builds a Merkle-rooted disclosure manifest from a caller-supplied digest list. It uses a specific verb ('builds') and defines the resource ('Merkle-rooted disclosure manifest'), distinguishing it from similar siblings like 'build_digest_manifest' by detailing the data-room context and hashing scheme.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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: to create a signed data-room manifest from pre-hashed files. It instructs the agent to hash files itself and pass specific entries, and notes post-processing steps. However, it does not explicitly state when not to use it or contrast with alternative tools, missing some guidance on exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_dora_roi_registerDORA Register of Information (RoI) Builder & Cross-ValidatorBRead-onlyIdempotentInspect
DORA Register of Information (RoI) Builder & Cross-Validator: OpenChainGraph compute node (compliance_mandate). Regulatory deadline: 2027-01-31 (DORA RoI annual submission cycle, Q1 (2nd cycle completed Q1 2026; next cycle Q1 2027).). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-466-dora-roi-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations: it states inputs are transiently processed and not stored, logged, or retained (aligning with readOnlyHint=true). It also notes the tool is deterministic and exports an execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose (multiple sentences, regulatory deadline, URL) and could be more concise. While it front-loads the purpose, the compute details and safety notes make it longer than necessary for a tool 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?
Given the complexity (4 params, no output schema), the description covers safety, compute modes, and regulatory context. However, the output (AP2 artifact with execution_hash) is mentioned but not detailed, leaving gaps about return value 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 descriptions for all 4 parameters. The description adds some value by explaining the compute modes and the role of 'policy_parameters', but largely restates schema info. 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 identifies the tool as a DORA Register of Information (RoI) Builder & Cross-Validator, specifying its role as an OpenChainGraph compute node with a regulatory deadline. It distinguishes from siblings by being uniquely tied to DORA compliance, though the 'Cross-Validator' aspect is not elaborated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes ('auto', 'server', 'browser') and when to use synthetic/anonymised inputs, but it does not explicitly compare this tool to alternatives among the many siblings. It lacks 'when to use vs. when not to use' statements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_dual_control_certificationDual Control Certification EvidenceARead-onlyIdempotentInspect
Dual Control Certification Evidence: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-503-build-dual-control-certification.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), the description discloses that inputs are transiently processed and not stored/logged/retained, and explicitly warns to use synthetic or anonymised inputs. It also reveals execution location (Cloudflare Workers) and the deterministic nature of the node. This is valuable behavioral context that helps the agent avoid data misuse.
Agents need to know what a tool does to the 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 dense and information-rich, covering compute modes, privacy, output artifact, and an external link. It uses semicolons and complex clauses, making it slightly hard to parse, but every sentence contributes unique information. It is appropriately sized for a tool with multiple behavioral nuances.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description adequately explains the return artifact (AP2 with execution_hash) and mentions browser delegation URL. It also covers input handling and compute modes. It does not detail how to use the browser delegation URL or the exact structure of parent_hashes linkage, but given the schema covers parameters, this is fairly 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 already has 100% description coverage for all four parameters. The description adds minor context about Cloudflare Workers and gpu:true delegation, but this largely mirrors the schema's compute parameter description. It does not significantly enhance understanding of parent_hashes, parent_tool_ids, or policy_parameters 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 identifies the tool as an OpenChainGraph compute node for compliance_control and states it exports an AP2 artifact with execution_hash. However, it never explicitly states what 'dual control certification' means or what evidence it produces, relying heavily on the title. It does distinguish from siblings by mentioning OpenChainGraph, but the core function remains vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 server-side vs browser-side compute modes are used and notes gpu:true nodes always delegate to browser. It also advises using synthetic or anonymised inputs. However, it does not provide guidance on when to use this tool instead of sibling tools like build_chaingraph or verify_execution_hash, leaving the selection context implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_einvoice_transmission_receiptE-Invoice Transmission Receipt BuilderARead-onlyIdempotentInspect
E-Invoice Transmission Receipt Builder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-295-einvoice-jurisdiction-mandate-router. Open at: https://ainumbers.co/chaingraph/art-296-einvoice-transmission-receipt-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral details beyond annotations: it is deterministic, transiently processes inputs without storage or logging, and exports an AP2 artifact with execution_hash. Annotations already indicate readOnly, idempotent, non-destructive, so the description complements them well without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is 8 sentences and includes technical details about Cloudflare Workers and GPU nodes. While informative, it could be more concise by reducing redundancy (e.g., repeating 'OpenChainGraph compute node') and focusing on essential information. The key points are front-loaded, but overall length is slightly excessive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 no output schema, yet the description only vaguely mentions 'Exports an AP2 artifact with execution_hash for chain provenance.' It does not describe the receipt's structure, fields, or format. For a build tool with 4 parameters and no output schema, more detail on what the tool produces is necessary for an AI agent to use it 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 the schema already documents all parameters. The description adds meaningful context for the 'compute' parameter (explaining auto vs browser and GPU behavior) but does not elaborate on 'parent_hashes', 'parent_tool_ids', or 'policy_parameters' beyond schema names. This adds limited incremental 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 identifies the tool as an E-Invoice Transmission Receipt Builder. It specifies it is a deterministic OpenChainGraph compute node and distinguishes itself by mentioning the upstream artifact (art-295-einvoice-jurisdiction-mandate-router) and compute mode options, setting it apart 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 provides explicit guidance to use synthetic or anonymised inputs only and explains when to use auto vs browser compute modes. However, it does not directly compare to alternative tools or state when not to use it, missing some usage context relative to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_etr_possession_chainETR Possession-Chain Receipt BuilderARead-onlyIdempotentInspect
ETR Possession-Chain Receipt Builder: OpenChainGraph compute node (cryptographic_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-352-etr-control-evidence-checker. Open at: https://ainumbers.co/chaingraph/art-353-etr-possession-chain-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, non-destructive. The description adds significant transparency: inputs are transiently processed, not stored/logged/retained, compute modes with details on server-vs-browser execution, and the requirement for synthetic inputs. Exceeds annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph that front-loads purpose and key details. It contains useful information without repetition. The inclusion of a URL at the end is minor but acceptable. Could be slightly more structured, but 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 4 parameters with nested objects and no output schema, the description explains compute modes, data handling, and upstream dependencies. It mentions the exported artifact and execution_hash for provenance. Lacks detail on artifact structure, but sufficient for understanding tool's role.
Complex tools with many parameters or behaviors need more documentation. 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 enriches each parameter: explains compute mode behaviors (auto/server/browser, gpu:true delegation), parent_hashes as execution_hash from upstream, and policy_parameters as decision function inputs computed server-side. Adds meaning beyond 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 builds an ETR Possession-Chain Receipt as an OpenChainGraph compute node, explaining its deterministic nature and compute modes. It distinguishes from siblings by specifying it consumes from art-352, providing unique 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 gives clear usage context: it's for building possession-chain receipts in a chain, with explicit instructions to use synthetic inputs only. However, it does not compare against sibling tools like build_chaingraph or check_etr_control_evidence, missing explicit 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.
build_evidence_packAssemble a complete evidence pack in one callAInspect
Composes a session receipt (build_session_receipt logic), an optional §27.6 HA evidence bundle (ha_bundle_export logic, included only when ha_records is supplied and non-empty), and a disclosure manifest (build_disclosure_manifest logic) from one array of already-produced artifacts, all keyed to the same input hashes -- replacing what today takes 4-6 separate tool calls with hand-carried hashes. Calls the same in-process functions those standalone tools use; if any one section fails to build, the whole call fails isError:true with that section's own message -- no partial pack.
| Name | Required | Description | Default |
|---|---|---|---|
| sd_jwt | No | When true, also return an SD-JWT export of the HA bundle (mirrors ha_bundle_export, default false; no-op when ha_records is absent). | |
| framing | No | Optional framing context for the session receipt's PTG-01 regulator prompt. | |
| artifacts | Yes | Already-produced artifacts this pack documents, in call order. | |
| ha_records | No | §27 human_accountability_records -- omit entirely for no HA section. | |
| room_label | No | Label for the disclosure-manifest room. | |
| session_id | No | ||
| subject_hash | No | The sha256: subject hash the pack documents (defaults to artifacts[0].execution_hash if omitted). | |
| kernel_version | No | ||
| policy_version | No | ||
| submission_receipt | No | Populate ONLY after a real transmission -- never fabricate (same rule as ha_bundle_export). | |
| verification_result | No | The §16/§18/§20 verdict. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations mark readOnlyHint:false and destructiveHint:false, so the agent knows it's a state-changing (non-read-only) operation. The description adds the atomicity guarantee: 'if any one section fails to build, the whole call fails isError:true -- no partial pack'. It also adds the conditional inclusion logic for the HA bundle. Not quite a 5, but strong for an assembly 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 detailed sentences that pack substantial semantic content. The first sentence is long but manages to enumerate the three components, the conditional HA inclusion, the hash keying, and the comparison to the 4-6 call alternative. Second sentence covers atomicity. Slightly dense, but every clause adds 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 an 11-param composite tool with no output schema, the description covers the most important behavioral aspects: what it composes, when HA section is included, atomic failure behavior, and the never-fabricate rule for submission_receipt. The high schema coverage (73%) handles the rest. Could add example invocation or note on return structure, but the description is genuinely complete for the core 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?
Schema description coverage is 73% (8 of 11 params documented in schema). The description adds the sd_jwt mirror of ha_bundle_export behavior, the submission_receipt 'never fabricate' rule, and the subject_hash fallback to artifacts[0].execution_hash. However, several params (session_id, kernel_version, policy_version, verification_result, room_label, framing) are documented only in the schema without behavioral meaning added in the description — the description focuses mostly on the higher-level composition logic.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 this tool composes three specific components (session receipt, §27.6 HA evidence bundle, disclosure manifest) from one array of already-produced artifacts. It names the exact logic used (build_session_receipt, ha_bundle_export, build_disclosure_manifest) and explicitly distinguishes itself from the standalone sibling tools by noting it replaces 4-6 separate calls with hand-carried hashes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explains when to use this tool vs alternatives: instead of 4-6 separate calls carrying hashes by hand, use this one composite call. It also explains the HA bundle is 'included only when ha_records is supplied and non-empty' and that populating submission_receipt should only happen after a real transmission, never fabricated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_fria_monitoring_planFRIA & Post-Market Monitoring Plan BuilderARead-onlyIdempotentInspect
FRIA & Post-Market Monitoring Plan Builder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-64-ai-act-highrisk-fit-diagnostic. Output feeds: 451-sr11-7-model-risk-management-gap-assessor, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-66-fria-postmarket-monitoring-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds significant context: inputs are transient and not stored/logged/retained; exports an AP2 artifact with execution_hash; is deterministic; and details compute mode behavior. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose, then explains compute modes, data handling, artifact export, and links. Slightly verbose with technical details (e.g., specific artifact IDs and URLs) but all relevant. Could be trimmed without losing 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?
With 4 parameters (one nested), no output schema, and good annotations, the description covers compute modes, transient processing, artifact chaining, and external resource link. Lacks detail on the exported artifact's structure or fields. Remains largely 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%, so the schema already documents parameters well. The description adds no additional parameter semantics beyond what the schema provides (e.g., the 'compute' enum explanation is already in the schema's description). 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 builds a FRIA & Post-Market Monitoring Plan, identifies it as an OpenChainGraph compute node, and lists its deterministic nature, compute modes, artifact exports, and upstream/downstream connections. The verb 'build' and resource 'FRIA & Post-Market Monitoring Plan' are specific and distinct from sibling tools despite no explicit 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?
Provides usage context: default server-side execution, browser delegation for gpu:true nodes or when compute is 'browser', and a warning to use only synthetic/anonymised inputs. However, it does not explicitly state when not to use this tool or mention alternatives among the many sibling builders.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_google_ap2_mandateGoogle AP2 Checkout/Payment Mandate (VDC) Builder & ValidatorARead-onlyIdempotentInspect
Build or validate a Google AP2 Checkout/Payment Mandate VDC (Open/Closed). Targets the external AP2 spec, not the AINumbers Policy Mandate. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mandate | No | |
| findings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate safe read operation (readOnlyHint=true, idempotentHint=true, destructiveHint=false). The description adds valuable context about the execution model: a client-side widget with zero PII and zero network traffic, which goes beyond the annotations and clarifies the tool's 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 very concise: three sentences, each providing essential information (purpose, scope distinction, execution model). No wasted words, front-loaded with the main 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?
For a one-parameter tool with an output schema, the description covers purpose, scope, and behavioral context. It does not explain terms like VDC or Open/Closed, but these may be domain-specific. Overall, 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 has 100% description coverage for the 'inputs' parameter, so the schema already explains the parameter. The description mentions inputs are applied via AIN Bridge prefill, which adds minimal extra meaning. 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 'Build or validate a Google AP2 Checkout/Payment Mandate VDC', specifying the resource and actions. It distinguishes from the AINumbers Policy Mandate, but does not fully differentiate from sibling tools like 'validate_ap2_mandate_chain' or 'ap2_aml_mandate_builder', which have overlapping 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 implies usage by targeting the external AP2 spec and not the internal policy mandate, but does not explicitly state when to use this tool versus alternatives (e.g., validators of AP2 mandates) or 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.
build_idv_session_receiptIDV/KYC Session Evidence Receipt BuilderARead-onlyIdempotentInspect
IDV/KYC Session Evidence Receipt Builder: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-418-idv-verification-failure-incident-composer. Open at: https://ainumbers.co/chaingraph/art-359-idv-session-receipt-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: transient processing without storage/logging, compute delegation rules, and the export of an AP2 artifact. This complements the readOnlyHint and idempotentHint annotations well, though the deterministic property is stated but already hinted by idempotentHint.
Agents need to know what a tool does to the 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 that front-loads the purpose and then provides necessary technical details. It is compact but includes some verbose phrases ('OpenChainGraph compute node' is repeated). Overall, it earns its place without excessive wordiness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 moderately complex with 4 parameters and no output schema. The description covers behavioral context and output format (AP2 artifact with execution_hash) and mentions a downstream artifact. However, it lacks details on the receipt's structure, which would be expected for a receipt builder, and does not fully compensate for the missing 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% with descriptions for each parameter. The description adds value by explaining compute mode behaviors (auto/server/browser) and the transient nature of inputs. However, it does not clarify the structure of policy_parameters beyond referring to a manifest, and parent_hashes and parent_tool_ids are not elaborated 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 it builds an IDV/KYC session evidence receipt as an AP2 artifact with execution_hash. The verb 'build' and resource 'receipt' are specific. However, it does not differentiate from similar siblings like 'build_session_receipt' or 'build_vop_session_receipt', and the purpose is somewhat mixed with implementation details (compute modes).
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage guidance on compute modes and warns to use synthetic or anonymised inputs only. However, it lacks explicit when-to-use vs alternatives; no sibling comparison is made. The link to a webpage provides additional context but is not part of the description itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_idv_verification_incident_recordIDV/KYC Verification-Failure Incident ComposerARead-onlyIdempotentInspect
IDV/KYC Verification-Failure Incident Composer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-359-idv-session-receipt-builder. Open at: https://ainumbers.co/chaingraph/art-418-idv-verification-failure-incident-composer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explains compute modes, transient processing, non-retention of inputs, and output as an AP2 artifact with execution_hash. Annotations (readOnlyHint, idempotentHint) are consistent and the description enriches them with specific behavior like browser delegation for gpu:true nodes.
Agents need to know what a tool does to the 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, covering purpose, compute behavior, input handling, and output in one paragraph. It front-loads the purpose. Slightly dense but each sentence is informative. No 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?
The description covers compute modes, transient processing, and output format, but lacks details on the response structure beyond 'AP2 artifact with execution_hash'. Given the complexity (nested inputs, no output schema), the description could be more complete about what the incident record contains.
Complex tools with many parameters or behaviors need more documentation. 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 details all parameters. The description adds minor value: advising synthetic inputs and explaining compute modes (already in schema). No deeper semantics beyond what the schema provides, justifying 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 title and description clearly state the tool's purpose: composing an IDV/KYC verification-failure incident record. It specifies the domain (OpenChainGraph compute node, compliance_mandate) and distinguishes from siblings like build_idv_session_receipt by focusing on failure incidents.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 consuming upstream from 'art-359-idv-session-receipt-builder' and advises using synthetic inputs, but lacks explicit when-to-use vs alternatives. The purpose is clear from the name, but no guidance on when not to use or comparison with similar build_ tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_mastercard_agentic_tokenMastercard Agentic Token Scope BuilderARead-onlyIdempotentInspect
Mastercard Agentic Token Scope Builder: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-22-agentic-payments-protocol-comparator, art-23-visa-trusted-agent-protocol-inspector. Output feeds: art-18-mcp-developer-readiness-scorecard, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-24-mastercard-agentic-token-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, non-destructive), the description discloses compute mode behavior (server vs browser delegation), gpu handling, deterministic execution, transient data processing with no storage/logging/retention, and artifact provenance via execution_hash. These are significant behavioral details that help the agent anticipate side effects and execution environment. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph of about 180 words. While every sentence carries relevant information about execution, chain integration, and data privacy, it lacks structural organization (e.g., bullets or sections) and repeats 'OpenChainGraph compute node' twice. It is longer than necessary but not rambling.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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's complexity is high with 4 parameters, nested policy_parameters, and no output schema. The description covers computing environment, data retention, and chain connections (upstream/downstream artifacts), but does not describe the structure or fields of the AP2 output artifact beyond execution_hash. It also does not explain the meaning of 'Mastercard agentic token scope' or what compliance_control entails. Given the absence of an output schema, this gap is notable.
Complex tools with many parameters or behaviors need more documentation. 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 all four parameters with 100% coverage. The description adds context about compute modes and data handling but does not add significant meaning to parent_hashes, parent_tool_ids, or policy_parameters beyond the schema descriptions. Since schema coverage is high, score is at 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?
Description establishes it as a deterministic OpenChainGraph compute node for compliance_control that consumes specific upstream artifacts and exports an AP2 artifact with execution_hash. It clearly identifies the specific Mastercard agentic token builder role, but does not explicitly state what the resulting scope contains. It is distinguishable from siblings through artifact IDs and specific compliance_control designation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context by stating inputs are processed transiently and recommends synthetic/anonymised inputs only. It also lists upstream and downstream artifacts indicating chain placement. However, it lacks explicit when-to-use vs alternatives, such as when to use build_google_ap2_mandate or compose_ap2_prompt instead, and does not state exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_model_inventory_entryModel Inventory Entry BuilderARead-onlyIdempotentInspect
Model Inventory Entry Builder: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-451-model-outcome-analysis. Open at: https://ainumbers.co/chaingraph/art-450-model-inventory-entry.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it states the tool is deterministic, processes inputs transiently without storage or retention, requires synthetic or anonymised inputs, and explains compute delegation rules (server vs browser). This aligns with and enriches the idempotentHint and readOnlyHint 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 well-structured, starting with the key identity, then compute modes, data handling, and output. It is appropriately sized for the complexity, though slightly lengthy. 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?
The description covers purpose, compute behavior, data handling, output feed, and a reference link. It does not explicitly describe the return value format, but given no output schema and the artifact nature, the description is sufficiently complete for an agent to understand the tool's role.
Complex tools with many parameters or behaviors need more documentation. 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 full descriptions for all four parameters (100% coverage). The description does not add additional meaning for individual parameters; it only refers to the tool's manifest for policy_parameters. 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 identifies the tool as an OpenChainGraph compute node for compliance control, specifying its deterministic nature, compute modes, and that it builds a model inventory entry. It distinguishes itself from sibling tools by mentioning the specific output feed (art-451-model-outcome-analysis) and the compliance_control context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some context about compute modes and input handling, implying usage for deterministic, transient processing of model inventory entries. However, it lacks explicit guidance on when to use this tool versus alternatives, 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.
build_no_russia_clause_packNo-Russia-Clause Pack BuilderBRead-onlyIdempotentInspect
No-Russia-Clause Pack Builder: OpenChainGraph compute node (disclosure_template). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-95-circumvention-diligence-assessor. Output feeds: cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-96-no-russia-clause-pack-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds important details: deterministic execution, transient processing (inputs not stored/logged/retained), compute mode behavior (server vs browser), and the requirement to use synthetic/anonymised inputs only. These go beyond annotations and clarify side-effect profile and execution constraints.
Agents need to know what a tool does to the 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 moderately concise but mixes core purpose with implementation details (e.g., 'Cloudflare Workers', 'AP2 artifact', 'execution_hash'). The first sentence clearly states the name and type, but subsequent sentences could be streamlined. Not excessively verbose, but could be tighter by removing technical implementation specifics not essential for tool selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, annotations, no output schema), the description covers compute modes, transient processing, artifact export format (AP2 with execution_hash), and chain provenance. It explains the return value (artifact) and consumption/production relationships. Missing output schema is compensated by describing the artifact. However, no example invocation or expected data shapes are provided.
Complex tools with many parameters or behaviors need more documentation. 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 four parameters have descriptions. The tool description adds context about compute modes (e.g., 'auto' default behavior, gpu:true delegation) beyond the schema, but this largely repeats schema information. For policy_parameters, it references 'tool's manifest' which is external. Overall, the description complements the schema but doesn't significantly enhance semantic 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 states it builds a 'No-Russia-Clause Pack' and is an OpenChainGraph compute node. It clearly identifies the tool's function (building a pack with a specific clause), though the explanation is dense with jargon like 'OpenChainGraph compute node' and 'disclosure_template', which may obscure the core purpose. It does not explicitly differentiate from sibling builders but the name is specific enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 downstream and upstream artifact IDs (art-95-circumvention-diligence-assessor, cry-04-merkle-batch-verifier) indicating a chain context, but offers no explicit guidance on when to use this tool versus alternatives like build_ai_conformity_pack or build_226j_response_evidence_pack. No '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.
build_pld_disclosure_packPLD Disclosure Pack BuilderARead-onlyIdempotentInspect
PLD Disclosure Pack Builder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-308-pld-disclosure-pack-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and idempotent. The description adds determinism, compute modes (auto/server/browser), transient processing, and output export with execution_hash, providing meaningful behavioral context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is front-loaded with the tool's purpose and is concise despite covering compute modes, transient processing, and output format. One sentence about GPU behavior could be considered slightly tangential but not excessive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 good annotations and full schema coverage, the description adequately covers compute modes, data handling, and output. A link to more information is provided. Missing an explicit statement about output structure is minor.
Complex tools with many parameters or behaviors need more documentation. 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 for all four parameters. The description does not add parameter-specific information beyond what is already in the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as a builder for PLD disclosure packs and states it is a deterministic OpenChainGraph compute node for compliance mandate. This distinguishes it from other build tools like build_chaingraph, though not explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 only usage constraint is 'Use synthetic or anonymised inputs only,' which is a safety warning, not a selection criterion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_product_lineageDigital Product Passport Cradle-to-Gate Lineage BuilderARead-onlyIdempotentInspect
Digital Product Passport Cradle-to-Gate Lineage Builder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-115-dpp-data-carrier-validator. Output feeds: art-117-product-authenticity-verifier. Open at: https://ainumbers.co/chaingraph/art-116-product-lineage-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals that inputs are processed transiently and not stored, and that the tool is deterministic. It notes the export of an AP2 artifact with execution_hash. These details go beyond the annotations (readOnlyHint, idempotentHint) by explaining the transient nature and provenance tracking. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sentences, each adding relevant information such as compute modes, input handling, artifact details, and a URL. While it is somewhat dense, every sentence earns its place. It could be slightly more concise, but it remains 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?
The description covers the tool's purpose, compute modes, input handling, artifact dependencies, and a reference URL. Given the complexity (4 parameters, nested objects, no output schema), it provides sufficient context for an agent to understand the tool's role and constraints. Some details about output format are missing, but the overall 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?
The input schema has 100% description coverage, so the schema itself documents all parameters adequately. The description adds high-level context about compute modes and notes that policy_parameters are 'see the tool's manifest', which provides some additional guidance but does not significantly enhance the semantic 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 it is a 'Digital Product Passport Cradle-to-Gate Lineage Builder', specifying the verb 'build' and the resource 'product lineage'. It distinguishes itself from sibling tools by mentioning specific upstream and downstream artifact IDs (art-115, art-117) and a URL, making its scope 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 explains the compute modes ('auto', 'server', 'browser') and when each applies (e.g., gpu:true nodes always delegate). It advises using synthetic or anonymised inputs only, and details the artifact chain. While it does not explicitly list when not to use this tool versus alternatives, it provides sufficient context for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_public_money_settlement_receiptPublic-Money Settlement ReceiptARead-onlyIdempotentInspect
Public-Money Settlement Receipt: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-513-public-money-settlement-receipt.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: inputs are transient and not stored/logged/retained, the tool is deterministic, and compute modes (server vs browser) are explained. It also discloses the export of an AP2 artifact with execution_hash for chain provenance, which is helpful. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph of about five sentences, covering purpose, compute modes, data handling, and output. Every sentence carries information, but the structure could be improved with lists or separation for readability. No fluff, yet not as concise as it could be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 there is no output schema, the description adequately states the output is an AP2 artifact with execution_hash, and it provides a URL for more details. It explains compute modes and data retention, which covers key usage concerns. However, it doesn't describe the artifact's internal structure or the exact contents of the settlement receipt, which could be important for callers.
Complex tools with many parameters or behaviors need more documentation. 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 100% description coverage for all parameters, so the baseline is 3. The description adds some context about compute:'auto' and 'browser' behavior, but it doesn't explain policy_parameters fields or parent_hashes beyond what the schema states. It doesn't add much new semantic meaning for 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 identifies the tool as a 'Public-Money Settlement Receipt' and an 'OpenChainGraph compute node' that exports an AP2 artifact with execution_hash. It specifies the tool's role in building a receipt for public-money settlement, distinguishing it from other build_* siblings by its compliance_control and chain provenance mention. However, it lacks an explicit imperative verb like 'build' and uses a noun phrase, 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?
The description tells users to use synthetic or anonymised inputs only, which is a clear usage constraint. It also explains when server vs. browser compute is used, but it doesn't mention alternative tools or when not to use this tool. There is no explicit comparison to siblings, so guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_rights_recordRights Record BuilderARead-onlyIdempotentInspect
Rights Record Builder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-205-license-terms-assembler. Open at: https://ainumbers.co/chaingraph/art-206-rights-record-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond annotations by detailing deterministic behavior, transient input processing (not stored, logged, or retained), compute modes (server-side on Cloudflare Workers vs browser delegation), and output specifics (AP2 artifact with execution_hash). It also warns about using synthetic inputs, adding valuable context for safe usage.
Agents need to know what a tool does to the 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 moderately concise, with each sentence contributing useful information (identity, compute modes, processing guarantees, output, upstream dependency, link). It could be slightly more streamlined, but it is well-structured and front-loaded with key identity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested objects, no output schema), the description covers inputs, processing behavior, output type (AP2 artifact), and upstream dependency. However, it does not describe the structure of the output artifact, which would be helpful for downstream tool chaining.
Complex tools with many parameters or behaviors need more documentation. 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 coverage, the baseline is 3, but the description adds meaning beyond schema: it explains that the 'compute' parameter controls server vs browser execution, and that 'policy_parameters' are computed server-side when applicable. This contextual detail enhances understanding of how parameters affect behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a deterministic OpenChainGraph compute node that builds a rights record for compliance mandates. It specifies the resource ('rights record') and differentiates itself from siblings by detailing its role as a node consuming a specific upstream artifact and exporting an AP2 artifact with execution_hash for chain provenance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 when to use the tool (e.g., with synthetic or anonymised inputs only) and explains compute modes (auto, server, browser) but does not explicitly compare this tool to alternative sibling tools. Users must infer its place in the workflow from the upstream artifact reference, lacking direct 'when-to-use' vs 'alternatives' advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_safeguarding_audit_evidenceCASS 15 Safeguarding Audit Evidence PackARead-onlyIdempotentInspect
CASS 15 Safeguarding Audit Evidence Pack: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-501-build-safeguarding-audit-evidence.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable context: inputs are processed transiently and not stored, and the compute mode behaviors. This goes beyond the annotations without contradicting them. No annotation 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?
The description is efficient at around 60 words, covering purpose, compute modes, and data handling without redundancy. It front-loads the key purpose and then details technical aspects. No wasted sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, compute modes, data handling, and output artifact type. However, it lacks details on the output schema (which is absent) and does not explicitly list defaults for all parameters. Given the tool's complexity (4 params, nested objects), it is mostly complete but could benefit from mentioning that no parameters are 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?
Schema coverage is 100% with descriptions for all 4 parameters. The description adds some nuance, e.g., the default 'auto' behavior and the effect of 'browser' mode. However, it does not significantly expand on the schema's own descriptions, 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 it builds a 'CASS 15 Safeguarding Audit Evidence Pack' using an OpenChainGraph compute node. The verb 'build' combined with 'safeguarding audit evidence' precisely identifies the tool's purpose and distinguishes it from sibling tools, many of which are also 'build' tools but for different evidence packs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 on when to use the tool (CASS 15 audit evidence) and details compute modes (auto, server, browser) with implications. It also advises using synthetic or anonymised inputs. However, it does not explicitly state when not to use this tool or compare it to 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.
build_sanctions_screening_evidence_packSanctions Screening Evidence PackARead-onlyIdempotentInspect
Sanctions Screening Evidence Pack: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-585-sanctions-screening-evidence-pack.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond the annotations: it explains determinism, server-side computation on Cloudflare Workers, browser delegation for gpu:true nodes, transient processing with no storage/logging/retention, and the export of an AP2 artifact with execution_hash. This significantly enriches the annotation-provided read-only, idempotent, non-destructive 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 moderately sized but contains redundancy, repeating 'OpenChainGraph compute node' twice at the beginning. It packs multiple concepts into dense sentences and includes a URL, which is useful but not strictly essential. It is front-loaded with the tool name and type, but could be more concise and better organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a complex tool with compute modes, chaining parameters, policy parameters, and no output schema. The description covers execution behavior, privacy, and artifact export, but it does not explain what the evidence pack contains, how to structure policy_parameters, or what an AP2 artifact is. The provided URL helps mitigate gaps but does not fully compensate for the missing output structure 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 100%, so the parameters are already fully documented in the schema. The description elaborates on the compute parameter's execution modes (auto/server/browser) and mentions synthetic inputs, but adds little semantic value for parent_hashes, parent_tool_ids, or policy_parameters beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as a 'Sanctions Screening Evidence Pack' and a 'deterministic OpenChainGraph compute node' that exports an AP2 artifact with execution_hash, making it clear it builds an evidence pack for sanctions screening. However, it does not explicitly distinguish this tool from sibling evidence-pack builders (e.g., build_226j_response_evidence_pack), so it stops short of 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 gives a usage constraint ('Use synthetic or anonymised inputs only') but no explicit guidance on when to choose this tool over other evidence-pack tools or related sanctions screening tools. It doesn't mention prerequisites, exclusions, or alternative tools, leaving the agent to infer selection 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.
build_session_receiptBuild a session audit receipt (Merkle root)ARead-onlyIdempotentInspect
Aggregates execution_hashes from N ChainGraph tool calls in one agent session into a single SHA-256 Merkle root (session_receipt_root). Returns a tamper-evident session receipt and a regulator-framed PTG-01 audit prompt. One receipt covers an entire agent session: supply all execution_hashes in call order. The Merkle root is deterministic — the same hashes in the same order always produce the same root. Compliant with EU AI Act Art. 12 (transparency) and DORA ICT audit-trail requirements.
| Name | Required | Description | Default |
|---|---|---|---|
| framing | No | Optional framing context for the PTG-01 regulator prompt (e.g. "DORA incident review" or "EU AI Act Art.12 transparency log"). | |
| tool_ids | No | tool_id values corresponding to execution_hashes, in the same order. Used for the audit narrative. | |
| session_id | No | Optional agent session identifier for the audit narrative (e.g. a UUID or timestamp). | |
| prior_receipt | No | An earlier receipt from this SAME session (its mmr_peaks/mmr_size/mmr_bagged_root). When supplied, execution_hashes MUST start with that earlier receipt's full leaf set — the response's consistency_proof then proves this receipt provably APPENDS to the prior one (CT-style append-only guarantee) without operating a log. | |
| execution_hashes | Yes | Ordered list of execution_hash values from ChainGraph tool calls in this session (each produced by emit_chaingraph_artifact or a kernel tool). Minimum 1. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent), the description adds determinism ('same hashes in the same order always produce the same root') and states the output is tamper-evident and regulator-framed. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, each adding value: core function, return value, session-wide scope, and determinism/regulatory compliance. 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 description covers main behavior, output, and regulatory context. It does not mention the prior_receipt append-only consistency feature, but the detailed schema description compensates. With 5 params and a nested object, this is adequately complete for 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?
Schema coverage is 100%, so baseline 3 applies. The description reinforces the ordering requirement for execution_hashes and mentions session context, but does not add 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 aggregates execution_hashes into a SHA-256 Merkle root and returns a session receipt plus audit prompt. It names the specific resource (session audit receipt) and distinguishes from sibling build_* tools by emphasizing 'session' and 'Merkle root'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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: one receipt covers an entire agent session and requires all execution_hashes in call order. Does not explicitly name alternative tools or state when not to use it, but the usage scenario is sufficiently defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_tdm_reservationTDMRep AI Training Reservation BuilderARead-onlyIdempotentInspect
TDMRep AI Training Reservation Builder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-201-iscc-content-code-generator. Open at: https://ainumbers.co/chaingraph/art-202-tdmrep-reservation-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with annotations (readOnlyHint, idempotentHint, destructiveHint). It adds behavioral context: compute modes, server vs browser execution, transient input processing (not stored/logged), deterministic nature, and output as AP2 artifact with execution_hash. 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 information-dense and concise, but presented as a single paragraph. Every sentence adds value, but structure could be improved with bullet points for clarity. It front-loads the core purpose, which is good.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, nested object, compute modes, output artifact), the description covers key aspects: operation, compute options, input privacy, output (AP2 artifact), upstream dependency, and link. Without output schema, it adequately explains return value. Could add a usage example or reservation behavior 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?
All 4 parameters have schema descriptions (100% coverage). The description adds meaning: explains 'compute' enum behavior, 'parent_hashes' chaining purpose, 'policy_parameters' as input to decision function, and usage direction (synthetic inputs only). This significantly clarifies 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 name 'build_tdm_reservation' and title clearly indicate the tool builds a TDM reservation. The description specifies it's an OpenChainGraph compute node for TDMRep AI training, with detailed behavior. It distinguishes itself from other 'build_*' siblings by its unique resource and 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 provides explicit instructions on compute modes (auto, server, browser) and when they apply, warns to use synthetic inputs only, and lists upstream dependencies. However, it lacks explicit guidance on when not to use this tool versus alternatives, and could better contrast with siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_traiga_safe_harbor_packTRAIGA Safe Harbor Pack BuilderARead-onlyIdempotentInspect
TRAIGA Safe Harbor Pack Builder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-313-traiga-exposure-assessor, art-174-nist-ai-rmf-function-mapper. Open at: https://ainumbers.co/chaingraph/art-314-traiga-safe-harbor-pack-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond annotations: it explains the deterministic nature, processing modes (auto/server/browser), transient input handling (no storage), artifact export with execution_hash, and upstream artifact consumption. Annotations already indicate readOnly, idempotent, and non-destructive properties, and the description does not contradict them.
Agents need to know what a tool does to the 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 well-structured with the purpose first, followed by technical details. It could be slightly more concise by omitting the URL or some redundancy with the schema, but every sentence adds value 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?
The tool has 4 parameters, no output schema, and nested objects. The description covers compute modes, transient processing, artifact export, and upstream dependencies. It lacks detail on the exact structure of the output AP2 artifact, but overall it is fairly complete given the tool's nature as a compute node.
Complex tools with many parameters or behaviors need more documentation. 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 4 parameters have schema descriptions (100% coverage), so baseline is 3. The description adds extra value by clarifying compute mode behavior and ordering of parent_tool_ids, and references the tool's manifest for policy_parameters. This goes 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 tool builds a TRAIGA Safe Harbor Pack as an OpenChainGraph compute node for compliance mandates. It specifies the resource (safe harbor pack) and verb (build), and distinguishes from siblings like 'build_chaingraph' or 'build_agent_test_evidence' by its unique focus on TRAIGA compliance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 building safe harbor packs in TRAIGA compliance contexts, but it lacks explicit guidance on when to use this tool versus alternatives, such as 'assess_traiga_exposure' or other build tools. It does include a warning to use synthetic inputs, but no when-to-use or when-not-to-use directives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_validator_change_control_receiptValidator Change-Control ReceiptARead-onlyIdempotentInspect
Validator Change-Control Receipt: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-497-validator-change-control-receipt.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations (readOnlyHint, idempotentHint, destructiveHint) by detailing deterministic behavior, transient input processing without storage/logging/retention, compute delegation logic for gpu:true/false nodes, and the output artifact type with execution_hash. This fully discloses behavioral traits that annotations alone cannot express.
Agents need to know what a tool does to the 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 paragraph that front-loads the tool's identity and then efficiently conveys compute modes, data handling, and output artifact. Every sentence adds information, and the structure is scannable despite the density.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description covers key aspects: purpose, compute behavior, privacy guarantees, and output artifact. It omits details about the actual receipt contents and parent_hashes usage, but those are partially covered by the input schema and domain context. Overall, quite complete for the 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?
With 100% schema coverage, the baseline is 3. The description adds meaningful context for the 'compute' parameter, explaining how 'auto' vs 'browser' vs 'server' interact with gpu:false/true and registered kernels. It also references the tool's manifest for policy_parameters fields, adding beyond the schema's generic 'See manifest' note.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 an 'OpenChainGraph compute node' that builds a 'Validator Change-Control Receipt' and exports an AP2 artifact with execution_hash for chain provenance. It is distinct from sibling tools by naming the specific artifact type, though it does not explicitly contrast with similar chain-graph builders.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context by explaining compute modes ('auto', 'browser', 'server') and cautions to 'Use synthetic or anonymised inputs only'. However, it does not explicitly state when to choose this tool over alternatives like build_chaingraph or emit_chaingraph_artifact, leaving the when-to-use largely 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.
build_vop_session_receiptVoP Session Receipt BuilderARead-onlyIdempotentInspect
VoP Session Receipt Builder: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-376-score-payee-name-match. Open at: https://ainumbers.co/chaingraph/art-377-build-vop-session-receipt.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals behavior beyond annotations: inputs are transiently processed and not stored/logged/retained, deterministic, exports AP2 artifact with execution_hash, and consumes upstream artifacts. No contradiction with annotations (readOnlyHint, idempotentHint, destructiveHint all consistent).
Agents need to know what a tool does to the 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 verbose but each sentence adds value, with purpose stated first. It includes a URL, which is extra but not harmful. Could be slightly more concise, but structure is logical.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (one enum, one nested), no output schema, and rich annotations, the description covers compute modes, transient processing, non-retention, artifact export, and upstream dependencies. Missing details on receipt structure are partially compensated by artifact standardization. Generally 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% (all 4 parameters have descriptions). The description adds some context for 'compute' and 'policy_parameters' but largely restates schema. Baseline 3 is appropriate; description adds minimal additional 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 it builds a VoP session receipt as an OpenChainGraph compute node. It specifies the verb 'build' and the resource 'VoP session receipt', distinguishing it from many sibling tools that are also 'build_*' but for different artifacts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes ('auto', 'browser') and notes that gpu:true always delegates to browser. It also advises 'Use synthetic or anonymised inputs only.' However, it does not explicitly state when not to use this tool or compare to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_workflow_linksBuild AINumbers workflow deep-linksARead-onlyIdempotentInspect
Constructs an ordered set of ready-to-use deep-links for a named AINumbers workflow chain or an ad-hoc sequence of tools. Each link points directly to the browser tool; prefill-enabled steps accept #in=<base64url(JSON)> fragments so the tool opens pre-filled. Zero server-side execution -- all tool logic runs deterministically in the user's browser. Use this to hand a user a complete workflow: open step 1, run it, export its Policy Mandate, open step 2 (pre-filled from step 1 outputs), repeat. Named chains: 2052a-classify-daily, 2052a-validate-classify-daily, a2a-payment-rail-compliance, aca-226j-response-composer, ach-fraud-monitoring, adverse-action-notice-compliance, agent-audit-trail-conformance, agent-authorization-lifecycle, agent-commerce-conformance, agent-economy-audit-pack, agent-economy-autonomous-guardrail, agent-economy-batch-settlement, agent-economy-fit, agent-economy-fraud-runtime, agent-economy-marketplace, agent-economy-metering, agent-economy-payment-receipt, agent-identity-publishing, agent-identity-trust, agent-identity-verification, agent-payment-dispute-evidence, agent-session-receipt, agentic-checkout, agentic-commerce-checkout, agentic-commerce-convergence, agentic-payment-mandate-lint, agentic-payment-protocol-audit, agentic-policy, agentic-rail-standards, ai-act-for-fs, ai-content-disclosure-conformance, ai-decision-log-conformance, ai-governance-audit-pack, ai-governance-conformity, ai-governance-credit-ai-conformity, ai-governance-fairness-bias, ai-governance-fit, ai-governance-framework-crosswalk, ai-governance-fria-monitoring, ai-governance-gpai-agentic, ai-governance-resilience-overlap, ai-management-system-conformance, ai-vendor-onboarding-packet, allocation-decision-receipt, aml-lookback-closure-cycle, aml-lookback-cycle, aml-programme, amlr-single-rulebook, anchored-extract-verification, arc-agentic-commerce, arc-cctp-transfer, arc-cpn-payment, arc-dvp-settlement, arc-fit, arc-multicurrency-corridor, arc-partner-onboarding, arc-reserve-compliance, arc-stablefx, arc-xreserve-issuance, assemble-agent-dispute-evidence, assemble-aiuc1-evidence-pack, avax-evergreen-l1-onboarding, b2b-payments-ap-automation, baas-programme, baas-sponsor-bank, bank-capital-liquidity, basel-endgame-frtb-capital, basel-iv-capital-stress, basel-sco60-crypto-exposure-classification, basel-take2-impact-assessment, benefits-nondiscrimination-composer, besu-contract-conformance, bnpl-programme, bond-mandate-receipt, broker-dealer-ops-pack, ca-genai-disclosure, call-report-edit-gate, canton-capital-efficiency, canton-cash-leg-assurance, canton-counterparty-onboarding, canton-deposit-compliance, canton-dtc-treasury, canton-dvp-readiness, canton-margin-call, canton-mmf-collateral, canton-repo-mobility, canton-securities-issuance, canton-securities-lending, canton-selective-disclosure, carbon-audit-pack, card-act-ability-to-pay, card-interchange, card-programme, card-scheme-dispute-management, cat-bond-trigger-validation, cbam-fit, cbam-liability, cbam-precursor, cbcr-annual-publish, cbdc-dlt-architecture, cbpr-address-lint-chain, cbpr-cutover, ccd2-consumer-credit, ccp-margin-monitor, cecl-allowance-quarterly, cfpb-1033-open-banking, chain-ccp-default-waterfall, chain-ccp-pqd-benchmark, chain-member-margin-call-to-porting, claim-dispute-bundle-assembly, climate-scenario, collections-compliance-pack, commission-integrity-and-amortization, conditional-relief-collateral, consumer-protection, content-credential-verification, corporate-action-entitlement, corporate-treasury-statement-reconciliation, counterparty-capital-margin, cra-product-conformance, credit-decisioning, credit-ecl-valuation, cross-border-payment-prevalidation, crypto-tax-reporting, digital-product-passport-lineage, digital-trade-audit-pack, digital-trade-counterparty-aml, digital-trade-doc-integrity, digital-trade-ebl-enforceability, digital-trade-finance, digital-trade-fit, digital-trade-letter-of-credit, digital-trade-tbml-surveillance, dlt-network-governance, dlt-settlement-compliance, document-conversion-verification, document-integrity-anchor, document-sanitization-integrity, dora-escalation-demo, dora-operational-resilience, dora-readiness, dora-resilience, dora-roi-annual-cycle, dora-third-party-ict-risk, dw-capacity-check, ebl-control-evidence, einvoice-validation-pipeline, einvoicing-vida, embedded-finance-licensing, emerging-market-fx-corridor, emir-recon-cycle, emir-reconciliation-and-lifecycle, emir-trade-report-validation, escalation-sla-supervised-autonomy-receipt, eu-ai-act-provider-obligations, eudi-wallet-acceptance, eudr-due-diligence-statement-validation, eudr-supply-chain-risk-and-traceability, eugb-conformance, exchange-assurance-pack, export-control-circumvention, export-control-eccn, fair-lending-disparity-audit, fatca-ro-certification-cycle, fca-bnpl-dpc, fedwire-address-migration, fida-data-monetisation, fida-open-finance-readiness, financial-crime-compliance, fiusd-reserve-attestation, food-traceability-fsma204, fraud-decisioning, fx-corridor, fx-risk-management, genius-act-issuer-licensing, genius-listing-acceptance-pack, genius-reserve-disclosure, globe-annual-cycle, government-payment-lifecycle, government-payment-programme-assurance, gpi-mt-to-mx-translation, green-finance-transition, hedge-effectiveness-documentation, icfr-control-test-cycle, idv-session-evidence, ifrs17-measurement-conformance, instant-payments-compliance, instant-payments-vop, insurance-ai-bias-attestation, insurance-capital-pricing, insurer-rbc-action-level, intl-wire-iso-preflight, intraday-finality-attestation, ip-license-election-and-attestation, irrbb-measurement-and-disclosure, irrbb-supervisory-outlier-test, iso20022-cross-border-readiness, iso20022-cutover, kya-agent-counterparty-receipt, kyb-beneficial-ownership-attribution, kyc-onboarding-cdd, large-exposures-check, license-compatibility-check, life-illustration-self-support-test, marketplace-platform-payments, mcp-publish-readiness, mcp-security-hardening, mcp-server-attestation, mcp-server-governance-conformance, mica-audit-pack, mica-casp-authorization, mica-fit, mica-mar-surveillance, mica-passporting-surveillance, mica-token-scoping, mica-transitional, mica-travel-rule, mica-whitepaper, model-passport-lifecycle, model-risk-governance, model-validation-cycle, mortgage-agency-pricing-and-eligibility, mortgage-apr-accuracy-and-tolerance-cure, mortgage-compliance-preflight, mortgage-government-loan-fit, mortgage-high-cost-and-hpml-screen, mra-consent-order-closure-cycle, multilateral-netting-settlement, mutual-nda-composer, nacha-ach-rules-compliance, nav-verification-pack, neobank-baas, nis2-entity-scope-and-obligations, nis2-incident-and-supply-chain-readiness, open-banking-api-lifecycle, parametric-trigger-adjudication, payment-economics-benchmarking, payment-operations-health, pd-lgd-covenant, pharma-serialization-custody, pi-emi-authorisation, pillar-two-globe, pqc-audit-pack, pqc-blockchain-risk, pqc-fido-webauthn, pqc-fit, pqc-hndl-protocol-plan, pqc-migration, pqc-migration-evidence, pqc-swift-iso20022, pqc-tls-pki, producer-license-reciprocity, psd3-psr2-transition, psr-app-fraud-reimbursement, public-money-settlement-receipt, qfc-recordkeeping-cycle, rdarr-attestation-cycle, reg-w-23a-23b-testing-cycle, regrpt-submission-cycle, regulatory-impact, reinsurance-catastrophe, remittance-disclosure-and-corridor-cost, reputation-score-aggregate, reserve-proof-verification, retirement-decumulation-decisions, rhc-ap-redemption-stress, rhc-bold-finality-classification, rhc-collateral-haircut, rhc-fit, rhc-multiplier-reconciliation, rhc-regime-mapping, rhc-valuation-lint, rtp-participation, sanctions-audit-pack, sanctions-fit, sanctions-fuzzy-calibration, sanctions-list-coverage, sanctions-ownership, sanctions-screening-quality, sb53-frontier-scope, sbom-provenance-attestation, sca-consent-fapi, securities-lending-impact, servicemember-lending-protections, settlement-discipline-alloc-affirm, settlement-discipline-audit-pack, settlement-discipline-buyin, settlement-discipline-failpredict, settlement-discipline-fit, settlement-discipline-message-conformance, settlement-discipline-penalty, settlement-discipline-penalty-v2, settlement-discipline-ssi-hygiene, slate-reporting-readiness, sme-credit-intelligence, sme-finance-lending, sme-government-grants-funding, solvency-ii-reconciliation-and-capital, stablecoin-compliance, stablecoin-issuer-genius-mica, stablecoin-remittance-corridor-economics, stablecoin-reserve, stablecoin-reserve-scorecard, state-proof-verification, substantive-procedure-cycle, sustainability-disclosure-sfdr, swift-csp-attestation-cycle, swift-ledger-transfer-readiness, t1-csdr-settlement, taxonomy-align, taxonomy-kpi, tempo-agentic-checkout, tempo-fit, tempo-gas-economics, tempo-issuance, tempo-mpp-agent, tempo-onchain-aml, tempo-payments, tempo-subscription-settlement, tempo-validator-readiness, tempo-zone-disclosure, tokenization-prep, tokenized-deposit-settlement-proof, trade-finance-lc-lifecycle, traiga-safe-harbor, transaction-screening, treasury-account-lifecycle-ebam, treasury-clearing-access-model, treasury-clearing-capital-relief, treasury-clearing-collateral, treasury-clearing-cross-margin, treasury-clearing-fit, treasury-clearing-liquidity, treasury-clearing-onboarding, treasury-clearing-repo-margin, treasury-clearing-settlement-integrity, treasury-corridor, us-banking-compliance, us-treasury-clearing, verify-agent-delegation, vida-digital-reporting-requirements, vida-platform-and-registration, vop-liability-evidence, wealth-advisory-regbi, wholesale-settlement-audit-pack, wholesale-settlement-collateral-mobility, wholesale-settlement-cross-network-dvp, wholesale-settlement-deposit-token, wholesale-settlement-fit, wholesale-settlement-intraday-liquidity, wholesale-settlement-participant-onboarding, wholesale-settlement-settlement-asset, y9c-schedule-hc-hcr-capital.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Name of a pre-defined chain. One of: 2052a-classify-daily, 2052a-validate-classify-daily, a2a-payment-rail-compliance, aca-226j-response-composer, ach-fraud-monitoring, adverse-action-notice-compliance, agent-audit-trail-conformance, agent-authorization-lifecycle, agent-commerce-conformance, agent-economy-audit-pack, agent-economy-autonomous-guardrail, agent-economy-batch-settlement, agent-economy-fit, agent-economy-fraud-runtime, agent-economy-marketplace, agent-economy-metering, agent-economy-payment-receipt, agent-identity-publishing, agent-identity-trust, agent-identity-verification, agent-payment-dispute-evidence, agent-session-receipt, agentic-checkout, agentic-commerce-checkout, agentic-commerce-convergence, agentic-payment-mandate-lint, agentic-payment-protocol-audit, agentic-policy, agentic-rail-standards, ai-act-for-fs, ai-content-disclosure-conformance, ai-decision-log-conformance, ai-governance-audit-pack, ai-governance-conformity, ai-governance-credit-ai-conformity, ai-governance-fairness-bias, ai-governance-fit, ai-governance-framework-crosswalk, ai-governance-fria-monitoring, ai-governance-gpai-agentic, ai-governance-resilience-overlap, ai-management-system-conformance, ai-vendor-onboarding-packet, allocation-decision-receipt, aml-lookback-closure-cycle, aml-lookback-cycle, aml-programme, amlr-single-rulebook, anchored-extract-verification, arc-agentic-commerce, arc-cctp-transfer, arc-cpn-payment, arc-dvp-settlement, arc-fit, arc-multicurrency-corridor, arc-partner-onboarding, arc-reserve-compliance, arc-stablefx, arc-xreserve-issuance, assemble-agent-dispute-evidence, assemble-aiuc1-evidence-pack, avax-evergreen-l1-onboarding, b2b-payments-ap-automation, baas-programme, baas-sponsor-bank, bank-capital-liquidity, basel-endgame-frtb-capital, basel-iv-capital-stress, basel-sco60-crypto-exposure-classification, basel-take2-impact-assessment, benefits-nondiscrimination-composer, besu-contract-conformance, bnpl-programme, bond-mandate-receipt, broker-dealer-ops-pack, ca-genai-disclosure, call-report-edit-gate, canton-capital-efficiency, canton-cash-leg-assurance, canton-counterparty-onboarding, canton-deposit-compliance, canton-dtc-treasury, canton-dvp-readiness, canton-margin-call, canton-mmf-collateral, canton-repo-mobility, canton-securities-issuance, canton-securities-lending, canton-selective-disclosure, carbon-audit-pack, card-act-ability-to-pay, card-interchange, card-programme, card-scheme-dispute-management, cat-bond-trigger-validation, cbam-fit, cbam-liability, cbam-precursor, cbcr-annual-publish, cbdc-dlt-architecture, cbpr-address-lint-chain, cbpr-cutover, ccd2-consumer-credit, ccp-margin-monitor, cecl-allowance-quarterly, cfpb-1033-open-banking, chain-ccp-default-waterfall, chain-ccp-pqd-benchmark, chain-member-margin-call-to-porting, claim-dispute-bundle-assembly, climate-scenario, collections-compliance-pack, commission-integrity-and-amortization, conditional-relief-collateral, consumer-protection, content-credential-verification, corporate-action-entitlement, corporate-treasury-statement-reconciliation, counterparty-capital-margin, cra-product-conformance, credit-decisioning, credit-ecl-valuation, cross-border-payment-prevalidation, crypto-tax-reporting, digital-product-passport-lineage, digital-trade-audit-pack, digital-trade-counterparty-aml, digital-trade-doc-integrity, digital-trade-ebl-enforceability, digital-trade-finance, digital-trade-fit, digital-trade-letter-of-credit, digital-trade-tbml-surveillance, dlt-network-governance, dlt-settlement-compliance, document-conversion-verification, document-integrity-anchor, document-sanitization-integrity, dora-escalation-demo, dora-operational-resilience, dora-readiness, dora-resilience, dora-roi-annual-cycle, dora-third-party-ict-risk, dw-capacity-check, ebl-control-evidence, einvoice-validation-pipeline, einvoicing-vida, embedded-finance-licensing, emerging-market-fx-corridor, emir-recon-cycle, emir-reconciliation-and-lifecycle, emir-trade-report-validation, escalation-sla-supervised-autonomy-receipt, eu-ai-act-provider-obligations, eudi-wallet-acceptance, eudr-due-diligence-statement-validation, eudr-supply-chain-risk-and-traceability, eugb-conformance, exchange-assurance-pack, export-control-circumvention, export-control-eccn, fair-lending-disparity-audit, fatca-ro-certification-cycle, fca-bnpl-dpc, fedwire-address-migration, fida-data-monetisation, fida-open-finance-readiness, financial-crime-compliance, fiusd-reserve-attestation, food-traceability-fsma204, fraud-decisioning, fx-corridor, fx-risk-management, genius-act-issuer-licensing, genius-listing-acceptance-pack, genius-reserve-disclosure, globe-annual-cycle, government-payment-lifecycle, government-payment-programme-assurance, gpi-mt-to-mx-translation, green-finance-transition, hedge-effectiveness-documentation, icfr-control-test-cycle, idv-session-evidence, ifrs17-measurement-conformance, instant-payments-compliance, instant-payments-vop, insurance-ai-bias-attestation, insurance-capital-pricing, insurer-rbc-action-level, intl-wire-iso-preflight, intraday-finality-attestation, ip-license-election-and-attestation, irrbb-measurement-and-disclosure, irrbb-supervisory-outlier-test, iso20022-cross-border-readiness, iso20022-cutover, kya-agent-counterparty-receipt, kyb-beneficial-ownership-attribution, kyc-onboarding-cdd, large-exposures-check, license-compatibility-check, life-illustration-self-support-test, marketplace-platform-payments, mcp-publish-readiness, mcp-security-hardening, mcp-server-attestation, mcp-server-governance-conformance, mica-audit-pack, mica-casp-authorization, mica-fit, mica-mar-surveillance, mica-passporting-surveillance, mica-token-scoping, mica-transitional, mica-travel-rule, mica-whitepaper, model-passport-lifecycle, model-risk-governance, model-validation-cycle, mortgage-agency-pricing-and-eligibility, mortgage-apr-accuracy-and-tolerance-cure, mortgage-compliance-preflight, mortgage-government-loan-fit, mortgage-high-cost-and-hpml-screen, mra-consent-order-closure-cycle, multilateral-netting-settlement, mutual-nda-composer, nacha-ach-rules-compliance, nav-verification-pack, neobank-baas, nis2-entity-scope-and-obligations, nis2-incident-and-supply-chain-readiness, open-banking-api-lifecycle, parametric-trigger-adjudication, payment-economics-benchmarking, payment-operations-health, pd-lgd-covenant, pharma-serialization-custody, pi-emi-authorisation, pillar-two-globe, pqc-audit-pack, pqc-blockchain-risk, pqc-fido-webauthn, pqc-fit, pqc-hndl-protocol-plan, pqc-migration, pqc-migration-evidence, pqc-swift-iso20022, pqc-tls-pki, producer-license-reciprocity, psd3-psr2-transition, psr-app-fraud-reimbursement, public-money-settlement-receipt, qfc-recordkeeping-cycle, rdarr-attestation-cycle, reg-w-23a-23b-testing-cycle, regrpt-submission-cycle, regulatory-impact, reinsurance-catastrophe, remittance-disclosure-and-corridor-cost, reputation-score-aggregate, reserve-proof-verification, retirement-decumulation-decisions, rhc-ap-redemption-stress, rhc-bold-finality-classification, rhc-collateral-haircut, rhc-fit, rhc-multiplier-reconciliation, rhc-regime-mapping, rhc-valuation-lint, rtp-participation, sanctions-audit-pack, sanctions-fit, sanctions-fuzzy-calibration, sanctions-list-coverage, sanctions-ownership, sanctions-screening-quality, sb53-frontier-scope, sbom-provenance-attestation, sca-consent-fapi, securities-lending-impact, servicemember-lending-protections, settlement-discipline-alloc-affirm, settlement-discipline-audit-pack, settlement-discipline-buyin, settlement-discipline-failpredict, settlement-discipline-fit, settlement-discipline-message-conformance, settlement-discipline-penalty, settlement-discipline-penalty-v2, settlement-discipline-ssi-hygiene, slate-reporting-readiness, sme-credit-intelligence, sme-finance-lending, sme-government-grants-funding, solvency-ii-reconciliation-and-capital, stablecoin-compliance, stablecoin-issuer-genius-mica, stablecoin-remittance-corridor-economics, stablecoin-reserve, stablecoin-reserve-scorecard, state-proof-verification, substantive-procedure-cycle, sustainability-disclosure-sfdr, swift-csp-attestation-cycle, swift-ledger-transfer-readiness, t1-csdr-settlement, taxonomy-align, taxonomy-kpi, tempo-agentic-checkout, tempo-fit, tempo-gas-economics, tempo-issuance, tempo-mpp-agent, tempo-onchain-aml, tempo-payments, tempo-subscription-settlement, tempo-validator-readiness, tempo-zone-disclosure, tokenization-prep, tokenized-deposit-settlement-proof, trade-finance-lc-lifecycle, traiga-safe-harbor, transaction-screening, treasury-account-lifecycle-ebam, treasury-clearing-access-model, treasury-clearing-capital-relief, treasury-clearing-collateral, treasury-clearing-cross-margin, treasury-clearing-fit, treasury-clearing-liquidity, treasury-clearing-onboarding, treasury-clearing-repo-margin, treasury-clearing-settlement-integrity, treasury-corridor, us-banking-compliance, us-treasury-clearing, verify-agent-delegation, vida-digital-reporting-requirements, vida-platform-and-registration, vop-liability-evidence, wealth-advisory-regbi, wholesale-settlement-audit-pack, wholesale-settlement-collateral-mobility, wholesale-settlement-cross-network-dvp, wholesale-settlement-deposit-token, wholesale-settlement-fit, wholesale-settlement-intraday-liquidity, wholesale-settlement-participant-onboarding, wholesale-settlement-settlement-asset, y9c-schedule-hc-hcr-capital. Mutually exclusive with steps. | |
| steps | No | Ad-hoc ordered step list. Mutually exclusive with chain. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations: 'Zero server-side execution -- all tool logic runs deterministically in the user's browser.' It also details the prefill mechanism (#in=<base64url(JSON)> fragments) and that links point directly to the browser tool. This go beyond the existing readOnly/idempotent hints, providing deeper insight into how the tool operates.
Agents need to know what a tool does to the 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 prose portion is well-structured and front-loaded, but the description is inflated by a massive list of named chains that duplicates the chain parameter's schema description word-for-word. This adds no new information and could be replaced by a reference to the schema. The lack of editing makes it inappropriately sized, though the core text is 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?
The description covers the tool's two input modes, the prefill behavior, zero server-side execution, and how links are used in a workflow. Even without an output schema, it gives a clear mental model of what the tool returns (ready-to-use deep-links) and how they behave. It is complete for the tool's complexity, though it could be more explicit about the exact 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% for both parameters, so the schema already documents chain and steps. The description adds extra meaning by explaining the prefill workflow semantics and how the encoded fragments work in the returned URLs. It also clarifies the mutually exclusive relationship in context, which is valuable beyond the schema's field-level 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 opens with a specific verb and resource: 'Constructs an ordered set of ready-to-use deep-links for a named AINumbers workflow chain or an ad-hoc sequence of tools.' This immediately distinguishes it from the many build_* sibling tools by focusing on deep-links and workflow construction. The two modes (named chain vs ad-hoc steps) are clearly identified.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 concrete usage context: 'Use this to hand a user a complete workflow: open step 1, run it, export its Policy Mandate, open step 2 (pre-filled from step 1 outputs), repeat.' It also explains the difference between named chains and ad-hoc steps. It doesn't explicitly name alternative tools, but the guidance is clear enough for an agent to know when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_basis_risk_nii_shockIRRBB Basis-Risk NII Shock CalculatorBRead-onlyIdempotentInspect
IRRBB Basis-Risk NII Shock Calculator: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-443-irrbb-basis-risk-nii-shock-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: compute modes (auto/server/browser), execution location (Cloudflare Workers vs browser), transient processing with no storage, and output artifact (AP2 with execution_hash). Annotations already indicate read-only and idempotent, but the description enriches these with specific 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 informative but somewhat verbose, repeating 'OpenChainGraph compute node' and including a URL. It front-loads the title and compute node type, but could be more concise. Every sentence adds value, but there is room for trimming.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema and a nested object parameter (policy_parameters), the description is somewhat vague about expected input fields and output shape. It mentions the AP2 artifact but not its structure. The instruction to 'see the tool’s manifest' is a cop-out. More detail on inputs and outputs 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?
Schema coverage is 100%, so baseline is 3. The description adds meaning by explaining compute mode behaviors (auto, server, browser) and that parent_hashes link to upstream AP2 artifacts. This extra context helps the agent understand parameter usage 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 title and description clearly state 'IRRBB Basis-Risk NII Shock Calculator', providing a specific verb and resource. It distinguishes from sibling tools by name and title, but does not explicitly differentiate from other IRRBB tools like 'calculate_irrbb_eve_shocks' or 'evaluate_irrbb_sot_nii'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 description does not mention use cases, prerequisites, or scenarios where this tool is preferable. Among many sibling tools, this lack of guidance makes selection harder.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_cbam_embedded_emissionsCBAM Embedded-Emissions CalculatorARead-onlyIdempotentInspect
CBAM Embedded-Emissions Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-68-carbon-compliance-fit-diagnostic, art-70-cbam-default-value-resolver, art-72-cbam-precursor-emissions-aggregator. Output feeds: art-71-cbam-certificate-cost-engine, cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-69-cbam-embedded-emissions-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond annotations: it states the tool is deterministic, processes inputs transiently without storing or logging, and exports an AP2 artifact with execution_hash for chain provenance. Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false, but the description reveals critical privacy constraints ('not stored, logged, or retained') and deterministic behavior, enriching the agent's understanding.
Agents need to know what a tool does to the 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 moderately long but front-loads the core purpose. Each sentence provides value, covering compute modes, data handling, artifact export, dependencies, and a link. Some technical detail could be condensed without losing meaning, but overall it remains focused and informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters, nested objects, and no output schema, the description adequately covers input behavior, compute modes, transient processing, artifact export, and dependencies. It lacks explicit explanation of the response format, but the mention of exporting an AP2 artifact with execution_hash provides sufficient context. The link to the OpenChainGraph node offers additional reference.
Complex tools with many parameters or behaviors need more documentation. 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 4 parameters. The description adds meaning by explaining the purpose of 'compute' modes (e.g., 'auto' means server-side for gpu:false nodes with registered kernels), the role of 'parent_hashes' and 'parent_tool_ids' for chaining, and that 'policy_parameters' are input to the decision function. This supplements the schema with operational 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 identifies the tool as a 'CBAM Embedded-Emissions Calculator' and explains it computes embedded emissions on the OpenChainGraph. It details compute modes, transient processing, artifact export with execution_hash, and lists upstream/downstream artifacts. This specificity distinguishes it from sibling tools and provides a comprehensive purpose statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes ('auto', 'server', 'browser') and mentions that inputs are transient and not stored, advising use of synthetic or anonymized inputs. It also references dependencies on specific upstream artifacts. However, it does not explicitly state when not to use this tool or suggest alternatives, lacking clear exclusionary guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_cecl_ecl_allowanceCECL Expected Credit Loss & Allowance CalculatorARead-onlyIdempotentInspect
CECL Expected Credit Loss & Allowance Calculator: OpenChainGraph compute node (credit_assessment). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-426-cecl-ecl-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable context: inputs are transient and not stored, compute modes (auto, server, browser) with delegation behavior, and output as an AP2 artifact with execution_hash. 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 detailed with 5 sentences, covering purpose, compute modes, data handling, usage caution, and output. Minor redundancies like the URL might not be essential for an agent, but overall it is well-structured and each 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?
The tool is complex with nested parameters and no output schema. The description omits specifics for 'policy_parameters' (referencing an external manifest) and does not fully describe the return value structure beyond mentioning an AP2 artifact. This leaves significant gaps 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?
Schema coverage is 100%, so baseline is 3. The description reinforces compute enum meanings but defers 'policy_parameters' structure to an external manifest, which is not included. It adds the usage constraint 'Use synthetic or anonymised inputs only' but does not elaborate on the critical 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 it is a 'CECL Expected Credit Loss & Allowance Calculator' and an 'OpenChainGraph compute node (credit_assessment)', specifying the exact domain and function. This distinguishes it from other calculate_* 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. Suggests using synthetic or anonymised inputs only, but does not differentiate from other calculation tools or provide scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_claims_stp_economicsClaims STP Economics CalculatorCRead-onlyIdempotentInspect
Claims STP Economics Calculator: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-254-compute-rbc-action-level. Open at: https://ainumbers.co/chaingraph/art-257-calculate-claims-stp-economics.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable behavioral context: transient processing, no storage, export of AP2 artifact with execution_hash, and compute mode delegation. This goes beyond the annotations to explain side effects and runtime behavior. There is no contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is lengthy and contains repetitive phrasing ('OpenChainGraph compute node' appears twice). It front-loads the title but then mixes technical compute mode details with chain provenance and URLs. While structured, it includes extraneous information that could be condensed. It is not as concise as it could be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 no output schema, and the description only mentions exporting an AP2 artifact with execution_hash without describing the output content or format. The tool has nested parameters ('policy_parameters') that are left vague. The description lacks completeness regarding what the tool returns and the full input specification, making it difficult for an agent to fully understand 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?
Input schema coverage is 100% with all properties described. The description does not add significant new information about parameters; it mentions 'policy_parameters' but defers to an external manifest for field names, which is not helpful. The description neither improves nor detracts from the schema's own documentation, 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 identifies the tool as a 'Claims STP Economics Calculator' and an 'OpenChainGraph compute node', but it does not clearly explain what 'Claims STP Economics' means or what the tool actually computes. The name and title give a vague sense, but the description focuses on technical compute mode details rather than the tool's core purpose. It distinguishes itself from siblings only by its domain reference, not by a clear functional boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 is provided on when to use this tool versus alternatives like 'compute_rbc_action_level' or other calculation tools. The description details compute modes and transient input handling, but it does not specify the appropriate context, prerequisites, or exclusions. An agent would lack direction on selecting this tool over similar-sounding siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_csdr_penaltyCSDR Cash-Penalty CalculatorBRead-onlyIdempotentInspect
CSDR Cash-Penalty Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-77-t1-settlement-readiness-diagnostic. Output feeds: art-83-buy-in-exposure-modeler, art-84-settlement-efficiency-kpi, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-78-csdr-penalty-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description provides good transparency about compute modes, transient input processing, and artifact export. However, it contradicts the readOnlyHint annotation: the description says 'Exports an AP2 artifact', implying a write side-effect, while readOnlyHint suggests no mutation. This contradiction lowers the score.
Agents need to know what a tool does to the 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 lengthy and packs many details, but it is front-loaded with the purpose. It includes a mix of technical compute details, safety warnings, and artifact provenance. Could be more structured, but no tautology.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, compute behavior, safety, and integration with upstream/downstream artifacts. However, it lacks details about the output structure (no output schema) and the execution_hash format, which are important for a compute node.
Complex tools with many parameters or behaviors need more documentation. 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 minimal extra context, such as default behavior for 'compute' and a reference to the tool's manifest for 'policy_parameters'. No significant 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 states the tool as a 'CSDR Cash-Penalty Calculator' and an 'OpenChainGraph compute node (compliance_mandate)'. It explicitly links to upstream and downstream artifacts, making the purpose specific. However, it does not explicitly differentiate from sibling tools like calculate_basis_risk_nii_shock, though the domain 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?
The description explains the compute modes ('auto', 'server', 'browser') and when to use each based on GPU capabilities. It also advises to use synthetic or anonymised inputs only. It provides context for integration via upstream/downstream artifacts, but does not list alternative tools or when not to use this one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_irrbb_eve_shocksIRRBB EVE Shock CalculatorARead-onlyIdempotentInspect
IRRBB EVE Shock Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-184-irrbb-sot-eve-evaluator. Open at: https://ainumbers.co/chaingraph/art-183-irrbb-eve-shock-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive. The description adds crucial context: inputs are transient, not stored, logged, or retained, and advises using synthetic/anonymised inputs. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, front-loaded with purpose. Efficient, though the phrase 'OpenChainGraph compute node' is repeated. 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?
Describes output as AP2 artifact with execution_hash and output feed, which is useful given no output schema. However, the nested policy_parameters parameter lacks detailed explanation beyond 'see tool manifest', leaving ambiguity about its 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%, so baseline is 3. The description adds meaningful context to the compute parameter (explaining behavior of 'auto', 'server', 'browser'), but doesn't add significant detail for other parameters beyond 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?
Clearly states it calculates IRRBB EVE shocks. Identifies as an OpenChainGraph compute node with compliance mandate. However, it does not explicitly differentiate from sibling tools like evaluate_irrbb_sot_eve, though the output feed hint provides some 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?
Provides detailed guidance on compute modes (auto, server, browser) and when each is used, but offers no comparison to sibling tools or advice on when not to use this tool. The context is helpful 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.
calculate_mica_own_fundsArt 67 Own-Funds CalculatorARead-onlyIdempotentInspect
Art 67 Own-Funds Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-100-mica-casp-authorization-readiness. Output feeds: cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-101-mica-art67-own-funds-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds critical details: deterministic execution, transient processing with no storage/logging/retention, AP2 artifact export with execution_hash for chain provenance, and compute mode behaviors (auto, server, browser). No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately long but every sentence serves a purpose: it defines the tool, explains compute modes, data handling, output artifact, and chain linkages. It is front-loaded with the core purpose and key characteristics. Minor redundancy in mentioning 'deterministic OpenChainGraph compute node' twice, 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?
For a tool with 4 parameters, nested objects, and no output schema, the description provides robust context: compute model, transient processing, artifact export, chain provenance, and an external URL. It lacks explicit mention of the return format (presumably the AP2 artifact) but covers most essential aspects for an agent to understand the tool's role 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%, but the description adds substantial meaning: it explains that inputs are computed server-side for gpu:false nodes with registered kernels, that policy_parameters are for the decision function, and that the tool exports an AP2 artifact with execution_hash. This goes beyond the schema's property 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's an Art 67 Own-Funds Calculator under MiCA, a deterministic OpenChainGraph compute node. It distinguishes from siblings by mentioning specific upstream (art-100-mica-casp-authorization-readiness) and downstream (cry-04-merkle-batch-verifier) artifacts, providing clear context within a chain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 server-side vs browser execution and mentions gpu:true always delegates. However, it does not explicitly state when not to use this tool or direct the agent to an alternative among the long sibling list, leaving room for confusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_nis2_penalty_exposureNIS2 Penalty Exposure Calculator (Art. 34)ARead-onlyIdempotentInspect
NIS2 Penalty Exposure Calculator (Art. 34): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-142-nis2-art21-gap-checker. Open at: https://ainumbers.co/chaingraph/art-143-nis2-penalty-exposure-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations: it confirms determinism, transient processing (inputs not stored), artifact export with execution_hash, and chain provenance. Annotations (readOnlyHint, idempotentHint, destructiveHint) are consistent, so 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?
The description is reasonably concise and front-loaded with the core purpose. It contains some technical jargon (e.g., 'OpenChainGraph compute node', 'AP2 artifact') which may be necessary but slightly dense. 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 4 parameters (nested objects) and no output schema, the description covers compute modes, determinism, transient processing, and artifact export. It lacks details on the return format or the penalty exposure value, but is sufficient for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 high-level context for compute modes and policy_parameters, but does not significantly enhance understanding beyond the schema's property 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's purpose: 'NIS2 Penalty Exposure Calculator (Art. 34)'. The name and title are specific and distinct from sibling tools, which cover a wide range of compliance and calculation 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?
The description explains when to use each compute mode ('auto', 'server', 'browser') and specifies that inputs should be synthetic/anonymised. It also mentions upstream artifact dependency. However, it does not explicitly state when not to use this tool or suggest alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_repo_haircutOn-Chain Repo Haircut CalculatorARead-onlyIdempotentInspect
On-Chain Repo Haircut Calculator: OpenChainGraph compute node (collateral_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: 505-tokenized-collateral-eligibility-checker, 506-onchain-cash-leg-finality-checker. Open at: https://ainumbers.co/tools/508-repo-haircut-collateral-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| flags | No | |
| vm_threshold | No | |
| initial_margin | No | |
| base_haircut_pct | No | |
| sft_floor_applied | No | |
| total_haircut_pct | No | |
| canton_haircut_pct | No | |
| legacy_haircut_pct | No | |
| weekend_saving_pct | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations (readOnlyHint, idempotentHint, destructiveHint). It states the tool is deterministic, explains compute modes (auto/browser/server), clarifies that inputs are processed transiently and not retained, and warns to use synthetic/anonymized inputs only. This provides comprehensive transparency about safety, statelessness, and execution behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with the core purpose, then compute modes, data handling, output artifact, and downstream consumers. It is moderately concise but includes some repetition ('Deterministic OpenChainGraph compute node' appears twice) and an unnecessary URL at the end. A slight reduction would improve 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 annotations and input schema with 100% coverage, the description covers all necessary aspects: purpose, execution environments, data privacy, output artifact (AP2 with execution_hash), downstream feeds, and a security note. Error handling is not discussed but is implicit in the output schema. Overall, it provides a complete picture 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 has 100% coverage with descriptions for all parameters. The description adds value by explaining the 'compute' modes in detail (e.g., server-side on Cloudflare Workers for gpu:false nodes with registered kernels) and introduces the concept of a 'registered kernel' for the 'policy_parameters' field. This enriches the semantic understanding 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 it is an 'On-Chain Repo Haircut Calculator' and a 'Deterministic OpenChainGraph compute node (collateral_mandate).' It specifies the resource (repo haircut for collateral) and the verb (calculate), distinguishing it from sibling tools like 'compute_stock_token_collateral_haircut', which deals with stock tokens instead of repos.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 listing downstream consumers ('505-tokenized-collateral-eligibility-checker, 506-onchain-cash-leg-finality-checker'), implying when the tool is used. However, it lacks explicit comparisons with alternatives or conditions for not using it, such as a mention of 'compute_stock_token_collateral_haircut' as an alternative for stock tokens.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_solvency2_scr_ratioSolvency II SCR Ratio CalculatorARead-onlyIdempotentInspect
Solvency II SCR Ratio Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-181-sii-ifrs17-reconciliation-bridger. Open at: https://ainumbers.co/chaingraph/art-180-solvency2-scr-ratio-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds key behavioral details: deterministic compute, transient processing (inputs not stored/logged/retained), and export of AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph that covers purpose, compute modes, processing behavior, and output. While not overly long, it could benefit from clearer structuring (e.g., bullet points) for readability. 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?
Despite no output schema, the description specifies the output as an AP2 artifact with execution_hash and the downstream artifact it feeds. It covers compute modes, transient processing, compliance mandate, and includes a reference URL. Missing only a high-level explanation of what the SCR ratio is.
Complex tools with many parameters or behaviors need more documentation. 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 good descriptions for all 4 parameters. The description adds marginal value by elaborating compute modes and the transient nature, but the schema already covers the core 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?
The name and title clearly specify 'Solvency II SCR Ratio Calculator'. The description elaborates it as an OpenChainGraph compute node for compliance mandate, with a specific output feeding into another artifact. It distinguishes from siblings like 'aggregate_solvency2_scr_modules' by focusing on ratio calculation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, server, browser) and transient processing, but does not provide explicit guidance on when to use this tool versus related siblings (e.g., aggregate_solvency2_scr_modules). It implies usage context via compliance_mandate but lacks when-not-to-use or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_xvaXVA / CVA CalculatorARead-onlyIdempotentInspect
XVA / CVA Calculator: OpenChainGraph compute node (risk_parameter). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: qfa-01-options-greeks. Output feeds: ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/qfa-04-xva-cva-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description complements the annotations (readOnlyHint, idempotentHint, destructiveHint) by stating the tool is deterministic, inputs are processed transiently without storage, and explaining the compute mode behavior. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the tool's purpose and is well-structured. Each sentence adds value, covering compute modes, data handling, and chain integration. Slightly verbose but not excessively.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters and no output schema, the description adequately covers the tool's behavior, compute modes, data retention policy, and chain provenance. It provides sufficient context for an agent to understand when 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?
Schema coverage is 100%, so baseline is 3. The description adds context for the 'compute' parameter (e.g., default behavior, browser delegation) and mentions chain provenance for 'parent_hashes' and 'parent_tool_ids'. However, the 'policy_parameters' description is vague and relies on an external manifest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 an XVA/CVA calculator within an OpenChainGraph. It specifies it is a deterministic compute node and provides context by naming upstream and downstream tools, aiding in distinguishing 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 explains different compute modes ('auto', 'server', 'browser') and when to use each, including the behavior for GPU nodes. It also advises using synthetic/anonymised inputs. However, it does not explicitly state when not to use this tool or suggest alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
camt053_parseParse and structurally validate a camt.053.001 bank statementARead-onlyIdempotentInspect
Parses a camt.053.001 bank-to-customer statement XML document with the same schema-subset structural and facet checks as the tools/565 browser reconciliation workbench (IBAN mod-97, BIC, currency, date/decimal facets), returning the extracted statement (message id, statement id, account IBAN/currency, balances, entries) on success or the structural error list on failure. Byte-identical extraction to the browser tool for the same input. Read-only parse -- feed the result to recon_match for reconciliation.
| Name | Required | Description | Default |
|---|---|---|---|
| xml | Yes | camt.053.001 XML statement document text to parse. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description includes specific validation details (IBAN mod-97, BIC, currency, etc.) and confirms read-only and idempotent behavior, consistent with annotations. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences, each adding value: purpose, consistency with another tool, and usage recommendation. Front-loaded with main 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?
Despite no output schema, the description lists extracted fields and error handling, making it complete for a simple 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?
Schema coverage is 100% with a single parameter. The description adds context about the document type and expected content (e.g., account IBAN/currency), but does not provide syntax 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 it parses a camt.053.001 XML document, performs structural and facet checks, and returns extracted data or errors. It distinguishes from siblings by noting it is a read-only parse for reconciliation input.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 'feed the result to recon_match for reconciliation', indicating usage context. However, it does not mention when not to use it or compare to the sibling 'parse_camt053_reconciliation'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
certify_license_electionLicense Election CertifierARead-onlyIdempotentInspect
License Election Certifier: OpenChainGraph compute node (cryptographic_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-197-pil-flavor-mapper, art-196-cant-be-evil-license-selector, art-195-creative-commons-license-chooser. Output feeds: art-200-license-election-verifier. Open at: https://ainumbers.co/chaingraph/art-199-license-election-certifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond annotations: deterministic compute, transient non-stored processing, browser delegation for GPU nodes, chain provenance, and upstream/downstream artifact links. No contradiction with annotations (readOnlyHint, idempotentHint, destructiveHint).
Agents need to know what a tool does to the 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 well-structured with a clear initial statement followed by detailed sections on compute modes, transient processing, and chain provenance. It is fairly concise for the complexity, though slightly long.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, compute behavior, input parameters, chain provenance, and dependencies. However, it lacks a detailed description of the output artifact (only mentions 'AP2 artifact with execution_hash'), which would improve completeness given no 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%, providing baseline of 3. The description adds meaningful context: compute mode behaviors (server vs browser, GPU interaction) and explains that policy_parameters are computed server-side in certain modes, enhancing understanding beyond 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 is a 'License Election Certifier' and an 'OpenChainGraph compute node' that exports an AP2 artifact. It distinguishes from siblings like 'verify_license_election' by focusing on certification and chain provenance, but lacks explicit differentiation statements.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidelines are implied through the description of compute modes and the note to use synthetic inputs only. However, there is no explicit guidance on when to use this tool versus alternatives like 'verify_license_election' or 'choose_cc_license'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_agency_eligibility_matrixAgency Eligibility MatrixARead-onlyIdempotentInspect
Agency Eligibility Matrix: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-223-conforming-loan-limit. Output feeds: art-221-llpa-stack. Open at: https://ainumbers.co/chaingraph/art-222-agency-eligibility-matrix.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description significantly adds context: deterministic execution, compute mode behavior, transient processing, no data retention, requirement for synthetic inputs, and artifact export with execution hash. 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 well-structured with key information front-loaded. However, it is slightly verbose, repeating 'deterministic OpenChainGraph compute node' and including technical details that could be condensed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, transient processing, and provenance, but leaves gaps: no output format details, and 'policy_parameters' fields are deferred to an external manifest, which reduces completeness for an AI 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 100%, so the baseline is 3. The description adds minimal value beyond the schema: it explains compute modes and mentions 'policy_parameters' as decision function inputs, but does not elaborate on field names or expected 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 title 'Agency Eligibility Matrix' and description 'OpenChainGraph compute node (compliance_mandate)' indicate the tool checks agency eligibility. However, the description does not explicitly state the business purpose in a simple verb+resource form, relying instead on technical context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 over its many siblings. It mentions upstream and downstream artifacts but does not specify selection criteria, ideal scenarios, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_agent_attestationAgent Identity & Authorization Attestation CheckerBRead-onlyIdempotentInspect
Agent Identity & Authorization Attestation Checker: OpenChainGraph compute node (compliance_mandate). Regulatory deadline: 2027-12 (EU AI Act Annex III high-risk obligations (Digital Omnibus, Parliament final approval June 2026) push agent KYA toward compliance requirement from 2 December 2027; KYA-OS donated to DIF March 2026). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-01-ap2-mandate-chain-validator, art-13-eudi-wallet-credential-readiness-checker. Output feeds: art-02-agent-spend-policy-simulator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-04-agent-identity-attestation-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, and non-destructive. The description adds critical behavioral details: deterministic execution, transient input processing (no storage/logging/retention), compute mode delegation behavior for gpu:true nodes, and artifact export (AP2 with execution_hash). This goes beyond annotations to expose side-effect behavior (artifact creation) and scope constraints.
Agents need to know what a tool does to the 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 verbose (14 sentences) and includes regulatory background and artifact flow details that may be secondary to core functionality. The first sentence repeats the title. The structure lacks prioritization; essential purpose and behavior are buried between compliance dates and chain references. A more concise and front-loaded rewrite would improve agent 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?
Despite the long description, it lacks key contextual information expected given there is no output schema. The tool 'exports an AP2 artifact with execution_hash' but does not explain the artifact structure, fields, or how the agent should interpret the response. The description also omits error conditions, rate limits, or authentication requirements. For a complex tool with 4 parameters and nested objects, this leaves gaps in the agent's 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 the schema already documents all 4 parameters. The description does not add new semantic meaning; it only restates the 'compute' parameter's behavior and defers policy_parameters details to the manifest. While the schema descriptions are adequate, the description adds no value beyond what is already in the structured input 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 title and description clearly identify the tool as an attestation checker for agent identity and authorization. The description specifies it as an OpenChainGraph compute node and explains its role in a compliance chain, but it doesn't explicitly distinguish from sibling 'check_' tools like check_agent_token_scope or check_ai_act_art50_marking. The purpose is clear but could be more direct with a verb like 'verifies' at the start.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some usage guidance: it mentions a regulatory deadline (2027-12) and advises using synthetic or anonymised inputs only. It also explains the compute mode options (auto/server/browser) and when each applies. However, it does not explicitly state when NOT to use this tool or compare it to alternatives, leaving the agent to infer usage context from the sibling tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_agent_token_scopeAgent Token Scope CheckerARead-onlyIdempotentInspect
Agent Token Scope Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-385-agent-token-scope-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds that inputs are transiently processed and not stored, and that the tool exports an AP2 artifact with execution_hash, increasing transparency. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat verbose with repeated references to 'OpenChainGraph compute node' and includes a URL. It is structured but could be more concise without losing 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 no output schema, the description explains the output artifact and compute behavior, but lacks detail on the return value format, interpretation, and the role of parent_hashes. The nested policy_parameters object is underdescribed ('See the tool's manifest').
Complex tools with many parameters or behaviors need more documentation. 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 context (e.g., 'gpu:true nodes always delegate to the browser' and 'See the tool's manifest for field names' for policy_parameters), but these add only marginal value over 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 title and description clearly state the tool checks 'agent token scope' and is a compute node for compliance_mandate. It uses a specific verb+resource pattern, but doesn't explicitly differentiate from the many sibling check tools, though 'agent token scope' is a distinct concept.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage guidance on compute modes ('auto', 'browser', 'server') and input restrictions ('Use synthetic or anonymised inputs only'), but does not offer when-to-use or when-not-to-use advice relative to sibling tools like check_agent_attestation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_ai_act_art50_markingEU AI Act Art. 50 Marking CheckerARead-onlyIdempotentInspect
EU AI Act Art. 50 Marking Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-127-dual-layer-disclosure-verifier. Open at: https://ainumbers.co/chaingraph/art-126-ai-act-art50-marking-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: determinism, transient processing (inputs not stored/logged/retained), and export of AP2 artifact with execution_hash. Annotations already indicate read-only and non-destructive, and the description aligns with these.
Agents need to know what a tool does to the 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 but well-structured, starting with purpose, then compute behavior, data handling, provenance, and output. Each sentence adds necessary detail without repetition. Slightly dense but 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 the lack of an output schema, the description provides adequate context: it mentions the exported artifact (AP2 with execution_hash) and the output feed. It covers inputs, compute modes, and privacy. 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?
Schema coverage is 100% and descriptions provide basic info. The description adds value for the 'compute' parameter by explaining its behavior in different modes. For 'policy_parameters', it directs to the tool manifest, which is acceptable but not fully standalone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 an 'EU AI Act Art. 50 Marking Checker' and a 'deterministic OpenChainGraph compute node'. It specifies the compliance mandate, which distinguishes it from siblings that check other regulations or perform different 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?
The description explains compute modes ('auto', 'browser', 'server') and their conditions, guiding when to use each. It also advises using synthetic or anonymized inputs. However, it does not explicitly state when not to use the tool or compare it to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_allocation_affirmationAllocation/Affirmation Conformance CheckerARead-onlyIdempotentInspect
Allocation/Affirmation Conformance Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-77-t1-settlement-readiness-diagnostic. Output feeds: art-82-securities-settlement-message-linter, cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-81-allocation-affirmation-conformance.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations (readOnlyHint=true, idempotentHint=true, destructiveHint=false). It states that inputs are transient and not stored, advises using synthetic/anonymised inputs, explains compute mode behavior (auto vs browser delegation), and notes how gpu:true nodes delegate. This provides a clear understanding of the tool's execution model and data 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?
The description is a single paragraph containing multiple pieces of information. It front-loads the title and key purpose, but then includes technical details about compute modes, data handling, artifact flow, and a URL. While all information is relevant, the structure could be tighter—for example, separating usage guidelines from behavioral details. It is moderately 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 complexity (4 parameters, nested objects, no output schema), the description covers essential aspects: compute mode behavior, transient data handling, artifact export with execution hash, and upstream/downstream connections. The absence of an output schema is mitigated by mentioning the AP2 artifact. The description is fairly complete for understanding the tool's 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%, so baseline is 3. The description adds meaning by explaining when compute modes apply (e.g., 'auto' vs 'browser') and noting that policy_parameters are input for the decision function. It also clarifies that for gpu:false nodes with registered kernels, parameters are computed server-side. This adds value 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 title 'Allocation/Affirmation Conformance Checker' clearly indicates the tool's purpose. The description describes it as an 'OpenChainGraph compute node (compliance_mandate)' and mentions exporting an AP2 artifact for chain provenance, reinforcing the conformance checking role. However, the description focuses more on the compute node behavior than explicitly stating that the tool checks conformance for allocation/affirmation, so it is clear but not perfectly 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 provides no explicit guidance on when to use this tool versus siblings. It mentions upstream and downstream artifact dependencies but does not specify conditions for use or alternatives. Given the large number of sibling tools like 'check_agency_eligibility_matrix' and 'check_ai_act_art50_marking', the lack of usage direction is a gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_assessor_independenceSwift CSP Assessor Independence EligibilityCRead-onlyIdempotentInspect
Swift CSP Assessor Independence Eligibility: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-487-assessor-independence-check.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable context: inputs are processed transiently and not stored, the tool exports an AP2 artifact with execution_hash, and compute modes are explained (server vs. browser). This informs the agent about data handling and output characteristics beyond what annotations provide. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose and mixes domain purpose with infrastructure details. It includes redundant information (compute modes are also in the schema) and fails to front-load a clear statement of what the tool does. Runs-on sentences and technical jargon reduce readability. Not concise; several sentences could be removed or combined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters and no output schema, the description omits the core decision logic: what inputs in 'policy_parameters' are needed, and what outputs (beyond 'AP2 artifact') the agent should expect. The tool's purpose in the assessor independence domain is not elaborated, making it incomplete for correct invocation. The description is more about the compute platform than the tool's specific 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%, so the baseline is 3. The description adds some context for the 'compute' parameter (elaborating on modes) and for 'policy_parameters' (referencing the tool's manifest). However, it does not define the fields within 'policy_parameters', leaving a gap for the agent. Overall, marginal added value given the schema already describes 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?
The description does not clearly state what the tool checks regarding 'Swift CSP Assessor Independence Eligibility'. It focuses on compute infrastructure (OpenChainGraph node, compute modes) rather than explaining the decision logic or what 'assessor independence' means. The title suggests a domain but the description fails to elaborate on the tool's core function, leaving the agent uncertain about what specific eligibility is being assessed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. The description lacks any context about prerequisites, typical use cases, or why a user would choose this over sibling tools like 'check_capital_adequacy_private' or 'check_safeguarding_reconciliation'. The tool's domain-specific purpose is entirely unaddressed, making it difficult for an agent to determine when invocation is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_camera_provenanceCamera-Provenance CheckARead-onlyIdempotentInspect
Camera-Provenance Check: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-359-idv-session-receipt-builder. Open at: https://ainumbers.co/chaingraph/art-361-camera-provenance-check.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, non-destructive. The description adds that inputs are processed transiently, not stored, logged, or retained, and details compute delegation behavior. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose, followed by relevant details. It is somewhat lengthy but does not repeat schema content. Could be slightly more 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?
The tool has no output schema, but the description only mentions an AP2 artifact with execution_hash without describing the response format or structure. Given the complexity of the tool, this omission limits 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%, so the schema already explains all parameters. The description mentions compute modes but does not add semantic detail beyond what the schema provides for the other three 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 identifies the tool as a deterministic OpenChainGraph compute node for camera provenance checking, distinct from other check tools by its focus on camera provenance and its specific compute mode behavior. However, it does not explicitly state what the actual check verifies (e.g., authenticity, timestamps).
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using only synthetic or anonymized inputs and explains compute mode selection (auto, server, browser) for execution context. It does not provide guidance on when to use this tool over other similar check tools or any alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_capital_adequacy_privatePrivate-Input Capital Adequacy CheckARead-onlyIdempotentInspect
Private-Input Capital Adequacy Check: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-415-check-capital-adequacy-private.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds valuable information: inputs are processed transiently and not stored, logged, or retained, and the tool is deterministic. This goes beyond the annotations and provides important behavioral context. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph that front-loads the purpose. However, it includes a URL at the end which may be unnecessary and adds to length. It could be more structured with bullet points or shorter sentences 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?
Given the complexity of 4 parameters and no output schema, the description adequately explains compute modes, transient processing, and artifact export. However, it does not detail the return format or the structure of the AP2 artifact, which could leave some ambiguity for the 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 100%, so the baseline is 3. The description provides minimal additional value for parameters beyond restating what is in the schema. It mentions execution_hash for chain provenance related to parent_hashes, but the schema already covers this.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a Private-Input Capital Adequacy Check as an OpenChainGraph compute node. It distinguishes itself from sibling tools by emphasizing private inputs, transient processing, and deterministic execution. However, it could be more explicit about what exactly 'capital adequacy' entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, server, browser) and when to use each. It also advises using only synthetic or anonymised inputs, which is a crucial usage constraint for a private-input tool. However, it does not explicitly compare to alternative tools in the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_card_act_ability_to_payCheck CARD Act Ability to PayARead-onlyIdempotentInspect
Check CARD Act Ability to Pay: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-228-build-adverse-action-notice. Open at: https://ainumbers.co/chaingraph/art-233-check-card-act-ability-to-pay.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds significant context: deterministic execution, transient processing with no storage/logging/retention, requirement to use synthetic or anonymized inputs, and details about output artifacts (AP2 artifact with execution_hash) and downstream feed. This goes beyond the annotations and helps the agent understand privacy and provenance 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?
The description is compact (about 100 words) and well-structured: purpose, compute mode behavior, privacy note, output details, and link. It front-loads the core function. No redundant sentences, though additional usage guidance could have improved it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 parameters, nested objects, no output schema), the description provides good context: compute modes, transient processing, anonymized input requirement, output artifact details, and downstream feed. It is largely complete, though it could mention error handling or input validation.
Complex tools with many parameters or behaviors need more documentation. 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 fully documents parameters. The description adds minimal extra meaning: it explains compute modes in more detail and mentions that policy_parameters depend on the manifest, but does not elaborate on the structure or valid fields. The value added is marginal, so a 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 checks CARD Act ability to pay, identifies it as a deterministic OpenChainGraph compute node for compliance, and distinguishes it from sibling tools by naming its output feed and providing a URL. The verb 'check' and resource 'ability to pay' are specific and 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 does not provide guidance on when to use this tool versus alternatives. It explains compute modes but fails to indicate prerequisites, typical scenarios, or when not to use it. Sibling tools suggest a compliance context, but no explicit usage criteria are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_cash_leg_finalityOn-Chain Cash-Leg Finality CheckerARead-onlyIdempotentInspect
On-Chain Cash-Leg Finality Checker: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: 505-tokenized-collateral-eligibility-checker. Open at: https://ainumbers.co/tools/506-onchain-cash-leg-finality-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| verdict | No | |
| mica_status | No | |
| mandate_type | No | |
| finality_flag | No | |
| genius_status | No | |
| compliance_flags | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. Description adds that inputs are processed transiently and not stored, logged, or retained, and mentions execution_hash for chain provenance. 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?
Description is a single paragraph with front-loaded title. Contains relevant details without excessive verbosity, though some technical jargon may be dense.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 presence of output schema, the description adequately covers input handling, compute modes, and provenance. Mentions upstream artifact dependency, aiding context. Could add more on return value but 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?
Schema coverage is 100% with descriptions for each parameter. Description adds context on compute mode behavior and policy_parameters object, 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?
Description clearly states verb 'check' and resource 'cash-leg finality', distinguishing it from siblings like check_linea_l2_finality_window or classify_settlement_finality. However, it could be more explicit about the 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?
Advises using synthetic or anonymised inputs only, but does not explicitly state when to use this tool vs alternatives like check_linea_l2_finality_window or classify_settlement_finality. Provides compute mode behavior but lacks selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_client_portingClient Porting CheckBRead-onlyIdempotentInspect
Client Porting Check: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-532-client-porting-check.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive behavior. The description adds significant context beyond these: inputs are processed transiently and not stored/logged/retained, compute is deterministic, and execution can happen server-side or in-browser depending on GPU and compute mode. It also warns to use synthetic data only. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but contains redundancy: the first sentence 'Client Porting Check: OpenChainGraph compute node' and the second 'Deterministic OpenChainGraph compute node' overlap significantly. It then packs five sentences of detailed behavior into a dense block. While every major point is addressed, the repetition makes it less crisp than it could be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 no output schema, the description does explain that an AP2 artifact with execution_hash is exported and that browser mode returns a delegation URL. It also covers privacy, compute behavior, and provides a help URL. However, it lacks a clear explanation of what the 'client porting check' actually does or what inputs are expected (policy_parameters are deferred to a manifest). This leaves an agent without a full understanding of when and how 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?
Schema description coverage is 100%, so the baseline is 3. The description repeats the compute parameter's enum semantics (auto vs browser vs server) but adds little new meaning for that parameter and does not elaborate on parent_hashes, parent_tool_ids, or policy_parameters beyond what the schema already states. The 'use synthetic data' note is a usage caution, not a parameter-semantic explanation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and name clearly indicate a 'Client Porting Check', but the description does not define what 'client porting' means or what specific validation is performed. It describes the tool as a 'Deterministic OpenChainGraph compute node' and focuses on compute modes rather than the actual check semantics. This is more than a tautology but still leaves the core purpose vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 state when to use this tool versus alternatives, nor does it mention any exclusions. It provides guidance on compute modes (auto/server/browser) and instructs to use only synthetic/anonymized inputs, but these are parameter-level constraints, not tool-selection guidance. There is no explicit 'use this when...' or comparison with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_conforming_loan_limitConforming Loan Limit CheckBRead-onlyIdempotentInspect
Conforming Loan Limit Check: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-222-agency-eligibility-matrix. Open at: https://ainumbers.co/chaingraph/art-223-conforming-loan-limit.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it specifies determinism, transient processing (inputs not stored), and the compute modes (auto/server/browser). It is consistent with readOnlyHint and idempotentHint. However, it does not cover failure modes 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 well-structured: it front-loads the purpose, then details compute modes, data handling, and outputs. Slightly verbose with URLs and artifact IDs, 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?
The description explains compute behavior and output artifact, but lacks details on the decision logic and the structure of 'policy_parameters', which is crucial for correct invocation. It defers to an external manifest, leaving a gap for agents.
Complex tools with many parameters or behaviors need more documentation. 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 does not add meaningfully to the parameter understanding; it only recontextualizes compute modes already described 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 states it is a 'Conforming Loan Limit Check' as an OpenChainGraph compute node, and mentions its output feeds into the agency eligibility matrix. This clearly identifies the tool's purpose, but it does not differentiate it from sibling tools like check_agency_eligibility_matrix, which may be downstream.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 constraints like 'Use synthetic or anonymised inputs only' but lacks explicit guidance on when to use this tool versus alternatives. No contextual triggers 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.
check_cra_annex1_completenessCRA Annex I Completeness CheckerBRead-onlyIdempotentInspect
CRA Annex I Completeness Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-138-spdx-sbom-validator. Output feeds: art-140-cra-vuln-reporting-readiness. Open at: https://ainumbers.co/chaingraph/art-139-cra-annex1-completeness-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds significant behavioral context: determinism, compute mode options (auto/server/browser with specific conditions), transient processing (inputs not stored/logged/retained), requirement for synthetic inputs, and export of an AP2 artifact with execution_hash for chain provenance. This goes well beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is about 8 sentences long and covers operational details, compute modes, data handling, and chain context. It is front-loaded with the title and 'OpenChainGraph compute node' but includes extraneous details like URLs and specific upstream/downstream artifact IDs that could be moved elsewhere. It is acceptable but could be more 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 complexity (compute modes, chaining, transient processing) and no output schema, the description covers operational aspects well. It explains compute behavior, data handling, and chain provenance. However, it lacks semantic clarity on what 'CRA Annex I Completeness' specifically entails and does not describe the output artifact structure or decision function output. The URL provides a fallback, but for agent selection, the description should be more self-contained.
Complex tools with many parameters or behaviors need more documentation. 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, baseline is 3. The description adds context for the 'compute' parameter by explaining the implications of each value in relation to GPU and kernel registration. It also clarifies the role of 'parent_hashes' and 'parent_tool_ids' for chaining. However, 'policy_parameters' is left vague, directing to the manifest, which limits full clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as a 'CRA Annex I Completeness Checker' and an 'OpenChainGraph compute node', but does not explicitly state what constitutes completeness or what specific checks are performed. The purpose is implied through references to upstream and downstream artifacts but lacks a clear, direct statement of the tool's core function. Among many sibling 'check_' tools, it does not differentiate itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 details compute modes and constraints (e.g., 'use synthetic or anonymised inputs only') but does not explain the context in which the tool should be invoked or how it compares to siblings like 'check_spdx_sbom' or 'check_emir_uti_completeness'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_credit_concentration_topn_sectorCredit Concentration Top-N / Sector CheckerARead-onlyIdempotentInspect
Credit Concentration Top-N / Sector Checker: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-445-credit-concentration-topn-sector.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: deterministic execution, transient input processing (not stored or retained), artifact export with execution_hash, and compute mode delegation logic. No contradictions with annotations (readOnlyHint=true, idempotentHint=true, destructiveHint=false).
Agents need to know what a tool does to the 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 7 sentences, which is acceptable but includes technical execution details (Cloudflare Workers, gpu:true/false) that are secondary to the core purpose. The first sentence is clear, but subsequent sentences could be more concise and focused on the tool's 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?
Given the moderate complexity (4 parameters, no output schema), the description covers purpose, behavioral traits (transient processing, determinism), usage caveats (synthetic inputs), and output artifact. It explains compute modes in detail. Minor omission: no details on policy_parameters fields, but references a manifest.
Complex tools with many parameters or behaviors need more documentation. 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 4 parameters described in schema). The description adds value for the 'compute' parameter by explaining default behavior and delegation, and mentions 'policy_parameters' refer to a manifest. However, it does not provide additional detail for 'parent_hashes' or 'parent_tool_ids' beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 checking credit concentration by top-N sector, and identifies it as an OpenChainGraph compute node. However, the purpose is somewhat buried among execution details (Cloudflare Workers, gpu:false, etc.), and it does not explicitly distinguish from other similar check 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?
The description advises using synthetic or anonymised inputs only, which is a usage caveat. It also explains compute modes and when server-side vs. client-side execution occurs. However, it does not provide explicit guidance on when to use this tool versus alternative sibling tools or specify prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_cscf_control_applicabilityCSCF Control Applicability & CoverageBRead-onlyIdempotentInspect
CSCF Control Applicability & Coverage: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-486-cscf-control-applicability.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral traits beyond annotations: it is deterministic, explains compute modes (auto/server/browser), notes that inputs are processed transiently and not stored, and describes the exported AP2 artifact. This enriches the agent's understanding.
Agents need to know what a tool does to the 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 front-loaded with the core purpose and then elaborates on compute modes and data handling. It is reasonably concise given the complexity, 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 description explains the tool's behavior and provides a reference URL, it lacks a clear definition of 'CSCF Control Applicability' and does not describe the output artifact structure or how to interpret the execution_hash, which is needed for a complete 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 input schema already has 100% description coverage with detailed explanations. The tool description does not add meaningful new parameter-level 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 the tool is a 'CSCF Control Applicability & Coverage' OpenChainGraph compute node, and explains its compute modes and output. It specifies the resource (CSCF control applicability) and the action (check/assess), though it could more explicitly differentiate 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 only advises to 'Use synthetic or anonymised inputs only' but does not provide guidance on when to use this tool versus alternatives, nor any criteria for 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.
check_debt_validation_noticeDebt Validation Notice Completeness CheckerARead-onlyIdempotentInspect
Debt Validation Notice Completeness Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-402-validate-regf-call-frequency. Open at: https://ainumbers.co/chaingraph/art-403-check-debt-validation-notice.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as read-only, idempotent, and non-destructive. The description adds significant context: inputs are processed transiently and not stored, execution is deterministic, it exports an AP2 artifact with execution_hash, and compute modes involve Cloudflare Workers or browser delegation. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense with technical details (compute modes, execution environment, privacy note, artifact export). It front-loads the tool name and type but then delves into specifics that may be unnecessary for a quick understanding. Could be more concise, but 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?
The description covers many aspects: compute modes, transient processing, artifact export, upstream dependency, and privacy. However, it does not describe the return value or output structure (the AP2 artifact's content beyond execution_hash). Since there is no output schema, this omission leaves the tool's primary result ambiguous.
Complex tools with many parameters or behaviors need more documentation. 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 the schema already explains parameters. The description adds little beyond the schema: it reiterates compute modes and mentions policy_parameters but without field names. Since schema coverage is high, the baseline is 3, and the description does not substantially 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 it is a 'Debt Validation Notice Completeness Checker' and an OpenChainGraph compute node. It specifies the verb 'check' and the resource 'debt validation notice completeness'. While it mentions consuming upstream artifacts, it does not explicitly differentiate from sibling 'check_*' tools, leaving some 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?
The description explains compute modes and advises using synthetic/anonymised inputs only. However, it does not provide explicit guidance on when to use this tool versus alternatives (e.g., other check tools) or when not to use it. The dependency on upstream artifacts is implied but not structured as usage conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_digital_trade_rulesDigital Trade Rules Compliance CheckerARead-onlyIdempotentInspect
Digital Trade Rules Compliance Checker: OpenChainGraph compute node (scheme_rule). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-52-digital-trade-fit-diagnostic. Output feeds: art-08-en16931-einvoice-batch-validator, art-55-trade-document-provenance-verifier. Open at: https://ainumbers.co/chaingraph/art-54-digital-trade-rules-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, non-destructive. The description adds significant behavioral context: deterministic, compute modes, server vs client execution, transient processing (no storage), and chain provenance. This provides beyond what annotations alone offer.
Agents need to know what a tool does to the 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 moderately lengthy but well-structured: starts with purpose, then compute modes, data handling, and chain integration. It could be more concise, but it is not overly verbose. Scores 3 for being adequate but not 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?
Given the tool's complexity (multiple compute modes, data handling, chain provenance), the description covers many important aspects. No output schema exists, but the description mentions exporting an AP2 artifact with execution_hash. It provides sufficient context for an AI agent to understand behavior.
Complex tools with many parameters or behaviors need more documentation. 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 describes all parameters adequately. The description does not add substantial additional meaning beyond what is in the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and description clearly state it is a digital trade rules compliance checker. The description elaborates on the mechanism (OpenChainGraph compute node, deterministic, compute modes). However, it does not explicitly differentiate from sibling tools that may have similar 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?
Description explains compute modes and advises using synthetic inputs. It mentions what it consumes and outputs, providing context. But it lacks explicit guidance on when to use this tool versus alternatives, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_dpa_gdpr_art28DPA Article 28 Completeness CheckerARead-onlyIdempotentInspect
DPA Article 28 Completeness Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-409-dpa-art28-completeness-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds key behavioral details: it is deterministic, processes inputs transiently without storage, exports an AP2 artifact with execution_hash, and delegates to browser for certain compute modes. This significantly informs the agent about side effects and execution environment.
Agents need to know what a tool does to the 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 functional but mixes high-level purpose with low-level compute mode details, making it longer than necessary. The key information is present, but the flow could be tightened by separating purpose from implementation specifics.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output (AP2 artifact with execution_hash) and mentions the browser delegation URL, which partially covers the missing output schema. However, it lacks details on the artifact structure or how to interpret the result, leaving some ambiguity 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 100%, so the schema already documents all 4 parameters. The description adds context for the 'compute' parameter (explaining modes) and notes that 'policy_parameters' are for the decision function with a reference to the manifest. This adds moderate value but does not fully elaborate on nested structures.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'DPA Article 28 Completeness Checker' and an 'OpenChainGraph compute node', establishing the verb (check) and resource (DPA Article 28 completeness). However, it does not explicitly distinguish from sibling tools like 'check_digital_trade_rules' or 'check_ai_act_art50_marking', limiting 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 provides specific guidance to 'use synthetic or anonymised inputs only', which is a strong usage constraint. It also explains the three compute modes and their behaviors. However, it does not specify when to prefer this tool over alternative checkers or exclude certain scenarios, leaving usage context partially incomplete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_emir_uti_completenessEMIR UTI Completeness CheckerARead-onlyIdempotentInspect
EMIR UTI Completeness Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-153-emir-trade-report-field-validator. Output feeds: art-155-emir-upi-validator. Open at: https://ainumbers.co/chaingraph/art-154-emir-uti-completeness-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds that inputs are transiently processed and not stored, logged, or retained, and that the tool is deterministic. This provides clear behavioral context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with the purpose, then compute modes, data handling, and pipeline position. Some details like the exact URL and artifact export steps could be considered secondary, but overall it is reasonably 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?
Covers the tool's purpose, compute mode options, transient data handling, and pipeline dependencies. While no output schema is provided, the mention of exporting an AP2 artifact with execution_hash gives an idea of the output. The description is fairly complete for a tool with four parameters and strong 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 description coverage is 100%, so the schema already documents all parameters. The description adds context for the 'compute' parameter by explaining the compute modes in detail, but for other parameters like 'policy_parameters' it defers to the manifest, providing minimal 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 it is an EMIR UTI Completeness Checker and an OpenChainGraph compute node. It explains the tool's role in a processing pipeline, distinguishing it from many sibling tools like 'validate_emir_trade_report' or 'check_emir_lifecycle_event'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 detailed guidance on compute modes (auto, server, browser) and the recommendation to use synthetic or anonymised inputs. However, it does not explicitly state when to use this tool versus alternatives, though the pipeline context (consumes from art-153, feeds art-155) implies some usage boundaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_etr_control_evidenceETR Singularity & Exclusive-Control Evidence CheckerARead-onlyIdempotentInspect
ETR Singularity & Exclusive-Control Evidence Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-55-trade-document-provenance-verifier. Open at: https://ainumbers.co/chaingraph/art-352-etr-control-evidence-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, idempotentHint, destructiveHint. Description adds beyond that: deterministic OpenChainGraph compute node, inputs processed transiently and not stored/logged/retained, exports execution_hash for chain provenance. 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?
Description is dense but well-structured: first line as title, then details on compute modes, transient processing, input warnings, output artifact, and a link. Each sentence adds value, 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 4 params with full schema and no output schema, description covers purpose, behavior, compute modes, input constraints, output (AP2 artifact), chain provenance, and links to external resources. Adequately complete for agent 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?
Input schema has 100% coverage with descriptions for all 4 parameters. Description adds moderate extra context about server-side computation for gpu:false nodes, but does not significantly enhance 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?
Description clearly states it is an ETR Singularity & Exclusive-Control Evidence Checker that uses an OpenChainGraph compute node. It specifies deterministic behavior, transient processing, and export of AP2 artifact. This distinguishes it from generic tools but doesn't explicitly differentiate from similar siblings like check_etr_possession_chain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute modes (auto, server, browser) and warns to use synthetic/anonymised inputs only. However, it does not explain when to use this tool versus alternatives among the many sibling tools, 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.
check_eudi_readinessEUDI Wallet Credential-Acceptance Readiness CheckerARead-onlyIdempotentInspect
EUDI Wallet Credential-Acceptance Readiness Checker: OpenChainGraph compute node (compliance_mandate). Regulatory deadline: 2026-11 (EUDI Wallet member-state rollout November 2026; FI SCA acceptance December 2027; AMLR July 2027). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-04-agent-identity-attestation-checker, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-13-eudi-wallet-credential-readiness-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds valuable behavioral context: input transient processing (no storage), determinism, artifact export with execution_hash, and compute mode implications. This goes beyond annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is comprehensive but somewhat verbose, including URLs and technical details. It front-loads key information but could be more concise. Every sentence adds value, but the length slightly reduces 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 tool's complexity and lack of output schema, the description covers regulatory context, compute options, data handling, and artifact export. However, it does not fully describe the output format beyond mentioning an AP2 artifact, which leaves some ambiguity for an AI 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 100%, so each parameter has a description. The description adds some context (e.g., explaining compute modes and policy_parameters as decision function inputs), but does not add significant new semantics 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's purpose as a 'EUDI Wallet Credential-Acceptance Readiness Checker' and provides specific regulatory deadlines, making the function clear. However, it does not explicitly distinguish itself from sibling tools like 'assess_eudr_readiness' or other readiness checkers, which would elevate the score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some usage guidance, such as using synthetic or anonymized inputs and explaining compute modes (auto, server, browser). It also mentions downstream outputs. However, it lacks explicit 'when to use vs. alternatives' guidance, which is important given many sibling readiness tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_fatca_crs_submission_conformanceFATCA/CRS Submission Conformance CheckARead-onlyIdempotentInspect
FATCA/CRS Submission Conformance Check: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-490-fatca-crs-submission-check.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds valuable context: 'Deterministic', 'Inputs are processed transiently... not stored, logged, or retained', and details about compute modes including browser delegation. It also mentions 'Exports an AP2 artifact with execution_hash for chain provenance.' This goes beyond the annotations, explaining the non-storage and provenance 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 structured with key information upfront: 'FATCA/CRS Submission Conformance Check: OpenChainGraph compute node (compliance_mandate).' It then explains compute modes, transient processing, and output. The sentences are mostly efficient, though there is slight repetition ('OpenChainGraph compute node' appears twice). Overall, it is well-organized 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 complexity of this tool (4 parameters, compute modes, transient processing, AP2 artifact output), the description covers most important aspects: compute behavior, input privacy, and output nature. It is missing explicit details on the format of the conformance result (e.g., pass/fail, detailed report) but the mention of 'exports an AP2 artifact' implies the result is in that artifact format. For a conformance check tool, this is fairly 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% description coverage, so the schema already explains each parameter. The description adds extra context: for 'compute', it explains the enum values and their effects; for 'policy_parameters', it notes 'See the tool's manifest for field names,' directing to further detail. This adds meaning beyond the schema, earning a score above 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 it is a 'FATCA/CRS Submission Conformance Check' and describes it as an 'OpenChainGraph compute node (compliance_mandate)'. The specific regulation name and the mention of OpenChainGraph distinguish it from sibling tools like 'check_cra_annex1_completeness' or other check tools. The verb 'check' with 'FATCA/CRS Submission Conformance' makes 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 guidance on when to use this tool: for FATCA/CRS conformance checks as part of an OpenChainGraph workflow. It explains compute modes and states 'Use synthetic or anonymised inputs only.' It also gives a link for more details. However, it does not explicitly say when NOT to use this tool or list alternatives, but the context is sufficient for an AI agent to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_fido_pqc_conformanceFIDO2 / WebAuthn PQC Conformance CheckerARead-onlyIdempotentInspect
FIDO2 / WebAuthn PQC Conformance Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-85-pqc-timeline-fit-diagnostic. Output feeds: cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-88-fido-pqc-conformance-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description provides extensive behavioral context beyond annotations: deterministic compute node, compute mode handling, transient processing, no storage/logging, requirement for synthetic inputs, export of AP2 artifact with execution_hash, upstream/downstream artifact links, and open URL. Annotations only provide readOnlyHint, idempotentHint, and destructiveHint.
Agents need to know what a tool does to the 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 well-structured and front-loaded with purpose. Each sentence adds relevant information, though it is relatively long. There is no redundancy, but it could be slightly more concise while retaining 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 complexity (4 params, nested objects, no output schema, many siblings), the description covers inputs, compute modes, transient processing, and chain provenance. However, it lacks details on the output AP2 artifact's content (e.g., conformance result format) and the 'decision function' for policy_parameters, leaving 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 value by explaining the compute modes and the transient nature of inputs, which goes beyond the schema descriptions. It also mentions the default behavior and constraints like gpu:true nodes always delegating to browser.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a FIDO2/WebAuthn PQC conformance checker and an OpenChainGraph compute node. The verb 'check' and resource 'conformance' are specific, and the context of deterministic compute node 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 explains compute mode options (auto, server, browser) and notes that inputs are transient and should be synthetic/anonymised. However, it does not explicitly state when to use this tool versus alternatives or when not to use it, leaving usage guidance implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_g20_corridor_cost_gapG20/FSB Corridor Cost-Gap CalculatorCRead-onlyIdempotentInspect
G20/FSB Corridor Cost-Gap Calculator: OpenChainGraph compute node (risk_parameter). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-549-g20-corridor-cost-gap.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds meaningful behavioral context beyond the annotations: deterministic execution, server-side vs. browser delegation, transient processing with no storage/logging, and AP2 artifact export with execution_hash. This helps an agent understand side effects and execution environment. No contradiction with readOnlyHint/idempotentHint.
Agents need to know what a tool does to the 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 verbose and repetitive, opening with the title and then 'OpenChainGraph compute node (risk_parameter)' followed by 'Deterministic OpenChainGraph compute node.' It includes a URL and many operational details that could be condensed, making it less scannable than necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 a complex tool with no output schema, the description omits the actual meaning of 'corridor cost gap' and the specific inputs/outputs. It over-invests in compute-mode mechanics and leaves the core domain function unexplained, making it incomplete for an agent to decide when and how to use it 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?
The schema already describes all four parameters well (100% coverage). The description adds context about compute modes and notes that policy_parameters are for the decision function, but it does not explain the nested fields of policy_parameters, deferring to a manifest instead. This is adequate baseline given 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 repeats the title 'G20/FSB Corridor Cost-Gap Calculator' without explaining what the cost-gap calculation actually is. It focuses on being an 'OpenChainGraph compute node' and compute modes, not on the domain-specific purpose, and it does not distinguish from sibling tools like compare_corridor_cost or model_stablecoin_corridor_economics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 given on when to use this tool versus alternatives. The only directive is to use synthetic or anonymised inputs, which is a caution, not a usage guideline. The compute mode explanation is about how rather than when.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_genius_reserve_disclosureGENIUS Act Monthly Reserve Disclosure CheckerARead-onlyIdempotentInspect
GENIUS Act Monthly Reserve Disclosure Checker: OpenChainGraph compute node (compliance_mandate). Regulatory deadline: 2027-01-18 (GENIUS Act effective ≤ January 2027; monthly reserve composition reports required for licensed issuers; >$50B issuers subject to annual PCAOB audit. Re-verify against final-rule text on/after 2026-07-18.). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-275-genius-reserve-disclosure-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds useful behavioral details: 'Inputs are processed transiently... not stored, logged, or retained', 'Deterministic', and explains compute mode behaviors (server-side vs browser delegation). This provides context beyond annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat verbose, including dense regulatory deadline text (e.g., '2027-01-18 (GENIUS Act effective...)') and technical execution details that could be streamlined. The first sentence is clear, but subsequent sentences could be more concise for AI agent 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?
Given no output schema, the description mentions exporting an 'AP2 artifact with execution_hash' and an output feed, but does not explain what the checker actually returns (e.g., compliance status, report). The regulatory context is provided, but the tool's output semantics are vague. For a complex tool with 4 parameters, more completeness on return behavior is warranted.
Complex tools with many parameters or behaviors need more documentation. 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 4 parameters. The description extends parameter semantics, especially for 'compute', detailing auto/server/browser modes with specific conditions (Cloudflare Workers, browser delegation). For other parameters, it marginally adds context (e.g., AP2 artifact export), but the schema already provides solid 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 identifies the tool as a 'GENIUS Act Monthly Reserve Disclosure Checker' and specifies its role as an OpenChainGraph compute node with a compliance mandate. This provides a specific verb (check) and resource (reserve disclosure), distinguishing it from siblings by naming the exact regulation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 alternatives. It mentions 'Use synthetic or anonymised inputs only' and a re-verification date, but does not contrast with sibling tools like 'check_reserve_attestation' or 'precheck_reserve_attestation'. No alternative tools are suggested for different use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_genius_reserve_disclosure_conformanceGENIUS Act Reserve-Disclosure Conformance MonitorBRead-onlyIdempotentInspect
GENIUS Act Reserve-Disclosure Conformance Monitor: OpenChainGraph compute node (compliance_mandate). Regulatory deadline: 2027-01-18 (GENIUS Act effective date is the earlier of 18 Jan 2027 or 120 days after final implementing regulations publish; the statutory 18 Jul 2026 rulemaking deadline was missed and no final rule exists as of 2026-08-07 (research/GENIUS-FINALRULE-CHECK-2026-08-07.md). Re-verify against final-rule text once one publishes.). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-582-genius-reserve-disclosure-conformance-monitor.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive hints. The description goes well beyond annotations by explaining that inputs are processed transiently and not stored, that computation is deterministic, how compute modes affect execution (server vs browser delegation), and that an AP2 artifact with execution_hash is exported. This is rich behavioral disclosure and fully leverages the annotation baseline.
Agents need to know what a tool does to the 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 long and dense with regulatory and technical detail, but there is redundancy (e.g., 'OpenChainGraph compute node' appears twice) and some non-essential content like the URL. It is front-loaded with the title and compliance mandate, but could be tighter by removing repeated phrases and stating the core function more directly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description must explain what the tool returns, but it only mentions exporting an AP2 artifact with an execution_hash. It does not describe the actual conformance result, how policy_parameters drive the decision, or what inputs are needed for a meaningful check. The regulatory and compute details are helpful, but the core functional context is missing, making it incomplete for an agent to invoke 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?
Schema coverage is 100% for all 4 parameters, and the schema already describes compute modes, parent_hashes, and parent_tool_ids. The description adds minimal parameter meaning beyond referencing the tool's manifest for policy_parameters field names. It does not explain what policy_parameters contain or how they affect the conformance decision, so it stays at 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 identifies this as a 'GENIUS Act Reserve-Disclosure Conformance Monitor' compute node, so an agent can infer it checks reserve-disclosure conformance. However, it never states the actual action (e.g., 'checks whether a stablecoin issuer's reserve disclosure conforms to the GENIUS Act'). The description is a noun phrase with technical context, not a clear verb+resource statement, and it does not distinguish from the closely named sibling check_genius_reserve_disclosure.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some operational guidance (e.g., 'Use synthetic or anonymised inputs only', 'Re-verify against final-rule text once one publishes') but no explicit when-to-use or when-not-to-use guidance, and no alternatives are named. The compute mode explanation is parameter behavior rather than usage context. Given the existence of similar sibling tools, more explicit differentiation is needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_gpai_code_conformanceGPAI Code of Practice ConformanceARead-onlyIdempotentInspect
GPAI Code of Practice Conformance: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-174-nist-ai-rmf-function-mapper. Output feeds: art-176-ai-governance-readiness-diagnostic. Open at: https://ainumbers.co/chaingraph/art-175-gpai-code-of-practice-conformance.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations. It states the tool is deterministic, processes inputs transiently (not stored/logged/retained), exports an AP2 artifact with execution_hash for chain provenance, and describes compute mode behavior in detail. No contradiction with annotations (readOnlyHint, idempotentHint).
Agents need to know what a tool does to the 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 well-structured and front-loaded with the tool identity. Each sentence adds value: compute modes, transient processing, synthetic input caution, output artifact, pipeline links, and a URL. It is longer than minimal but avoids redundancy. Could be slightly more concise, 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?
The tool has no output schema, and the description does not clarify what the conformance result looks like (e.g., boolean, score, artifact structure). It mentions an AP2 artifact but not its contents. Nested object policy_parameters are not fully specified (defers to manifest). However, it covers compute modes, data handling, pipeline integration, and usage constraints, making it moderately 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%, baseline 3. The description enriches parameter semantics by explaining compute enum values in context (default 'auto' behavior, 'browser' forces delegation), clarifying parent_hashes and parent_tool_ids are for chaining, and noting policy_parameters are for the decision function (deferred to manifest). This adds value 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's purpose: checking GPAI Code of Practice conformance via an OpenChainGraph compute node. The verb 'check' and resource 'GPAI Code of Practice Conformance' are specific, and the description distinguishes it from siblings by name and by detailing the compute node pipeline (upstream/downstream artifacts).
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some usage guidance: it explicitly advises using synthetic or anonymised inputs only, and explains how to choose compute modes ('auto', 'server', 'browser'). However, it does not indicate when to prefer this tool over similar 'check_...' siblings or when not to use it. No exclusions 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.
check_icm_quorum_forgery_riskICM Quorum Forgery ClassifierARead-onlyIdempotentInspect
ICM Quorum Forgery Classifier: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-494-icm-quorum-forgery-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with annotations (readOnlyHint, idempotentHint, destructiveHint) by stating inputs are transiently processed and not stored, and the tool is deterministic. It adds behavioral details like exporting an AP2 artifact with execution_hash and compute delegation behavior. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with front-loaded purpose, followed by behavioral details and usage notes. Each sentence adds value, though it could be slightly condensed without losing 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 no output schema, the description covers purpose, compute modes, data handling, and output artifact (AP2 with execution_hash). However, it does not specify the classification result format (e.g., risk score or label), leaving a gap for agent understanding of 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?
Schema coverage is 100%, so the description adds marginal value. It explains the 'compute' parameter's enum values and mentions that 'policy_parameters' is the input for the decision function. However, it lacks specificity on the structure of policy_parameters beyond referencing a manifest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 as 'ICM Quorum Forgery Classifier' with a specific verb (classify) and resource (ICM quorum forgery). It distinguishes itself from sibling classifiers by its specific focus and mentions the OpenChainGraph compute node context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, browser, server), when to use synthetic/anonymised inputs, and the transient nature of processing. However, it does not explicitly contrast with sibling tools for when to choose this classifier over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_ifrs17_risk_adjustmentIFRS 17 Risk Adjustment CheckerBRead-onlyIdempotentInspect
IFRS 17 Risk Adjustment Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-178-ifrs17-csm-rollforward-validator. Open at: https://ainumbers.co/chaingraph/art-179-ifrs17-risk-adjustment-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable behavioral details: inputs are transiently processed and not stored, the tool is deterministic, it exports an AP2 artifact with execution_hash, and it consumes upstream artifacts. These details go beyond annotations and help the agent understand side effects and limitations.
Agents need to know what a tool does to the 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 but complete, covering identity, compute options, safety, output, upstream dependency, and reference URL. Each sentence contributes useful information, and the structure is logical and easy to follow.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, the description mentions exporting an AP2 artifact with execution_hash but does not explain what the artifact contains (e.g., the risk adjustment check result). The input-to-output transformation is unclear. The tool's core function (checking risk adjustment) is not described in terms of output. This leaves significant gaps for an agent selecting 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?
Schema coverage is 100% (all parameters have descriptions). The description adds meaning for the 'compute' parameter by explaining modes in detail and for 'policy_parameters' by describing its role as input to the decision function. However, it does not enrich 'parent_hashes' or 'parent_tool_ids'. Overall, it adds moderate 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 title 'IFRS 17 Risk Adjustment Checker' clearly indicates the domain, but the description focuses on execution mechanics (compute modes, transient processing) and does not explicitly state what the tool checks or computes. The core purpose (assessing risk adjustment under IFRS 17) is implied but not articulated, making it moderately clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some usage guidance, such as using synthetic/anonymised inputs and selecting compute modes, but it does not specify when to use this tool versus alternatives (e.g., other IFRS 17 tools or chain compliance nodes). No comparison to sibling tools or explicit context for tool selection is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_iolta_three_way_reconciliationIOLTA Three-Way Trust ReconciliationCRead-onlyIdempotentInspect
IOLTA Three-Way Trust Reconciliation: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-566-iolta-three-way-reconciliation.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| verdict | No | |
| decision | No | |
| findings | No | |
| three_way | No | |
| scope_note | No | |
| clause_note | No | |
| client_count | No | |
| client_ledgers | No | |
| rejected_inputs | No | |
| statement_period | No | |
| outstanding_items | No | |
| outstanding_summary | No | |
| negative_balance_findings | No | |
| period_boundary_consistent | No | |
| period_boundary_mismatches | No | |
| reconciliation_tolerance_minor | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, and non-destructive behavior. The description adds substantial, non-redundant behavioral context: determinism, compute modes (server-side vs. browser delegation), transient processing with no storage/logging/retention, the requirement to use synthetic/anonymised inputs, and the export of an AP2 artifact with execution_hash. These details go well beyond the structured annotations and are highly valuable for an agent.
Agents need to know what a tool does to the 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 moderately sized and includes useful technical detail, but it repeats 'OpenChainGraph compute node' twice in the opening lines, which is redundant. The compute-mode explanation is duplicated from the schema description, and the URL adds marginal value. It is not excessively long, but it is not tightly written.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 and annotations, the description fails to explain the actual decision function or what constitutes a successful three-way reconciliation. It focuses on infrastructure mechanics rather than domain semantics. An agent would not know what inputs to supply under policy_parameters or what the AP2 artifact's execution_hash signifies for compliance. The overemphasis on compute modes leaves the core functionality unexplained, making the description incomplete for a complex 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 detailed descriptions for compute, parent_hashes, parent_tool_ids, and policy_parameters. The tool description adds little beyond the schema; it repeats the compute mode semantics almost verbatim and does not mention parent_hashes or parent_tool_ids beyond the artifact provenance reference. Since the schema carries the parameter meaning, 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 never states a clear verb+resource, instead leading with the noun phrase 'IOLTA Three-Way Trust Reconciliation' and labeling it as 'OpenChainGraph compute node (compliance_control)'. It does not explicitly say what the tool checks or computes, leaving the reader to infer from the name. The purpose remains vague and not clearly distinguished from many sibling check_* and reconcile_* 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 is given for when to use this tool versus alternatives. The description provides constraints (e.g., 'Use synthetic or anonymised inputs only') and compute-mode explanations, but does not state situations in which this tool is appropriate or when to choose a sibling tool. Context is implied by the title, but the absence of exclusions or alternatives yields minimal guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_irrbb_csrbb_scopeIRRBB CSRBB Scope CheckerARead-onlyIdempotentInspect
IRRBB CSRBB Scope Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-186-irrbb-standardised-approach-mapper. Output feeds: art-188-irrbb-disclosure-readiness-diagnostic. Open at: https://ainumbers.co/chaingraph/art-187-irrbb-csrbb-scope-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description complements annotations (readOnlyHint, idempotentHint, destructiveHint) by detailing deterministic behavior, transient processing (no storage/logging), compute delegation logic, GPU handling, and artifact export with execution_hash. It clearly sets expectations beyond schema and 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 lengthy and includes dense technical details (compute modes, GPU, artifact chain, URL). It is structured (purpose, compute, data handling, artifact info) but could be trimmed for clarity. Not overly verbose, but not lean either.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, no output schema, compute modes, artifact chaining), the description covers most aspects: compute behavior, data retention, artifact export, and references. Missing a clear depiction of the output structure (AP2 artifact) and the 'decision function' logic, but sufficient for agent 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?
Input schema has 100% description coverage, so baseline is 3. The description adds context about policy_parameters being for the decision function and explains compute mode behavior relative to parameters. This modestly enriches 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 title and first sentence clearly state it checks IRRBB/CSRBB scope. The description explains it is an OpenChainGraph compute node, but does not explicitly differentiate from other 'check_*' sibling tools or state a crisp when-to-use condition. The specific upstream/downstream artifact references help distinguish implicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto/server/browser) and advises to use synthetic inputs. However, it lacks explicit when-to-use vs alternatives, prerequisites, or when NOT to use this tool. The 'Use synthetic or anonymised inputs only' is a safety guideline but not a usage condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_iso20022_pqc_readinessSWIFT / ISO 20022 PQC Readiness CheckerARead-onlyIdempotentInspect
SWIFT / ISO 20022 PQC Readiness Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-85-pqc-timeline-fit-diagnostic, 500-hndl-quantum-risk-scorer. Output feeds: cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-87-iso20022-pqc-readiness-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint=true, idempotentHint=true), the description adds: deterministic execution, transient input processing with no storage/logging, artifact export with execution_hash, and chain provenance details. This provides meaningful behavioral context not covered by annotations alone.
Agents need to know what a tool does to the 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 moderately concise but includes redundant phrases (e.g., 'Deterministic OpenChainGraph compute node' appears once) and contains detailed chain dependency info that could be streamlined. It is front-loaded with purpose but overall could be 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?
The description covers the tool's purpose, compute modes, data handling (transient, no retention), input constraints, artifact output, and chain integration. Lacking explicit output format details is acceptable given no output schema. Most relevant context for an agent to use the tool correctly is provided.
Complex tools with many parameters or behaviors need more documentation. 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 clarification on compute modes (e.g., 'auto' server-side for gpu:false with registered kernel vs 'browser' delegation URL) which enriches the enum descriptions in the schema. However, it does not significantly extend parameter meaning beyond what 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 explicitly states the tool is a 'SWIFT / ISO 20022 PQC Readiness Checker', clearly indicating the verb (check) and resource (ISO 20022 PQC readiness). It distinguishes itself from siblings by detailing unique upstream and downstream artifact dependencies, and notes it is a compliance mandate node in a chain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 checking ISO 20022 PQC readiness and explains compute modes, but does not provide explicit guidance on when to use this tool versus alternatives or exclude scenarios. The mention of 'Use synthetic or anonymised inputs only' offers a constraint but not direct usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_license_compatibilityLicense Compatibility CheckerBRead-onlyIdempotentInspect
License Compatibility Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-203-embedded-license-selector, art-198-cross-license-rights-comparator. Output feeds: art-205-license-terms-assembler. Open at: https://ainumbers.co/chaingraph/art-204-license-compatibility-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description discloses critical behavioral details: inputs are processed transiently and not stored/logged/retained, compute delegates to the browser under certain conditions, the node is deterministic, and it exports an AP2 artifact with execution_hash. It also warns to use only synthetic or anonymized inputs. This adds substantial value beyond the structured 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 long and repetitive; the second sentence 'Deterministic OpenChainGraph compute node' largely restates the first. It leads with jargon instead of a plain-language purpose, and packs many details (compute modes, gpu behavior, chain provenance, URL) into a dense paragraph. It would benefit from a clear purpose statement up front and removal of redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, data privacy, chain provenance, and links to upstream/downstream artifacts, which is useful context. However, it never describes the actual output or return value of the tool—only that it exports an AP2 artifact for provenance. With no output schema, an agent cannot know what a successful result looks like (e.g., a compatibility verdict). The policy_parameters are also left to an external manifest, leaving 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?
Schema description coverage is 100%, so every parameter (compute, parent_hashes, parent_tool_ids, policy_parameters) is already well-documented in the schema. The description adds minimal new parameter detail—it reiterates the compute auto default and browser delegation behavior, but does not enrich understanding of parent_hashes/parent_tool_ids or policy_parameters beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and name clearly indicate a license compatibility checker, but the description itself focuses on compute-node mechanics rather than stating what the tool actually does (e.g., determining whether two licenses are compatible). It mentions consuming upstream license-selector/comparator artifacts and feeding a license-terms assembler, which implies the function, but never explicitly articulates the core purpose. It also does not distinguish itself from similar license-related 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 provides context about compute modes (auto/server/browser) and strongly advises using synthetic or anonymized inputs, which is useful guidance. It also places the tool in a ChainGraph workflow by naming upstream and downstream artifacts. However, it never explicitly states when to select this tool over alternatives like check_producer_license_reciprocity or choose_cc_license, and offers no exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_linea_l2_finality_windowLinea L2 Finality Window ClassifierARead-onlyIdempotentInspect
Linea L2 Finality Window Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-290-check-linea-l2-finality-window.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds important behavioral context beyond annotations: inputs are processed transiently, not stored/logged/retained, and an AP2 artifact with execution_hash is exported. Annotations already indicate read-only, idempotent, non-destructive, so the description enhances 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 informative without being overly verbose. It front-loads the purpose and then provides necessary details. Every sentence earns its place, though it could be slightly more 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 description covers purpose, compute modes, data handling, and output. However, it lacks clarity on the actual classification logic and the specific role of policy_parameters. Given the complexity (4 params, nested objects, no output schema), more detail on the decision function 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?
Schema coverage is 100%, but the description adds meaning for the compute parameter by explaining its behavior in different modes. For policy_parameters, it vaguely refers to a manifest, but overall adds 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 it is a 'Linea L2 Finality Window Classifier' with specific verb (classifies) and resource (Linea L2 finality window). It distinguishes from siblings by mentioning 'OpenChainGraph compute node (compliance_mandate)' and the specific Linea L2 focus, which is unique among 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 explains compute modes (auto, browser, server) and when each is used, as well as the advice to use synthetic/anonymised inputs. However, it does not explicitly compare this tool to alternatives among siblings 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.
checklist_step_receiptMint a hash-chained checklist step receiptAInspect
Completes ONE step of a checklist/SOP run and returns its OCG v0.4 step receipt: execution_hash chains to prev_step_receipt_digest (pass the previous step's execution_hash, or omit for step 0). A blocking-gate step with evidence_requirement != "none" and no evidence supplied is refused (the caller enforces step order; this tool enforces the evidence requirement per step). Call once per step in order, then pass the full ordered list of returned receipts to checklist_verify_run to check the chain and mint the run receipt.
| Name | Required | Description | Default |
|---|---|---|---|
| step | Yes | The step object from the definition's steps[] array being completed. | |
| evidence | No | Evidence payload, e.g. { text_digest }, { file_sha256 }, or { attestation_digest }. Required unless evidence_requirement is "none". | |
| timestamp | Yes | ISO 8601 completion timestamp (caller-supplied for determinism). | |
| step_index | Yes | Zero-based index of this step in the definition. | |
| completer_key | No | Identifier of who/what completed the step (e.g. an agent id). Never real PII. | |
| definition_digest | Yes | The definition_digest from checklist_validate_definition. | |
| prev_step_receipt_digest | No | execution_hash of the previous step's receipt. Omit for the first step in the run. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no behavioral annotations (readOnlyHint, destructiveHint etc. all false), the description reveals key side effects: it returns a hashed receipt that chains to the previous step, enforces evidence requirements for blocking steps, and refuses execution if evidence is missing. It does not discuss idempotency or detailed failure modes, but provides sufficient transparency for safe 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 a single paragraph that efficiently conveys purpose, usage, parameters, chaining logic, and enforcement rules. It is front-loaded with the main action and contains 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 complexity (nested step object, chaining, evidence rules) and lack of output schema, the description provides sufficient context: it explains the return value (OCG v0.4 step receipt with execution_hash), the chaining requirement, the evidence enforcement, and references the verifying sibling tool. No gaps remain for a competent 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?
Schema coverage is 100%, but the description adds significant value beyond the schema. For example, it explains that prev_step_receipt_digest must be the execution_hash of the previous step (or omitted for step 0), and that evidence is required unless evidence_requirement is 'none'. These constraints are not present 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 it completes one step of a checklist/SOP run and returns a receipt. It explicitly references the sibling tool checklist_verify_run for subsequent verification, distinguishing its role in the workflow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 instructions: 'Call once per step in order' and specifies that evidence is required for blocking steps when evidence_requirement is not 'none'. It also directs the caller to pass the ordered list of receipts to checklist_verify_run, giving clear guidance on when to use this tool and how to sequence it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
checklist_validate_definitionValidate a checklist/SOP definitionARead-onlyIdempotentInspect
Validates a checklist or SOP definition JSON against the CHECKRUN-1 schema (definition_id, title, semver version, non-empty steps[] each with step_id/title/instruction/evidence_requirement (none|text|file-digest|attestation)/gate (blocking|advisory)). Returns valid:true/false plus a field-by-field error list. Pair with checklist_step_receipt to run the definition headlessly.
| Name | Required | Description | Default |
|---|---|---|---|
| definition | Yes | The checklist/SOP definition object to validate. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and idempotent behavior. The description adds context on the return structure (valid:true/false plus field-by-field error list) and the specific schema validated, which goes beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core action, and every sentence adds value: validating against schema, listing fields, mentioning return type, and suggesting a complementary tool. 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 validation tool with one parameter and no output schema, the description covers input schema details, output format, and a useful pairing suggestion. It is fairly complete, though it could optionally mention potential edge cases or limits.
Complex tools with many parameters or behaviors need more documentation. 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 coverage, the input schema only describes 'definition' as an object. The description significantly expands by enumerating the expected fields (definition_id, title, semver version, non-empty steps with subfields), adding crucial meaning for correct 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 validates a checklist/SOP definition JSON against the CHECKRUN-1 schema, listing the required fields. It also distinguishes itself from the sibling tool checklist_step_receipt by noting the pairing for headless 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 validation before running a definition, mentioning pairing with checklist_step_receipt. However, it does not explicitly state when not to use it or compare with other similar siblings like checklist_verify_run.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
checklist_verify_runVerify a checklist run's hash chain and Merkle rootARead-onlyIdempotentInspect
Recomputes and checks a checklist run: every step receipt's execution_hash, the hash-chain link between consecutive steps, and (if a run_receipt is supplied) the §20.1 RFC 6962 Merkle root over every step. Returns valid:true/false, per-step ok/hash_ok/link_ok, and broken_at (the zero-based index of the first broken step, or null). Same recompute a human gets from the browser Run Verifier.
| Name | Required | Description | Default |
|---|---|---|---|
| run_receipt | No | The run receipt to check the Merkle root and its own execution_hash against. Omit to check only the step chain. | |
| step_receipts | Yes | Ordered array of step receipts, as returned by checklist_step_receipt. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true. The description confirms these by describing recomputation without side effects. It adds detail on the verification process but does not disclose any new behavioral traits beyond what annotations and schema provide.
Agents need to know what a tool does to the 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. First sentence covers operations and output, second provides analogy. 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?
No output schema, but the description fully explains return values (valid, per-step ok/hash_ok/link_ok, broken_at). Combined with schema and annotations, the tool is fully comprehensible with 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%, but description adds value by explaining the effect of omitting run_receipt (only step chain check) and that step_receipts come from checklist_step_receipt. This clarifies parameter usage beyond 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 recomputes and checks a checklist run, listing three specific verifications (execution_hash, hash-chain link, Merkle root) and the output structure. It distinguishes from sibling tools like checklist_validate_definition.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 it implies verification use, it does not mention exclusions or when another tool might be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_mcp_registry_entryMCP Registry Entry Conformance CheckerARead-onlyIdempotentInspect
MCP Registry Entry Conformance Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-148-mcp-authorization-metadata-validator. Open at: https://ainumbers.co/chaingraph/art-149-mcp-registry-entry-conformance.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as read-only, idempotent, and non-destructive. The description adds transparency by stating inputs are 'processed transiently and not stored, logged, or retained', and explains compute mode behavior and gpu:true delegation. This provides meaningful context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single well-structured paragraph that front-loads the purpose and then details compute modes, data handling, output artifact, dependencies, and a link. It is efficient but includes a slight repetition of 'Deterministic OpenChainGraph compute node'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested objects, no output schema), the description covers purpose, compute modes, data handling, artifact output (execution_hash), upstream dependencies, and a reference URL. It does not explicitly detail return values, but the artifact mention and link partially 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% with descriptive parameter descriptions. The description adds value by explaining the 'compute' parameter's behavior ('auto' default, server vs browser delegation) and states that 'policy_parameters' are for the decision function, referencing the manifest for details. This enriches 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 it is an 'MCP Registry Entry Conformance Checker' and an 'OpenChainGraph compute node (compliance_mandate)'. The verb 'check' and resource 'MCP Registry Entry Conformance' are specific, and it distinguishes itself from sibling tools like 'validate_mcp_server_identity' by focusing on registry entry conformance and being a deterministic compute node.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 to use 'synthetic or anonymised inputs only' and explains compute modes with defaults. However, it does not explicitly state when to use this tool versus alternatives or when not to use it. It references an upstream artifact but lacks exclusionary guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_mica_reserve_disclosureCheck MiCA Reserve DisclosureBRead-onlyIdempotentInspect
Check MiCA Reserve Disclosure: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-512-check-mica-reserve-disclosure.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses substantial behavioral traits beyond annotations: deterministic execution, server-side compute on Cloudflare Workers vs browser delegation, transient input processing with no retention, and AP2 artifact export with execution_hash. These details are not in the annotations and help the agent understand side effects and privacy expectations. No contradiction with readOnly/idempotent 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 moderate length but contains redundancy: 'OpenChainGraph compute node (compliance_mandate)' is followed immediately by 'Deterministic OpenChainGraph compute node,' repeating the same phrase. It could be tightened while preserving the useful compute-mode and retention disclosures.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 complex (4 params, no output schema, nested objects), but the description omits the core compliance logic — what constitutes a MiCA reserve disclosure and what the check outputs. It mentions AP2 artifact with execution_hash but not the result content. While compute behavior is well covered, the domain function and return value are unexplained, leaving the agent uncertain about invocation outcomes.
Complex tools with many parameters or behaviors need more documentation. 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 all 4 parameters (100% coverage) with detailed explanations of compute modes, parent hashes, and policy_parameters. The description repeats some of this information but adds no new parameter-level semantics beyond 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 name and first line identify the tool as checking MiCA Reserve Disclosure, but the description does not explain what the check actually verifies (e.g., whether it validates reserve asset composition or disclosure completeness). It focuses on compute node mechanics rather than domain logic. It partially distinguishes from siblings like check_genius_reserve_disclosure by regulation name, but the body adds little 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 other compliance/compute tools, nor any exclusions or alternatives. It includes a note to use synthetic/anonymised inputs only, which is a usage instruction but not about tool selection. Sibling tools exist for related compliance checks, but no cross-referencing occurs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_mt101_coexistence_readinessSwift MT101 Coexistence Readiness DiffCRead-onlyIdempotentInspect
Swift MT101 Coexistence Readiness Diff: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/tools/577-mt101-coexistence-readiness-diff.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantive behavioral detail beyond the readOnly/idempotent annotations: deterministic execution, compute mode selection (auto/browser/server), transient processing with no retention, and gpu delegation rules. This gives the agent useful expectations about how the tool executes.
Agents need to know what a tool does to the 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 somewhat redundant ('OpenChainGraph compute node' appears twice) and spends sentences on compute internals before stating the output. It is organized but not tight; a single crisp statement of purpose would improve it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description should clarify what the readiness diff result contains, but it only mentions an 'AP2 artifact with execution_hash.' The core outcome (what readiness is being measured, how to interpret the diff) is missing, leaving the agent under-informed.
Complex tools with many parameters or behaviors need more documentation. 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 each parameter has a description. The tool description explains compute modes (also in schema) but doesn't add meaning beyond the schema for parent_hashes, parent_tool_ids, or the nested policy_parameters object. 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 repeatedly identifies the tool as an 'OpenChainGraph compute node' but never states what 'MT101 Coexistence Readiness' actually checks or produces. The functional purpose is essentially a restatement of the title, leaving the agent without a clear verb+resource to select it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 when-to-use context or comparison with sibling readiness tools (e.g., check_iso20022_pqc_readiness). The only directive is 'Use synthetic or anonymised inputs only,' which is a data constraint, not guidance on when to invoke this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_muni_arbitrage_spending_exceptionMuni Arbitrage Spending-Exception CheckerBRead-onlyIdempotentInspect
Muni Arbitrage Spending-Exception Checker: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-569-muni-arbitrage-spending-exception-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses deterministic behavior, server/browser compute delegation, transient input processing (no storage/logging/retention), a requirement for synthetic/anonymised inputs, and AP2 artifact export with execution_hash. These go beyond the annotations (readOnly, idempotent, non-destructive) and provide useful context about side effects and data 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?
The description is a single dense paragraph, but every sentence contributes useful information: compute modes, data retention, input hygiene, output artifact, and a documentation link. It is compact and front-loaded with the tool identity, though bullet-point formatting could improve 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?
The description omits the core decision logic of the check—what qualifies as a spending exception, what inputs are needed beyond policy_parameters, and what the expected result/return values are. With no output schema, the description should clarify the output format (beyond AP2 artifact hash) and domain context. The link to the HTML page may help, but the description itself is incomplete for an 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 has 100% coverage for all 4 parameters, so the schema carries the main semantic weight. The description adds the note 'Use synthetic or anonymised inputs only' (relevant to data sensitivity) and explains compute modes in prose, but does not add substantial 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 title 'Muni Arbitrage Spending-Exception Checker' and opening phrase clearly identify the tool as checking muni arbitrage spending exceptions, distinguishing it from sibling tools. However, the description focuses on compute-node mechanics (OpenChainGraph, compute modes) rather than explaining what the spending-exception check actually evaluates, leaving the functional purpose somewhat opaque.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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, no exclusions, and no stated prerequisites. The description only explains compute-mode selection (server vs browser) but not the business context or conditions for invoking the check. The 'compliance_control' tag implies regulatory usage, but this is not elaborated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_nis2_art21_measuresNIS2 Article 21 Gap Checker (Ten Cybersecurity Risk-Management Measures)ARead-onlyIdempotentInspect
NIS2 Article 21 Gap Checker (Ten Cybersecurity Risk-Management Measures): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-141-nis2-entity-scope-classifier. Output feeds: art-143-nis2-penalty-exposure-calculator. Open at: https://ainumbers.co/chaingraph/art-142-nis2-art21-gap-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and idempotentHint=true. The description adds that inputs are processed transiently without storage, it is deterministic, and exports an AP2 artifact with execution_hash. This provides useful behavioral context beyond annotations, with 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 well-structured with a clear lead sentence, then separate sections for compute behavior and chain integration. Every sentence adds value; no wasted words. Appropriate length for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, transient processing, and chain dependencies. However, it lacks details about the output artifact structure or gap analysis results, which would be helpful given no output schema. Otherwise, it provides sufficient context for agent 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%, baseline 3. The description adds meaning by explaining compute mode defaults ('auto' vs 'browser') and the role of parent_hashes/parent_tool_ids for chain provenance. It also clarifies that policy_parameters are for the decision function, adding value over the schema's minimal 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 as 'NIS2 Article 21 Gap Checker (Ten Cybersecurity Risk-Management Measures)' and specifies it is a compliance mandate checker. It distinguishes from sibling tools like check_nis2_governance_readiness by focusing on the ten specific measures of Article 21.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 its place in a pipeline (consumes from art-141, outputs to art-143) but does not explicitly state when to use this tool over siblings or provide prerequisites. Usage context is implied but not directly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_nis2_governance_readinessNIS2 Governance Readiness Checker (Art. 20 — Management Body Accountability)BRead-onlyIdempotentInspect
NIS2 Governance Readiness Checker (Art. 20 — Management Body Accountability): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-145-nis2-ict-supply-chain-diligence-scorer. Open at: https://ainumbers.co/chaingraph/art-146-nis2-governance-readiness-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds useful behavioral info beyond annotations: transient processing, no data retention, deterministic, compute modes. Consistent with annotations (readOnlyHint, idempotentHint). 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?
Description is moderately concise but includes technical details (Cloudflare Workers, kernel registry) that may not be essential for an AI agent. Could be streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, but description only vaguely mentions 'AP2 artifact with execution_hash'. Does not specify artifact content or structure. Policy_parameters are underspecified ('see manifest') which is incomplete 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 100%, so description adds marginal value. It clarifies compute parameter behavior and references manifest for policy_parameters. Baseline 3 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?
Title and description clearly state the tool checks NIS2 governance readiness under Article 20. It is distinguishable from siblings like 'check_nis2_art21_measures' by scope. However, it does not explicitly define what governance readiness entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. Only an indirect hint via upstream artifact consumption. Lacks when-to-use/not-to-use directions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_nway_balance_closureN-Way Balance Closure CheckBRead-onlyIdempotentInspect
N-Way Balance Closure Check: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-525-nway-balance-closure-check.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| systems | No | |
| triples | No | |
| decision | No | |
| pairwise | No | |
| scope_note | No | |
| break_pairs | No | |
| as_of_values | No | |
| system_count | No | |
| triple_count | No | |
| boundary_note | No | |
| closure_holds | No | |
| measure_label | No | |
| rejected_inputs | No | |
| suspect_systems | No | |
| as_of_consistent | No | |
| declared_disagreements | No | |
| max_abs_residual_minor | No | |
| authoritative_system_id | No | |
| closure_tolerance_minor | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite readOnlyHint/idempotent annotations, the description adds substantial behavior: deterministic execution, server-side Cloudflare Workers vs browser delegation, transient processing with no storage/logging/retention, and AP2 artifact export with execution_hash. This is exactly the kind of behavioral disclosure an agent needs beyond structured 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 compact and mostly information-dense, but it contains redundancy with 'OpenChainGraph compute node' appearing twice and 'Deterministic OpenChainGraph compute node' repeating the category. The important usage warning appears mid-description rather than 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?
Annotations and output schema carry a lot of the safety and return-value burden, and the description covers execution/retention behavior well. However, it never explains what 'N-Way Balance Closure' means, what conditions are evaluated, or what fields policy_parameters should contain (the schema only points to a manifest), leaving a clear domain 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?
The input schema already documents all four parameters with 100% coverage, so baseline is 3; the description adds meaningful compute-mode behavior not in the schema, including gpu:true always delegating to the browser and what compute:'browser' returns. It also supplies a privacy constraint on inputs ('Use synthetic or anonymised inputs only') relevant to policy_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 opens by restating the tool name ('N-Way Balance Closure Check') and categorizing it as an OpenChainGraph compute node, but never states what specific balance condition is checked or what functional outcome is produced. It reads as a label plus execution details rather than a purpose statement, and it does not differentiate from the many other check_* 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?
No guidance is given for when to select this tool over alternatives or what scenarios it addresses. The compute mode discussion ('auto' vs 'browser') explains how execution happens once the tool is chosen, not when the tool is the right choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_official_statement_completenessMunicipal Official Statement Completeness CheckerCRead-onlyIdempotentInspect
Municipal Official Statement Completeness Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-400-check-official-statement-completeness.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. Description adds valuable behavioral details: compute modes (auto, server, browser), transient input processing, no storage/logging, requirement for synthetic/anonymised inputs, and export of AP2 artifact with execution_hash. This exceeds what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description front-loads title and 'OpenChainGraph compute node' but repeats 'Deterministic OpenChainGraph compute node' unnecessarily. Technical details about compute modes and transient processing are relevant but could be more concise. Multiple URLs also add clutter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema is provided, yet description only mentions 'AP2 artifact with execution_hash' without specifying return structure, fields, or how 'completeness' results are conveyed. For a tool with nested objects and no output schema, this leaves significant 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?
Input schema has 100% description coverage for all 4 parameters. Description mentions 'policy_parameters' as input for decision function but defers to the tool's manifest, adding minimal extra meaning. Baseline score of 3 is appropriate as schema already documents parameters 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?
Title says 'Municipal Official Statement Completeness Checker', but description focuses on technical execution (compute modes, transient processing) rather than explaining what 'completeness checking' means. The verb 'check' is implied but not elaborated. Sibling tools like check_cra_annex1_completeness have similar names, so this lacks 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?
No guidance on when to use this tool versus alternatives. The long sibling list includes many similar checkers, but the description never mentions use cases, prerequisites, or exclusions. An agent is left guessing which completeness checker to invoke.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_operator_exit_portabilityOperator Exit & Data PortabilityARead-onlyIdempotentInspect
Operator Exit & Data Portability: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-520-operator-exit-data-portability.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly and idempotent annotations, the description adds significant behavioral disclosure: inputs are processed transiently and never stored, logged, or retained. It also details server-side vs browser-side execution, gpu:true delegation, and the output as an AP2 artifact with execution_hash, providing rich 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 compact and front-loaded, efficiently covering compute modes, data handling, output, and a reference URL. It is slightly long but each sentence contributes essential information about execution behavior and privacy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description adequately covers the output (AP2 artifact, execution_hash), compute behavior, and data-handling constraints. However, the specific check or decision performed is not described, which limits full completeness for an agent trying 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?
Even though the schema covers all parameters, the description adds meaning to the 'compute' parameter by explaining the default behavior and delegation rules. It also clarifies when policy_parameters are computed server-side, giving context not present 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 labels the tool as an OpenChainGraph compute node and discusses execution modes, but does not explicitly state what it checks or verifies regarding operator exit portability. It fails to differentiate itself from many other 'check_' tools in the sibling list, leaving the core purpose somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 choose this tool over alternatives. The description includes an important input constraint ('Use synthetic or anonymised inputs only') and explains internal compute modes, but it does not compare this tool to sibling tools or state its intended use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_private_student_loan_disclosuresPrivate Student Loan Disclosure & Rescission CheckerBRead-onlyIdempotentInspect
Private Student Loan Disclosure & Rescission Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-405-check-private-student-loan-disclosures.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: deterministic execution, transient processing with no storage, browser delegation for gpu:true, and export of AP2 artifact with execution_hash. This clarifies safety and idempotency in line with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is overly verbose, including extraneous details like Cloudflare Workers, GPU flags, and a URL. While the purpose is front-loaded, the length and technical focus reduce clarity 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?
Missing critical information: no output schema or description of the return format beyond an execution_hash. The domain-specific nature of 'private student loan disclosures' is assumed. The agent cannot determine what the tool validates or how to interpret results.
Complex tools with many parameters or behaviors need more documentation. 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 description adds minor detail about chaining fields and compute modes, but largely repeats schema information. With full schema coverage, the description provides only marginal additional 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 title and first sentence clearly state the tool's purpose as a private student loan disclosure and rescission checker. However, the description focuses heavily on computational mechanics rather than business function, and does not differentiate from sibling tools like check_retail_installment_disclosures.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 description mentions using synthetic or anonymized inputs and chaining via parent hashes, but does not provide usage context or exclusion criteria relative to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_producer_license_reciprocityNAIC Producer License Reciprocity CheckBRead-onlyIdempotentInspect
NAIC Producer License Reciprocity Check: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-267-check-producer-license-reciprocity.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful behavioral context beyond annotations: inputs are processed transiently and not stored, logged, or retained; it is deterministic. These details complement the readOnlyHint and idempotentHint annotations. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose and includes many implementation-specific details about compute modes, Cloudflare Workers, and chain provenance that are not essential for tool selection or invocation. It could be much more 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 has 4 parameters (including nested objects) and no output schema, the description should explain what the tool returns. It mentions 'exports an AP2 artifact' but does not describe the actual result of the reciprocity check (e.g., boolean, string). The business logic is overshadowed by compute infrastructure 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 the schema already documents all parameters. The description adds minimal parameter-specific meaning beyond stating 'Use synthetic or anonymised inputs only,' which is more a security guideline than semantic enrichment. 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 states 'NAIC Producer License Reciprocity Check' which clearly identifies the resource and action. However, it quickly diverges into compute mode and chain provenance details, muddling the purpose. It does not distinguish this tool from many similar sibling tools like 'check_agency_eligibility_matrix'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 is given on when to use this tool versus alternatives. The description focuses on compute mode mechanics and chain provenance, but not on the business context or exclusion criteria for using this specific reciprocity check.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_purpose_code_requirementISO 20022 Purpose Code Requirement CheckerARead-onlyIdempotentInspect
ISO 20022 Purpose Code Requirement Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-247-prevalidation-readiness-scorer. Open at: https://ainumbers.co/chaingraph/art-243-purpose-code-requirement-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and idempotentHint=true. The description adds that inputs are processed transiently and not stored, logged, or retained, and that an AP2 artifact with execution_hash is exported. This provides meaningful behavioral context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise at ~100 words but includes some redundancy (e.g., repeating 'compute node' and 'OpenChainGraph'). It front-loads the purpose but could be more 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 tool with 4 parameters and no output schema, the description covers purpose, compute modes, privacy, artifact export, and even an output feed link. It is fairly complete, though it could mention the output structure slightly more explicitly.
Complex tools with many parameters or behaviors need more documentation. 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 repeats some schema info about compute modes and mentions policy_parameters as input, but does not add substantial new meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks ISO 20022 purpose code requirements as a compliance mandate compute node. It specifies the verb 'check' and the resource 'purpose code requirement', distinguishing it from sibling tools like 'check_iso20022_pqc_readiness' which checks readiness rather than requirements.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using synthetic or anonymised inputs only, which is a usage guideline. However, it does not explicitly specify when to use this tool over alternatives or provide when-not scenarios. The compute mode details are more about configuration than usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_qm_points_and_feesQM Points and Fees TestARead-onlyIdempotentInspect
QM Points and Fees Test: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-219-qm-apr-apor-spread. Open at: https://ainumbers.co/chaingraph/art-218-qm-points-and-fees.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds significant value by stating inputs are transient and not stored, and by detailing compute modes. 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 moderately concise but includes technical details and URLs that may be extraneous. It is front-loaded with the name and type, but could be streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 input processing, output artifact, and provenance. However, it does not explain the test logic itself, leaving some ambiguity about what exactly is computed. Adequate given annotations and 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 on compute mode behavior and chaining via parent_hashes/parent_tool_ids, but does not detail the fields within policy_parameters. Adds moderate 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 identifies the tool as a test for QM Points and Fees and specifies it as an OpenChainGraph compute node. It mentions the purpose of computing and exporting an AP2 artifact. However, it does not explicitly differentiate from sibling check tools, though the name and title 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 provides guidance on using synthetic or anonymised inputs and explains compute modes. However, it does not specify when to use this tool versus alternatives, leaving the agent to infer 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.
check_reg_e_remittance_disclosureReg E Remittance Disclosure Consistency CheckBRead-onlyIdempotentInspect
Reg E Remittance Disclosure Consistency Check: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-550-reg-e-remittance-disclosure-check.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds meaningful behavioral details beyond annotations: deterministic execution, transient processing, no storage/logging/retention, server vs browser delegation, and AP2 artifact export with execution_hash. These details align with the readOnlyHint and idempotentHint annotations and help the agent understand side effects and data 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?
The description is moderately concise but has redundancy, repeating 'OpenChainGraph compute node' twice. It is front-loaded with the title and then provides operational details, but every sentence isn't essential. The URL at the end adds some overhead.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 operational and data-handling aspects are covered, the core domain semantics are missing: what the consistency check actually validates, what inputs are expected in policy_parameters, and what the output artifact contains beyond execution_hash. With no output schema, the description should explain the check's result format, but it doesn't.
Complex tools with many parameters or behaviors need more documentation. 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 100% of parameters, so baseline is 3. The description adds value by explaining the compute parameter's modes ('auto' defaults to server, 'browser' forces client-side, gpu:true always delegates), complementing the schema's enum descriptions. It also hints at parent_hashes via artifact export, though it does not detail policy_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 identifies the tool as a 'Reg E Remittance Disclosure Consistency Check' but never explains what the consistency check actually verifies or how it works. It focuses on compute node mechanics rather than domain behavior, making the purpose somewhat vague. It does distinguish this as a 'check' tool, but not clearly from related siblings like compute_remittance_disclosure.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 given on when to use this tool vs alternatives. It provides operational constraints (use synthetic or anonymised inputs only, compute mode choices) but does not state scenarios or prerequisites for using the check. Sibling tools like compute_remittance_disclosure or other disclosure checks are not mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_retail_installment_disclosuresRetail Installment Contract TILA Disclosure CheckerBRead-onlyIdempotentInspect
Retail Installment Contract TILA Disclosure Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-332-build-amortization-schedule, art-324-tvm-npv. Open at: https://ainumbers.co/chaingraph/art-404-check-retail-installment-disclosures.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and destructiveHint=false. The description adds important behavioral details: inputs are transiently processed and not stored, deterministic execution, and exports an AP2 artifact for chain provenance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph with 7 sentences. It is adequately structured but includes some redundancy (e.g., 'Deterministic OpenChainGraph compute node' mentioned twice). Could be more 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?
No output schema exists, and the description does not explain what the tool returns beyond mentioning an AP2 artifact. The name suggests it checks disclosures, but the actual output (e.g., compliance status, errors) is not described. Given the tool's complexity, this is a notable 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 baseline is 3. The description adds context for the compute parameter and notes that policy_parameters refer to the tool's manifest, but does not explain field names or formats. Overall, 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 tool checks TILA disclosures for retail installment contracts, using the verb 'check' and specifying the resource. The name and title are self-explanatory, but it doesn't differentiate from similar sibling tools like check_private_student_loan_disclosures, so it's not 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 provides guidelines on compute modes (auto, browser, server) and advises using synthetic inputs, but lacks guidance on when to prefer this tool over alternatives. Usage context is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_safeguarding_reconciliationCASS 15 Safeguarding Reconciliation CheckBRead-onlyIdempotentInspect
CASS 15 Safeguarding Reconciliation Check: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-499-check-safeguarding-reconciliation.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds key behavioral traits: deterministic execution, transient input processing (no storage/logging), and AP2 artifact export with execution_hash. This provides substantive context for agent trust.
Agents need to know what a tool does to the 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 reasonably structured with the title first, but it includes technical implementation details (Cloudflare Workers, kernel registration) that may not be essential for an agent selecting the tool, 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?
Given the complexity of a compliance mandate tool, the description omits the actual reconciliation logic, expected outcomes beyond artifact export, and how to interpret results. The warning about synthetic inputs is present, but business 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 coverage is 100%, so baseline is 3. The description adds value by explaining compute modes (auto, server, browser) and the gpu:true delegation rule, but does not elaborate on policy_parameters fields, referring to a separate manifest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'CASS 15 Safeguarding Reconciliation Check' and emphasizes its role as a deterministic OpenChainGraph compute node, which distinguishes it from generic tools. However, it does not explicitly differentiate from sibling 'check_*' tools beyond the regulatory reference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 alternatives. While it advises 'Use synthetic or anonymised inputs only,' there is no indication of when not to use it or comparison with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_sb53_frontier_scopeSB 53 Frontier Scope CheckerCRead-onlyIdempotentInspect
SB 53 Frontier Scope Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-316-sb53-frontier-scope-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, but the description adds valuable behavioral context: inputs are processed transiently, not stored/logged/retained, and synthetic/anonymised inputs are required. It also explains compute modes and output artifact (AP2 with execution_hash). This goes beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is repetitive (e.g., 'Deterministic OpenChainGraph compute node' appears twice) and includes verbose technical jargon without adding clarity. It could be more concise and front-load 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 absence of an output schema and the nested 'policy_parameters' object, the description should explain what the tool returns and how to interpret the artifact. It only mentions 'execution_hash' briefly. The core purpose is missing, and the agent lacks full context to understand the tool's role.
Complex tools with many parameters or behaviors need more documentation. 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 thoroughly. The description does not add any new parameter-specific information beyond what is in the schema. It mentions compute modes briefly, but the schema already describes them. 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 title 'SB 53 Frontier Scope Checker' suggests a checking function, but the description does not explicitly state what the tool checks or its specific purpose. It mentions 'compliance_mandate' in parentheses and describes internal compute behavior, leaving the core function ambiguous. A clearer statement of intent would help.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 any of the many sibling tools. It does not specify appropriate scenarios, prerequisites, or exclusions. The agent is left to infer usage from the technical details alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_screening_list_coverageScreening List-Coverage CheckerARead-onlyIdempotentInspect
Screening List-Coverage Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-90-sanctions-screening-fit-diagnostic, art-91-ownership-50pct-aggregator. Output feeds: art-97-sanctions-screening-quality-scorer, cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-92-screening-list-coverage-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description reveals critical behavioral traits: inputs are processed transiently and not stored/logged/retained, execution is deterministic, execution details are exposed via execution_hash for chain provenance, and compute modes affect server vs client execution. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is informative but verbose, containing multiple technical details (e.g., Cloudflare Workers, AP2 artifact, execution_hash, specific artifact IDs). While all information is relevant, it could be streamlined to focus on the most essential decisions for an AI agent. Key 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?
The description explains what the tool does and its chain context, but lacks a clear explanation of what the output artifact contains beyond an execution_hash. Given the lack of an output schema, describing the structure of the AP2 artifact (e.g., coverage result, coverage ratio) would improve completeness. The dependencies are listed but not explained how they affect the 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?
Schema coverage is 100% so baseline is 3. The description adds meaning by explaining the role of parent_hashes and parent_tool_ids in chaining from upstream artifacts, and clarifies that policy_parameters are computed server-side when applicable. This context helps agents understand how parameters interact with the tool's chain behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 OpenChainGraph compute node for compliance_mandate, and succinctly describes the tool's function as a screening list coverage checker. It distinguishes itself from siblings by specifying its role in the chain (consumes specific upstream artifacts, feeds downstream ones) and the deterministic compute mode logic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 the different compute modes ('auto', 'server', 'browser') and when each applies, including the nuance that gpu:true always delegates to browser. It also advises to use synthetic or anonymised inputs only. However, it does not explicitly compare to other screening or chain tools or state when not to use this one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_securitization_risk_retentionSecuritization Risk Retention CheckBRead-onlyIdempotentInspect
Securitization Risk Retention Check: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-447-securitization-risk-retention-check.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable behavioral context: deterministic execution, transient input processing (no storage), and a recommendation to use synthetic/anonymized inputs. 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?
Description is reasonably concise (6 sentences). Every sentence provides information about compute behavior or data handling, though the core purpose is briefly stated upfront.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 good descriptions of mechanics, the description does not explain what the tool actually checks (e.g., risk retention rules), what the output represents, or what policy_parameters expects. The lack of an output schema further limits 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 clear descriptions for all 4 parameters. The description adds minor value, e.g., explaining compute modes further and referencing an external manifest for policy_parameters fields.
Input schemas describe structure but not intent. Descriptions should explain non-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 and title clearly indicate it checks 'securitization risk retention', but the description focuses on compute mechanics (server/browser execution, data handling) rather than explaining what the tool actually does. No differentiation from sibling check tools beyond the 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 guidance on when to use this tool versus alternatives. While it mentions compute modes and data privacy, it does not describe the scenario in which this check is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_sod_matrixSegregation-of-Duties Matrix CheckerARead-onlyIdempotentInspect
Segregation-of-Duties Matrix Checker: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-459-sod-matrix-check.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation set (readOnlyHint=true, idempotentHint=true, destructiveHint=false) already indicates safe, idempotent behavior. The description adds valuable context: it states the node is deterministic, processes inputs transiently without storage or logging, and exports an AP2 artifact with execution_hash. This goes beyond annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that front-loads the primary purpose and then concisely covers compute modes, data handling, and artifact export. It could be slightly more structured (e.g., bullet points) and the URL at the end may be unnecessary, but overall it is efficient and informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute mode behavior and data privacy well, but lacks detail on the output format for a tool with no output schema. While it mentions exporting an AP2 artifact with execution_hash, the agent is left without a clear understanding of the response structure or contents, which is a notable 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?
The input schema documents all four parameters with descriptions, achieving 100% coverage. The tool description echoes compute mode options and mentions 'policy_parameters' but does not add substantive meaning beyond the schema. Given the high schema coverage, the description contributes minimal additional semantic 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 identifies the tool as a 'Segregation-of-Duties Matrix Checker' and an 'OpenChainGraph compute node (compliance_control)', indicating its function. While it conveys the core purpose, it does not provide a succinct verb+resource phrase that would further differentiate it from numerous sibling tools with similar 'check_' prefixes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes ('auto', 'server', 'browser') and advises using synthetic or anonymised inputs due to transient processing. However, it offers no explicit guidance on when to use this tool over alternative sibling tools (e.g., check_agency_eligibility_matrix), relying solely on the name for differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_ssi_conformanceSSI Conformance CheckerARead-onlyIdempotentInspect
SSI Conformance Checker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-77-t1-settlement-readiness-diagnostic. Output feeds: art-79-settlement-fail-predictor, art-84-settlement-efficiency-kpi. Open at: https://ainumbers.co/chaingraph/art-80-ssi-conformance-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds valuable context beyond annotations: inputs are 'processed transiently' and 'not stored, logged, or retained', and it advises using 'synthetic or anonymised inputs only'. It also explains compute mode behavior (server-side vs. browser delegation). This provides meaningful behavioral 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 comprehensive but somewhat lengthy, containing multiple sentences covering purpose, compute modes, data handling, and provenance. It is well-structured and front-loaded with key information, though a slight trim could improve conciseness. Overall, it earns its length 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 no output schema, the description covers all critical aspects: purpose, compute modes, data handling policy (transient storage, input anonymization), provenance links (upstream/downstream artifacts), and a URL for the tool. For a read-only deterministic tool with 4 parameters, this provides complete contextual information 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% (all parameters described in the schema). The description adds some extra context for 'policy_parameters' (server-side computation notes) and 'compute' mode explanation, but this is marginal beyond the schema. Baseline 3 is appropriate; description adds limited value over 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 identifies the tool as an 'SSI Conformance Checker' and an 'OpenChainGraph compute node', specifying its function to check SSI conformance. It provides specific details about compute modes and provenance, distinguishing it from sibling tools by its unique focus on SSI conformance checking within a chain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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, nor does it provide when-not-to-use guidance. However, the purpose is clear enough that an agent might infer usage context, and the description mentions upstream/downstream artifacts, implying a specific workflow placement. This is adequate but lacks explicit exclusions or comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_tokenized_collateral_eligibilityTokenized Collateral Eligibility CheckerARead-onlyIdempotentInspect
Tokenized Collateral Eligibility Checker: OpenChainGraph compute node (collateral_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: 506-onchain-cash-leg-finality-checker, 513-margin-call-collateral-mobilizer, 514-tokenized-fund-collateral-validator. Open at: https://ainumbers.co/tools/505-tokenized-collateral-eligibility-checker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| hqla_tier | No | |
| dtc_status | No | |
| mandate_type | No | |
| adjusted_value | No | |
| compliance_flags | No | |
| final_haircut_pct | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, non-destructive. The description adds crucial context: inputs are processed transiently, not stored/logged/retained, and it exports an AP2 artifact for chain provenance. This goes beyond what annotations provide and reveals the tool's deterministic and stateless 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 well-structured with purpose first, then technical details. All sentences are informative, though it could be slightly more concise by reducing repetition about compute modes and delegation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, return values are covered. The description explains compute execution, anonymity requirement, provenance, and output feeds. It also provides a URL for more info. A minor gap: no mention of error conditions or performance characteristics.
Complex tools with many parameters or behaviors need more documentation. 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 little extra meaning: it repeats compute mode behavior and for policy_parameters, it only references 'the tool's manifest' without listing fields. No substantive enrichment 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 checks tokenized collateral eligibility and is an OpenChainGraph compute node. It mentions the specific mandate and output feeds, which help distinguish it from siblings, but does not explicitly differentiate from similar tools like 'validate_collateral_swap_eligibility'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using synthetic inputs and explains compute modes (auto, server, browser) and their behaviors. However, it lacks explicit instructions on when to prefer this tool over 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.
choose_cc_licenseCreative Commons License ChooserARead-onlyIdempotentInspect
Creative Commons License Chooser: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-195-creative-commons-license-chooser.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), the description adds key behavioral details: inputs are transient and not stored/logged/retained, deterministic execution, and export of AP2 artifact with execution_hash. This provides valuable transparency beyond the structured fields.
Agents need to know what a tool does to the 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 reasonably concise for the amount of information conveyed, starting with the purpose and then covering compute modes, data handling, and output. However, it is a dense single paragraph and could benefit from lighter structuring (e.g., bullet points).
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, compute modes, data handling, artifact export), the description covers most critical aspects: compute behavior, input sensitivity, and output provenance. It lacks a detailed explanation of the AP2 artifact structure, but the URL provides a fallback.
Complex tools with many parameters or behaviors need more documentation. 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 the baseline is 3. The description adds little beyond the schema—it only indirectly addresses the 'compute' parameter. No additional parameter elaboration 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 title 'Creative Commons License Chooser' combined with the description stating it is a Creative Commons license chooser and OpenChainGraph compute node makes the purpose clear. It distinguishes itself from siblings through its specific license-selection function, though it doesn't explicitly contrast with alternative 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 explains the compute modes (auto, server, browser) and when to use synthetic/anonymised inputs, providing some usage context. However, it lacks explicit guidance on when not to use this tool or how it compares to other license-related tools among the siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_agentic_ai_riskAgentic AI Risk & GPAI Governance ClassifierARead-onlyIdempotentInspect
Agentic AI Risk & GPAI Governance Classifier: OpenChainGraph compute node (model_governance). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-64-ai-act-highrisk-fit-diagnostic. Output feeds: art-04-agent-identity-attestation-checker, art-33-mcp-server-self-attestation-pack, art-62-ap2-payment-receipt-verifier. Open at: https://ainumbers.co/chaingraph/art-67-agentic-ai-risk-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds valuable behavioral context beyond annotations: inputs are processed transiently and not stored/logged/retained, the node is deterministic, and it exports an AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is front-loaded with identity and key details. While it contains several technical sentences, each adds value. Could be slightly more streamlined, but overall 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 no output schema, description explains the output as an AP2 artifact with execution_hash and mentions upstream/downstream artifacts. It covers compute behavior and chaining context well, but lacks detailed output 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%, baseline 3. Description adds contextual meaning by explaining the role of parent_hashes and parent_tool_ids in chaining, clarifying compute modes, and describing policy_parameters as input for the decision function.
Input schemas describe structure but not intent. Descriptions should explain 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 as an 'Agentic AI Risk & GPAI Governance Classifier' and identifies it as an OpenChainGraph compute node for model_governance. It distinguishes from siblings by specifying its role in a chain and linking to upstream and downstream artifacts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explicit guidance on compute modes ('auto', 'server', 'browser') and recommends using synthetic or anonymized inputs. However, it does not explicitly compare this tool to siblings or state when to prefer it over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_ai_system_governanceAI System Governance ClassifierBRead-onlyIdempotentInspect
AI System Governance Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-172-ai-risk-impact-assessment-validator. Open at: https://ainumbers.co/chaingraph/art-173-ai-system-governance-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses deterministic behavior, compute modes (auto/server/browser), transient data processing, lack of data retention, and chaining via AP2 artifacts. This goes beyond the annotations which already indicate read-only and idempotent hints, providing useful 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 reasonably concise (6 sentences) and well-structured, starting with a title then detailing compute behavior and data handling. However, it could be more streamlined by removing redundant phrases like 'Deterministic OpenChainGraph compute node'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Does not describe the tool's return value or classification output, which is critical for an AI agent to use the tool effectively. The policy_parameters object is incompletely defined. Given the complexity (4 params, nested objects, no output schema), the description lacks essential details about the response 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?
The schema already covers all parameters with descriptions (100% coverage). The description adds minimal new information about parameters, only briefly mentioning compute mode and referring to a manifest for policy_parameters. It 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?
Clearly identifies as an AI System Governance Classifier within a chain, specifying it is a deterministic compute node that processes inputs transiently. However, it does not explain what classification output it produces, and the description is somewhat technical without a high-level summary of its core 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 explicit guidance on when to use this tool versus other classifiers in the sibling list. It mentions consuming upstream artifacts and using synthetic inputs, but lacks context for decision-making among alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_annex3_decisioning_obligationsEU AI Act Annex III FS Decisioning Obligations ClassifierARead-onlyIdempotentInspect
EU AI Act Annex III FS Decisioning Obligations Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-64-ai-act-highrisk-fit-diagnostic. Open at: https://ainumbers.co/chaingraph/art-238-classify-annex3-decisioning-obligations.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds substantial behavioral context: deterministic compute, transient input processing, compute mode behavior (auto/server/browser), and export of AP2 artifact. 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?
Six sentences, each adding value. Purpose is front-loaded. No redundancy. Efficiently covers compute modes, privacy, export, and dependencies.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 with full schema coverage, no output schema, and annotations present, the description adequately covers input behavior, compute modes, privacy guarantees, and artifact export. Upstream artifact is named, fulfilling chain 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 already documented. The description adds context for the 'compute' parameter (default behavior) and 'policy_parameters' (decision function), but this is marginal 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 title and first sentence clearly state the tool's purpose: classifying EU AI Act Annex III decisioning obligations for financial services as an OpenChainGraph compute node. This is specific and distinguishes it from siblings like classify_ai_system_governance or run_ai_act_highrisk_fit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 it consumes upstream artifacts from a specific diagnostic and provides a link for more details, implying usage in a chain. However, it does not explicitly state when not to use this tool or compare it to alternatives, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_avax_permissioning_controlsEvergreen Permissioning-Control ClassifierBRead-onlyIdempotentInspect
Evergreen Permissioning-Control Classifier: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-495-avax-permissioning-control-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description significantly expands on the annotations by disclosing determinism, transient input processing (not stored, logged, or retained), server-side vs. browser execution modes, GPU-specific delegation behavior, and the export of an AP2 artifact with execution_hash. These details go well beyond the readOnlyHint/idempotentHint annotations and help an agent understand runtime behavior 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 reasonably concise and front-loaded, but it repeats 'OpenChainGraph compute node' in the first two sentences. Each sentence contributes useful behavioral or privacy information, and the URL at the end is a minor addition. Slightly more precise phrasing would make it tighter, but it is not bloated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 operating mechanics are well covered: compute modes, privacy, determinism, and artifact output. However, the core classification semantics are missing—what inputs are expected beyond the generic policy_parameters, what the output categories are, and what 'permissioning controls' means in this context. Without an output schema, the description should compensate by explaining the result format, but it does not.
Complex tools with many parameters or behaviors need more documentation. 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 100% coverage with descriptions for all parameters. The tool description adds extra value by explaining the compute parameter's modes in detail (auto/server/browser and GPU interaction), which is not fully captured in the schema enum. It also clarifies the transient nature of policy_parameters. Parent-hash parameters are left to the schema, but that is acceptable given 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?
The description identifies the tool as a deterministic OpenChainGraph compute node that classifies AVAX permissioning controls, but it never specifies what the classification produces or what specific 'permissioning controls' are. It repeats the title's 'Classifier' label without adding concrete functional detail, and it does not differentiate itself from the many other classify_* 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?
No guidance is given on when to use this tool versus alternative classifiers. The only usage instruction is to use synthetic or anonymised inputs, which is a privacy constraint, not a tool-selection guideline. The description fails to mention any exclusions, prerequisites, or preferred scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_blockchain_quantum_riskBlockchain / Stablecoin Quantum-Risk ClassifierARead-onlyIdempotentInspect
Blockchain / Stablecoin Quantum-Risk Classifier: OpenChainGraph compute node (model_governance). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-85-pqc-timeline-fit-diagnostic, 499-crypto-asset-inventory-classifier. Output feeds: cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-89-blockchain-quantum-risk-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description extensively reveals behavioral traits: deterministic processing, compute mode behavior, GPU delegation, transient data handling with no storage/logging, artifact export with execution_hash, and artifact chain provenance. This substantially exceeds the annotations and provides high 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 lengthy and includes verbose technical details, but it is well-structured: starts with purpose, then compute modes, data handling, and artifact links. It could be more concise without losing 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's complexity (4 parameters, nested object, no output schema), the description covers input semantics, compute modes, data treatment, and artifact chain. It lacks explicit output format description but references the artifact and downstream feed. Overall fairly 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% description coverage, so the baseline is 3. The description adds meaningful context beyond schema: explains compute modes, clarifies parent_hashes as execution_hash from upstream artifacts, and indicates when policy_parameters are computed server-side.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as a 'Blockchain / Stablecoin Quantum-Risk Classifier' and an 'OpenChainGraph compute node', clearly stating its purpose. It distinguishes from sibling tools by domain. However, the purpose is mixed with implementation details, 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?
The description provides usage context such as using synthetic/anonymised inputs and transient processing, and mentions compute mode options. It does not explicitly contrast with alternative tools or state when not to use, giving moderate guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_bold_challenge_finalityBoLD Challenge-Window Finality ClassifierBRead-onlyIdempotentInspect
BoLD Challenge-Window Finality Classifier: OpenChainGraph compute node (settlement_finality_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-59-settlement-asset-finality-classifier. Open at: https://ainumbers.co/chaingraph/art-321-rhc-bold-finality-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnly, idempotent, non-destructive. The description adds value by explaining transient processing (no storage/log/retention), compute delegation modes, and a constraint to use synthetic/anonymized inputs. This provides helpful behavioral context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured: purpose first, then compute modes, data handling, constraints, and a URL. It is somewhat verbose, especially with the artifact and URL details, but each sentence serves a purpose. Front-loads the 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?
No output schema exists, yet the description fails to specify the classification result (type, possible values, structure). It mentions exporting an AP2 artifact but doesn't clarify what the tool actually returns to the agent. This is a significant gap for a classifier 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 schema already documents all parameters. The description explains the default compute mode and the policy_parameters reference, but adds minimal new 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?
The title and first sentence indicate it's a classifier for BoLD challenge-window finality, but the description never states what the classification output is (labels, scores, etc.). It focuses more on compute modes and processing details than the core purpose. The description is vague about the actual classification 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 sibling classifiers like classify_settlement_asset_finality or classify_settlement_finality. The description mentions it consumes upstream artifacts but provides no selection criteria or context for choosing this tool over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_carf_reportableCARF / DAC8 Reportable User ClassifierBRead-onlyIdempotentInspect
CARF / DAC8 Reportable User Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-505-dispose-carf-status-message. Open at: https://ainumbers.co/chaingraph/art-504-classify-carf-reportable.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly=true, idempotent=true, destructive=false), the description discloses significant behaviors: inputs are 'processed transiently' and 'not stored, logged, or retained', server-side vs. browser delegation rules (including gpu:true behavior), and that it 'Exports an AP2 artifact with execution_hash for chain provenance'. This adds valuable context about data handling and execution environment that annotations alone do not cover.
Agents need to know what a tool does to the 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 long (over 150 words) and contains redundancy: 'OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node.' repeats the same concept. While the compute-mode sections are informative, the structure spends excessive words on infrastructure details and includes a URL, leaving the core classification summary buried. It is not poorly written, but it could be tightened significantly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema and a nested policy_parameters object, the description does explain compute modes, transient processing, and artifact export, which gives an agent enough to invoke the tool safely. However, it does not describe the actual classification result (e.g., whether it returns a boolean, status string, or report object), nor the structure of policy_parameters (deferring to 'the tool's manifest'). This is a noticeable gap given the absence of an 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 description coverage is 100%, so the schema already documents each parameter. The description does not add new meaning about parent_hashes, parent_tool_ids, or policy_parameters beyond what the schema says; it repeats the compute mode explanation already present in the schema. No parameter-level enrichment is provided, making the description redundant for 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 tool is clearly identified as a 'CARF / DAC8 Reportable User Classifier' and an 'OpenChainGraph compute node (compliance_mandate)', which establishes its role as a compliance classifier. However, it never explicitly states what constitutes 'reportable' or what the classification output represents, so the core decision logic is opaque. The name and title distinguish it from sibling classify_* tools, but the description focuses more on compute mechanics than on the classification 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 gives detailed guidance on compute modes (auto vs. browser vs. server) and instructs to 'Use synthetic or anonymised inputs only'. It also discloses the downstream consumer ('art-505-dispose-carf-status-message'). However, there is no mention of when to use this tool versus alternative classification tools, nor any exclusions or prerequisites beyond the synthetic input constraint. The guidance is about internal parameter choices, not tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_digital_asset_regulatoryDigital Asset Regulatory ClassifierARead-onlyIdempotentInspect
Digital Asset Regulatory Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: 512-tokenized-security-lifecycle-validator. Open at: https://ainumbers.co/tools/510-digital-asset-regulatory-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| compliance_flags | No | |
| classification_results | No | |
| iso20022_party_identification | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds critical context: inputs are processed transiently and not stored, logged, or retained; GPU-related behavioral differences; and browser delegation. This informs the agent about side effects and execution environment. However, it does not mention authentication, rate limits, 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?
The description is a single paragraph that front-loads the tool name and type. It is dense but not overly long, with each sentence adding information. The inclusion of a URL at the end slightly detracts from conciseness, but overall it is well-structured and informative without being 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 that an output schema exists (not shown), the description does not need to detail return values. It mentions the output feed ('512-tokenized-security-lifecycle-validator') and export of an AP2 artifact. It also provides a reference link for more details. The description adequately covers the tool's behavior and context, though it could explicitly state the classification output 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 100%, so the schema already documents all 4 parameters. The description adds value by explaining the compute parameter's behavior in detail (e.g., 'auto vs server vs browser') and noting that 'policy_parameters' fields are defined in the tool's manifest. This provides context beyond the schema, but the schema already carries the main burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'Digital Asset Regulatory Classifier' and explains it is an 'OpenChainGraph compute node (compliance_mandate)' that processes inputs transiently and exports an AP2 artifact. The purpose is specific, but it does not explicitly differentiate this classifier from numerous sibling classifiers (e.g., classify_agentic_ai_risk, classify_dora_incident) that share similar patterns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 detailed guidance on compute modes ('auto', 'server', 'browser') and when they apply (e.g., gpu:true nodes always delegate to browser). It instructs to use synthetic or anonymised inputs. However, it does not compare this tool to alternatives or state 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.
classify_dora_ict_incident_and_clock_deadlinesDORA ICT Incident Classifier & Reporting ClockBRead-onlyIdempotentInspect
DORA ICT Incident Classifier & Reporting Clock: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-467-dora-incident-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds critical behavioral context beyond annotations: deterministic processing, transient input handling (no storage), and a mandate to use synthetic inputs. It aligns with readOnlyHint and idempotentHint while specifying execution location (server vs browser delegation).
Agents need to know what a tool does to the 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 reasonably compact but contains repetition ('Deterministic OpenChainGraph compute node' appears twice) and could be streamlined. The most critical information (core purpose) is not 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 lacks a clear explanation of the classification logic, expected input format for 'policy_parameters', and what the output artifact represents. Given no output schema, the agent is left without essential context for a decision-making 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?
With 100% schema coverage, the description adds value by elaborating on the 'compute' parameter's behavior in various scenarios (auto, server, browser, gpu:true) and clarifying that 'policy_parameters' are computed server-side when 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 title clearly indicates classification of DORA ICT incidents and reporting deadlines, but the description does not explicitly state this core function. Instead, it focuses on technical compute node details, leaving ambiguity about what the tool actually does, especially alongside sibling 'classify_dora_incident'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 'classify_dora_incident'. The description explains compute modes but does not help the agent choose between similar classifiers.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_dora_incidentDORA Major-Incident Reporting Threshold ClassifierARead-onlyIdempotentInspect
DORA Major-Incident Reporting Threshold Classifier: OpenChainGraph compute node (infrastructure_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-29-dora-readiness-diagnostic. Output feeds: pnr-01-dora-ict-cascade-simulator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-09-dora-incident-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| entity_type | No | |
| cross_border | No | |
| incident_type | No | |
| major_incident | No | |
| reporting_clock | No | |
| third_party_ict | No | |
| determination_code | No | |
| qualifying_criteria | No | |
| regulatory_framework | No | |
| competent_authority_note | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the readOnly/idempotent/destructive annotations by disclosing deterministic execution, Cloudflare Workers server-side processing, browser delegation behavior, transient input processing with no storage/logging/retention, and AP2 artifact export with execution_hash. These details provide substantial transparency about how the tool behaves and handles 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?
The description is dense but information-rich, covering compute modes, privacy, chain provenance, upstream/downstream dependencies, and a link in a single paragraph. It is slightly repetitive in the opening phrase ('OpenChainGraph compute node' appears twice) but overall is appropriately sized for the tool's complexity and front-loads the tool's identity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 strong on infrastructure, privacy, and pipeline context, and the presence of an output schema reduces the need to document return values. However, it never explains the actual DORA classification logic or the required structure of policy_parameters, instead pointing to a manifest that the agent may not have access to. This leaves a meaningful gap for correct invocation in the intended 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?
The input schema already provides descriptions for all four parameters, giving a baseline of 3. The description adds useful nuance for the compute parameter (server vs browser execution, gpu:true delegation), but the critical policy_parameters object remains opaque—both the schema and description defer to an external manifest instead of listing actual field names. No additional semantic clarity is provided for the tool's primary classification input.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens by restating the title and then describes the tool as a deterministic OpenChainGraph compute node, but it never explicitly states what classification action it performs or what qualifies as a DORA major-incident reporting threshold. The core purpose is implied by the name and the upstream/downstream artifact references, making the description vague on the actual decision logic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 pipeline context: it consumes upstream artifacts from art-29-dora-readiness-diagnostic and feeds pnr-01-dora-ict-cascade-simulator and ptg-01-ap2-prompt-template-generator, which indicates when in a chain it should be used. It also imposes a critical usage constraint ('Use synthetic or anonymised inputs only') and explains compute-mode selection, though it does not explicitly name alternative tools or when-not-to-use conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_eccn_dual_useECCN / Dual-Use ClassifierARead-onlyIdempotentInspect
ECCN / Dual-Use Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-90-sanctions-screening-fit-diagnostic. Output feeds: art-95-circumvention-diligence-assessor, cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-94-eccn-dual-use-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond annotations by stating the tool is deterministic, explains compute modes (auto/server/browser), transient data processing ('not stored, logged, or retained'), mandates synthetic/anonymized inputs, and details chain provenance with execution_hash. This rich behavioral context fully aligns with annotations (readOnlyHint, idempotentHint) without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but each sentence adds value: identity, determinism, compute modes, data handling, chain provenance, and links. It could be restructured for clarity (e.g., bullet points) but remains efficient and front-loaded with 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?
The description covers compute modes, data privacy, and chain connections, but lacks specifics on the output AP2 artifact (beyond execution_hash) and the classification result (e.g., what ECCN code is returned). Given no output schema, more detail on the return value 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?
Schema coverage is 100% with descriptions for each parameter. The description adds context for the 'compute' parameter (elaborating auto/server/browser modes) but does not enhance understanding of other parameters (e.g., policy_parameters only refers to a manifest). Overall, the description reinforces schema info without substantial added 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 title 'ECCN / Dual-Use Classifier' and description clearly state the tool classifies ECCN/dual-use items via an OpenChainGraph compute node. It mentions upstream and downstream artifacts, hinting at its role in a pipeline. However, it does not explicitly distinguish this tool from sibling classifiers like 'classify_ai_system_governance'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 details compute modes and data handling but provides no explicit guidance on when to use this tool versus other classifiers. It does not state prerequisites, when-not-to-use, or alternatives. The context of consuming from art-90 and outputting to art-95 implies a specific use case, but this is implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_emir3_active_account_statusEMIR 3.0 Active Account Representativeness ClassifierCRead-onlyIdempotentInspect
EMIR 3.0 Active Account Representativeness Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-576-emir3-active-account-representativeness-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond the annotations: deterministic execution, compute modes (auto/server/browser), browser delegation for gpu:true, transient processing without storage, and artifact export with execution_hash. These details are not present in the annotations and are valuable for an agent assessing side effects and execution 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 lengthy and packed with infrastructure details, but it is structurally disjointed and omits the core purpose. Sentences each carry information, but the lack of a clear 'what it does' statement makes it less concise than it could be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 classifier with no output schema, the description does not explain what the classification output looks like or the meaning of 'representativeness'. It thoroughly covers compute and privacy aspects but leaves the classification domain semantics vague, limiting completeness for an agent deciding whether 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?
Input schema descriptions cover 100% of the parameters, providing clear explanations of 'compute' and 'policy_parameters'. The description itself adds no additional parameter-level semantics, but with such high schema coverage, it does not need 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 identifies the tool as an OpenChainGraph compute node but never explains what 'active account representativeness' classification actually does. It focuses on compute modes and privacy rather than the classification objective, and does not distinguish it from sibling classifiers like classify_emir3_simm_approval_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 provides no guidance on when to use this tool versus alternatives. It mentions internal compute options and 'use synthetic or anonymised inputs only' but does not state selection criteria, exclusions, or how it fits among the many other EMIR classifier tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_emir3_simm_approval_scopeEMIR 3 SIMM Approval-Scope ClassifierCRead-onlyIdempotentInspect
EMIR 3 SIMM Approval-Scope Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-581-emir3-simm-approval-scope-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds meaningful transparency beyond annotations: inputs are processed transiently and not stored/logged/retained, synthetic/anonymised inputs are required, and an AP2 artifact with execution_hash is exported for provenance. It also explains compute delegation behavior for gpu:false vs gpu:true nodes, which is useful execution context and does not contradict the read-only/idempotent 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 reasonably concise with distinct sentences covering execution, privacy, and artifact export, but it repeats 'OpenChainGraph compute node' twice, which could be tightened. Overall it is skimmable and 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?
For a classifier with no output schema, the description fails to explain what the tool actually returns—whether it is a classification label, an artifact link, or a browser delegation URL. It does not clarify the response structure or the approval-scope categories, leaving the agent uncertain about the tool's concrete output. Policy parameters are also opaque, deferred to an external manifest.
Complex tools with many parameters or behaviors need more documentation. 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 four parameters. The description reiterates compute mode behavior already present in the schema and defers policy_parameters to an external manifest, adding no new parameter-level 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 labels the tool as an 'EMIR 3 SIMM Approval-Scope Classifier' but never explains what 'approval-scope' means or what classification it produces. It repeatedly describes the execution model (OpenChainGraph compute node, deterministic) rather than the actual classification function, making it indistinguishable from other classify_* 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?
No guidance is provided on when to use this tool versus alternatives like classify_emir3_active_account_status or other EMIR classifiers. The only usage instruction is 'Use synthetic or anonymised inputs only,' which is a data constraint, not a use-case guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_eudr_commodity_scopeEUDR Commodity Scope ClassifierBRead-onlyIdempotentInspect
EUDR Commodity Scope Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-166-eudr-geolocation-plot-validator. Open at: https://ainumbers.co/chaingraph/art-167-eudr-commodity-scope-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description reveals transient processing, no storage/logging, and compute mode behaviors (auto, server, browser). It supplements annotations (readOnlyHint, idempotentHint, destructiveHint) with important details about determinism and client-side execution. The warning to use synthetic/anonymised inputs adds 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?
The description is fairly concise (~100 words) but includes an unnecessary URL at the end. The most critical info (purpose, compute modes, transient nature) is front-loaded. Could be tighter by removing the URL and optional 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?
No output schema exists, yet the description only mentions exporting an AP2 artifact with execution_hash. It does not describe the classification result format, confidence, or other output fields an agent would need to interpret the tool's response.
Complex tools with many parameters or behaviors need more documentation. 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% description coverage, so baseline is 3. The description does not add per-parameter meaning beyond the schema; it only provides an overview. No additional semantic 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's a classifier for EUDR commodity scope and an OpenChainGraph compute node. The title reinforces this. However, it doesn't explicitly distinguish when to use this vs other classification siblings, relying on the EUDR-specific context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 vs alternatives like classify_agentic_ai_risk or other classifiers. It describes compute modes and transient processing but not selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_ifrs17_measurement_modelIFRS 17 Measurement Model ClassifierARead-onlyIdempotentInspect
IFRS 17 Measurement Model Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-178-ifrs17-csm-rollforward-validator. Open at: https://ainumbers.co/chaingraph/art-177-ifrs17-measurement-model-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds critical behavioral details: inputs are processed transiently and not stored, synthetic/anonymised inputs are required, the tool exports an AP2 artifact with execution_hash for chain provenance, and the output feeds into another validator. This provides 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 a single paragraph of moderate length, front-loaded with the tool's identity and followed by compute modes, data handling, and output. It is efficient but could benefit from bullet points for readability, though no information is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, data transient processing, output artifact, and downstream feed. However, it lacks explicit details on the classification logic or expected fields in 'policy_parameters', deferring to the manifest. Given no output schema, this is a minor gap, but overall it provides sufficient context for an agent 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?
With 100% schema description coverage, the description still adds value by explaining the context of 'compute' modes, the purpose of 'parent_hashes' (execution_hash from upstream artifacts), and the role of 'policy_parameters' as input for the decision function. It clarifies the server-side vs browser execution logic 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 identifies the tool as an 'IFRS 17 Measurement Model Classifier' and an 'OpenChainGraph compute node (compliance_mandate)', using a specific verb ('Classifier') and resource ('Measurement Model'). It is easily distinguished from sibling tools like 'classify_agentic_ai_risk' or 'classify_ai_system_governance'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 the different compute modes ('auto', 'server', 'browser') and their behavior for gpu:false and gpu:true nodes, providing clear context on when to use each. However, it does not explicitly state when not to use this tool or suggest alternatives, though the sibling tools cover different domains.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_ledger_consensus_finalityLedger Consensus Finality ClassifierBRead-onlyIdempotentInspect
Ledger Consensus Finality Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-527-classify-ledger-consensus-finality.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already flag read-only, idempotent, non-destructive. The description further discloses determinism, server-side Cloudflare Workers execution vs browser delegation, transient processing with no retention, and the export of an AP2 artifact with execution_hash. This is rich behavioral context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but not bloated; it includes necessary compute binding details, data handling, and the artifact URL. However, the opening repeats the title and the URL is an extra touch. It is well-structured and front-loaded, but a few sentences could be trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute mechanics and data handling thoroughly but omits the core domain semantics: what 'ledger consensus finality' classification means, what inputs are required for the decision function, and what the response/artifact contains beyond an execution_hash. Since there is no output schema, the description should explain the return value, which it does not. This makes it incomplete for an agent to confidently invoke.
Complex tools with many parameters or behaviors need more documentation. 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 covers all 4 parameters with 100% description coverage. The description adds meaning to the compute parameter by explaining defaults and delegation behavior, which clarifies the enum beyond the schema. Other parameters (parent_hashes, parent_tool_ids, policy_parameters) are only described in the schema, but the additional compute context justifies 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 restates the title ('Ledger Consensus Finality Classifier') and adds implementation details ('OpenChainGraph compute node') but never defines what classification is performed, what inputs are expected, or how it differs from similar classify_settlement_finality/classify_bold_challenge_finality tools. The actual domain behavior is left to inference from the 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 select this tool over alternatives. The only usage direction is the compute mode behavior (auto vs browser) and the caution to use synthetic or anonymised inputs, which addresses how to run it, not when to choose it among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_nis2_entityNIS2 Entity Scope Classifier (Essential / Important / Out-of-Scope)ARead-onlyIdempotentInspect
NIS2 Entity Scope Classifier (Essential / Important / Out-of-Scope): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-142-nis2-art21-gap-checker. Open at: https://ainumbers.co/chaingraph/art-141-nis2-entity-scope-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds valuable context: inputs are transiently processed and not stored, compute delegation logic, and output artifact details. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose (120+ words) and contains technical jargon that may hinder quick comprehension. While each sentence adds information, it could be more streamlined for rapid 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?
For a tool with 4 parameters, nested objects, and no output schema, the description covers compute modes, data handling, and chaining output. However, it lacks details about the classification criteria or the structure of the AP2 artifact result, leaving some ambiguity about what the agent receives.
Complex tools with many parameters or behaviors need more documentation. 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 adequately documents all parameters. The description adds minor extra context (e.g., 'See the tool's manifest for field names') but does not significantly improve 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 title and description clearly state the tool's function: classifying NIS2 entities as Essential, Important, or Out-of-Scope. It distinguishes itself from siblings like classify_nis2_art21_measures by specifying it's an OpenChainGraph compute node and referencing specific chaining outputs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and advises using synthetic/anonymised inputs, but does not explicitly compare to alternative tools or state when not to use this tool. Usage context is implied but not exclusionary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_qm_apr_apor_spreadQM APR-APOR Spread ClassifierBRead-onlyIdempotentInspect
QM APR-APOR Spread Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-218-qm-points-and-fees. Open at: https://ainumbers.co/chaingraph/art-219-qm-apr-apor-spread.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds value by specifying deterministic behavior, transient processing with no storage/logging, a requirement for synthetic or anonymised inputs, and export of an AP2 artifact with execution_hash. These details go beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but contains redundancy (e.g., 'Deterministic OpenChainGraph compute node' stated twice) and includes a URL that might be more appropriately placed in an external link field. While front-loaded with the name and a brief description, it could be shortened without losing 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?
The description lacks clarity on what the tool outputs (e.g., the classification result) despite mentioning the exported artifact. There is no output schema, so the description should compensate, but it only states 'Exports an AP2 artifact with execution_hash for chain provenance.' The typical use case and expected output format are missing.
Complex tools with many parameters or behaviors need more documentation. 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 description does not add meaning beyond the schema for individual parameters; it mentions 'compute' mode behavior and 'policy_parameters' as decision function inputs, but these are already described in the schema. The description provides no additional semantic 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 identifies the tool as a 'QM APR-APOR Spread Classifier' and mentions it is a deterministic compute node with a compliance mandate. However, it does not explicitly state that the tool classifies the spread between APR and APOR, relying on the name and indirect references. The verb is implied rather than stated, and the focus on infrastructure somewhat obscures the functional 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 notes that the tool 'Consumes upstream artifacts from: art-218-qm-points-and-fees,' implying a chain of tools but not explicitly stating when to use this tool versus alternatives. There is no guidance on prerequisites, context, or exclusions. The usage context is implicit and could be clearer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_safeguarding_methodCASS 15 Safeguarding Method ClassifierBRead-onlyIdempotentInspect
CASS 15 Safeguarding Method Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-500-classify-safeguarding-method.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds useful behavioral details beyond annotations: transient processing, no storage/logging, deterministic nature, export of AP2 artifact with execution_hash, and compute mode behavior. Consistent with idempotent and read-only 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 a single paragraph with essential information front-loaded. It is somewhat dense but not overly long; minor improvement could separate core function from implementation 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?
Lacks output schema, so the description should detail the AP2 artifact structure and what the agent receives. It assumes domain knowledge of OpenChainGraph and ChainGraph, which may be insufficient for some agents.
Complex tools with many parameters or behaviors need more documentation. 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 reinforces parameter purpose, especially for compute mode and policy_parameters. However, it does not add significant new meaning beyond existing 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 title and description clearly identify the tool as a classifier for a CASS 15 safeguarding method using an OpenChainGraph compute node. The core function is stated, but it could be more direct about what input is classified.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compared to sibling classifiers. The only usage-related advice is to use synthetic or anonymised inputs, but no when-to-use or when-not-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_sco60_exposureSCO60 Crypto-Asset Exposure ClassifierBRead-onlyIdempotentInspect
SCO60 Crypto-Asset Exposure Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-281-sco60-crypto-asset-exposure-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it states the tool is deterministic, processes inputs transiently without retention, and advises using synthetic inputs. It also explains compute mode behaviors and output artifact type. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat verbose with redundant phrases (e.g., 'OpenChainGraph compute node' appears twice) and could be more structured. It front-loads the name but then mixes technical details without clear separation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, data handling, chaining, and output artifact, but lacks details on the classification output (e.g., categories or values). For a classifier, this is a notable gap, though the tool's complexity and annotations partially 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?
Despite 100% schema coverage, the description enriches parameter understanding by explaining compute mode conditions, chaining with parent_hashes, and the role of policy_parameters as input to the decision function. This goes beyond the schema's property 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 identifies the tool as an 'SCO60 Crypto-Asset Exposure Classifier' and specifies it is a compute node. However, it does not differentiate from other 'classify' tools in the sibling list, and the core classification function is somewhat obscured by technical implementation 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?
No guidance is provided on when to use this tool versus alternatives. The description focuses on compute modes and data handling, but does not mention use cases or prerequisites for invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_settlement_asset_finalitySettlement-Asset & Legal-Finality ClassifierARead-onlyIdempotentInspect
Settlement-Asset & Legal-Finality Classifier: OpenChainGraph compute node (compliance_mandate). Regulatory deadline: 2026-Q3 (ECB Pontes pilot end-Q3 2026; DTCC Collateral AppChain production Oct 2026. Verify SFD/PFMI designations against current regulatory status before that date.). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-56-tokenized-settlement-fit-diagnostic. Output feeds: art-58-cross-network-settlement-validator, 506-onchain-cash-leg-finality-checker, 510-digital-asset-regulatory-classifier. Open at: https://ainumbers.co/chaingraph/art-59-settlement-asset-finality-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, non-destructive behavior. The description adds that inputs are transiently processed, not stored, logged, or retained, and that it exports an AP2 artifact with execution_hash. This provides meaningful behavioral insight beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose and includes necessary detail on regulatory context, compute modes, and privacy. While long, each sentence adds relevant information. Could be slightly more concise, but structure is logical.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description explains the tool's function, compute behavior, privacy, upstream/downstream artifacts, and regulatory deadlines. It does not detail the output format, but the purpose is largely self-contained.
Complex tools with many parameters or behaviors need more documentation. 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. The description adds context for the 'compute' parameter (explaining auto, server, browser and GPU handling) and for 'policy_parameters' (explaining server-side computation). 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 title and first sentence clearly state it is a classifier for settlement-asset and legal-finality. The description includes specific regulatory context, compute modes, and chain provenance, making the tool's purpose highly distinct from sibling classifiers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using synthetic or anonymised inputs, but does not explicitly guide when to use this tool over other classification siblings. The regulatory deadline note provides some context, but no direct comparison or alternative recommendation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classify_settlement_finalitySettlement Finality ClassifierARead-onlyIdempotentInspect
Settlement Finality Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-492-classify-settlement-finality.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by disclosing that inputs are processed transiently and not stored, logged, or retained. It also mentions deterministic execution, chain provenance via execution_hash, and the export of an AP2 artifact. This adds significant transparency beyond the readOnlyHint, idempotentHint, and destructiveHint 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 slightly verbose but efficiently packs essential information. It front-loads the purpose and then provides details on compute modes, data handling, and output. Could be slightly more streamlined but remains clear and well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 absence of an output schema, the description adequately explains the output (AP2 artifact with execution_hash). It covers compute modes, input handling, and provides a reference URL. With 4 parameters (all described in schema), no required parameters, and clear annotations, the description is comprehensive 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?
The input schema has 100% coverage, but the description adds value by explaining the compute mode behavior in relation to gpu:true nodes and registered kernels. For policy_parameters, it clarifies when they are computed server-side. This contextualizes parameters 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 identifies the tool as a 'Settlement Finality Classifier' and an 'OpenChainGraph compute node' with a compliance mandate. It specifies the deterministic nature and compute modes. However, it does not explicitly distinguish from sibling tools like classify_settlement_asset_finality, leaving some ambiguity for disambiguation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 detailed guidance on compute modes (auto, server, browser) and conditions for each (gpu:true always delegates to browser). It also instructs users to use synthetic or anonymised inputs only. However, it does not explicitly state when to use this tool over 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.
classify_t1_posttrade_timingT+1 Post-Trade Timing ClassifierARead-onlyIdempotentInspect
T+1 Post-Trade Timing Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-506-classify-t1-posttrade-timing.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the readOnly/idempotent annotations by disclosing deterministic behavior, server-side vs browser-side execution, transient processing with no storage/logging/retention, and AP2 artifact export with execution_hash for chain provenance. This is rich behavioral context that annotations alone do not provide.
Agents need to know what a tool does to the 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 dense and information-rich but contains repetition ('OpenChainGraph compute node' appears twice in the first two clauses) and includes a somewhat extraneous URL. It is front-loaded with the tool type and compute behavior, yet could be tightened without losing substance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 no output schema, and the description does not explain what the tool returns as a classification result. It mentions browser delegation URLs and artifact export with execution_hash, but for a classifier tool, failing to describe the actual output label or response format is a significant completeness 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 documents all parameters. The description adds meaningful context by explaining compute mode behavior, transient input handling, and how parent_hashes relate to chain provenance. The policy_parameters field still defers to a manifest, but the baseline of 3 is exceeded by the extra contextual 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 names the tool as a 'T+1 Post-Trade Timing Classifier' and an 'OpenChainGraph compute node', but it never explicitly states what classification it performs or what the response contains. It is clear in domain but does not provide a specific verb+resource action beyond what the tool name already implies, and does not distinguish it from many classify_* 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 gives useful compute-mode selection guidance (auto/server/browser, gpu:true delegation) and instructs users to provide synthetic or anonymized inputs only. However, it does not explicitly state when to prefer this tool over alternative classifiers 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.
classify_vida_platform_deemed_supplierViDA Platform Deemed Supplier ClassifierARead-onlyIdempotentInspect
ViDA Platform Deemed Supplier Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-163-vida-oss-registration-router. Open at: https://ainumbers.co/chaingraph/art-162-vida-platform-deemed-supplier-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering key behavioral traits. The description adds further context: inputs are transient and not stored, outputs are AP2 artifacts with execution_hash, and compute behavior details. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but contains some redundant details (e.g., repeating 'OpenChainGraph compute node'). It front-loads the main purpose and includes essential behavioral info. A few sentences could be tightened without loss, but overall it is 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 tool with 4 parameters (all optional), nested objects, and no output schema, the description is comprehensive. It covers compute modes, transient processing, output artifact, feed links, and policy parameter hint. An agent can understand invocation and behavior 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 description coverage is 100%, so the baseline is 3. The description adds some context for 'policy_parameters' (input for decision function) and references a manifest, but does not significantly enhance understanding beyond the schema. The 'compute' parameter explanation is already in the schema and description repeats 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 title 'ViDA Platform Deemed Supplier Classifier' and description clearly state the tool's verb ('classify') and specific resource ('ViDA Platform Deemed Supplier'). It distinguishes itself from sibling classifiers by naming the exact domain, and the description adds context as an OpenChainGraph compute node, 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 specific guidance on when to use each compute mode ('auto', 'browser', 'server') and explains the behavior for GPU nodes. It also advises 'Use synthetic or anonymised inputs only,' which is a clear usage constraint. However, it does not explicitly state when NOT to use this tool compared to other classifiers, missing some exclusivity guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_agentic_payment_protocolsAgentic Payments Protocol Comparator & Field CrosswalkARead-onlyIdempotentInspect
Compare agentic payment protocols (AP2, ACP/Shared Payment Token, x402, Visa TAP, Mastercard Agent Pay) across credential, signing, scope, rail, identity, and audit dimensions; optionally recommend a fit for a scenario. Use when a developer or strategist needs to orient across the fragmenting agentic-payments standards. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| matrix | No | |
| crosswalk | No | |
| recommendation | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. Description adds valuable behavioral context: the tool renders an interactive widget, runs client-side with zero PII and zero network. 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?
Description is two sentences, efficiently covering purpose, use case, and behavioral details. While it packs information, it remains readable and front-loaded with the primary verb and subject.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (comparing multiple protocols across six dimensions, optional recommendation), the description covers the key aspects. The existence of an output schema reduces the need to explain return values. Slight gap: no mention of output format, but the widget rendering implies a visual 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?
Input schema has 100% coverage with a clear description of the 'inputs' property. The description adds context about the AIN Bridge prefill mechanism, which helps an agent understand how to supply inputs. Baseline 3 plus bonus for extra 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?
Description provides a specific verb (compare) and resource (agentic payment protocols) with explicit enumeration of protocols and comparison dimensions. It clearly distinguishes from sibling tool 'compare_agentic_rail_protocols' by noting this tool covers credential, signing, scope, rail, identity, and audit dimensions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 states 'Use when a developer or strategist needs to orient across the fragmenting agentic-payments standards,' which gives clear context. It does not explicitly say when not to use or mention alternatives, but the use case is well-defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_agentic_rail_protocolsAgentic Payments Protocol ComparatorARead-onlyIdempotentInspect
Agentic Payments Protocol Comparator: OpenChainGraph compute node (routing_policy). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-16-google-ap2-mandate-builder, art-23-visa-trusted-agent-protocol-inspector, art-24-mastercard-agentic-token-builder, art-25-a2a-agent-card-validator, art-26-x402-payload-decoder-flow-simulator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-22-agentic-payments-protocol-comparator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds valuable behavioral details beyond the annotations, such as the compute mode behavior (auto/server/browser), transient processing (inputs not stored/logged/retained), and the export of an AP2 artifact with execution_hash for provenance. These details supplement the readOnly and idempotent hints provided by annotations, without any 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?
The description is detailed and includes multiple relevant aspects: execution environment, data handling, output artifact, and downstream consumers. Although the first sentence somewhat repeats the title, it also adds the 'routing_policy' context. Overall, it is dense but each sentence contributes useful information, making it appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 tool with nested objects and no output schema, the description covers many necessary aspects: compute execution, data privacy, output artifact, downstream tool feeds, and a reference URL for details. It does not explain the exact return format, but given the presence of an artifact export and no output schema, this is acceptable. The description is quite complete for understanding the tool's role and behavior.
Complex tools with many parameters or behaviors need more documentation. 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 descriptions for all four parameters, achieving 100% coverage. The description reiterates and elaborates on the compute parameter's behavior (e.g., auto vs browser) and mentions policy_parameters as inputs to the decision function, but it does not add significant new semantic information beyond what the schema already states. This aligns with 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 identifies the tool as a comparator for agentic payment protocols, referencing its role as an OpenChainGraph compute node. However, it does not distinguish it from the nearly identical sibling tool `compare_agentic_payment_protocols`, so while the purpose is clear, it lacks 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 provides some context on usage: it says the tool is a compute node, processes inputs transiently, and feeds several downstream artifacts. It also advises using synthetic or anonymised inputs only. However, it does not explicitly state when to use this tool over alternatives or when not to use it, so the 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.
compare_basel_2023_vs_2026Basel 2023-vs-2026 Capital-Delta ComparatorBRead-onlyIdempotentInspect
Basel 2023-vs-2026 Capital-Delta Comparator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-357-basel-2023-vs-2026-capital-delta-comparator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds determinism, transient non-stored processing, compute mode behaviors, and provenance export. It explicitly states inputs are not retained, which is valuable. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is reasonably concise for the complexity involved, covering compute modes, data handling, provenance, and a documentation link. It is front-loaded with the tool's purpose. Minor redundancy ('Deterministic OpenChainGraph compute node' appears twice) but not excessive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 four parameters, nested objects, and no output schema, the description explains compute modes and non-retention but fails to describe the output artifact's content beyond 'execution_hash'. It omits what the comparison result looks like (e.g., delta value, report format). With annotations covering safety, this gap 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?
Schema coverage is 100% with descriptions for all four parameters. The description adds context about compute modes and that policy_parameters are computed server-side for registered kernels, but this largely mirrors the schema descriptions. Baseline 3 is appropriate; the description does not significantly enrich 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 tool compares Basel 2023 vs 2026 capital delta and is an OpenChainGraph compute node for compliance mandates. However, it does not explicitly differentiate from related sibling tools like 'compute_basel31_delta' or 'compute_rwa_erba_2026', leaving some ambiguity about when to use this specific comparator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 no guidance on when to use this tool versus alternatives. It details compute modes but lacks context about prerequisites, compatible workflows, or situations where other Basel tools would be more appropriate. The only usage hint is 'use synthetic or anonymised inputs only', which is about data sensitivity rather than tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_corridor_costCorridor Cost Comparator (World Bank RPW)BRead-onlyIdempotentInspect
Corridor Cost Comparator (World Bank RPW): OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-248-compute-remittance-disclosure, art-250-model-stablecoin-corridor-economics. Open at: https://ainumbers.co/chaingraph/art-249-compare-corridor-cost.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint false), the description discloses transient input processing (not stored/logged), compute mode behaviors (auto/server/browser delegation, GPU handling), deterministic execution, artifact export with execution_hash, and upstream dependencies. This adds substantial behavioral context that annotations alone do not cover.
Agents need to know what a tool does to the 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 long and includes both essential details (compute modes, transient processing) and less critical information (upstream artifact IDs, URL). It is front-loaded with the title and technical node type, but the structure could be more streamlined for an AI agent. Every sentence adds some value, but some could be condensed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, nested object, no output schema, rich annotations), the description covers compute modes, transient processing, artifact export, and upstream dependencies. However, it does not describe the output content or the exact decision function (what cost comparison is performed). The tool's purpose is implied but not fully specified, leaving the agent reliant on assumptions.
Complex tools with many parameters or behaviors need more documentation. 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 some context for 'compute' (modes) and 'policy_parameters' (reference to manifest), but does not enhance understanding of 'parent_hashes' and 'parent_tool_ids' beyond schema descriptions. The deferral to manifest for policy_parameters is a minor gap. Overall, the description does not significantly improve parameter semantics over 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 title and name clearly indicate a corridor cost comparator, and the description identifies it as a ChainGraph compute node consuming upstream artifacts related to remittance disclosure and stablecoin corridor economics. However, the description does not explicitly state the verb 'compare' for corridor costs, relying on the title. The upstream artifact references imply the function but could be more direct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explicit guidance on when to use this tool versus alternatives (e.g., other comparison tools or the upstream models). It mentions technical constraints like 'use synthetic inputs only' and 'consumes upstream artifacts', but does not clarify the specific use case or exclusion criteria. An agent would need to infer usage from the name and context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_cross_ccp_pqd_fieldsCross-CCP PQD ComparatorARead-onlyIdempotentInspect
Cross-CCP PQD Comparator: OpenChainGraph compute node (regulatory_reporting). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-528-cross-ccp-pqd-comparator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavior beyond annotations: determinism, server vs. browser execution, transient processing with no storage/logging/retention, a synthetic-input requirement, and export of an AP2 artifact with execution_hash. Annotations only state read-only, idempotent, and non-destructive; the description enriches these with data-handling details. 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?
The description is about six sentences and front-loads the core identity. It is mostly efficient, but 'OpenChainGraph compute node' appears twice, which is redundant. Each sentence contributes useful compute or safety information, so it earns a 4 rather than a perfect 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 rich annotations and full schema coverage, the description covers compute modes, data handling, and output artifact. However, it never explains what 'cross-CCP PQD' means or what the actual comparison logic outputs, leaving the core domain function opaque. The policy_parameters object defers to a manifest not included in the description. Adequate but with clear 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%, and each parameter already has a descriptive comment. The description repeats the compute mode semantics but adds no new meaning for parent_hashes, parent_tool_ids, or policy_parameters. The baseline of 3 applies because the schema carries the full parameter 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 identifies the tool as a 'Cross-CCP PQD Comparator' but never explains what PQD fields are, what comparison is performed, or what the output represents beyond an artifact with execution_hash. It is more than a tautology because it provides compute-mode details, but the core function remains vague and doesn't distinguish it from other compare_* 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?
There is some usage context: it is an OpenChainGraph compute node for regulatory_reporting, and it advises using synthetic/anonymised inputs. Compute mode behavior is explained. However, there is no explicit statement of when to use this tool versus alternative tools, no exclusions, and no mention of prerequisites (e.g., what parent_hashes are needed). The 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.
compare_model_outcome_analysisModel Outcome-Analysis ComparisonARead-onlyIdempotentInspect
Model Outcome-Analysis Comparison: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-450-model-inventory-entry. Output feeds: art-453-model-validation-status. Open at: https://ainumbers.co/chaingraph/art-451-model-outcome-analysis.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false. The description adds: 'Inputs are processed transiently... not stored, logged, or retained. Use synthetic or anonymised inputs only.' It also details export behavior and artifact chains. This provides value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but well-structured: begins with purpose, then mode options, then transient nature, then artifact details. Every sentence adds value with 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 complexity and absence of output schema, the description covers compute modes, transient processing, artifact export, and input/output artifact IDs. It lacks explicit return value description but compensates with artifact linkage.
Complex tools with many parameters or behaviors need more documentation. 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 briefly mentions compute modes and parameter roles but does not add significant 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 states 'Model Outcome-Analysis Comparison: OpenChainGraph compute node (compliance_control).' This clearly indicates it compares model outcome analyses. However, it does not differentiate from sibling tools, which is acceptable given the specific 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?
The description explains compute modes (auto, server, browser) and when each is used, providing clear context. However, it does not mention 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.
compare_pension_lump_sum_annuityPension Lump-Sum vs. Annuity Decision EngineCRead-onlyIdempotentInspect
Pension Lump-Sum vs. Annuity Decision Engine: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-282-social-security-claiming-optimizer. Open at: https://ainumbers.co/chaingraph/art-283-pension-lump-sum-vs-annuity-decision-engine.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds value beyond annotations by clarifying inputs are transient, not stored, and deterministic. It explains compute mode behavior and AP2 artifact export with execution_hash. No contradictions with annotations (readOnlyHint=true is consistent with transient processing).
Agents need to know what a tool does to the 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 longer than necessary, mixing high-level purpose with low-level compute details (e.g., Cloudflare Workers, browser delegation). It front-loads the engine name but loses focus. Every sentence earns its place, but some details are excessive for a tool definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description should explain what the tool returns (e.g., comparison result, recommendation). It only mentions AP2 artifact export and execution hash, leaving the output format and content unclear. Incomplete for a decision support 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 need not add much. However, it provides minimal parameter insight beyond the schema—'policy_parameters' is described vaguely as 'Input parameters for this tool's decision function' without detailing fields. 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 labels it as a 'Pension Lump-Sum vs. Annuity Decision Engine' and mentions a 'decision function', but never explicitly states its purpose (e.g., 'compares lump sum to annuity'). Instead, it focuses on technical details like compute modes and Cloudflare Workers, leaving the core function implied.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Minimal usage guidance: it mentions consuming upstream artifacts and using synthetic inputs, but no explicit when/when-not criteria or comparisons to sibling tools like 'compute_annuity'. The agent gets little help choosing this over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_receivables_finance_economicsForfaiting vs Factoring vs Invoice Discounting EconomicsCRead-onlyIdempotentInspect
Forfaiting vs Factoring vs Invoice Discounting Economics: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-479-compare-receivables-finance-economics.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the agent knows it's a safe, deterministic operation. The description adds valuable behavioral context: inputs are processed transiently and not stored, only synthetic/anonymised inputs should be used, and an AP2 artifact with execution_hash is exported for chain provenance. This exceeds what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is overly verbose with technical boilerplate about compute modes, GPU settings, and data handling that is not relevant to the tool's core purpose of comparing receivables finance options. The important functional information is only in the first few words, and the rest is generic infrastructure details that should be in a shared context, not per-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?
The tool has no output schema, so the description should explain what the comparison yields. It mentions exporting an AP2 artifact but does not describe the output content, the criteria for comparison, or how the economics are presented. This is insufficient for a tool that compares three financial methods.
Complex tools with many parameters or behaviors need more documentation. 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 described in the input schema. The description mentions compute modes and the version (v0.4 Compute Binding) but does not add significant 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 starts with 'Forfaiting vs Factoring vs Invoice Discounting Economics' which hints at the comparison purpose, but the rest is technical boilerplate about OpenChainGraph compute modes. It does not clearly state what the tool does, nor does it distinguish it from siblings like 'compare_model_outcome_analysis' or 'compare_agentic_payment_protocols'. The purpose is vaguely implied but not explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. The description focuses entirely on compute modes and data handling, with no mention of the tool's applicability or limitations compared to other comparison tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_rights_matrixCross-License Rights ComparatorARead-onlyIdempotentInspect
Cross-License Rights Comparator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-198-cross-license-rights-comparator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as readOnly, idempotent, and not destructive. The description adds valuable behavioral details: determinism, transient input processing (no storage/logging), client vs server execution, and export of AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the tool's identity and purpose, and each sentence adds necessary technical context. It is slightly verbose but well-structured and not wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, transient input handling, and artifact export, but does not describe the output format of the comparison result beyond 'AP2 artifact'. Given no output schema, this omission leaves the agent without full expectations of the response.
Complex tools with many parameters or behaviors need more documentation. 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 detailed descriptions for all 4 parameters. The tool description repeats some compute details but does not add significant new meaning beyond the schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as a 'Cross-License Rights Comparator' and an 'OpenChainGraph compute node', specifying that it compares cross-license rights and exports an artifact. It distinguishes from sibling comparators by domain, though it could be more explicit about the specific comparison 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?
The description explains compute modes (server vs browser) and advises to use synthetic or anonymised inputs, implying when to use this tool for cross-license rights comparisons. However, it does not explicitly contrast with sibling tools or state when not to use it, which is a gap given the large sibling set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compile_work_mandateWork Mandate CompilerARead-onlyIdempotentInspect
Work Mandate Compiler: OpenChainGraph compute node (governance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-274-compile-work-mandate.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds context beyond annotations: deterministic, transient processing, browser delegation for gpu:true nodes, and AP2 artifact output. No contradiction with annotations (readOnlyHint, idempotentHint, destructiveHint).
Agents need to know what a tool does to the 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 paragraph that front-loads the purpose. It includes essential details without excessive verbosity, though could be improved with structured formatting.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description explains the return format (AP2 artifact with execution_hash). It covers all parameters and compute modes, though missing error handling or edge case behavior.
Complex tools with many parameters or behaviors need more documentation. 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 adds meaning to parameters beyond the 100% covered schema, explaining compute mode behavior and the role of parent_hashes and policy_parameters. It clarifies the 'auto' default and gpu:true override.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 compiles a work mandate using OpenChainGraph compute node, detailing compute modes and output. However, it does not explicitly distinguish from sibling tools like 'agentic_mandate_sandbox' or 'ap2_aml_mandate_builder', which also deal with mandates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, server, browser) and when to use synthetic inputs. It lacks explicit when-not-to-use or alternatives, but the context is well-defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compose_ap2_promptAP2 Prompt Template GeneratorARead-onlyIdempotentInspect
AP2 Prompt Template Generator: OpenChainGraph compute node (prompt_template). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: ALL. Open at: https://ainumbers.co/chaingraph/ptg-01-ap2-prompt-template-generator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds that inputs are processed transiently and not stored, logged, or retained, and that the tool exports an AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph covering purpose, compute modes, input handling, output, and a reference URL. It is concise but could be better structured with bullet points 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 tool has 4 parameters (one nested object) and no output schema, the description adequately explains compute modes, transient input processing, output artifact, and safe input practices. It also provides a URL for additional 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% with descriptions for all 4 parameters. The description adds context beyond the schema, such as explaining compute mode behavior for gpu:true nodes and directing to the manifest for policy_parameters 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 is an 'AP2 Prompt Template Generator: OpenChainGraph compute node (prompt_template)' and explicitly mentions it is deterministic. It uses specific verb 'compose' and resource 'AP2 prompt template', distinguishing it from sibling tools like build_ap2_mandate or validate_ap2_mandate_chain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 details compute modes ('auto', 'browser', 'server') and when to use each, including for gpu:true nodes. It advises to use synthetic or anonymized inputs. However, it does not explicitly state when not to use this tool or compare to alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compose_control_test_evidenceControl-Test Evidence ComposerARead-onlyIdempotentInspect
Control-Test Evidence Composer: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-461-control-test-evidence-composer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| tester_id | No | |
| control_id | No | |
| deficiency | No | |
| fail_count | No | |
| pass_count | No | |
| gate_status | No | |
| sample_size | No | |
| tester_role | No | |
| tested_count | No | |
| extra_results | No | |
| exception_rate | No | |
| exception_count | No | |
| missing_results | No | |
| population_hash | No | |
| test_conclusion | No | |
| reporting_period | No | |
| within_tolerance | No | |
| coverage_complete | No | |
| not_a_severity_judgment | No | |
| tolerable_exception_count | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable context: inputs are processed transiently and not stored/logged/retained, compute behavior differs between server and browser modes, and it exports an AP2 artifact with execution_hash. No contradiction with annotations. This goes beyond the baseline safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but has redundancy: 'OpenChainGraph compute node' appears twice, and the inclusion of a URL may be extraneous for tool selection. It front-loads the key identity and compute behavior, but the repeated deterministic/compute-node phrasing makes it slightly bloated. It is structured in a single block without clear sections.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters, no required fields, and an output schema, the description covers essential operational aspects: compute modes, transient input handling, data retention policy, artifact export, and provenance via execution_hash. It does not explain return values, but an output schema exists. The description is functionally complete for an agent to invoke 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 covers 100% of parameter descriptions, so the baseline is 3. The description adds minimal extra meaning: it explains the compute modes in the schema already and mentions that policy_parameters are for the decision function but defers field names to the manifest. No significant added value beyond the schema, but also no 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 identifies the tool as an OpenChainGraph compute node for composing control-test evidence, with a specific resource (AP2 artifact) and action (compose/export). It distinguishes itself from siblings by its compute-node nature and mention of compliance_control. The title reinforces the function. However, the exact decision logic is somewhat abstracted, so it isn't a perfect 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 gives operational guidance (use synthetic inputs, compute modes, server vs browser delegation) but does not explicitly state when to choose this tool over siblings or provide exclusion criteria. Usage is implied by the title (Control-Test Evidence Composer) rather than explicitly spelled out. The 'Use synthetic or anonymised inputs only' is a data-handling caution, not a when-to-use guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compose_eval_attestation_receiptEval Attestation Receipt ComposerARead-onlyIdempotentInspect
Eval Attestation Receipt Composer: OpenChainGraph compute node (governance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-438-eval-attestation-receipt-composer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: transient input processing (not stored/logged/retained), deterministic execution, delegation behavior for browser/gpu modes, and output artifact details. It aligns with readOnlyHint=true and idempotentHint=true, with 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 a single paragraph covering all key aspects without redundancy. It could be more structured (e.g., bullet points), but it efficiently conveys essential information in a compact form.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 params, nested objects, no output schema, multiple compute modes), the description covers the main behavioral and param details. However, it omits output format specifics and error/edge-case handling, which limits completeness slightly.
Complex tools with many parameters or behaviors need more documentation. 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 compute mode interactions (e.g., when policy_parameters are server-side computed) and the role of parent_hashes/parent_tool_ids. This enhances understanding 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 this tool is an 'OpenChainGraph compute node' that composes an 'Eval Attestation Receipt' and exports an AP2 artifact with execution_hash. The purpose is specific and distinguishes it from siblings like compose_ap2_prompt by explicitly mentioning 'governance_mandate' and compute modes for attestation receipt 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 provides clear guidance on using different compute modes ('auto', 'browser', and behavior for gpu:true) and advises using synthetic/anonymised inputs. However, it does not explicitly compare usage to sibling compose tools 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.
compose_globe_girGloBE Information Return (GIR) ComposerARead-onlyIdempotentInspect
GloBE Information Return (GIR) Composer: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-457-globe-gir-composer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral detail beyond annotations: it notes the tool is deterministic, inputs are transient and not stored or logged, and it exports an AP2 artifact with execution_hash. Annotations already indicate read-only, idempotent, and non-destructive behavior, and the description confirms and extends these aspects without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and provides necessary information in a logical order. It is slightly verbose but each sentence contributes meaning. Could be trimmed slightly, but overall 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 presence of annotations and full schema coverage, the description covers compute modes, transient processing, input restrictions, and output artifact. It lacks a detailed explanation of the output format beyond the artifact reference, but this is acceptable without an 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?
The input schema has 100% description coverage, so the schema already explains all parameters adequately. The description provides minimal additional semantic value for parameters, merely restating that policy_parameters are inputs for the decision function.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 as 'GloBE Information Return (GIR) Composer' and identifies it as a deterministic OpenChainGraph compute node for compliance control. It distinguishes itself from sibling composers by specifying the purpose and the artifact it exports.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes ('auto', 'server', 'browser') and when each is used, including conditions for server-side or browser delegation. It advises to use synthetic or anonymised inputs. However, it does not explicitly compare to alternative tools 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.
compose_workpaper_bundleWorkpaper Bundle ComposerARead-onlyIdempotentInspect
Workpaper Bundle Composer: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-462-je-ruleset-screen, art-463-recalc-suite, art-464-confirmation-matcher. Open at: https://ainumbers.co/chaingraph/art-465-workpaper-bundle-composer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| roles | No | |
| exceptions | No | |
| procedure_id | No | |
| exception_count | No | |
| population_hash | No | |
| kernel_artifacts | No | |
| kernel_artifact_count | No | |
| undisposed_exceptions | No | |
| disposed_exception_count | No | |
| malformed_kernel_artifacts | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. Beyond that, the description adds determinism, transient processing with no storage/logging/retention, browser delegation behavior, execution_hash provenance, and upstream artifact dependencies. This substantially exceeds annotation coverage and includes a privacy-relevant warning. No contradiction found.
Agents need to know what a tool does to the 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 dense but well-structured, covering identity, compute modes, privacy, output, upstream dependencies, and a URL. Each sentence serves a purpose, though a few technical details (e.g., exact URL and 'attestation_mandate' parenthetical) could be trimmed without losing core information. It is appropriately front-loaded with the main role.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters, nested objects, and an output schema, the description covers the key operational aspects: server vs browser execution, input privacy, synthetic-only guidance, AP2 artifact output with execution_hash, consumed upstream artifacts, and a link for manual inspection. The output schema already documents return structure, so the description is reasonably complete though it lacks explicit usage/alternative guidance.
Complex tools with many parameters or behaviors need more documentation. 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 (100% coverage), setting a baseline of 3. The description adds meaningful context for the 'compute' parameter: default server-side on Cloudflare Workers, browser delegation URL, and gpu:true always delegating. Other parameters (parent_hashes, parent_tool_ids, policy_parameters) are not further enriched, but the compute guidance lifts this above 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?
Description identifies the tool as an OpenChainGraph compute node that composes a workpaper bundle, with specific artifact consumption (art-462/463/464) and AP2 artifact export. It conveys a clear role, though the core function is wrapped in jargon and not explicitly stated as 'combine upstream artifacts into a bundle.' Distinguishes from siblings via unique artifact IDs and compute semantics, but not directly compared to similar compose/build 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 operational guidance on compute modes ('auto' vs 'browser', gpu:true delegation) and instructs to use synthetic or anonymised inputs only. However, it does not explicitly state when to prefer this tool over sibling compose/assemble tools, nor does it mention exclusions or alternative tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_15c3_3_reserve15c3-3 Customer Reserve Formula CalculatorARead-onlyIdempotentInspect
15c3-3 Customer Reserve Formula Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-397-lint-trace-cat-reports. Open at: https://ainumbers.co/chaingraph/art-396-compute-15c3-3-reserve.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint=true, idempotentHint=true, destructiveHint=false), the description adds key behaviors: 'Inputs are processed transiently to compute the response and are not stored, logged, or retained', compute mode behavior on GPU vs CPU, and that it 'Exports an AP2 artifact with execution_hash for chain provenance'. This significantly enhances transparency about data handling, execution model, and 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 mostly concise, front-loaded with the purpose, and each sentence adds value. The inclusion of a URL link is slightly extraneous but provides a reference. It could be trimmed slightly, but overall it is efficient for a tool with multiple compute modes and behavioral caveats.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, no output schema, annotations present), the description covers compute modes, transient processing, output artifact, and a reference link. It explains the output ('AP2 artifact') but does not detail the artifact's structure or return values. This is acceptable given the deterministic, read-only nature and the absence of an 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?
With 100% schema coverage, the description does not add meaningful semantics beyond what's in the input schema. It mentions compute mode behavior but does not explain parameter details like parent_hashes or policy_parameters. The baseline of 3 is appropriate as the schema already sufficiently describes 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 tool computes the 15c3-3 Customer Reserve formula, a specific regulatory calculation. The title 'Customer Reserve Formula Calculator' and description 'OpenChainGraph compute node (compliance_mandate)' distinguish it from sibling compute_* tools, which have varied purposes (e.g., compute_aca_affordability, compute_bond_duration). The verb 'compute' and resource '15c3-3 reserve' are specific and 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?
The description provides clear usage context for compute modes (default server-side, browser delegation) and constraints ('Use synthetic or anonymised inputs only'). However, it does not explicitly state when to choose this tool over siblings or when not to use it. The context implies it is for the specific reserve calculation, but explicit exclusions or comparisons are missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_aca_affordability_safe_harborACA Affordability Safe-Harbor CalculatorARead-onlyIdempotentInspect
ACA Affordability Safe-Harbor Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-299-aca-esrp-exposure. Open at: https://ainumbers.co/chaingraph/art-298-aca-affordability-safe-harbor.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description discloses that inputs are transient and not stored, and explains execution delegation scenarios. This adds useful behavioral context not captured by 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 reasonably concise (few sentences) and structured with key points (execution modes, data handling, output reference). It could be slightly more streamlined but is not 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 complexity (4 parameters, nested objects, no output schema) and annotations, the description covers execution modes, data transience, output artifact, and a link for further details. It is adequate for a compute tool with good 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 detailed parameter descriptions (e.g., compute mode, parent_hashes). The tool description adds overall context but does not significantly enhance parameter 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 identifies the tool as an 'ACA Affordability Safe-Harbor Calculator' and an 'OpenChainGraph compute node', indicating it computes a specific compliance metric. The purpose is clear, though it does not explicitly state the calculation output (e.g., a safe harbor percentage). It distinguishes from siblings by detailing execution modes and data handling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 on when to use different compute modes ('auto', 'browser', 'server') and warns to use synthetic/anonymised inputs. However, it does not compare this tool to sibling tools or specify when to choose this over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_annuityAnnuity PV / FV / Payment SolverARead-onlyIdempotentInspect
Annuity PV / FV / Payment Solver: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-327-tvm-annuity.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: inputs are transiently processed and not stored/logged, recommends synthetic/anonymized inputs, explains the effect of compute modes, and notes the export of an AP2 artifact with execution_hash. This fully discloses the tool's compute model and data 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?
The description is nine sentences long, which is slightly verbose but well-structured: it opens with the core purpose, then explains compute modes, data handling, and provenance. Every sentence contributes value, though a few could be tightened.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (nested objects, no output schema), the description covers execution model, data handling, and provenance. It lacks explicit mention of the return value structure but provides a URL for further details, making it fairly 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 all four parameters. The description does not add meaningful detail about parameter semantics beyond what's in the schema, such as the structure of 'policy_parameters' or usage of 'parent_hashes'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 'Annuity PV / FV / Payment Solver' and identifies it as an OpenChainGraph compute node. This clearly defines the tool's function as computing annuity present value, future value, or payment, distinguishing it from sibling tools like 'compute_npv' or 'compute_irr'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, server, browser) and mentions it works on gpu:false nodes with registered kernels, but provides no guidance on when to use this tool over alternatives such as 'compare_pension_lump_sum_annuity'. It lacks explicit when-to-use or when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_asset_liability_coverageAsset/Liability CoverageBRead-onlyIdempotentInspect
Asset/Liability Coverage: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-539-asset-liability-coverage.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, destructiveHint=true), the description discloses determinism, transient processing (no storage/logging/retention), GPU delegation behavior, and AP2 artifact export with execution_hash. These are valuable behavioral traits not captured by annotations, and there is 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?
The description is moderately sized but has redundancy, repeating 'OpenChainGraph compute node' and leading with the title. The first sentence adds little. Each sentence provides some info, but the text could be tightened and better 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 there is no output schema, the description fails to describe the response shape or what the AP2 artifact contains beyond an execution_hash. It explains compute modes and security but not the actual result semantics of asset/liability coverage. The open URL may compensate, but for an AI agent the description is 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?
Schema coverage is 100%, so the baseline is 3. The description overlaps with the compute parameter's schema explanation and mentions policy_parameters, but adds little new meaning about parent_hashes or parent_tool_ids. The gpu:true delegation detail adds some context but not enough to raise the 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 name and title clearly indicate a compute operation for asset/liability coverage, but the description focuses on execution modes (auto/browser/server) rather than what the coverage calculation actually produces. It identifies as an OpenChainGraph compute node but does not state the output metric or decision, and does not distinguish it from other compute_* 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 usage guidance on compute modes (auto/server/browser) and explicitly instructs to use synthetic or anonymised inputs only, but does not state when to prefer this tool over other compute_* tools or any exclusions. No alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_basel31_deltaBasel 3.1 Reporting Delta CalculatorARead-onlyIdempotentInspect
Basel 3.1 Reporting Delta Calculator: OpenChainGraph compute node (capital_assessment). Regulatory deadline: 2027-01-01 (UK PRA PS1/26 Basel 3.1 go-live — January 1, 2027). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: sim-03-basel-rwa-scenario-modeler, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-07-basel31-reporting-delta-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that inputs are processed transiently, not stored, logged, or retained; that the tool is deterministic; and that it exports an AP2 artifact with execution_hash. These details go beyond annotations (readOnlyHint=true, idempotentHint=true, destructiveHint=false) by providing specific behavioral traits such as privacy handling and output feed targets.
Agents need to know what a tool does to the 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 dense but front-loaded with the core purpose and compute modes. Each sentence adds value (deadline, modes, transient processing, output feeds, URL). However, it could be slightly streamlined without losing information; the URL at the end is useful but less critical.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 most relevant aspects: purpose, compute modes, lifecycle (transient, not stored), output artifact and feeds, and links to documentation. Lacks an example or typical calling scenario, but given the tool's deterministic nature and good annotations, the description is sufficiently complete for agent interpretation.
Complex tools with many parameters or behaviors need more documentation. 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 the schema: it repeats the compute enum options and parent_hashes/parent_tool_ids roles but does not clarify the policy_parameters object structure or provide examples. No significant augmentation.
Input schemas describe structure but not intent. Descriptions should explain 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's a "Basel 3.1 Reporting Delta Calculator" and a deterministic OpenChainGraph compute node, with a specific regulatory deadline. It identifies the resource and verb precisely, and the tool name and title align. Among siblings with similar names (e.g., compute_basel_haircut_adjusted_exposure), this description differentiates by specifying the reporting context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, server, browser) and when each applies, including the condition for gpu:true nodes. Also warns to use synthetic or anonymized inputs only. Does not directly compare to sibling tools or state when not to use, but provides clear contextual guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_basel_haircut_adjusted_exposureCollateral Haircut Engine (Basel CRE22)ARead-onlyIdempotentInspect
Collateral Haircut Engine (Basel CRE22): OpenChainGraph compute node (regulatory_reporting). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-444-collateral-haircut-engine.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations. It explains that inputs are processed transiently and not stored, logged, or retained, and that it exports an AP2 artifact with execution_hash for chain provenance. It also details compute mode delegation for GPU vs non-GPU nodes. There is no contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, with three sentences plus a URL. It front-loads the purpose and then explains compute behavior and safety considerations. The structure is logical, though the compute mode explanation is slightly dense. 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 covers the compute node, transient processing, anonymity requirement, and artifact export. However, it lacks detail on what the 'policy_parameters' object contains and how the haircut calculation works, relying on a reference to the tool's manifest. This is adequate but leaves gaps for an agent to fully understand.
Complex tools with many parameters or behaviors need more documentation. 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 coverage is 100%, so baseline is 3. The description adds some context about policy_parameters being computed server-side for certain modes and references the tool's manifest for field names. However, it does not explain individual parameters beyond what the schema already provides, so the value added is marginal.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'Collateral Haircut Engine (Basel CRE22)' and an 'OpenChainGraph compute node (regulatory_reporting)', which defines the tool's purpose. The name and title are specific to a Basel regulatory metric, but it does not explicitly differentiate from sibling tools like compute_stock_token_collateral_haircut or calculate_repo_haircut.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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: for computing a Basel CRE22 haircut adjusted exposure. It explicitly states 'Use synthetic or anonymised inputs only' and explains the compute modes (auto, server, browser) and their behaviors. However, it does not explicitly exclude alternatives 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.
compute_bond_durationBond Macaulay / Modified DurationARead-onlyIdempotentInspect
Bond Macaulay / Modified Duration: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-330-tvm-dv01, art-331-tvm-convexity. Open at: https://ainumbers.co/chaingraph/art-329-tvm-bond-duration.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations (readOnlyHint, idempotentHint, destructiveHint) by detailing deterministic execution, transient input processing (not stored/logged/retained), compute mode behavior (server-side vs. browser delegation), and the export of an AP2 artifact with execution_hash. This provides substantial operational 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, dense paragraph that effectively front-loads the purpose. It conveys necessary information efficiently, but could benefit from slightly more structured formatting (e.g., bullet points for compute modes) to improve 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?
The description explains compute modes, transient input handling, and output artifact. However, without an output schema, it does not describe the return value structure (e.g., fields of the AP2 artifact). Mentioning the result format or linking to documentation 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?
With 100% schema description coverage, the baseline is 3. The description adds value by explaining the compute parameter options more clearly than the schema's enum description and contextualizing the tool within a chain flow. However, it does not add details for other parameters 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 identifies the tool as computing Bond Macaulay/Modified Duration, distinguishing it from many sibling compute tools by detailing its role as an OpenChainGraph compute node with specific compute modes (auto, server, browser). It also specifies the output artifact and external reference, 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 each compute mode (auto, server, browser) and advises using synthetic/anonymized inputs. However, it does not explicitly contrast with sibling tools like compute_convexity or compute_dv01, though it mentions their outputs as feeds. The guidance 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.
compute_breakevenBreakeven / CVP AnalysisBRead-onlyIdempotentInspect
Breakeven / CVP Analysis: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-328-tvm-breakeven.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and idempotentHint=true. The description adds valuable context: inputs are processed transiently and not stored/logged/retained, the tool is deterministic, and it exports an AP2 artifact with execution_hash for provenance. It also warns to use synthetic or anonymised inputs only, which is a critical safety detail beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that front-loads the purpose and then progressively explains behavior, compute modes, data handling, and output. While concise overall, it repeats 'OpenChainGraph compute node' and includes an open link that may not benefit an AI agent directly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description should clarify what the tool returns. It mentions exporting an AP2 artifact with execution_hash but does not describe the artifact structure or fields. For a 4-parameter tool with nested objects, more detail on policy_parameters and the result format 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?
Schema coverage is 100% with descriptions for all 4 parameters. The description adds meaningful context by explaining the compute parameter modes in detail (e.g., 'auto' triggers server-side if kernel registered, 'browser' returns delegation URL), and clarifies that parent_hashes are for chaining upstream artifacts. This goes beyond the schema alone and aids correct 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 states 'Breakeven / CVP Analysis' and identifies it as a compute node, but does not specify what exact calculations or outputs are produced (e.g., breakeven point, margin of safety). This vagueness makes it hard to distinguish from other compute_* tools without relying on 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?
No guidance is provided on when to use this tool versus any of the many sibling compute tools. The description discusses compute modes (auto/server/browser) but not scenarios where one would prefer this over other CVP or analytics tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_canton_app_reward_estimateCanton App-Reward Estimator (CIP-0104)BRead-onlyIdempotentInspect
Canton App-Reward Estimator (CIP-0104): OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-392-compute-canton-app-reward-estimate.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds valuable context: inputs are transiently processed and not stored, outputs include an AP2 artifact with execution_hash, and compute mode behavior is detailed. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph with slight redundancy (e.g., 'OpenChainGraph compute node' repeated). It could be more concise, but it is not overly long.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without an output schema, the description should clarify return values. It mentions exporting an AP2 artifact but does not specify what the actual response (e.g., the reward estimate) contains. The policy_parameters object's structure is deferred to a manifest, leaving ambiguity.
Complex tools with many parameters or behaviors need more documentation. 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 minor context about compute mode and policy_parameters (e.g., 'computed server-side'), 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?
Title and description clearly identify the tool as a 'Canton App-Reward Estimator' under CIP-0104, specifying it is a deterministic OpenChainGraph compute node for estimating rewards. The purpose is specific and distinct from sibling compute tools like compute_canton_traffic_cost.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. The description only covers technical execution modes (server/browser) without addressing use cases or excluding scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_canton_traffic_costCanton Synchronizer Traffic-Cost CalculatorARead-onlyIdempotentInspect
Canton Synchronizer Traffic-Cost Calculator: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-391-compute-canton-traffic-cost.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds behavioral details: inputs are processed transiently, not stored or logged; compute modes trigger different execution paths; it exports an AP2 artifact with execution_hash. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is thorough but verbose, containing multiple sentences with dense information. It repeats the tool name and provides a URL. While front-loaded with key points, it could be more compact. Every sentence adds value, but overall length suggests some trimming.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested objects, no output schema), the description covers essential aspects: compute modes, privacy, chaining, and output artifact. It lacks details on return value structure but provides sufficient context for 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%, but the description adds meaningful context: explains 'compute' enum options, states that 'parent_hashes' and 'parent_tool_ids' are for chaining, and clarifies that 'policy_parameters' are input parameters computed server-side for some modes. This adds 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 it is a 'Canton Synchronizer Traffic-Cost Calculator' and 'OpenChainGraph compute node', specifying its function and distinguishing it from sibling tools with a unique focus. It uses specific verbs and resource references, avoiding tautology.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 the compute modes ('auto', 'server', 'browser') and when to use each, including that gpu:true nodes always delegate. It advises using 'synthetic or anonymised inputs only'. However, it does not explicitly compare this tool to siblings 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.
compute_cdd_ownership_25pctFinCEN CDD 25% Beneficial Ownership AttributionARead-onlyIdempotentInspect
FinCEN CDD 25% Beneficial Ownership Attribution: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-269-validate-w8-series-structural. Open at: https://ainumbers.co/chaingraph/art-268-compute-cdd-ownership-25pct.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant detail beyond annotations: inputs are transient and not stored, compute modes depend on 'gpu' flag, deterministic execution, and export of AP2 artifact with execution_hash. No contradiction with annotations (readOnlyHint, idempotentHint, destructiveHint).
Agents need to know what a tool does to the 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 detailed but well-structured: purpose, compute modes, data handling, output details. It is front-loaded with the core purpose. Could be slightly more concise, but the technical details are relevant for proper usage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description only hints at the output ('AP2 artifact with execution_hash'). It does not fully specify the return value structure or content. The complexity of the tool (nested parameters, compute modes) is addressed, but the output lacks sufficient detail 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?
With 100% schema coverage, baseline is 3. The description adds value by explaining the 'compute' parameter's behavior, linking 'parent_hashes' to upstream ChainGraph artifacts, and referencing the tool's manifest for 'policy_parameters' fields. This goes beyond what the schema alone 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 title 'FinCEN CDD 25% Beneficial Ownership Attribution' and description clearly state the tool's function as a compute node for beneficial ownership attribution under FinCEN CDD at the 25% threshold, distinguishing it from siblings like 'aggregate_ownership_50pct'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes ('auto', 'server', 'browser') and advises using synthetic or anonymised inputs. It also mentions output feeds and an external link for more context. However, it does not explicitly exclude use cases or compare with alternatives like 'aggregate_ownership_50pct' or other 'compute_' tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_cfpb_1071_coverageCFPB 1071 Coverage Check & SBLAR Record ValidatorARead-onlyIdempotentInspect
CFPB 1071 Coverage Check & SBLAR Record Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-475-cfpb-1071-coverage-check.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description discloses deterministic behavior, compute modes (server-side vs browser delegation), transient data processing, recommendation to use synthetic inputs, and output as an AP2 artifact with execution_hash. This adds significant 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?
The description is verbose, mixing purpose, compute mode details, and URL in a single block. It could be more concise by front-loading the core purpose and deferring technical details. Every sentence adds value but overall length reduces 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?
Given 4 parameters (including a nested object), no output schema, and rich annotations, the description covers processing behavior, output format (AP2 artifact), and data handling. It lacks explicit explanation of return values but the annotation and schema context partially compensate. Minor gaps like parameter examples 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 description coverage is 100%, so baseline is 3. The description mentions compute modes but does not add new meaning beyond the schema's parameter descriptions. It does not compensate for the nested object 'policy_parameters' which lacks explicit field 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 identifies the tool as 'CFPB 1071 Coverage Check & SBLAR Record Validator' and explains it is a deterministic OpenChainGraph compute node. The verb 'compute' combined with the specific regulatory reference distinguishes it from sibling tools, which have similarly specific names.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 instead of alternatives. It mentions compute modes but lacks comparative context against sibling tools. No exclusions or when-not-to-use scenarios are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_convexityBond ConvexityARead-onlyIdempotentInspect
Bond Convexity: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-329-tvm-bond-duration. Open at: https://ainumbers.co/chaingraph/art-331-tvm-convexity.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations, including deterministic execution, transient processing (no storage/logging), and chain provenance via AP2 artifacts. It aligns with readOnlyHint and idempotentHint.
Agents need to know what a tool does to the 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 information-dense yet concise, with every sentence adding value. It is front-loaded with the purpose and structured logically from identity to compute modes to data handling to provenance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, data privacy, provenance, and upstream dependencies. However, it lacks explicit detail about the output format (though it mentions AP2 artifact and execution_hash). With no output schema, slightly more specificity would be ideal.
Complex tools with many parameters or behaviors need more documentation. 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 parameter descriptions are already good. The description adds narrative context for the compute parameter's modes and the purpose of policy_parameters, providing additional clarity 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 'Bond Convexity' and identifies it as an OpenChainGraph compute node. It distinguishes from siblings by mentioning it consumes upstream artifacts from compute_bond_duration, implying a specific role in the pipeline.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 detailed context on compute modes (auto, server, browser) and execution environments, but does not explicitly state when to use this tool vs 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.
compute_counterparty_limit_checkCounterparty Internal Limit CheckBRead-onlyIdempotentInspect
Counterparty Internal Limit Check: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-446-counterparty-internal-limit-check.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it notes determinism, transient processing (no storage), and the requirement to use synthetic or anonymised inputs. It also discloses the export of an AP2 artifact with execution_hash. These details align with the readOnlyHint and idempotentHint annotations and provide extra 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?
The description is moderately long and includes both essential and non-essential details (e.g., a URL). It is front-loaded with the purpose but then digresses into compute mode specifics. It could be more concise by removing the URL and consolidating compute mode 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?
The description covers compute modes, transient processing, input restrictions, and artifact export, but lacks clarity on the tool's return value (the result of the limit check itself). Without an output schema, the description should explain what the agent can expect, beyond the artifact. The mention of an AP2 artifact is helpful but 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?
The input schema has 100% coverage with descriptions for each parameter, so baseline is 3. The description adds minimal semantic value: it explains compute mode behavior and mentions policy_parameters are for the decision function, but refers to an external manifest for field names. This 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 identifies the tool as a 'Counterparty Internal Limit Check' and states it is a compute node for compliance mandates. The verb 'compute' and resource 'counterparty internal limit' are clear, but the description is mixed with technical details about compute modes rather than focusing solely on purpose. It does not differentiate from many sibling tools that may also perform checks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 when to use different compute modes ('auto', 'server', 'browser'), but fails to specify when this tool should be preferred over alternatives. There is no mention of prerequisites, exclusions, or context for selection given the extensive sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_cross_border_feesCross-Border B2B Fee CalculatorARead-onlyIdempotentInspect
Cross-Border B2B Fee Calculator: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-367-compute-cross-border-fees.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, not destructive), the description adds deterministic behavior, transient processing (no storage/logging), compute mode behaviors, GPU handling, and artifact provenance. This significantly enriches agent understanding.
Agents need to know what a tool does to the 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 packed with necessary details but remains well-structured, front-loading purpose then proceeding to modes, transient nature, and artifact export. Slightly verbose but every sentence contributes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 parameters, nested object, no output schema, many siblings), the description covers compute context, modes, transient processing, and artifact output. It sufficiently informs the agent without an 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% with detailed parameter descriptions. The description adds general guidance (e.g., anonymous inputs) but no parameter-specific detail 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 identifies this tool as a Cross-Border B2B Fee Calculator on OpenChainGraph. The purpose is specific, but it does not differentiate from numerous other compute_* siblings beyond its 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?
The description explains compute modes (auto/server/browser) and transient processing, guiding when to use each mode. It lacks explicit guidance on when to use this tool versus alternative fee calculators, but the context of cross-border B2B fees is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_custody_segregation_ratioCustody Segregation RatioCRead-onlyIdempotentInspect
Custody Segregation Ratio: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-538-custody-segregation-ratio.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| status | No | |
| formula | No | |
| line_items | No | |
| segregation_ratio | No | |
| total_claims_musd | No | |
| total_segregated_musd | No | |
| over_segregation_ceiling | No | |
| custody_location_breakdown | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations by disclosing key behaviors: deterministic execution, transient input processing with no storage/logging/retention, browser delegation for gpu:true nodes, and the export of an AP2 artifact with execution_hash. It also adds a security caveat about using synthetic/anonymised inputs. These are concrete, useful details not present in the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is roughly six sentences and includes a redundant opening ('Custody Segregation Ratio: OpenChainGraph compute node') that essentially repeats the title. The remaining content is informative but could be tightened—for example, the browser delegation details are somewhat tangential to the core purpose. It is not excessively long, but it is not as crisp as a two-sentence 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?
The description thoroughly covers the compute node's operational behavior, data handling, and compute binding. However, it omits a clear statement of what the custody segregation ratio is or what the tool's domain-specific function is. The output schema and parameter schema fill in invocation details, but a brief functional summary would make the description complete. As written, it feels like a generic compute-node wrapper rather than a tool-specific explanation.
Complex tools with many parameters or behaviors need more documentation. 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 provides 100% description coverage for all four parameters. The description's explanation of compute modes (auto/server/browser) largely duplicates the schema's own description for the compute property. It does not add any new meaning for parent_hashes, parent_tool_ids, or policy_parameters, so the value beyond the schema is minimal.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as an 'OpenChainGraph compute node (compliance_control)' but never explicitly states that it computes the custody segregation ratio. It says inputs are processed 'to compute the response' without naming what the response is. This is nearly a tautology, relying on the tool name for functional meaning rather than the description itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 details on compute modes (auto/server/browser) and advises using synthetic or anonymised inputs, but it offers no guidance on when to use this tool versus other compute or compliance tools. No alternatives are mentioned, and the intended use case (e.g., calculating segregation ratio for custody reporting) 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.
compute_cyber_incident_notification_clockCyber Incident Notification ClockARead-onlyIdempotentInspect
Cyber Incident Notification Clock: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-428-cyber-incident-clock.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable behavioral context: inputs are processed transiently and not stored, the tool is deterministic, GPU true forces browser delegation, and it exports an AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with the tool title, then explaining compute modes, data handling, output, and a reference link. Each sentence adds value. It is appropriately sized for the complexity of the tool, with 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 complexity (4 parameters, nested objects, no output schema), the description covers purpose, compute modes, data privacy, output format, and a link for details. It lacks details on policy_parameters fields and the exact decision function, but the link addresses that. Reasonably 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?
Input schema covers all 4 parameters (100% coverage). The description adds meaningful context for the 'compute' parameter, explaining the behavior of 'auto', 'server', and 'browser' modes. It also notes that policy_parameters are detailed in the tool's manifest. Without contradicting schema, it 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 this is a 'Cyber Incident Notification Clock' and an 'OpenChainGraph compute node' that exports an AP2 artifact with execution_hash. It specifies the verb 'compute' and the resource (notification clock). However, it could more explicitly differentiate from similar sibling tools like 'classify_dora_ict_incident_and_clock_deadlines'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 warns 'Use synthetic or anonymised inputs only,' which provides important security guidance. It also clarifies compute modes and when browser delegation occurs. However, it does not explicitly state when to prefer this tool over alternatives nor provide exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_discount_window_capacityDiscount Window Borrowing-Capacity CalculatorARead-onlyIdempotentInspect
Discount Window Borrowing-Capacity Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-427-discount-window-capacity.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description thoroughly discloses behavior beyond annotations: deterministic computation, transient processing, no storage/logging, compute mode options (auto/server/browser), Cloudflare Workers execution, browser delegation, and AP2 artifact export with execution_hash for provenance. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is well-structured with clear front-loading of purpose. It is somewhat lengthy but every sentence adds value, covering compute modes, processing details, and security advice. Could be slightly more concise but overall 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 tool's complexity, the description covers compute modes, security constraints (synthetic inputs), processing details, and output artifact (AP2). Missing explicit output format details, but overall provides robust context for an agent 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?
Schema coverage is 100%, so baseline is 3. Description adds context about compute modes and transient processing but does not significantly enhance parameter meanings beyond schema descriptions, which are already quite detailed for most 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 is a Discount Window Borrowing-Capacity Calculator and an OpenChainGraph compute node. The purpose is specific and well-defined, though it does not explicitly differentiate from many sibling 'compute_' tools beyond the unique 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 guidance is provided on when to use this tool versus its many siblings. The description only mentions to use synthetic or anonymized inputs, which is a constraint but not a usage guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_disparity_metricsCompute Disparate Impact MetricsARead-onlyIdempotentInspect
Compute Disparate Impact Metrics: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-230-compute-hmda-rate-spread. Open at: https://ainumbers.co/chaingraph/art-229-compute-disparity-metrics.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotated as read-only, idempotent, and non-destructive. Description adds that inputs are processed transiently and not stored, and explains browser delegation for GPU nodes, adding value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose, each sentence adds information (compute modes, data retention, chaining). A bit dense but not wasteful; could benefit from slight restructuring.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Explains compute modes, data handling, upstream dependency, and output artifact. Given complexity (4 params, nested object) and no output schema, it covers key aspects. Missing details on return format but mitigated by mentioning AP2 artifact.
Complex tools with many parameters or behaviors need more documentation. 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 full parameter descriptions. The description adds some context like 'See the tool's manifest for field names' for policy_parameters, but mostly reinforces 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 it computes disparate impact metrics as an OpenChainGraph compute node with compliance mandate. It specifies compute modes, data handling, and chaining from upstream artifacts, 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?
Explicitly advises using synthetic or anonymised inputs only and mentions the upstream artifact. Provides context on compute modes and when to use each. Lacks explicit when-not-to-use or alternatives but still offers clear guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_dscrDSCR & Interest Coverage Ratio CalculatorARead-onlyIdempotentInspect
DSCR & Interest Coverage Ratio Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-363-compute-dscr.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it states the tool is deterministic, computed server-side on Cloudflare Workers, transiently processed with no storage, and exports an AP2 artifact with execution_hash for chain provenance. This aligns with annotations (readOnlyHint, idempotentHint, destructiveHint=false) and provides deep 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 well-structured and all sentences add value, but it is slightly verbose. Key information is front-loaded, and technical details are logically organized. A minor reduction in length could improve 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 description covers purpose, compute modes, input handling, privacy, and artifact output. However, lacking an output schema, it does not describe the format of the computed DSCR/Interest Coverage Ratio values, which is a gap for a calculator 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?
All four parameters are described in the input schema (100% coverage). The description adds some context, especially for 'compute' modes and 'policy_parameters' being input for a decision function, but largely repeats schema descriptions. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'DSCR & Interest Coverage Ratio Calculator', specifying the verb 'compute' and resource 'DSCR and Interest Coverage Ratio'. It distinguishes from siblings by its specific financial ratio focus, and the title matches the purpose. The description also notes its role as an OpenChainGraph compute node, adding context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 detailed guidance on compute modes (auto/server/browser) and explains when each should be used based on gpu:true/false. It also advises using synthetic or anonymized inputs. However, it does not explicitly state when not to use this tool or mention alternative tools for similar tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_dti_ratiosDTI Ratio CalculatorARead-onlyIdempotentInspect
DTI Ratio Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-222-agency-eligibility-matrix. Open at: https://ainumbers.co/chaingraph/art-335-compute-dti-ratios.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only, idempotent, non-destructive; description adds transient processing, no storage/logging, AP2 artifact export, and compute mode details. Fully transparent and goes beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured and front-loaded with name and core purpose. Every sentence adds value, though slightly long. Could be trimmed slightly without losing 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?
Despite missing output schema, description explains the AP2 artifact output, execution_hash, and target feed. Covers compute modes, GPU handling, and data handling policies. Complete for a complex compute node.
Complex tools with many parameters or behaviors need more documentation. 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 parameters with descriptions; description adds extra context for policy_parameters and compute mode semantics. Adds value but schema already does 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 identifies the tool as a DTI Ratio Calculator and an OpenChainGraph compute node. It explains the compute modes and output feeds, distinguishing it from general peers, but does not explicitly contrast with 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?
Provides clear context on when to use server-side vs browser execution, and warns to use synthetic/anonymised inputs. Lacks explicit 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.
compute_dv01Bond DV01 (Price Value of a Basis Point)ARead-onlyIdempotentInspect
Bond DV01 (Price Value of a Basis Point): OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-329-tvm-bond-duration. Open at: https://ainumbers.co/chaingraph/art-330-tvm-dv01.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description adds that inputs are transient, not stored, and that the tool exports an AP2 artifact with execution_hash. It also details compute mode behavior for gpu:true/false nodes, providing substantial behavioral context without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is comprehensive and clearly structured, starting with purpose, then modes, then data handling. While a bit lengthy, every sentence adds essential information for the agent. Could be slightly more 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 tool with 4 params, no output schema, and good annotations, the description covers compute modes, input handling, artifact export, and dependencies. However, it lacks detail on the exact output format and leaves policy_parameters unspecified, which is a notable 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% but the description adds value for the 'compute' parameter by explaining defaults and behavior. For 'policy_parameters', it refers to the manifest, which is a minor gap. Overall, it enhances 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 title 'Bond DV01 (Price Value of a Basis Point)' and description clearly specify the tool computes DV01. It distinguishes itself from siblings like 'compute_bond_duration' and 'compute_convexity' by its focus on DV01 and its role as a deterministic OpenChainGraph compute node.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes and includes a caution about using synthetic inputs. However, it does not explicitly compare to sibling tools or state when to prefer this over alternatives like compute_bond_duration.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_escrow_analysisRESPA Aggregate Escrow AnalysisARead-onlyIdempotentInspect
RESPA Aggregate Escrow Analysis: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-235-test-hpml-escrow. Open at: https://ainumbers.co/chaingraph/art-342-compute-escrow-analysis.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark readOnly and idempotent. The description adds key behavioral details: inputs are processed transiently without storage, outputs an AP2 artifact with execution_hash for chain provenance, and consumes upstream artifacts. This goes beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured with purpose, compute modes, data handling, and outputs. Every sentence adds value, but it could be slightly more concise. 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 4 parameters (1 with enum), nested objects, no output schema, the description covers purpose, compute modes, data privacy, output artifact details, and upstream dependencies. It is complete for agent 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% and parameter descriptions are already detailed in the schema. The description does not add new meaning 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 performs RESPA Aggregate Escrow Analysis as a deterministic OpenChainGraph compute node. It identifies the specific domain (RESPA compliance) and distinguishes itself from sibling tools by being a compute node.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes (auto, server, browser) based on GPU and kernel registration, and advises using synthetic inputs only. It does not explicitly exclude alternative tools, but the compute mode guidance is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_esrp_exposureACA Employer Shared Responsibility Payment Exposure CalculatorARead-onlyIdempotentInspect
ACA Employer Shared Responsibility Payment Exposure Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-298-aca-affordability-safe-harbor. Output feeds: art-300-aca-226j-response-evidence-pack. Open at: https://ainumbers.co/chaingraph/art-299-aca-esrp-exposure.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive, and closed-world. The description adds that inputs are 'processed transiently' and 'not stored, logged, or retained', and that the tool is 'deterministic'. This goes beyond annotations to clarify privacy and determinism. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long (several sentences) but each adds information. It includes technical details (Cloudflare Workers, GPU) and usage notes. While informative, it could be more concise; for example, the link at the end may not be necessary for an agent. The structure is acceptable but not exceptionally tight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested object, no output schema), the description covers compute modes, data retention, artifact export, and chain dependencies. It explains how to use different modes and privacy considerations. Missing output schema is mitigated by mentioning artifact export. The context is largely sufficient for an 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%, so the schema documents parameters adequately. The description adds context for the 'compute' parameter (default behavior, server vs browser) and explains that 'parent_hashes' sets chain provenance. However, the 'policy_parameters' description says to 'see the tool's manifest for field names', which is vague. 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 'ACA Employer Shared Responsibility Payment Exposure Calculator' and specifies it is a deterministic OpenChainGraph compute node. This verb+resource combination uniquely identifies the tool among siblings like 'compute_aca_affordability_safe_harbor' and 'build_226j_response_evidence_pack'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes (auto, server, browser) based on GPU settings and kernel registration. It also mentions that upstream artifacts come from art-298 and output feeds art-300, providing chain context. However, it does not explicitly state when not to use this tool versus siblings, missing exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_experience_modNCCI Experience Modification CalculatorARead-onlyIdempotentInspect
NCCI Experience Modification Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-346-compute-experience-mod.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description confirms deterministic execution, transient input processing (not stored/logged/retained), and AP2 artifact export with execution_hash. This adds value beyond the annotations (readOnlyHint, idempotentHint).
Agents need to know what a tool does to the 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 moderately concise, front-loading the tool name and purpose. Each sentence conveys essential information (compute modes, transient processing, artifact export). Minor redundancy could be trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 an output schema, the description mentions the AP2 artifact and execution_hash. It covers compute modes, input handling, and a reference URL. Additional details on output format 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?
With 100% schema coverage, the description adds context explaining compute mode behavior (e.g., when server-side computation occurs) and advises on policy_parameters usage. This supplements schema information 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 computes an NCCI experience modification via an OpenChainGraph compute node. It specifies the tool's domain (NCCI) and distinguishes it from sibling tools by emphasizing its compute node paradigm and compliance 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 explains when to use different compute modes (auto, server, browser, gpu:true/false) and advises using synthetic/anonymised inputs. It does not explicitly contrast with siblings, but the purpose is narrow enough to imply appropriate use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_fdic_assessment_rateFDIC Deposit-Insurance Assessment Rate CalculatorARead-onlyIdempotentInspect
FDIC Deposit-Insurance Assessment Rate Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-431-fdic-assessment-rate-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, idempotentHint, destructiveHint) provide a baseline, but the description adds significant value by clarifying that inputs are processed transiently, not stored, and advising to use synthetic data. It also mentions execution_hash for chain provenance, going beyond annotation 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 front-loaded with the purpose but becomes verbose with compute mode details, privacy notes, and URLs. It could be more concise while retaining 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 4 parameters with full schema coverage and annotations, the description provides sufficient context on compute modes, data handling, and chain integration. However, it does not describe the output format or expected structure of 'policy_parameters', which 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%, so parameters are well-documented structurally. The description adds moderate value by explaining the 'compute' parameter modes in more detail, but it does not elaborate on 'policy_parameters' or 'parent_hashes/parent_tool_ids' 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 it calculates FDIC deposit insurance assessment rates and identifies itself as an OpenChainGraph compute node. The purpose is specific and distinct from sibling tools, though the inclusion of detailed compute mode explanations dilutes the primary purpose slightly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes ('auto', 'browser', 'server') and when they apply, providing some usage context. However, it does not compare this tool to alternatives or indicate when not to use it, limiting its guidance for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_federal_withholdingFederal Withholding Calculator (Percentage Method)ARead-onlyIdempotentInspect
Federal Withholding Calculator (Percentage Method): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-339-compute-gross-to-net. Open at: https://ainumbers.co/chaingraph/art-338-compute-federal-withholding.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explains that inputs are processed transiently and not stored, logged, or retained, and that synthetic or anonymised inputs should be used. It details compute modes (auto, browser, server) and that the tool exports an AP2 artifact with execution_hash for chain provenance. This adds significant context beyond the annotations, which already indicate readOnly and idempotent 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 moderately sized with multiple sentences, each adding value (basic purpose, compute modes, data handling, output). It is front-loaded with the primary purpose. 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?
Given the complexity (4 parameters, no output schema), the description covers essential context: compute modes, data handling, output artifact, and chain provenance. It lacks explicit return format details but sufficiently conveys what the tool produces and how it behaves.
Complex tools with many parameters or behaviors need more documentation. 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 baseline is 3. The description provides additional context for the 'compute' parameter, explaining default behavior and delegation logic, which adds value beyond the schema. However, other parameters like 'policy_parameters' are not elaborated beyond referencing a manifest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'Federal Withholding Calculator (Percentage Method)' and specifies it is an 'OpenChainGraph compute node (compliance_mandate)'. It uses specific verbs ('compute') and resources ('federal_withholding'), 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 mentions that the tool is part of a chain and its output feeds into another tool (art-339-compute-gross-to-net), but it does not explicitly state when to use this tool versus alternative withholding calculators or other compute 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.
compute_fha_mip_eligibilityFHA MIP Eligibility CalculatorBRead-onlyIdempotentInspect
FHA MIP Eligibility Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-224-fha-mip-eligibility.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable context: inputs are processed transiently, not stored or logged, and only synthetic/anonymized inputs should be used. It also explains deterministic execution and chain provenance, going beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph that front-loads the purpose. It is information-dense with minimal redundancy, though it could be reorganized for clarity (e.g., separating compute modes from security notes).
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 lacks critical output context: it does not describe what the tool returns (e.g., boolean, numeric value, eligibility status). The nested object 'policy_parameters' is underspecified, and the link to a manifest is insufficient for an AI agent. Given no output schema, the description should provide at least a summary of results.
Complex tools with many parameters or behaviors need more documentation. 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 provides additional context for the 'compute' parameter (explaining auto/server/browser behavior) but adds little for other parameters. The nested object 'policy_parameters' remains vague, pointing to an external manifest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 an 'FHA MIP Eligibility Calculator' and states it is a deterministic compute node for compliance mandate. However, it does not differentiate from sibling tools like compute_conforming_loan_limit or compute_dti_ratios, and the purpose could be more succinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explicit guidance on when to use this tool versus alternatives. It mentions 'compliance_mandate' but does not specify prerequisites or typical scenarios, leaving an AI 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.
compute_flsa_regular_rateFLSA Regular Rate & Overtime CalculatorARead-onlyIdempotentInspect
FLSA Regular Rate & Overtime Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-340-compute-flsa-regular-rate.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, etc.), the description adds valuable behavioral details: inputs are processed transiently and not stored/logged, it exports an AP2 artifact with execution_hash, and execution modes are fully explained. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and front-loaded with the tool's identity, but it could be more structured (e.g., bullet points). There is minor repetition ('OpenChainGraph compute node') but overall it is appropriately sized and informative for a 4-parameter 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?
The description fails to explain the actual FLSA calculation, return value/artifact structure, or the required fields for policy_parameters. With no output schema and a nested object parameter, the agent lacks key information to invoke the tool correctly. The deferral to the manifest leaves a critical 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 description adds minimal value. It mentions policy_parameters but defers to the tool's manifest for field names, providing no additional meaning beyond the schema's own 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 identifies the tool as an FLSA Regular Rate & Overtime Calculator and an OpenChainGraph compute node with a specific compliance mandate. It distinguishes itself from siblings by specifying it's a deterministic compute node for compliance, which is unique among many similar 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 explains compute modes (auto, server, browser) and advises using synthetic or anonymised inputs, which provides usage context. However, it does not explicitly state when to use this tool versus alternatives or what scenarios are inappropriate, leaving some ambiguity for the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_fr2052a_inflow_outflow_classificationFR 2052a Inflow/Outflow Bucket ClassifierBRead-onlyIdempotentInspect
FR 2052a Inflow/Outflow Bucket Classifier: OpenChainGraph compute node (regulatory_reporting). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-437-fr2052a-inflow-outflow-classifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses deterministic behavior, transient processing (no storage/logging), and compute mode delegation rules. This adds significant behavioral context beyond annotations (readOnlyHint, idempotentHint, destructiveHint), which are already positive. 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?
The description is a single coherent paragraph that front-loads the tool identity and purpose. It provides necessary details without verbosity, though the structure could be slightly improved with bullet points.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 no output schema, the description does not describe the format or structure of the classification result. It mentions exporting an AP2 artifact with execution_hash but leaves the actual response ambiguous, which is a significant gap for a tool with nested 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. The description adds marginal clarifying context for the 'compute' parameter's enum values and explains policy_parameters as input to a decision function, but does not substantially 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 identifies the tool as a classifier for FR 2052a inflow/outflow bucket classification within regulatory reporting. It provides a specific verb and resource, but does not explicitly differentiate it from sibling tools beyond the domain context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and warns to use synthetic inputs only, but lacks any guidance on when to use this tool versus alternatives or when not to use it. No explicit usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_fund_expense_ratiosCompute Fund Expense RatiosARead-onlyIdempotentInspect
Compute Fund Expense Ratios: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-375-compute-fund-expense-ratios.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses transient processing, no storage/logging, exports AP2 artifact with provenance hash, and determinism. Annotations already cover idempotent and read-only, so description adds value 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?
Description is dense but well-structured with key information front-loaded. Could be slightly more concise but no wasted sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, execution location, data handling, artifact output, and provides reference URL. Lacks detail on return format but adequate for a compute node with no 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. Description does not add significant meaning beyond schema; it repeats compute mode semantics already 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?
Clearly states it computes fund expense ratios and is a deterministic OpenChainGraph compute node. Distinguishes compute modes but does not compare to 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?
Provides clear guidance on when to use auto/server/browser compute modes and advises using synthetic/anonymised inputs. Does not explicitly exclude alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_fx_netting_positionsMultilateral FX Netting CalculatorBRead-onlyIdempotentInspect
Multilateral FX Netting Calculator: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-368-compute-fx-netting-positions.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, not destructive), the description adds valuable context: compute modes (auto, server, browser), transient processing without storage/logging, requirement for synthetic inputs, and export of an AP2 artifact with execution_hash. This helps the agent understand behavior and constraints.
Agents need to know what a tool does to the 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 front-loaded with the title and purpose, and each sentence adds distinct information. It is somewhat verbose but efficient for the detail conveyed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, nested objects, no output schema), the description covers compute modes, input requirements, and artifact export. However, it lacks details on the return format or how to interpret the AP2 artifact, which the link partially mitigates.
Complex tools with many parameters or behaviors need more documentation. 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 fully describes all 4 parameters with descriptions, so the tool description does not need to add parameter meaning. It provides no additional semantics beyond schema, achieving baseline 3 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?
The description clearly identifies the tool as a 'Multilateral FX Netting Calculator' and explains its role as a deterministic OpenChainGraph compute node. However, it relies on technical jargon and does not succinctly state a verb+resource (e.g., 'calculate multilateral FX netting positions').
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 to 'use synthetic or anonymised inputs only' but provides no guidance on when to prefer this tool over sibling netting tools (e.g., compute_multilateral_netting) or what scenarios it is suited for.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_globe_jurisdictional_etrGloBE Jurisdictional ETR CalculatorARead-onlyIdempotentInspect
GloBE Jurisdictional ETR Calculator: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-455-globe-sbie-topup. Open at: https://ainumbers.co/chaingraph/art-454-globe-jurisdictional-etr.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds contextual behavioral traits: inputs are processed transiently and not stored/logged/retained, a provenance chain is exported via execution_hash, and compute mode behavior varies by gpu flag. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the tool's core purpose and then systematically covers compute modes, transient processing, input advice, provenance, and output feed. It is fairly concise for the amount of detail, though the inclusion of the open link and output feed reference could be streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, nested object, no output schema), the description covers compute modes, transient processing, and provenance well. However, it lacks detail on what policy_parameters contains (refers to manifest) and does not describe the return value format beyond the execution hash. The output schema is absent, so some expectation of the response 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 coverage is 100% with descriptions for each parameter. The description enhances meaning by explaining compute mode behavior in detail and clarifying that policy_parameters are computed server-side for certain nodes. It adds value beyond the schema, especially for compute and policy_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 tool computes the GloBE Jurisdictional ETR and positions it as a deterministic OpenChainGraph compute node. It distinguishes itself from sibling globe tools (e.g., compute_globe_sbie_topup, compute_globe_topup_tax) by specifying its role as an upstream calculator feeding into art-455-globe-sbie-topup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 detailing compute modes, input transient processing, and advising the use of synthetic or anonymized inputs. It mentions the output feed to art-455-globe-sbie-topup, implying it is a precursor tool. However, it lacks explicit comparison to sibling globe tools or clear when-to-use vs. 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.
compute_globe_sbie_topupGloBE SBIE & Top-up Tax CalculatorARead-onlyIdempotentInspect
GloBE SBIE & Top-up Tax Calculator: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-454-globe-jurisdictional-etr. Open at: https://ainumbers.co/chaingraph/art-455-globe-sbie-topup.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description extensively discloses behavioral traits beyond annotations: compute modes (auto/server/browser), transient input processing ('not stored, logged, or retained'), deterministic execution, AP2 artifact export, and chain provenance details. This fully compensates for any implicit behavior not in 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 concise (3-4 sentences) yet dense with information. It front-loads the purpose, then elaborates on behavior and consumption. Every sentence 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 the absence of an output schema, the description covers key aspects: core function, compute modes, data handling, artifact export, upstream dependency, and a UI link. However, the policy_parameters structure is deferred to a manifest, which might omit detail for agents expecting full parameter 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?
With 100% schema coverage, the description adds significant meaning: it explains compute modes with versioning, defines parent_hashes as 'execution_hash values from upstream ChainGraph AP2 artifacts', clarifies parent_tool_ids ordering, and notes that policy_parameters references an external manifest. Each parameter's role is enriched 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 identifies the tool as a 'GloBE SBIE & Top-up Tax Calculator' and a 'deterministic OpenChainGraph compute node'. However, it does not explicitly distinguish this tool from related sibling tools (e.g., compute_globe_jurisdictional_etr, compute_globe_topup_tax), though the upstream artifact reference provides some positional context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 in a ChainGraph pipeline by mentioning upstream artifacts and compute modes, but it lacks explicit guidance on when to choose this tool over alternatives. No exclusions or alternative tool mentions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_globe_topup_taxGloBE Top-Up Tax & QDMTT Allocation CalculatorARead-onlyIdempotentInspect
GloBE Top-Up Tax & QDMTT Allocation Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-365-compute-globe-topup-tax.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable behavioral details: inputs are processed transiently and not stored (privacy guarantee), and it exports an AP2 artifact with execution_hash for chain provenance. It also warns to use synthetic/anonymized inputs. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise (5 sentences). It front-loads the title and purpose, then describes compute modes, data handling, and output. However, it repeats 'OpenChainGraph compute node' and could be slightly tighter. Overall 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?
With no output schema, the description should explain what the tool returns. It mentions exporting an AP2 artifact but does not specify what data the artifact contains (e.g., computed tax values). It covers purpose, compute modes, data handling, and provenance, but leaves output specifics implicit.
Complex tools with many parameters or behaviors need more documentation. 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 coverage is 100% with descriptions for all 4 parameters. The description adds minimal new semantic information beyond summarizing compute modes and noting that policy_parameters are defined in the manifest. The schema already provides adequate meaning for each 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?
The description begins with 'GloBE Top-Up Tax & QDMTT Allocation Calculator', clearly stating it computes a specific tax allocation. It also labels it as an 'OpenChainGraph compute node', which distinguishes it from sibling tools like other compute_* tools. The verb 'compute' and specific resource 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?
The description does not explicitly state when to use this tool over alternatives. It implies usage if someone needs GloBE top-up tax calculations, but lacks explicit guidance on when-not-to-use or alternative tools. The compute mode descriptions provide some context but not comparative guidelines.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_gross_to_netGross-to-Net Payroll Calculator (FICA)ARead-onlyIdempotentInspect
Gross-to-Net Payroll Calculator (FICA): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-338-compute-federal-withholding. Open at: https://ainumbers.co/chaingraph/art-339-compute-gross-to-net.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds significant behavioral context: inputs are transiently processed and not stored, use synthetic/anonymized inputs only, exports an AP2 artifact with execution_hash for chain provenance, and explains the deterministic nature and compute mode behavior. This goes well beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is comprehensive yet focused, with a clear front-loaded statement of purpose. Each sentence adds relevant information (execution modes, data handling, output, upstream dependency). It could be slightly more concise, but no superfluous content exists.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters, nested objects, and no output schema. The description explains the artifact export and processing behavior, but critically fails to describe the actual computed result (the gross-to-net amount). Without an output schema, the agent has no idea what the tool returns beyond a provenance hash, making it incomplete for a calculator.
Complex tools with many parameters or behaviors need more documentation. 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 documents all parameters. The description adds value for the 'policy_parameters' parameter by explaining it can be computed server-side and refers to a manifest for field names, but does not add meaning for 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 title and first line clearly state it is a 'Gross-to-Net Payroll Calculator (FICA)', specifying the exact verb (calculate) and resource (payroll from gross to net for FICA). The description further distinguishes it from other compute_ tools by noting it is an OpenChainGraph compute node with a compliance mandate and an upstream dependency on the federal withholding 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 implicit usage context by stating it consumes upstream artifacts from compute_federal_withholding, but does not explicitly state when to use this tool over alternatives or when not to use it. The execution modes (auto, server, browser) are explained, but no direct comparison to sibling tools is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_hmda_rate_spreadCompute HMDA Rate SpreadARead-onlyIdempotentInspect
Compute HMDA Rate Spread: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-229-compute-disparity-metrics. Open at: https://ainumbers.co/chaingraph/art-230-compute-hmda-rate-spread.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds deterministic execution, transient input handling, no storage/retention, browser delegation for gpu:true, and output as AP2 artifact. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with purpose and compute mode alternatives, but is somewhat lengthy. Each sentence adds value, though some technical details could be streamlined without losing substance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description covers output artifact type, execution hash, and downstream feed. While missing potential error handling or input validation details, it provides sufficient context for using 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?
With 100% schema coverage, the description adds value by explaining compute mode defaults and forcing conditions, and clarifying that policy_parameters are decision function inputs with reference to the manifest. This improves 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 tool computes HMDA rate spreads, identifies it as an OpenChainGraph compute node with a compliance mandate, and specifies its deterministic nature. This distinguishes it from sibling tools by its specific regulatory scope and compute 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 gives explicit guidance on compute modes (auto, server, browser) and when to use each, along with privacy advice to use synthetic/anonymized inputs. It doesn't compare to alternative tools but provides clear context for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_identity_proofing_assurance_levelIdentity-Proofing Assurance Level EvaluatorARead-onlyIdempotentInspect
Identity-Proofing Assurance Level Evaluator: OpenChainGraph compute node (regulatory_reporting). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-523-identity-proofing-assurance-level.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond annotations by disclosing deterministic behavior, transient input processing (not stored/logged/retained), server vs. browser execution modes, gpu:true delegation, and AP2 artifact export with execution_hash. This adds significant transparency that the annotations do not convey.
Agents need to know what a tool does to the 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 information-dense and front-loaded with the tool's identity. It covers compute modes, data handling, and output in a compressed manner, with no filler. The inclusion of a URL is useful. It could be slightly tighter, but the length is justified by the complexity of execution options.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 execution and data handling but omits what 'identity-proofing assurance level' actually is, what inputs are expected in 'policy_parameters', and what the output artifact contains beyond an execution_hash. With no output schema, this is a notable gap for an agent needing to interpret results.
Complex tools with many parameters or behaviors need more documentation. 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 meaningful context for the 'compute' parameter by explaining the default 'auto' behavior, browser delegation URL, and the role of 'policy_parameters' in the decision function. This enriches the schema descriptions, especially for compute mode.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with the title 'Identity-Proofing Assurance Level Evaluator' and identifies it as an OpenChainGraph compute node for regulatory_reporting, clearly indicating its domain and function. However, it does not explain what 'identity-proofing assurance level' means or what the evaluator computes, so the specific purpose is somewhat opaque beyond the title.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 a usage constraint ('Use synthetic or anonymised inputs only') and explains compute modes, but it does not state when to use this tool versus alternatives. No sibling tools or when-not-to-use scenarios are mentioned, leaving the agent without clear selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_intraday_liquidity_monitoringBCBS 248 Intraday Liquidity Monitoring SnapshotARead-onlyIdempotentInspect
BCBS 248 Intraday Liquidity Monitoring Snapshot: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-477-intraday-liquidity-monitoring.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses key behavioral traits beyond annotations: inputs are processed transiently and not stored, logged, or retained; the tool is deterministic; and it exports an AP2 artifact with execution_hash. This aligns with readOnlyHint and idempotentHint annotations, and adds important data handling 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 dense paragraph covering purpose, compute modes, data handling, and output. It is reasonably concise but could benefit from clearer structure (e.g., separate sentences for each aspect).
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters, no output schema, and complex compute behavior, the description covers purpose, compute modes, data handling, and output artifact. It lacks details on the AP2 artifact's content or return value format, but annotations and schema provide 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%, but the description repeats and slightly elaborates on the compute parameter's behavior. It does not add significant new semantics for other parameters 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 computes a 'BCBS 248 Intraday Liquidity Monitoring Snapshot' and identifies it as an 'OpenChainGraph compute node (compliance_mandate)'. This specific verb+resource combination distinguishes it from sibling tools, which include many generic compute_* 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 explains when to use different compute modes ('auto', 'browser') based on gpu:true/false and kernel registration. It also advises using synthetic or anonymised inputs. However, it does not explicitly state when not to use this tool or provide alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_ipfs_cidIPFS CID ComputerARead-onlyIdempotentInspect
IPFS CID Computer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-210-ipfs-cid-computer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description elaborates far beyond annotations: determinism, compute mode delegation (server vs. browser), transient processing with no storage/logging, and export of an AP2 artifact. Annotations already provide readOnlyHint, idempotentHint, and destructiveHint; the description adds crucial operational details without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the tool's identity and key purpose. It uses clear paragraphs separating compute modes, data handling, and output. Some repetition ('OpenChainGraph compute node' twice) and a trailing URL add minor verbosity, but overall it is well-structured 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?
The description covers core behavior and data handling, but lacks details on the return value format (the response from the tool, beyond the AP2 artifact reference) and does not explain the 'policy_parameters' object beyond a vague reference to a manifest. Given the tool's complexity (nested objects, multiple compute modes), these omissions 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?
The input schema has 100% coverage, so descriptions are already solid. The tool description adds meaningful context for the 'compute' parameter (default behavior, server vs. browser, gpu:true delegation) beyond the schema's enum. For other parameters, the description adds minimal but helpful elaboration (e.g., 'sets chain.parent_hashes').
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 this is an 'IPFS CID Computer' and an 'OpenChainGraph compute node' used for deterministic computation. It explicitly mentions computing a response and exporting an AP2 artifact with execution_hash. While the purpose is specific, the jargon (OpenChainGraph, AP2) may obscure clarity for general use. It distinguishes from sibling tools via specialization in IPFS CID computation with chain provenance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context: compliance mandate, compute modes (auto/server/browser), and a directive to use synthetic or anonymized inputs only. However, it does not explicitly compare this tool against sibling tools or state when to prefer it over alternatives, leaving the agent to infer based on the specialized function.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_irrInternal Rate of Return (IRR)ARead-onlyIdempotentInspect
Internal Rate of Return (IRR): OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-325-tvm-irr.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant behavioral context beyond annotations: inputs are processed transiently not stored/logged/retained, recommends synthetic/anonymised inputs, explains compute mode delegation. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and informative, covering purpose, behavioral notes, and parameters in a single paragraph. While it could be more scannable with bullet points, every sentence adds value and it 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?
Covers compute modes, data handling, and chain provenance, but does not describe the output format or value. Given no output schema, this is a notable gap. For a deterministic compute node, the output expected (e.g., IRR result) is missing.
Complex tools with many parameters or behaviors need more documentation. 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 extra meaning by explaining the compute parameter's default behavior, the purpose of parent_hashes/parent_tool_ids for chaining, and stating that policy_parameters fields are in the manifest.
Input schemas describe structure but not intent. Descriptions should explain 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 identifies the tool as computing Internal Rate of Return and being a deterministic OpenChainGraph compute node with an analytics mandate. However, it does not explicitly differentiate from similar sibling tools like compute_xirr, which also calculates IRR.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes (auto, browser, server) and the behavior for GPU nodes, but it does not provide explicit guidance on when to use this tool versus alternatives or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_large_exposures_limitLarge Exposures Limit CheckARead-onlyIdempotentInspect
Large Exposures Limit Check: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-425-large-exposures-limit-check.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, non-destructive behavior. The description adds significant context: inputs are transient, not stored or logged, the node is deterministic, and it exports an AP2 artifact with execution_hash for provenance. This goes beyond annotations and clearly discloses the tool's data handling and output characteristics.
Agents need to know what a tool does to the 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 front-loaded with the purpose and then provides technical details. However, it is somewhat verbose with repetition (e.g., 'Deterministic OpenChainGraph compute node' appears twice). It could be more concise without losing 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 complexity (4 parameters, nested object, no output schema), the description covers the key aspects: compute modes, data retention policy, output artifact, and a reference link for more details. It adequately enables an agent to understand what the tool does and how to invoke it, despite lacking explicit 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 input schema has 100% coverage with descriptions for all 4 parameters. The description adds some nuance about compute modes and mentions policy_parameters as 'input parameters for the tool's decision function', but does not detail its structure. Overall, the description provides marginal added value beyond the schema, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and description clearly state this is for computing large exposures limit checks. It specifies it is an OpenChainGraph compute node for compliance mandate, and explains the compute modes, which distinguishes it from many sibling tools that also involve computation. However, it does not explicitly differentiate from siblings with similar names or 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 provides guidance on compute modes (auto, server, browser) and cautions to use synthetic or anonymised inputs only. However, it does not explicitly state when to use this tool versus alternatives, nor does it provide clear when-not-to-use scenarios. The guidelines are implicit rather than explicit comparison to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_lcm_rate_derivationLCM Rate Derivation CalculatorCRead-onlyIdempotentInspect
LCM Rate Derivation Calculator: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-255-compute-lcm-rate-derivation.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint false), the description adds that inputs are transient, not stored or logged, that synthetic/anonymized inputs should be used, and that an AP2 artifact with execution_hash is exported. This provides valuable transparency about data handling and 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 moderately concise but includes technical details about execution environments, URLs, and data retention that could be streamlined. It starts with a clear label but then expands into a paragraph that mixes purpose with operational instructions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 parameters, nested objects, no output schema), the description inadequately explains the computation's logic or what policy_parameters should contain. The core domain concept 'LCM rate derivation' is left undefined, and no guidance on expected input structure or output interpretation is provided.
Complex tools with many parameters or behaviors need more documentation. 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 mentions compute modes and policy_parameters but adds no new details beyond what the schema descriptions already provide. 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 it is an 'LCM Rate Derivation Calculator' and an 'OpenChainGraph compute node', but it never defines what 'LCM rate derivation' actually computes. It fails to distinguish its specific purpose from numerous sibling 'compute_*' tools, leaving the agent unsure of what problem this tool solves.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute mode selection (auto/server/browser) based on gpu flag and kernel registration, but it does not explain when to use this tool over alternative tools. No prerequisites, exclusions, or context for choosing this tool are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_lcr_nsfr_leverageLCR / NSFR / Leverage Ratio CalculatorARead-onlyIdempotentInspect
LCR / NSFR / Leverage Ratio Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-364-compute-lcr-nsfr-leverage.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds valuable context: inputs are processed transiently, not stored/logged/retained, and synthetic/anonymized inputs are recommended. It also mentions exporting an AP2 artifact with execution_hash for chain provenance, which is beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a dense paragraph covering many details. While each sentence adds value, it could be more concise or structured (e.g., bullet points for modes). The URL at the end is somewhat extraneous for a tool definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, transient processing, and artifact export, which are key for a calculator tool with no output schema. However, it does not describe the output structure beyond the AP2 artifact, leaving some ambiguity for an agent about what the response contains.
Complex tools with many parameters or behaviors need more documentation. 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 all 4 parameters. The description adds meaning beyond the schema by explaining the compute parameter's modes (auto/server/browser), and clarifying that policy_parameters are for the decision function and are computed server-side for certain nodes. It also directs users to the tool's manifest for field 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 it is a calculator for LCR, NSFR, and Leverage Ratio, and distinguishes itself as an OpenChainGraph compute node with a specific compliance mandate. The URL provides additional reference, 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 explains compute modes and delegation behavior, giving some guidance on when to use each mode. However, it does not explicitly compare with sibling tools or state when to avoid this tool in favor of alternatives, leaving usage context incomplete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_llpa_stackLLPA Stack CalculatorARead-onlyIdempotentInspect
LLPA Stack Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-222-agency-eligibility-matrix. Open at: https://ainumbers.co/chaingraph/art-221-llpa-stack.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it specifies deterministic execution, transient processing (not stored/logged/retained), and Cloudflare Workers or browser execution. Annotations already provided readOnlyHint, idempotentHint, so the description reinforces and adds provenance 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 paragraph that front-loads the purpose ('LLPA Stack Calculator') and then efficiently covers compute modes, data handling, and provenance. It is concise without redundancy, though it could be structured with bullet points for 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 complexity (4 params, nested objects, no output schema), the description covers usage and behavior well but lacks details on the return value structure. It mentions an AP2 artifact with execution_hash, but the response format is not described, leaving a gap for agents.
Complex tools with many parameters or behaviors need more documentation. 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 description adds value by explaining the compute parameter modes in detail and providing the specific upstream artifact ID for parent_hashes. It also directs to the tool's manifest for policy_parameters, adding 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?
Description clearly states it is an 'OpenChainGraph compute node' for 'LLPA Stack' with a 'compliance_mandate', specifying the verb 'compute' and the resource. It distinguishes from sibling tools by providing the specific upstream artifact (art-222) and output type (AP2 artifact), making its purpose unique.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 for when to use different compute modes ('auto' vs 'browser' vs 'server') and notes that inputs should be synthetic/anonymised. However, it does not explicitly mention when not to use this tool or suggest alternatives from the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_ltv_ratiosLTV/CLTV/HCLTV Ratio CalculatorARead-onlyIdempotentInspect
LTV/CLTV/HCLTV Ratio Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-222-agency-eligibility-matrix. Open at: https://ainumbers.co/chaingraph/art-336-compute-ltv-ratios.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as read-only, idempotent, and non-destructive. The description adds valuable behavioral context: inputs are processed transiently and not stored/logged/retained, determinism, compute mode delegation logic, and that it exports an AP2 artifact with execution_hash for chain provenance. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose and provides detailed operational information in a structured manner. Every sentence adds value, though it could be slightly tightened 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?
There is no output schema, so the description must explain return values. It mentions exporting an AP2 artifact with execution_hash and feeding into art-222, but it does not explicitly describe what the agent receives as a response (e.g., the ratio values or artifact object). This leaves some ambiguity about the direct output 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 100%, so baseline is 3. The description adds context beyond the schema by explaining the compute parameter's effect (server vs. browser) and the role of policy_parameters as the decision function input, which enriches 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 clearly states it computes LTV/CLTV/HCLTV ratios as an OpenChainGraph compute node, and specifies it is deterministic. However, it does not explicitly differentiate from sibling compute tools like compute_dti_ratios, relying on the tool name and title for 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?
The description advises using synthetic or anonymised inputs only, which is a usage guideline. It also explains compute mode behavior (auto/server/browser) but does not provide explicit when-to-use vs. alternatives or when-not-to-use conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_mla_maprCompute MLA MAPRARead-onlyIdempotentInspect
Compute MLA MAPR: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-232-compute-scra-rate-cap. Open at: https://ainumbers.co/chaingraph/art-231-compute-mla-mapr.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, non-destructive. Description adds critical context: inputs are transiently processed, not stored, and only synthetic or anonymised inputs should be used. Also details compute mode behavior. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is reasonably concise with front-loaded purpose and structured details. It could be slightly tighter but efficiently communicates key points 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 no output schema, description usefully explains the artifact export (AP2 with execution_hash) and output feed. It also references a documentation link. Covers compute modes and input sensitivity, though the exact meaning of 'MLA MAPR' is left unexplained.
Complex tools with many parameters or behaviors need more documentation. 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 each parameter is described. The description adds minimal extra meaning beyond the schema, rephrasing the compute modes and policy_parameters role. Baseline 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 'Compute MLA MAPR' as an OpenChainGraph compute node with deterministic behavior, compute modes, and transient processing. It specifies the tool's resource (MLA MAPR) and context, distinguishing it from sibling compute tools by naming its specific output feed and linking to documentation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 it describes compute modes and mentions output feed, it does not provide when/when-not criteria or contrast with similar tools among the extensive sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_mlr_rebateMLR Rebate CalculatorARead-onlyIdempotentInspect
MLR Rebate Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-344-compute-mlr-rebate.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), it adds that inputs are processed transiently and not stored, and that it exports an AP2 artifact with execution_hash. 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 concise and front-loaded with purpose, but it is a single dense paragraph that could benefit from better structure (e.g., bullet points for modes).
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description omits what the response contains (aside from artifact). It covers compute behavior and provenance but leaves the tool's return value unclear for an AI 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 100%, so baseline is 3. The description adds minimal meaning beyond the schema, mostly repeating compute mode behavior. It references a manifest for policy_parameters fields without 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 it's an MLR Rebate Calculator, a deterministic OpenChainGraph compute node for compliance mandates. It specifies the resource and action, distinguishing it from sibling tools by its compliance mandate 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 provides context on compute modes (auto, server, browser) and when to use synthetic inputs, but does not explicitly compare with alternative tools 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.
compute_multilateral_nettingMultilateral Cash NettingARead-onlyIdempotentInspect
Multilateral Cash Netting: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-260-allocate-ihb-interest. Open at: https://ainumbers.co/chaingraph/art-259-compute-multilateral-netting.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, but the description adds valuable context: inputs are processed transiently and not stored or retained, and the tool exports an AP2 artifact. It also warns to use only synthetic or anonymized inputs. This goes beyond annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of 8 sentences, covering all key aspects without excessive verbosity. It front-loads the core purpose and then adds execution details, constraints, and outputs. While well-organized, it could be slightly more structured (e.g., bullet points) 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?
Given the complexity (4 params, nested objects, no output schema), the description adequately covers purpose, execution modes, data handling, input constraints, and the output artifact. It mentions the output feeds and gives a reference URL. However, it does not explicitly describe the return structure or format of the AP2 artifact, which would be helpful given no 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?
With 100% schema description coverage, baseline is 3. The description adds meaningful context for the 'compute' parameter by explaining the behavior of 'auto', 'server', and 'browser' modes in terms of execution location. For 'policy_parameters', it clarifies that inputs are computed server-side for gpu:false nodes with a registered kernel. This enriches 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 'Multilateral Cash Netting' as an OpenChainGraph compute node, specifying it is deterministic and processes inputs transiently. It distinguishes itself from sibling compute tools by mentioning OpenChainGraph, analytics mandate, and the export of AP2 artifacts with execution_hash. The title and description align, providing a specific verb-resource combination.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 'Use synthetic or anonymised inputs only' as a guideline, but does not explicitly state when to use this tool versus alternatives or provide exclusions. Among siblings like compute_fx_netting_positions or compute_gross_to_net, no differentiation is given, so usage context is implied but not clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_note_h_margin_debit15c3-3a Note H Margin-Debit ComputationARead-onlyIdempotentInspect
15c3-3a Note H Margin-Debit Computation: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-580-15c3-3a-note-h-margin-debit.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, etc.), the description discloses crucial behaviors: deterministic execution, transient processing with no storage/logging/retention, browser delegation for gpu:true nodes, and the export of an AP2 artifact with execution_hash. It also instructs using synthetic or anonymised inputs, which is valuable context not present in 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 information-dense and front-loaded with purpose, followed by operational details and a link. It does not waste words, though the repeated phrase 'OpenChainGraph compute node' occurs twice and the first sentence is long; still, every part contributes meaningful context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute tool with no output schema, the description covers execution modes, data handling/privacy, artifact output with execution_hash, and a web link for further info. It fully explains the novel browser-delegation behavior and ties it to the GPU flag, making the tool self-contained enough 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 description coverage is 100%, so the baseline is appropriate. The description adds semantic detail for the compute parameter (e.g., server-side on Cloudflare Workers, registered kernels, gpu:true delegation), but the policy_parameters object is left to the manifest with no field names or examples in the description, requiring external reference.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a deterministic OpenChainGraph compute node for the specific 15c3-3a Note H Margin-Debit computation, distinguishing it from generic compute tools by naming the regulation and note. It uses a specific resource scope, though it does not explicitly contrast with sibling tools like compute_15c3_3_reserve.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 clear context about when this tool runs (as an analytics_mandate compute node) and provides detailed guidance on the compute parameter (auto/server/browser). However, it does not explicitly say when to use this tool instead of alternative sibling tools or when not to use it, relying mostly on implied domain context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_npvNet Present Value (NPV)BRead-onlyIdempotentInspect
Net Present Value (NPV): OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-324-tvm-npv.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by detailing transient processing, compute modes (server/browser delegation), and provenance via execution_hash. It aligns with readOnlyHint and idempotentHint, with 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 well-structured, starting with the title and purpose, then detailing compute modes, transient processing, and output. It is informative without excessive verbosity, though some technical details could be streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 omits the tool's core output—the NPV result itself—and only mentions exporting an AP2 artifact with execution_hash. For a compute tool with no output schema, the agent lacks essential information about what the tool returns.
Complex tools with many parameters or behaviors need more documentation. 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 thoroughly explains the compute enum, but the critical policy_parameters object is left opaque with a note to 'see the tool's manifest'. This limits understanding of the actual NPV 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 title and opening phrase 'Net Present Value (NPV)' indicate the tool's purpose, but the description focuses on compute infrastructure rather than explicitly stating it computes NPV. It does not clearly differentiate from sibling tools like compute_irr.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute_irr. The only usage suggestion is 'Use synthetic or anonymised inputs only', which is a warning rather than contextual usage advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_oprisk_sma_2026Basel Operational Risk SMA (2026 Reproposal)ARead-onlyIdempotentInspect
Basel Operational Risk SMA (2026 Reproposal): OpenChainGraph compute node (capital_assessment). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-356-compute-oprisk-sma-2026.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable context: inputs are transiently processed, not stored/logged/retained, and provides details on compute modes (auto/browser, GPU delegation). 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 moderately long but front-loaded with purpose, then covers compute modes, transient processing, and output artifact. Every sentence adds value; however, it could be slightly more 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 no output schema, the description mentions an AP2 artifact with execution_hash but doesn't describe what the computed result contains (e.g., capital figure). The policy_parameters field is left underspecified, requiring external manifest lookup. This creates gaps for an agent to fully understand inputs and outputs.
Complex tools with many parameters or behaviors need more documentation. 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 description adds meaning for the 'compute' parameter (explains behavior of auto, browser, server modes). However, 'policy_parameters' is described only vaguely as 'input parameters for this tool's decision function' without field names, relying on an external manifest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and description clearly identify it as a Basel Operational Risk SMA 2026 compute node for capital assessment. It differentiates among sibling compute tools by focusing on op risk SMA. However, it doesn't explicitly state the exact output (e.g., capital amount).
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and warns to use synthetic inputs, but lacks explicit guidance on when to choose this tool over other compute tools (e.g., compute_rwa_erba_2026). Usage is implied through context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_options_greeksOptions Greeks CalculatorARead-onlyIdempotentInspect
Options Greeks Calculator: OpenChainGraph compute node (risk_parameter). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: qfa-04-xva-cva-calculator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/qfa-01-options-greeks.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, idempotentHint, destructiveHint) are all true. The description adds significant behavioral context: deterministic processing, transient inputs (not stored/logged/retained), compute modes (server vs browser), and export of AP2 artifact with execution_hash. 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 relatively long but front-loaded with the tool's identity. Each sentence provides useful technical detail about compute modes, data handling, and integration. A slightly more concise wording could improve, but it is 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 is complex with a nested parameter object and no output schema. The description lacks complete guidance: 'policy_parameters' structure is deferred to an external manifest, and the AP2 artifact format is not described. Users cannot fully understand how to invoke the tool correctly without external references.
Complex tools with many parameters or behaviors need more documentation. 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 descriptions add little value. 'policy_parameters' is critical but described vaguely as 'Input parameters for this tool's decision function' and directs users to the manifest for field names. The description fails to clarify what parameters are needed (e.g., strike, expiry, volatility).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and first sentence clearly state it is an 'Options Greeks Calculator' and a 'deterministic OpenChainGraph compute node (risk_parameter)'. This explicitly identifies the tool's function and distinguishes it from sibling tools like 'compute_bond_duration' or 'compute_npv'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and input handling, and mentions output feeds to downstream tools, giving context on its place in a chain. However, it does not explicitly state when to use this tool over alternatives or provide exclusion criteria. The warning to use synthetic inputs is helpful but limited.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_parametric_trigger_payoutParametric Trigger Payout CalculatorARead-onlyIdempotentInspect
Parametric Trigger Payout Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-252-validate-cat-bond-trigger-terms. Open at: https://ainumbers.co/chaingraph/art-251-compute-parametric-trigger-payout.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false. The description adds valuable context: inputs are processed transiently and not stored/logged/retained, it is deterministic, and it exports an AP2 artifact with execution_hash for chain provenance. This goes beyond annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the title and purpose, then logically covers compute modes, data handling, output, and links. Every sentence adds value, but the text is dense and could potentially be slightly more concise by merging some technical phrases.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema exists, so the description must explain return values. It mentions an AP2 artifact with execution_hash and a downstream tool, but does not fully describe the output structure. Given the tool's complexity (4 params, nested object) and no output schema, more detail on the output format and what the agent can expect 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?
Schema coverage is 100%, so baseline is 3. The description adds detail for the 'compute' parameter (auto/server/browser logic) and a warning about input sensitivity, but the 'policy_parameters' object is vague ('See the tool's manifest for field names'), leaving semantics incomplete. No additional semantic context is provided for parent_hashes or parent_tool_ids 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 states it is a 'Parametric Trigger Payout Calculator' and a 'Deterministic OpenChainGraph compute node', clearly indicating the verb (compute) and resource (parametric trigger payout). It also mentions its output feeds into a specific validation tool, providing context. However, it does not explicitly differentiate from other compute tools in the extensive sibling list, and the purpose is slightly buried among technical 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 explains compute modes ('auto', 'server', 'browser') and when each applies, and advises using 'synthetic or anonymised inputs only'. It does not provide guidance on when to use this tool versus alternatives or when not to use it, which is a gap given the large sibling tool set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_perp_fundingPerp Funding and Carry CalculatorARead-onlyIdempotentInspect
Perp Funding and Carry Calculator: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-270-perp-funding-carry.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals that the tool is deterministic, processes inputs transiently without retention, and exports an AP2 artifact with execution_hash for chain provenance. It also details compute mode behavior. These go beyond the annotations (readOnlyHint, idempotentHint) and provide 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 four sentences long, front-loads the purpose, and efficiently conveys compute modes, data handling, output, and a reference URL. 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 no output schema, the description hints at the return value (AP2 artifact with execution_hash). It covers input constraints, compute modes, data retention, and chains provenance. It is nearly complete, though it could note any error conditions or rate limits.
Complex tools with many parameters or behaviors need more documentation. 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. The description adds only the caution to use synthetic/anonymized inputs, which is a usage note rather than parameter semantics. Therefore, the description adds modest 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 identifies the tool as a 'Perp Funding and Carry Calculator' and a deterministic compute node. The verb 'compute' is implied by the name and the description states it is a calculator, which differentiates it from sibling tools like compute_perp_margin or compute_npv.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 server-side vs browser execution modes, including default behavior and gpu:true override. It also advises to use synthetic or anonymized inputs. However, it does not explicitly compare this tool to alternatives 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.
compute_perp_marginPerp Margin and Liquidation CalculatorARead-onlyIdempotentInspect
Perp Margin and Liquidation Calculator: OpenChainGraph compute node (derivatives_margin_health). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-214-perp-position-lifecycle. Open at: https://ainumbers.co/chaingraph/art-213-perp-liquidation-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds rich behavioral context: deterministic execution, transient processing (no storage/logging), compute location (server/browser), and export of an AP2 artifact with execution_hash. This exceeds the annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the purpose and includes essential details about compute modes, processing, and outputs. While dense, every sentence contributes information; minor conciseness could be improved 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 complexity (4 params, 100% schema coverage, annotations present, no output schema), the description covers compute modes, processing behavior, constraints, and downstream outputs (artifact, execution_hash, output feeds). It is complete for an agent to understand 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 the schema itself documents all parameters. The description mentions compute mode and policy_parameters but does not add semantic value beyond what the schema 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 it is a 'Perp Margin and Liquidation Calculator' and identifies it as a deterministic OpenChainGraph compute node. It specifies the resource (perp margin and liquidation) and the action (calculates), which distinguishes it from sibling tools like compute_perp_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 explains compute modes and transient processing but does not provide explicit guidance on when to choose this tool over alternatives. It advises using synthetic or anonymised inputs only, which is a constraint, but no comparison with other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_por_liabilities_compositePoR Liabilities ComposerARead-onlyIdempotentInspect
PoR Liabilities Composer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-280-reserve-proof-verifier. Open at: https://ainumbers.co/chaingraph/art-540-por-liabilities-composer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| formula | No | |
| not_proven | No | |
| computed_root | No | |
| inclusion_verified | No | |
| por_input_supplied | No | |
| regulatory_framework | No | |
| composite_determination | No | |
| reserve_to_liability_ratio | No | |
| liabilities_attestation_source | No | |
| reported_total_liabilities_musd | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral detail beyond the annotations: it states inputs are transient and not stored/logged/retained, that the node is deterministic, and that compute modes affect whether a browser delegation URL is returned. It also discloses the export of an AP2 artifact. This complements the readOnly/idempotent annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is densely packed with useful information, but it repeats 'OpenChainGraph compute node' in the first two sentences, which is redundant. The layout is front-loaded with the name and key attributes, and every other sentence contributes new 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?
The description covers the execution model, data handling, dependencies, and a link to open the tool, but it lacks a business-level explanation of what the liabilities computation produces and what policy_parameters do (since it refers to a manifest). The output schema likely compensates for return-value details, but the overall context is incomplete for understanding the tool's core 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?
While all parameters have schema descriptions (100% coverage), the description adds extra meaning for the 'compute' parameter by explaining the 'auto' default, the difference between 'server' and 'browser', and the gpu:true delegation rule. It does not add detail for policy_parameters beyond what the schema says ('see manifest'), so the added value is moderate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as a 'PoR Liabilities Composer' and an OpenChainGraph compute node for compliance mandates. It clearly indicates the domain (proof of reserves liabilities) and the action (compose/export an AP2 artifact), but it does not explain the actual computational output or differentiate from sibling tools like compute_15c3_3_reserve beyond the 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?
The description provides usage context including default compute behavior (server-side on Cloudflare Workers), browser delegation for gpu:true, and a direct instruction to use synthetic or anonymised inputs only. It also mentions the upstream artifact dependency, but it does not explicitly state when to choose this tool over 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.
compute_portfolio_varPortfolio Covariance & VaR EngineARead-onlyIdempotentInspect
Portfolio Covariance & VaR Engine: OpenChainGraph compute node (risk_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: sim-03-basel-rwa-scenario-modeler. Output feeds: qfa-03-stress-test-engine, rca-01-frtb-ima-pre-validator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/qfa-02-portfolio-var-engine.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds critical behavioral details: inputs are transiently processed, not stored/logged/retained; it exports an AP2 artifact with execution_hash for provenance; it behaves differently for GPU nodes; and it requires synthetic inputs. This fully informs the agent of side effects and privacy expectations.
Agents need to know what a tool does to the 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 approximately 10 sentences, front-loading the tool's identity and core behavior. Every sentence adds unique information (purpose, execution modes, data handling, chaining context, URL). No redundant or vague statements.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (chaining, multiple compute modes, GPU dependency, no output schema), the description covers all necessary aspects: how inputs are processed, what artifact is produced, upstream/downstream dependencies, and a link to the full documentation. The agent can safely invoke this tool without additional 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 schema has 100% coverage, so baseline is 3. The description adds value by explaining the behavior of the 'compute' enum modes in detail and connecting 'parent_hashes' and 'parent_tool_ids' to chain provenance. It also describes policy_parameters as inputs for the decision function, providing context beyond the schema's minimal 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 it is a 'Portfolio Covariance & VaR Engine' and an 'OpenChainGraph compute node', specifying the verb (compute) and resource (portfolio VaR). By mentioning upstream and downstream artifacts (sim-03-basel-rwa-scenario-modeler, etc.), it distinguishes itself from sibling tools like compute_bond_duration or compute_convexity, 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 explains when to use each compute mode ('auto', 'browser', 'server') based on gpu capability and registered kernel. It also advises using synthetic or anonymised inputs. However, it does not explicitly contrast with siblings or state when not to use this tool, leaving some ambiguity for the agent to infer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_pqc_deadline_ladderCNSA 2.0 Deadline Ladder CalculatorARead-onlyIdempotentInspect
CNSA 2.0 Deadline Ladder Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-387-pqc-deadline-ladder-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and idempotentHint=true, but the description adds significant behavioral detail: deterministic execution, transient processing, no storage/logging/retention, export of AP2 artifact, and explicit instruction to use only synthetic inputs. This goes well beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately sized and well-structured, starting with the main purpose and then explaining compute modes, data handling, and output. Every sentence is relevant, but it could be slightly more concise without losing 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?
There is no output schema, so the description must explain return values. It mentions 'Exports an AP2 artifact with execution_hash', which gives a high-level idea but lacks detail on the artifact structure or the ladder output. A more complete description of the result would improve 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, so the baseline is 3. The description adds context about compute modes and that policy_parameters are computed server-side when appropriate, but this is largely redundant with the schema descriptions. No significant new meaning is added 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?
The description clearly states it is a 'CNSA 2.0 Deadline Ladder Calculator' and an 'OpenChainGraph compute node (compliance_mandate)'. This specific verb-resource combination clearly indicates what the tool does, and it is distinct from sibling tools like compute_npv or compute_bond_duration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 detailed guidance on when to use the tool (e.g., for compliance mandate, compute mode selection) and instructs to use only synthetic or anonymised inputs. It does not explicitly contrast with alternatives, but the purpose is well-scoped so usage is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_pt_yt_yieldPendle Yield Tokenization Analyzer (PT/YT)ARead-onlyIdempotentInspect
Pendle Yield Tokenization Analyzer (PT/YT): OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-273-pendle-yield.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds value by stating it is deterministic, that inputs are processed transiently and not stored, and that it exports an AP2 artifact with execution_hash. This provides useful operational context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, containing several informative sentences without superfluous content. It front-loades the tool name and purpose, then adds behavioral and usage details. It is well-structured for an agent 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 has 4 parameters, no output schema, and robust annotations, the description covers operational behavior (deterministic, transient, compute modes), output (AP2 artifact), and a privacy warning. However, it lacks details on the exact output structure or how to interpret the artifact, which might be needed for full 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%, so the schema already documents all four parameters. The description adds minimal parameter-specific insight: it reiterates the compute modes and mentions that policy_parameters are computed server-side when applicable, but does not detail the fields within policy_parameters. The baseline of 3 is appropriate as the description neither significantly detracts nor enhances 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 it is a 'Pendle Yield Tokenization Analyzer (PT/YT)' and an 'OpenChainGraph compute node', specifying the domain and function. While it distinguishes from generic compute tools by naming Pendle yield, it does not explicitly differentiate from the many sibling compute nodes, which are all domain-specific. This leaves some ambiguity for an agent comparing 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 guidance on compute modes ('auto', 'server', 'browser') and their conditions, and advises using synthetic or anonymised inputs only. However, it lacks explicit 'when to use' vs 'when not to use' or alternatives. The agent is not told when this tool should be chosen over sibling tools like 'analyze_prediction_market' or 'compute_npv'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_raroc_loan_priceRAROC Loan Pricing CalculatorBRead-onlyIdempotentInspect
RAROC Loan Pricing Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-362-compute-raroc-loan-price.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true and idempotentHint=true. The description adds context: inputs are processed transiently, not stored, logged, or retained, and only synthetic or anonymised inputs should be used. It also explains deterministic behavior and compute delegation logic, which goes beyond annotation 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 front-loaded with the tool's purpose and is generally concise. It covers compute modes, data handling, and output type without unnecessary verbosity, though the inclusion of an open link adds minimal 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 explains compute behavior and output (AP2 artifact) but lacks detailed guidance on input parameters, especially policy_parameters, where it refers to an external manifest. No output schema exists, so more clarity on return values would have been beneficial.
Complex tools with many parameters or behaviors need more documentation. 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 description does not add meaning to parameters; it focuses on compute modes. For policy_parameters, it references 'the tool's manifest' without providing field names, offering limited additional semantic 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 states 'RAROC Loan Pricing Calculator: OpenChainGraph compute node (compliance_mandate)', clearly indicating the tool's purpose. It distinguishes itself from sibling compute tools through its specific focus on RAROC loan pricing, though it does not explicitly contrast with similar tools like compute_bond_duration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 details on compute modes but offers no guidance on when to use this tool versus alternatives. No when-to-use or when-not-to-use conditions are mentioned, and no sibling tools are referenced for comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_rbc_action_levelNAIC RBC Action Level CalculatorARead-onlyIdempotentInspect
NAIC RBC Action Level Calculator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-253-run-illustration-selfsupport-test. Output feeds: art-257-calculate-claims-stp-economics. Open at: https://ainumbers.co/chaingraph/art-254-compute-rbc-action-level.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds substantial behavioral context beyond annotations: details where computation runs (Cloudflare Workers or browser), transient processing with no storage/logging/retention, export of AP2 artifact with execution_hash for chain provenance. Annotations already mark readOnly, idempotent, non-destructive; description enriches with privacy and compute binding specifics.
Agents need to know what a tool does to the 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 relatively long but well-structured: opens with purpose and type, then covers compute modes, privacy, and chain context in logical order. Each sentence adds value, though could be slightly more concise. Front-loaded with key identifier.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, description thoroughly covers all aspects: compute modes, privacy, chain provenance (consumes from art-253, feeds art-257), and provides a direct link. With 4 parameters including nested object, this is complete enough for correct agent 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 covers 100% of parameters, but description adds meaning: explains compute modes (auto/server/browser) beyond enum, interprets parent_hashes and parent_tool_ids in chain context, and clarifies policy_parameters as input to decision function with reference to tool's manifest. This goes beyond baseline 3 expected from 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 it is an 'NAIC RBC Action Level Calculator' and a 'Deterministic OpenChainGraph compute node' with compliance mandate. It specifies the verb (compute) and resource (RBC action level), and differentiates from sibling tools like 'compute_rbc_action_level_private' through mention of chain graph and mandate context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 when to use: for NAIC RBC action level calculation within a chain graph, with detailed compute mode options (auto, server, browser) and privacy guidance to use synthetic/anonymized inputs. It mentions upstream and downstream artifacts but lacks explicit when-not-to-use or alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_rbc_action_level_privatePrivate-Input NAIC RBC Action LevelARead-onlyIdempotentInspect
Private-Input NAIC RBC Action Level: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-414-compute-rbc-action-level-private.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and idempotentHint=true, but the description adds significant behavioral detail: determinism, execution location (Cloudflare Workers or browser delegation), transient input processing, no storage/logging/retention, and export of AP2 artifact with execution_hash. This goes well beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of moderate length, front-loading the purpose. Every sentence adds value, but it could be more structured (e.g., bullet points) for quick scanning. A URL is included but not essential.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description should clarify what the tool returns. It only mentions 'exports an AP2 artifact with execution_hash' without describing the actual RBC action level result or the structure of the output. The nested 'policy_parameters' object is not explained beyond referencing a manifest. This leaves significant gaps for an agent to understand the tool's full behavior.
Complex tools with many parameters or behaviors need more documentation. 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 no new parameter-level detail beyond what the schema provides (e.g., compute modes are already described in the schema). It restates some info but does not enhance understanding of individual 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 title and description clearly state 'Private-Input NAIC RBC Action Level' as a deterministic OpenChainGraph compute node. It specifies that inputs are processed transiently and not stored, distinguishing it from public variants like compute_rbc_action_level. The verb 'compute' and resource 'RBC Action Level' are specific and 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 states 'Use synthetic or anonymised inputs only' and explains compute modes (auto, server, browser) which guide usage. It implies use for sensitive data by emphasizing transient processing, but does not explicitly contrast with public 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.
compute_reg_z_appendix_j_aprReg Z Appendix J APR SolverARead-onlyIdempotentInspect
Reg Z Appendix J APR Solver: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-332-build-amortization-schedule. Output feeds: art-217-trid-apr-accuracy. Open at: https://ainumbers.co/chaingraph/art-215-reg-z-appendix-j-apr.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, idempotentHint, destructiveHint) are present. Description adds deterministic, transient processing (not stored/logged/retained), requires synthetic/anonymised inputs, and explains the AP2 artifact with execution_hash for chain provenance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single paragraph but concise; every sentence adds value. Could benefit from bullet points for readability, but front-loads purpose and includes key details without 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?
Given 4 params, nested objects, and no output schema, description covers compute modes, input handling, chain provenance, and links to upstream/downstream artifacts. Properly explains the AP2 artifact. 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?
Schema coverage is 100%, with descriptions for each parameter. The tool description adds context: explains compute modes beyond enum values, ties parent_hashes/parent_tool_ids to chain provenance, and describes policy_parameters as input for decision function. Adds value without redundancy.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and description clearly state it's an APR solver for Reg Z Appendix J, a specific compliance mandate. It distinctively identifies itself as an OpenChainGraph compute node, differentiating from siblings that are also compute tools but for other 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?
Description explains when to use each compute mode (auto, server, browser) and notes gpu:true always delegates. It recommends using synthetic inputs and specifies links to upstream/downstream artifacts. However, it doesn't explicitly distinguish when to prefer this tool over other APR or compliance compute siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_remittance_disclosureRemittance Disclosure Calculator (Reg E Subpart B)ARead-onlyIdempotentInspect
Remittance Disclosure Calculator (Reg E Subpart B): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-249-compare-corridor-cost. Open at: https://ainumbers.co/chaingraph/art-248-compute-remittance-disclosure.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations, the description details transient processing, no storage/logging, compute mode behavior (auto/server/browser), and delegation conditions. This adds meaningful behavioral context not covered by readOnlyHint or idempotentHint alone.
Agents need to know what a tool does to the 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 dense and covers many aspects (regulatory, compute modes, data handling, provenance, output feed) but lacks clear sectioning or bullet points. Information is front-loaded but overwhelms with technical 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's complexity, no output schema, and rich annotations, the description adequately explains transient data handling, compute modes, provenance, and output artifact. It is 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 coverage is 100%, and the description does not add significant meaning beyond what the schema property descriptions provide. 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 it is a 'Remittance Disclosure Calculator (Reg E Subpart B)' and an 'OpenChainGraph compute node (compliance_mandate)'. It specifies the output type and feed, but does not explicitly differentiate from sibling compute tools beyond the regulatory reference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using synthetic or anonymised inputs and mentions the output feed, but does not state when to avoid this tool or name alternatives. Usage context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_rwa_erba_2026ERBA / Standardized RWA Calculator (Basel Endgame 2026)ARead-onlyIdempotentInspect
ERBA / Standardized RWA Calculator (Basel Endgame 2026): OpenChainGraph compute node (capital_assessment). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-355-erba-standardized-rwa-calculator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds important behavioral details: transient input processing, no storage, AP2 artifact export with execution_hash, and compute mode behaviors (auto, server, browser, GPU delegation). No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with purpose and provides essential details on execution modes and data handling. It could be slightly more concise; for example, the URL at the end is informative but adds 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 tool's complexity (4 params, nested policy_parameters object, output artifact), the description covers execution model, data transience, and output provenance. It assumes domain knowledge about ERBA/Standardized RWA but is complete for an agent with that 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 need to explain individual parameters. It mentions compute modes and transient processing but adds no parameter-specific 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 identifies it as a deterministic RWA calculator for ERBA/Standardized approach under Basel Endgame 2026, with a specific name and title. It does not explicitly differentiate from sibling compute tools like compute_rwa_scenarios, but the ERBA/Standardized designation provides purpose 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 lacks guidance on when to use this tool versus alternatives. It instructs to use synthetic/anonymized inputs but does not specify the context or conditions for selecting this tool over similar RWA calculators.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_rwa_scenariosBasel RWA Scenario ModelerARead-onlyIdempotentInspect
Basel RWA Scenario Modeler: OpenChainGraph compute node (capital_assessment). Regulatory deadline: 2027-01-01 (Basel 3.1 output floor — UK PRA PS1/26 January 1, 2027). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-07-basel31-reporting-delta-calculator. Output feeds: ml-03-timeseries-anomaly-detector, qfa-02-portfolio-var-engine, rca-01-frtb-ima-pre-validator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/sim-03-basel-rwa-scenario-modeler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and destructiveHint. The description adds that it is deterministic, processes inputs transiently without storage, and exports an artifact with execution_hash. This aligns with annotations and provides crucial context like 'Use synthetic or anonymised inputs only' and regulatory deadline, going beyond what annotations offer.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is informative and front-loaded with purpose, but it is somewhat lengthy and could be more structured. Each sentence provides value, so it earns a 4.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 and lack of output schema, the description provides regulatory deadline, compute mode behavior, transient processing, chaining information, and a URL. It explains the export of an AP2 artifact but not its structure. Overall, it is sufficiently complete for an agent to understand the tool's role in a chain graph.
Complex tools with many parameters or behaviors need more documentation. 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 explains the 'compute' parameter behavior in detail but does not add significant meaning to parent_hashes, parent_tool_ids, or policy_parameters beyond their schema descriptions. The parameter semantics are adequate but not enhanced.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'Basel RWA Scenario Modeler' and an 'OpenChainGraph compute node (capital_assessment)'. It specifies the action (compute scenario) and resource (RWA scenarios), and includes regulatory context (Basel 3.1 output floor) that distinguishes it from sibling compute tools like compute_basel31_delta and compute_rwa_erba_2026.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, browser, server), input privacy (use synthetic/anonymized inputs), and transient processing. It also lists upstream and downstream artifacts for chain integration. However, it does not explicitly state when not to use this tool or compare it directly to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_scra_rate_capCompute SCRA Rate CapARead-onlyIdempotentInspect
Compute SCRA Rate Cap: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-231-compute-mla-mapr. Open at: https://ainumbers.co/chaingraph/art-232-compute-scra-rate-cap.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: inputs are processed transiently and not retained, execution environments (Cloudflare Workers vs browser delegation) are specified, and the tool is deterministic, producing an artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph with useful information but is somewhat verbose. Key points are front-loaded, but details like the specific URL and GPU node conditions may be extraneous for an AI agent. Could be more 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?
The description covers purpose, behavior, constraints (use synthetic inputs), output nature (AP2 artifact), and upstream dependency. However, with no output schema, it does not detail the returned artifact structure. The nested policy_parameters object is not fully explained, leaving some completeness 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 baseline is 3. The description reiterates compute mode behavior already in the schema and references an external manifest for policy_parameters fields. It adds minimal new parameter-specific information 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 'Compute SCRA Rate Cap' as the main function and identifies it as a deterministic OpenChainGraph compute node. It distinguishes from siblings by mentioning it consumes upstream artifacts from compute_mla_mapr. However, it does not explain the SCRA acronym, which slightly limits clarity for agents unfamiliar with the domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, browser, server) and conditions for each, but does not explicitly compare this tool to its many siblings or indicate when to prefer it over alternatives. The mention of an upstream artifact gives some chain context but not decision criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_settlement_efficiency_kpiSettlement Efficiency KPI EngineARead-onlyIdempotentInspect
Settlement Efficiency KPI Engine: OpenChainGraph compute node (model_governance). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-78-csdr-penalty-calculator, art-80-ssi-conformance-checker, art-79-settlement-fail-predictor. Output feeds: cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-84-settlement-efficiency-kpi.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds valuable behavioral context beyond annotations: inputs are processed transiently and not stored or retained, and users should only use synthetic or anonymised inputs. It also states the node is deterministic, aligning with idempotentHint. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise and well-structured: it starts with purpose, then details compute modes, data handling, and provenance. Every sentence adds information, though some repetition (e.g., reiterating compute modes) could be tightened.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, nested objects, no output schema but good annotations), the description covers purpose, compute modes, data handling, and artifact provenance. It lacks explicit output format details, but the mention of AP2 artifact with execution_hash provides sufficient context for the agent to understand the result 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 coverage is 100%, so the schema documents parameters fully. The description adds meaningful context for the 'compute' parameter, explaining mode behavior. For other parameters, it provides minimal extra detail (e.g., referencing manifest for field names), but overall adds 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 tool computes a 'Settlement Efficiency KPI' via an OpenChainGraph compute node. It specifies the resource (KPI Engine), verb (compute), and differentiates from siblings by detailing its role in a chain: consuming upstream artifacts and exporting an AP2 artifact for provenance. This is specific and distinct given the large 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?
The description provides explicit guidance on compute modes ('auto', 'server', 'browser') and when to use each, including delegation conditions. It advises using synthetic or anonymised inputs. However, it does not explicitly differentiate this tool from alternatives among the many siblings, which would enhance selection precision.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_stock_token_collateral_haircutHalt + Staleness Collateral HaircutARead-onlyIdempotentInspect
Halt + Staleness Collateral Haircut: OpenChainGraph compute node (collateral_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: 505-tokenized-collateral-eligibility-checker, 508-repo-haircut-collateral-calculator. Open at: https://ainumbers.co/chaingraph/art-320-rhc-collateral-haircut.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant value beyond annotations: it states inputs are processed transiently, not stored/logged/retained, and the tool is deterministic. It also clarifies compute modes and that gpu:true nodes always delegate to browser. No contradiction with annotations (readOnlyHint, idempotentHint, etc.).
Agents need to know what a tool does to the 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 efficient and front-loaded with purpose. It covers key aspects without verbosity. A slight reduction in technical detail on compute modes might improve conciseness, but it is 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 complexity (4 params, no output schema), the description covers purpose, compute modes, input handling, provenance, and upstream dependencies. It mentions the AP2 artifact output but lacks explicit return value details. Overall fairly 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% description coverage, so baseline is 3. The description adds some context about policy_parameters being computed server-side in certain modes, but overall does not significantly enhance meaning beyond the schema's own 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 computes a 'Halt + Staleness Collateral Haircut' as an OpenChainGraph compute node. It specifies it is for stock token collateral, distinguishing it from siblings like calculate_repo_haircut. The verb 'compute' and resource 'stock token collateral haircut' are explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using 'synthetic or anonymised inputs only', which is a key usage instruction. It also explains compute mode behavior (auto, server, browser) and that inputs are not stored. However, it 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.
compute_stress_test_scenariosStress Test EngineARead-onlyIdempotentInspect
Stress Test Engine: OpenChainGraph compute node (risk_parameter). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: qfa-02-portfolio-var-engine. Output feeds: rca-01-frtb-ima-pre-validator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/qfa-03-stress-test-engine.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it states that 'Inputs are processed transiently... and are not stored, logged, or retained,' and that the tool is 'Deterministic'. Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which are consistent. The additional details about server-side vs. browser execution and artifact export provide useful 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 fairly long and includes details like the full URL and a list of upstream/downstream artifacts. While it is structured (overview first, then details), it could be more concise by omitting the URL and relying on schema for parameter descriptions. However, it front-loads the key purpose and mode selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 an output schema, the description fully explains what the tool produces: 'Exports an AP2 artifact with execution_hash for chain provenance.' It also specifies upstream consumers (qfa-02) and downstream feeds (rca-01, ptg-01), giving the agent a complete picture of how to use the tool in a chain. The description covers all aspects 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%, meaning each parameter has a description. The description text adds minimal extra value beyond the schema; for example, it mentions 'See the tool's manifest for field names' for policy_parameters, which is not more informative. The compute parameter is adequately described in both, but the description does not significantly enhance understanding of 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 identifies the tool as a 'Stress Test Engine' and an 'OpenChainGraph compute node (risk_parameter)'. It specifies the core function of computing stress test scenarios and distinguishes itself from similar sibling tools by explicitly stating the deterministic nature and the compute mode options, which are unique among the 'compute_*' 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 detailed guidance on when to use different compute modes ('auto', 'browser', 'server') based on gpu:true/false and kernel registration. It also instructs to 'Use synthetic or anonymised inputs only.' However, it does not explicitly state when NOT to use this tool relative to alternatives, though the context of upstream/downstream artifacts implicitly defines its role.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_tempo_mainnet_fee_capacityTIP-1010 Mainnet Fee & Payment-Lane Capacity CalculatorARead-onlyIdempotentInspect
TIP-1010 Mainnet Fee & Payment-Lane Capacity Calculator: OpenChainGraph compute node (treasury_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-389-tempo-mainnet-fee-capacity.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare read-only and idempotent; description adds deterministic transient processing, chain provenance export, and browser delegation rules. 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?
Concise single paragraph that front-loads purpose, explains compute modes, and includes usage caveats. Efficient 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?
Covers purpose, compute modes, input privacy, and chain provenance, but lacks description of output format or return values since no 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?
Schema coverage is 100%; description adds meaningful context for 'compute' parameter (default server-side vs browser) and clarifies 'policy_parameters' usage with server-side computation.
Input schemas describe structure but not intent. Descriptions should explain 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 is a TIP-1010 Mainnet Fee & Payment-Lane Capacity Calculator, with specific verb+resource. Distinguishes from siblings by referencing specific TIP and network.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and browser delegation, but does not explicitly say when to use this tool versus alternatives or exclude other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_trid_tolerance_cureTRID Fee Tolerance and CureBRead-onlyIdempotentInspect
TRID Fee Tolerance and Cure: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-216-trid-tolerance-cure.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnly, idempotent, and non-destructive hints. The description adds valuable behavioral context: inputs are processed transiently and not stored, recommends using synthetic or anonymised inputs, explains compute modes, and confirms output is an AP2 artifact with execution_hash for provenance. This goes beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of five sentences, starting with the purpose. It is concise but could be better structured with bullet points or clearer separation of concerns. However, it avoids unnecessary 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?
The description explains compute modes and data handling but lacks specifics on what the tool actually computes (TRID fee tolerance and cure) and the expected output format beyond 'AP2 artifact'. Without an output schema, more detail on the return value would be helpful. 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%, so baseline is 3. The description does not add meaningful detail beyond the schema; it only vaguely references 'See the tool's manifest for field names' for policy_parameters. No additional semantic value 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 clearly states it is a deterministic OpenChainGraph compute node for TRID Fee Tolerance and Cure, a compliance mandate. It specifies its purpose as computing TRID fee tolerance and cure. However, it does not explicitly differentiate from other similar compute nodes among the many sibling tools, which is a common pattern.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. It does not mention prerequisites, scenarios, or exclusions. The description focuses on compute modes and data handling but lacks context for choosing this tool over other compliance compute nodes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_va_funding_fee_residualVA Funding Fee and Residual IncomeARead-onlyIdempotentInspect
VA Funding Fee and Residual Income: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-225-va-funding-fee-residual.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description confirms the tool is deterministic (matches idempotentHint) and states that inputs are processed transiently and not stored, logged, or retained (aligns with readOnlyHint and destructiveHint=false). It adds context that gpu:true nodes delegate to the browser. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat verbose, repeating phrases like 'Deterministic OpenChainGraph compute node' and including a URL. It could be more concise by front-loading the core purpose and trimming redundant 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?
Despite the length, the description lacks information about what the tool actually returns (aside from an AP2 artifact with execution_hash). For a computation tool, the output values (VA funding fee, residual income) are not described. This gap is significant given no 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?
All 4 parameters are described in the schema with 100% coverage. The description adds context for 'policy_parameters' as input parameters for the decision function, and references to the tool's manifest. This adds meaningful guidance 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 it computes VA funding fee and residual income as an OpenChainGraph compute node. The verb 'compute' and resource 'VA Funding Fee and Residual Income' are specific. However, the description is verbose and includes extraneous details about compute modes and chain provenance, which slightly dilute the core 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 provides explicit guidance on compute modes ('auto', 'server', 'browser') and when to use each, including server-side vs client-side execution. It also warns to use synthetic or anonymised inputs only. However, it does not differentiate this tool from the many sibling tools or specify when to choose this tool over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_var_backtest_traffic_lightVaR Backtesting Traffic-Light Zone CalculatorARead-onlyIdempotentInspect
VaR Backtesting Traffic-Light Zone Calculator: OpenChainGraph compute node (capital_assessment). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-429-var-backtest-traffic-light.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive. Description adds value by stating deterministic execution, transient input processing (no retention), and export of AP2 artifact with execution_hash. This goes well beyond annotations by detailing the compute behavior and data 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?
The description is a single dense paragraph that quickly front-loads the main purpose. Each sentence adds distinct information, though some technical details make it a bit long. Overall it is moderately concise and structured well.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without an output schema, the description should explain the return format. It mentions exporting an AP2 artifact with execution_hash but does not describe the traffic light zone result itself. The linked URL provides external documentation, but the description alone is incomplete for an agent to understand the output 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% so the description's addition is limited. It does explain the compute enum behavior and the purpose of parent_hashes/ policy_parameters, but these are largely inferred from the schema. The extra context on server-side computation for gpu:false nodes adds minor 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?
Clearly states it computes VaR Backtesting Traffic-Light Zone via an OpenChainGraph compute node. The verb and resource are specific. However, it does not differentiate this tool from siblings in the extensive sibling list, leaving some 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?
Provides usage guidelines for compute modes (auto, server, browser) and warns to use synthetic inputs only. However, it does not advise when to choose this tool over alternative tools for similar VaR backtesting tasks, missing explicit when-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_xirrXIRR (Irregular Dated Cash Flows)BRead-onlyIdempotentInspect
XIRR (Irregular Dated Cash Flows): OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-326-tvm-xirr.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only, idempotent, non-destructive behavior. The description adds significant behavioral context: inputs are processed transiently and not stored, logged, or retained; users should use synthetic or anonymized inputs; it exports an AP2 artifact with execution_hash. These disclosures go beyond annotations and aid safe usage.
Agents need to know what a tool does to the 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 moderately concise but contains some redundancy (e.g., 'OpenChainGraph compute node' appears twice). It front-loads the purpose and key details but could be tighter. Every sentence adds value, but the overall length is acceptable for the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (XIRR, compute modes, chaining), the description covers essential aspects: purpose, compute modes, data handling, and artifact export. However, it lacks explanation of the output (no output schema) and does not detail the policy_parameters structure. A link to documentation partially compensates, but 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?
Schema description coverage is 100%, so all four parameters are documented in the input schema. The description does not add substantial semantics beyond what the schema provides. It reiterates compute modes and chaining but does not explain policy_parameters fields or provide examples. 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 computes XIRR for irregular dated cash flows and identifies it as a deterministic compute node on OpenChainGraph. It distinguishes from regular IRR by mentioning 'Irregular Dated Cash Flows' in the title and description. However, it could be more explicit about differentiating from sibling tools like compute_irr.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 detailed context about compute modes (auto, server, browser) and execution environments but offers no guidance on when to use this tool versus alternatives (e.g., compute_irr). It does not specify prerequisites or scenarios where XIRR is appropriate, leaving the agent without decision criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_markdown_documentMarkdown Document ConverterARead-onlyIdempotentInspect
Markdown Document Converter: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-191-conversion-receipt-builder. Open at: https://ainumbers.co/chaingraph/art-189-markdown-document-converter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds value beyond annotations by explaining transient input processing, no storage/logging, and output as an AP2 artifact with execution hash. Also details compute mode behavior. Does not contradict annotations (readOnlyHint, etc.).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise with 7 sentences covering essential aspects: purpose, compute modes, privacy, output. Well-structured with front-loaded identity. Could remove the URL without loss, 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?
Covers compute modes, privacy, and output, but lacks explicit description of the converted output format (e.g., markdown to what?). The 'policy_parameters' structure is vague (see manifest). With no output schema and nested objects, more detail 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?
Schema coverage is 100%, so baseline is 3. The description adds significant context for the 'compute' parameter (explaining server vs. browser execution) and mentions 'policy_parameters' refers to a manifest. This provides useful 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 clearly states it converts markdown documents and specifies it is an OpenChainGraph compute node. However, it does not explicitly state the output format (e.g., HTML, PDF), leaving some ambiguity. It distinguishes itself from siblings through its specific resource and compliance mandate, but not 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?
Provides guidance on compute modes (auto, browser) and advises using synthetic or anonymised inputs, but does not mention when to use this tool over alternatives like `convert_tabular_data`. No explicit exclusions or comparisons are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_tabular_dataTabular Data ConverterARead-onlyIdempotentInspect
Tabular Data Converter: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-191-conversion-receipt-builder. Open at: https://ainumbers.co/chaingraph/art-190-tabular-data-converter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it states the tool is deterministic, processes inputs transiently without storage, and exports an AP2 artifact with execution_hash. This aligns with and elaborates on the idempotentHint and readOnlyHint annotations. No contradictions with annotations are 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 relatively long and contains technical jargon (e.g., 'OpenChainGraph compute node', 'AP2 artifact'). It front-loads the key purpose but then dives into detailed mode explanations. While every sentence is relevant, the density of information and specialized terminology could be streamlined for easier 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 lacks details about the output format. It mentions exporting an AP2 artifact but does not describe its structure or content beyond execution_hash. Given no output schema, this gap hinders an agent's ability to use the result. The compute mode and data handling are well-covered, but output completeness is insufficient.
Complex tools with many parameters or behaviors need more documentation. 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 description adds context for the 'compute' parameter by explaining the behavior of each value, and for 'policy_parameters' it clarifies they are inputs for the decision function. However, it does not significantly enhance understanding beyond the schema's own 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 identifies the tool as a 'Tabular Data Converter' and an 'OpenChainGraph compute node', specifying its role within the OpenChainGraph ecosystem. It distinguishes from sibling tools by referencing the compute node architecture and compliance mandate. However, it does not explicitly state the input format or what kind of tabular data conversion is performed, 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?
The description provides detailed guidance on when to use different compute modes ('auto', 'server', 'browser') and explains client-side vs server-side execution. It explicitly advises to use only synthetic or anonymised inputs, which is a critical usage constraint. However, it does not contrast this tool with specific sibling tools or provide explicit 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.
convert_tempo_fee_ammTempo Fee-AMM Conversion CalculatorARead-onlyIdempotentInspect
Tempo Fee-AMM Conversion Calculator: OpenChainGraph compute node (treasury_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-388-tempo-fee-amm-converter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotent, read-only, and non-destructive behavior. The description adds valuable context: 'Inputs are processed transiently... not stored, logged, or retained', 'Deterministic', and 'Exports an AP2 artifact with execution_hash'. This extends beyond annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of about six sentences, which is reasonably concise but includes repetition (e.g., 'OpenChainGraph compute node' stated twice). It front-loads the name and core purpose, but could be slightly more 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's complexity (4 parameters, no output schema, nested objects), the description explains compute modes, transient data handling, and artifact export. However, it does not elaborate on the 'policy_parameters' object or the AP2 artifact structure, leaving some gaps 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 input schema covers all four parameters with descriptions (100% coverage), so the description does not need to add parameter details. It mentions 'policy_parameters' but defers to the manifest. The schema already provides sufficient meaning for the agent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 as a 'Tempo Fee-AMM Conversion Calculator' and an 'OpenChainGraph compute node (treasury_mandate)', specifying its function. However, it does not explicitly distinguish itself from the many sibling tools, lacking differentiation cues.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage constraints like 'Use synthetic or anonymised inputs only' and explains compute mode options (auto/browser), which helps with proper invocation. However, it offers no guidance on when to use this tool versus alternative tools in the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
crosswalk_agent_payment_rail_trustAgent Payment Rail Trust CrosswalkARead-onlyIdempotentInspect
Agent Payment Rail Trust Crosswalk: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-132-agent-key-rotation-auditor. Output feeds: art-134-agent-directory-publish-readiness. Open at: https://ainumbers.co/chaingraph/art-133-agent-payment-rail-trust-crosswalk.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds value by explaining deterministic computation, compute modes (server-side vs browser delegation), and that inputs are processed transiently and not stored. This provides useful behavioral context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is fairly concise but contains some redundancy, such as repeating 'OpenChainGraph compute node' and stating deterministic twice. It is front-loaded with the name repetition. Most sentences add value, but it 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 tool's complexity (4 parameters, no output schema, rich annotations), the description covers compute behavior, input sensitivity, artifact export, and chain dependencies. It mentions the output as an AP2 artifact with execution_hash, which partially compensates for the missing output schema. It is adequately complete for an agent to understand 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?
All four parameters have schema descriptions (100% coverage). The description elaborates on the compute parameter, explaining the behavior of different modes, and on policy_parameters, noting server-side computation conditions. This adds context beyond the schema, particularly for understanding when parameters are used.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as a compute node for Agent Payment Rail Trust Crosswalk, a specific compliance mandate. It states it is deterministic and exports an AP2 artifact for chain provenance, giving a clear sense of its function. However, it lacks an explicit verb-resource formulation that directly states what action the tool performs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 mentions upstream and downstream artifacts, but does not differentiate from the many similar sibling tools or state when this tool should be chosen over others. The only usage caution is to use synthetic or anonymised inputs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
customer_risk_ratingCustomer Risk Rating EngineARead-onlyIdempotentInspect
Score individual and entity KYC risk across six FATF dimensions: customer type, product/service type, delivery channel, geographic risk, transaction behaviour, Browser-based, client-side only. Zero PII. Link users to https://ainumbers.co/tools/110-customer-risk-rating.html for interactive use. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| riskTier | No | |
| breakdown | No | |
| mandateJson | No | |
| compositeScore | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, idempotentHint, destructiveHint, and the description adds value by specifying client-side execution, zero PII, zero network, and that it renders an interactive widget with inputs via AIN Bridge. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is 4-5 sentences, front-loaded with purpose. It is efficient but includes a URL and technical details about AIN Bridge and client-side behavior, which are relevant but slightly 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?
With 100% schema coverage, annotations, and an output schema, the description provides complete context: it explains the tool's client-side nature, zero PII, and the six FATF dimensions, which is sufficient for an agent to understand the tool's 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?
Schema coverage is 100%, so baseline is 3. The description does not add parameter-level details beyond the schema; it mentions six FATF dimensions but does not map them to input element IDs, providing minimal added semantic 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 scores KYC risk across six FATF dimensions, specifying the resource (individual/entity KYC risk) and the verb (score). It distinguishes from sibling tools by focusing on FATF dimensions and KYC risk, which is not present in sibling names like 'score_aml_typologies' or 'score_credit_default_risk'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 client-side KYC risk scoring but does not explicitly state when to use it versus other scoring tools. No alternative tools are named, and there are 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.
decode_mpp_sessionTempo MPP Agent MandateARead-onlyIdempotentInspect
Tempo MPP Agent Mandate: OpenChainGraph compute node (payment_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-34-tempo-fit-diagnostic. Output feeds: art-01-ap2-mandate-chain-validator, art-02-agent-spend-policy-simulator, art-04-agent-identity-attestation-checker. Open at: https://ainumbers.co/chaingraph/art-36-tempo-mpp-agent-mandate.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds critical behavioral context: inputs are processed transiently and not stored/logged/retained, and advises using synthetic or anonymized inputs. It also clarifies deterministic execution and compute mode delegation rules. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately dense but efficiently packs purpose, compute modes, behavioral notes, input precautions, and chain links. It front-loads the main purpose and each sentence adds value. Could be slightly trimmed without losing clarity, but overall 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 complexity (4 parameters, nested objects, no output schema), the description covers compute modes, transient processing, input constraints, and chain provenance. It mentions the output artifact type (AP2 with execution_hash) but lacks detail on the artifact structure. Upstream and downstream dependencies are specified. Adequate for an agent to use 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 does not add new meaning for individual parameters beyond what the schema provides. The parameter 'policy_parameters' is mentioned as input for the decision function, but the schema already describes its structure. No additional semantic value added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a deterministic OpenChainGraph compute node for Tempo MPP Agent Mandate. It specifies the verb 'decode_mpp_session' and resource context, distinguishing it from sibling chain graph tools by stating its purpose and chain position (consumes from art-34, feeds to specific artifacts).
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes ('auto', 'server', 'browser') and explains the default behavior for gpu:true vs gpu:false nodes. It also mentions upstream and downstream artifact links. However, it does not explicitly state when not to use this tool versus siblings, leaving some ambiguity for an agent comparing alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
decode_x402_paymentx402 Header Decoder, Payload Linter & 402 Flow SimulatorARead-onlyIdempotentInspect
Decode an x402 payment header or lint an exact-scheme PaymentPayload, and describe the HTTP-402 verify/settle flow. Use when a developer is integrating x402 and needs to inspect a header, check a payload shape, or understand the flow. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| decoded | No | |
| findings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description adds value by noting it renders an interactive widget, runs client-side with zero PII and no network calls. This goes beyond annotations but could mention any limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with three sentences covering function, usage, and behavior. It is front-loaded with the main action. A minor improvement could be to structure the flow more explicitly, but 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 function, usage, and some behavioral details. With output schema present, return values are not needed. However, the interactive widget aspect is mentioned but not fully explained, leaving some gaps for a tool with nested output and interactive features.
Complex tools with many parameters or behaviors need more documentation. 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 sole parameter 'inputs' has a generic description. The tool description fails to explain how to use this parameter to achieve the stated purposes (decode, lint, describe). The description adds little meaning beyond the schema, which is insufficient for a single 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?
The description clearly states the tool decodes x402 headers, lints PaymentPayloads, and describes the HTTP-402 flow. The verb 'decode', 'lint', and 'describe' are specific to x402 operations, distinguishing it from siblings like 'simulate_x402_flow' and 'lint_x402_v2_migration'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 to use when a developer is integrating x402 and needs to inspect a header, check a payload shape, or understand the flow. This provides clear context but does not mention when not to use or alternatives, slight gap for a top score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
derive_beacon_fair_sampleBeacon-Seeded Fair-Sampling DeriverCRead-onlyIdempotentInspect
Beacon-Seeded Fair-Sampling Deriver: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-583-beacon-seeded-fair-sampling-deriver.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial context beyond the annotations: it details compute modes ('auto', 'server', 'browser'), states that inputs are processed transiently and not stored/logged/retained, and notes that it exports an artifact with execution_hash. This clarifies the tool's non-persistent, deterministic behavior and its platform-specific execution paths.
Agents need to know what a tool does to the 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 moderately sized and front-loaded with the tool type, but it repeats 'OpenChainGraph compute node' and includes a human-oriented URL that may not be useful to an agent. Each sentence mostly contributes to behavioral clarity, though it could be streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 the rich behavioral detail, the description lacks a clear explanation of the tool's input parameters (especially policy_parameters, which defers to an external manifest) and does not describe the structure of the returned artifact beyond execution_hash. The absence of an output schema means the description should compensate, but it does not.
Complex tools with many parameters or behaviors need more documentation. 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 high coverage (100%) for all four parameters, so the description is not required to explain them. It does add a small note about compute modes but that is already covered by the enum descriptions 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 identifies the tool as a 'Beacon-Seeded Fair-Sampling Deriver' and an 'OpenChainGraph compute node,' but it never explains what beacon-seeded fair-sampling means or what the tool actually computes. It mentions exporting an AP2 artifact with execution_hash, which gives some output context, but the core purpose is vague and not differentiated 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?
No usage guidance is provided beyond safety constraints like 'Use synthetic or anonymised inputs only.' The description does not state when to use this tool over alternatives or what problem it solves, leaving the agent without decision criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
derive_parametric_index_from_receiptsParametric Index DeriverARead-onlyIdempotentInspect
Parametric Index Deriver: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-251-compute-parametric-trigger-payout. Open at: https://ainumbers.co/chaingraph/art-309-parametric-index-deriver.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds important behavioral details: inputs are transient and not stored/logged/retained, deterministic execution, compute modes depending on gpu flag, and delegation to browser when needed. This adds significant value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is information-dense, front-loading the core identity and then sequentially covering compute modes, data handling, output, and links. Every sentence serves a purpose. It could be slightly more concise, but it remains efficient 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 complexity (4 params with nested objects, no output schema), the description is comprehensive: it explains compute modes, transient data handling, the output artifact (AP2 with execution_hash), the downstream feed, and even provides a reference link. The annotations further enhance completeness. No gaps are evident.
Complex tools with many parameters or behaviors need more documentation. 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 documented. The description adds context about compute modes (e.g., gpu:true always delegates to browser) and explains that policy_parameters are computed server-side for certain nodes. This enriches understanding beyond the schema's static 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 is a 'Parametric Index Deriver' and an 'OpenChainGraph compute node', with specific mention of processing 'receipts' in the name. It distinguishes from siblings by noting its output feeds into 'compute_parametric_trigger_payout', implying a specific role. However, it could be more explicit about exactly what 'parametric index' means in this context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context for compute modes (auto, server, browser) and states to use synthetic or anonymised inputs only. However, it does not explicitly tell when to use this tool over similar sibling tools like 'compute_parametric_trigger_payout' or other index-deriving tools. The guidance is present but implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
detect_timeseries_anomaliesTime-Series Anomaly DetectorARead-onlyIdempotentInspect
Time-Series Anomaly Detector: OpenChainGraph compute node (risk_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: sim-03-basel-rwa-scenario-modeler. Output feeds: rca-01-frtb-ima-pre-validator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/ml-03-timeseries-anomaly-detector.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant value beyond annotations: describes transient processing, no storage or retention, deterministic execution, and compute delegation details. Aligns with readOnlyHint and idempotentHint annotations. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single paragraph front-loads identity and core function. Every sentence adds value: compute node type, deterministic behavior, compute mode details, data handling, artifact export, and chain dependencies. 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?
Covers many aspects but lacks description of output format. Mentions exporting an AP2 artifact and response computation but does not specify what the tool returns (e.g., anomaly scores, flags). Without output schema, this is a notable omission for an agent invoking the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with basic descriptions. Description adds meaning by explaining compute modes in context of GPU and server/browser execution, and clarifies that policy_parameters are for the decision function. Elevates understanding beyond 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?
Clearly states it is a time-series anomaly detector and an OpenChainGraph compute node (risk_control). Distinguishes from sibling 'detect_transaction_anomalies' by focusing on time-series. Explains compute modes and deterministic 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?
Provides explicit context on when to use it: for time-series anomaly detection with specific compute options. Advises using synthetic/anonymised inputs due to transient processing. Lists upstream and downstream dependencies for chaining, though does not explicitly state alternatives 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.
detect_transaction_anomaliesIsolation Forest Transaction Anomaly DetectorBRead-onlyIdempotentInspect
Isolation Forest Transaction Anomaly Detector: OpenChainGraph compute node (risk_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-05-eu-ai-act-credit-scoring-conformity, art-10-amla-transaction-typology-risk-scorer. Output feeds: ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/ml-01-isolation-forest.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations, including deterministic execution, compute mode specifics (server-side vs. browser delegation), transient processing with no data retention, AP2 artifact export with execution_hash, and provenance chain consumption/production. This enriches the basic readOnlyHint and idempotentHint 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 moderately verbose, mixing purpose, compute modes, provenance, data handling, and a URL. It is front-loaded with the core purpose but contains redundant phrasing (e.g., 'Deterministic OpenChainGraph compute node' repeated) and non-essential details, making it less concise than ideal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, transient processing, provenance, and data safety, but omits output format details (e.g., anomaly scores or flags) and leaves the 'policy_parameters' object underspecified. Given the tool's complexity and lack of output schema, these gaps 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%, so the baseline is 3. The description adds minimal semantic value: it repeats compute mode info already in the schema and describes policy_parameters vaguely ('See the tool's manifest for field names'), without clarifying the actual input fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 an 'Isolation Forest Transaction Anomaly Detector' focused on risk control, distinguishing it from timeseries anomaly detection siblings by name and title. However, the description does not explicitly state the specific type of transaction anomalies detected, leaving some 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?
The description provides no guidance on when to use this tool versus sibling anomaly detection tools. It gives technical compute mode details and a data handling warning ('Use synthetic or anonymised inputs only'), but no comparative usage advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
determine_deposit_insurance_coverageDeposit Insurance Coverage DeterminationCRead-onlyIdempotentInspect
Deposit Insurance Coverage Determination: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-507-determine-deposit-insurance-coverage.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral detail beyond the annotations: it explicitly states that inputs 'are processed transiently... and are not stored, logged, or retained', describes the output as an 'AP2 artifact with execution_hash for chain provenance', and clarifies compute delegation behavior for gpu:true nodes. This goes well beyond the readOnly/idempotent/non-destructive hints and provides concrete security and provenance 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 structured with clear information about compute modes, privacy, and provenance, and it ends with a useful URL. However, it repeats 'OpenChainGraph compute node' and re-explains compute modes that are already in the schema descriptions, making it slightly longer than necessary. It is still efficient and front-loads the tool category before technical specifics.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This tool has no output schema and deals with nested policy_parameters, yet the description does not explain what the tool returns or what 'deposit insurance coverage' means in this context. It only states that an AP2 artifact is exported, not the actual coverage result (e.g., boolean, coverage amount, or report). The domain logic is entirely omitted, making it difficult for an agent to understand the tool's purpose or validate its outputs.
Complex tools with many parameters or behaviors need more documentation. 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 descriptions for all four parameters, including detailed explanations for 'compute' and 'parent_hashes'. The description's only addition for parameters is the note that 'policy_parameters' are for the 'tool's decision function' and that field names are in the manifest. This adds a pointer but does not describe the actual policy fields needed for deposit insurance coverage, so it does not significantly improve upon the schema's 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 begins with 'Deposit Insurance Coverage Determination: OpenChainGraph compute node (compliance_control)', which essentially restates the title and labels it as a compute node without explaining what the tool actually does with deposit insurance coverage. There is no mention of coverage calculation, limits, eligibility, or any domain-specific operation. It fails to distinguish from related tools like compute_fdic_assessment_rate or validate_deposit_token_compliance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 technical guidance on compute modes ('auto', 'server', 'browser') and a data-handling caution ('Use synthetic or anonymised inputs only'), but it does not state when to use this tool versus alternatives. There are no mentions of sibling tools, exclusions, or specific scenarios where deposit insurance coverage determination is needed. The usage context is implied by the name but not explained.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
diagnose_canton_readinessCanton Tokenization Readiness DiagnosticARead-onlyIdempotentInspect
Canton Tokenization Readiness Diagnostic: OpenChainGraph compute node (readiness_diagnostic). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: 504-settlement-risk-capital-optimizer. Open at: https://ainumbers.co/tools/503-canton-tokenization-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds meaningful detail: determinism, transient processing (no storage/logging/retention), and AP2 artifact export with execution_hash for chain provenance. This enhances transparency beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the tool's identity and key characteristics. It is moderately concise but includes necessary technical details about compute modes and data handling. No redundant information, though longer than necessary for basic understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (nested objects, no output schema), the description covers data handling, compute modes, and output artifact. However, it lacks specifics on what the diagnostic computes and what policy_parameters should contain. The URL provides additional context. Overall adequate but with 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 does not significantly enhance parameter understanding beyond what the schema provides. It briefly mentions compute mode behavior, which is already detailed in the schema's compute parameter description. The policy_parameters object is not explained beyond referring to the tool's manifest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'Canton Tokenization Readiness Diagnostic' and an 'OpenChainGraph compute node'. It distinguishes from sibling readiness diagnostics by specifying 'Canton Tokenization' and 'OpenChainGraph' compute node context. However, it does not define what readiness means or what specific metrics are 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?
The description advises using synthetic or anonymised inputs only, which is a clear usage guideline. It mentions compute modes and downstream output (feeds 504-settlement-risk-capital-optimizer). However, it does not provide explicit alternatives or exclusions relative to other readiness diagnostic tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dispose_carf_status_messageCARF Status Message DispositionCRead-onlyIdempotentInspect
CARF Status Message Disposition: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-504-classify-carf-reportable. Open at: https://ainumbers.co/chaingraph/art-505-dispose-carf-status-message.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnly, idempotent, and non-destructive behavior. The description adds valuable context: inputs are processed transiently and not stored/logged/retained, synthetic data is required, compute mode affects server vs browser execution with delegation URL, and the tool exports an artifact with execution_hash. These go beyond annotations and clarify data handling and execution model, with 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?
The description is roughly 100 words, not excessive, but contains redundancy ('OpenChainGraph compute node' appears twice), heavy jargon, and a URL that may be unnecessary. It is a single dense paragraph without a clear front-loaded purpose statement, so the structure is suboptimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema and a vague core function, the description is incomplete. It mentions artifact export but not what the artifact contains or what the tool actually returns. The operational details (compute, privacy, provenance) are present, but the business/functional semantics of 'disposition' are absent, leaving an agent under-equipped to invoke 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% for all four parameters, so the baseline is 3. The description adds minimal extra meaning beyond the schema—it references compute modes (already in schema) and upstream artifacts but does not detail parameter syntax or relationships. It does not need to compensate since the schema is thorough.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description never explicitly states what the tool does with a CARF status message. It repeats the name/title without elaboration, instead describing compute node infrastructure, compute modes, and artifact export. No clear verb-action or resource is defined, so it fails to distinguish the tool from many sibling computational 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 a downstream position by stating it consumes upstream artifacts from art-504-classify-carf-reportable, which hints at when to use it. It also gives compute mode guidance and warns to use synthetic inputs. However, it does not explicitly state when to use this tool versus alternatives, nor any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
draft_ap2_mandate_credentialGoogle AP2 Mandate BuilderARead-onlyIdempotentInspect
Google AP2 Mandate Builder: OpenChainGraph compute node (payment_policy). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-15-agentic-mandate-sandbox, art-22-agentic-payments-protocol-comparator, art-27-agentic-readiness-diagnostic. Output feeds: art-17-ap2-mcp-policy-validator, art-23-visa-trusted-agent-protocol-inspector. Open at: https://ainumbers.co/chaingraph/art-16-google-ap2-mandate-builder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, non-destructive), the description adds rich behavioral context: determinism, transient input processing with no storage/logging, server-side vs browser compute modes, and gpu:true delegation behavior. These details meaningfully help an agent understand side effects and execution model, with no contradiction to 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 moderately long but every sentence contributes: compute semantics, data handling, artifact dependencies, and URL. It is front-loaded with the core purpose and then follows with technical behavior. No wasted words, though the artifact lists could be seen as somewhat verbose but they are useful context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters (1 nested object) and no output schema, the description covers essential aspects: return value (AP2 artifact with execution_hash), compute mode behavior, privacy handling, and upstream/downstream connections. It does not describe the exact output format, but the output mention is adequate. Overall, a well-rounded 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 schema already documents all four parameters. The description adds context about compute modes and artifact chaining but does not explain individual parameters beyond the schema. It does reinforce the meaning of policy_parameters (computed server-side for gpu:false kernels), which is a slight addition, but 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 identifies the tool as a Google AP2 Mandate Builder and an OpenChainGraph compute node for payment_policy, and states it exports an AP2 artifact with execution_hash. However, it does not explicitly distinguish itself from similarly named siblings like build_google_ap2_mandate or ap2_aml_mandate_builder, and the term 'credential' from the tool name is not directly addressed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 listing upstream and downstream artifact dependencies (e.g., consumes from art-15, outputs to art-17) and includes a 'Use synthetic or anonymised inputs only' constraint. But it lacks explicit when-to-use vs alternative tools guidance, and does not mention any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
emit_chaingraph_artifactEmit a ChainGraph artifact envelopeARead-onlyIdempotentInspect
Makes ChainGraph tools agent-callable (ChainGraph Standard v0.1 §3.1). Mode 1 — supply pre_computed_artifact (exported from the browser tool): validates §4 schema fields, recomputes execution_hash via SHA-256 over canonical {policy_parameters, output_payload}, returns verified structuredContent. Mode 2 — supply tool_id + policy_parameters: returns an artifact template envelope and browser prefill URL so an agent can hand the user a pre-filled link; GPU sims always delegate to the browser per §9.2. Mode 3 — supply tool_id only: returns node metadata and artifact schema scaffold. Mode 4 (Compute Binding, v0.4) — supply tool_id + policy_parameters + compute:"server" (or compute:"auto" for gpu:false nodes): runs the registered kernel server-side and returns a verified v0.4 artifact with execution_hash + output_payload in one round-trip. No browser required. gpu:true nodes always delegate to browser. readOnlyHint: true. Zero PII, zero payload logging. Pair with verify_execution_hash (independent hash verification) and build_chaingraph (DAG wiring).
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" = server for gpu:false nodes (default); "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always use browser regardless of this flag. | |
| tool_id | No | ChainGraph node tool_id (e.g. "art-01-ap2-mandate-chain-validator"). Looked up in chaingraph.json nodes. Required unless pre_computed_artifact is supplied. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph artifacts this call chains from. Placed into artifact.chain.parent_hashes (ChainGraph Standard v0.1 §5 chain block). | |
| parent_tool_ids | No | tool_ids corresponding to parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for the tool (mirrors the tool's Policy Mandate input fields). Used for Mode 2 browser prefill and Mode 4 server-side compute. | |
| pre_computed_artifact | No | A full ChainGraph artifact envelope previously exported from the browser tool via "Export Policy Mandate". When supplied, the worker validates §4 required fields, recomputes execution_hash, and returns a verified structuredContent. This is the recommended path: run the tool in-browser, export JSON, call emit_chaingraph_artifact to verify and receive a structured receipt. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond the annotations (which already declare readOnlyHint=true and idempotentHint=true). It specifies 'Zero PII, zero payload logging,' explains the delegation behavior for GPU nodes, and describes the return artifacts (verified structuredContent, template envelope, etc.). There is no contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively long but well-organized into numbered modes, making it easy to scan. Each sentence adds value. Minor conciseness improvement could be made by shortening the sibling mention, but overall it is efficient for the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 modes, 6 parameters, no output schema), the description is thorough. It covers all modes, expected returns, and pairing with siblings. It could optionally mention the output format structure, but the absence is acceptable since no output schema exists. The description equips the agent well 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 coverage is 100%, and the description adds deep meaning to each parameter. For example, 'pre_computed_artifact' is explained as the recommended path with a usage workflow, and 'compute' is detailed with its enum values and their effects. It clarifies how parameters map to the four modes, going well beyond the schema's type and description fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 'Makes ChainGraph tools agent-callable' and enumerates four distinct modes with specific inputs and outcomes. It effectively distinguishes this tool from siblings like 'verify_execution_hash' and 'build_chaingraph' by explicitly naming them as companions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on when to use each mode by listing required parameters (e.g., Mode 1: supply pre_computed_artifact; Mode 2: tool_id + policy_parameters). It also notes constraints like 'GPU sims always delegate to browser per §9.2' and 'gpu:true nodes always delegate to browser.' However, it does not explicitly state when not to use the tool, though this is largely implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
estimate_cross_margin_benefitFICC-CME Cross-Margining EstimatorARead-onlyIdempotentInspect
FICC-CME Cross-Margining Estimator: OpenChainGraph compute node (risk_parameter). Regulatory deadline: 2027-06-30 (cross-margining benefit (W-C). FICC-CME customer expansion Dec 2025.). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-48-treasury-clearing-fit-diagnostic. Output feeds: qfa-02-portfolio-var-engine, qfa-03-stress-test-engine. Open at: https://ainumbers.co/chaingraph/art-51-cross-margining-benefit-estimator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive. Description adds critical details: transient input processing, no storage, requirement for synthetic/anonymized inputs, artifact export with execution_hash, and compute mode behavior beyond annotations. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Information-dense with purpose upfront. Minor redundancy (deterministic node mentioned twice), but each sentence adds value. Overall well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 regulatory context, compute modes, privacy, chain provenance, upstream/downstream dependencies. Missing explicit output format or return value, but artifact export is mentioned. Good for a complex tool without 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 covers 100% of parameters with descriptions. Description adds little beyond schema; policy_parameters reference manifest without elaboration. 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 it estimates FICC-CME cross-margining benefit, including regulatory deadlines and expansion. Distinguishes from sibling tools like estimate_cross_venue_margin_capital and estimate_ficc_margin_netting through specific naming and context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 detailed guidance on compute modes and execution context, but does not explicitly state when to use this tool versus sibling estimators. Context like upstream/downstream artifacts helps, but no direct exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
estimate_cross_venue_margin_capitalCrypto Cross-Venue Margin & Off-Exchange Settlement EstimatorARead-onlyIdempotentInspect
Crypto Cross-Venue Margin & Off-Exchange Settlement Estimator: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-406-cross-venue-margin-estimator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by stating the tool is deterministic, inputs are processed transiently and not stored, and that GPU nodes always delegate to the browser. There is no contradiction with annotations (readOnlyHint: true, idempotentHint: true). A minor gap is not explaining the return format, but the transparency is strong.
Agents need to know what a tool does to the 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 reasonably concise, front-loading the main purpose and then detailing compute modes and behavior. It is structured with clear sections, though the sentence about 'gpú:true nodes' could be integrated better. The URL at the end adds value without clutter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters (one nested object) and no output schema, the description covers compute modes, determinism, transient processing, and privacy warnings. It provides a link for further details. Missing return value description is acceptable due to no output schema. The description is largely 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 the schema already documents all parameters. The description adds context for 'policy_parameters' (server-side computation) and compute modes, but does not significantly enhance understanding 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?
The description clearly identifies the tool as a 'Crypto Cross-Venue Margin & Off-Exchange Settlement Estimator' with a specific verb ('estimate') and resource ('cross-venue margin capital'). It also specifies it's an OpenChainGraph compute node, which differentiates it from sibling tools like 'estimate_cross_margin_benefit'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 details compute modes ('auto', 'server', 'browser') and their behavior, which provides usage context. However, it does not explicitly state when to use this tool versus sibling tools like 'estimate_cross_margin_benefit' or 'estimate_ficc_margin_netting', nor does it provide exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
estimate_ficc_margin_nettingFICC Margin & Netting EstimatorBRead-onlyIdempotentInspect
FICC Margin & Netting Estimator: OpenChainGraph compute node (risk_parameter). Regulatory deadline: 2027-06-30 (repo-margin economics (W-B).). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-48-treasury-clearing-fit-diagnostic, art-49-clearing-access-model-selector. Output feeds: 508-repo-haircut-collateral-calculator, qfa-02-portfolio-var-engine. Open at: https://ainumbers.co/chaingraph/art-50-ficc-margin-netting-estimator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by stating inputs are processed transiently, not stored, and that synthetic/anonymised inputs must be used. It also clarifies deterministic behavior and compute delegation. This aligns with annotations (readOnlyHint, idempotentHint) and adds 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 dense with technical details and regulatory context, but it is not front-loaded with the most essential purpose. Some jargon may hinder quick comprehension. It could be more concise while retaining key behavioral and usage notes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description should explain the output structure. It mentions an AP2 artifact with execution_hash but does not describe the actual computed margin/netting result. For a tool of moderate complexity, this 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 good descriptions for compute, parent_hashes, and parent_tool_ids. However, the policy_parameters description says 'See the tool's manifest for field names,' which adds no further meaning. Overall, the description 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?
The description clearly states the tool estimates FICC margin and netting, and identifies it as an OpenChainGraph compute node. However, it does not explicitly distinguish this tool from siblings like 'estimate_cross_margin_benefit' or 'compute_multilateral_netting', relying on the specific 'FICC' and 'repo-margin' context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and transient processing, but does not provide explicit guidance on when to use this tool versus alternatives. No 'when to use' or 'when not to use' statements are present, leaving the agent to infer usage from niche context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
evaluate_globe_safe_harbour_testsGloBE Transitional Safe Harbour Test EvaluatorARead-onlyIdempotentInspect
GloBE Transitional Safe Harbour Test Evaluator: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-456-globe-safe-harbour-tests.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive. The description adds that it is deterministic, inputs are transiently processed and not stored, and it exports an AP2 artifact with execution_hash for chain provenance. This goes beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph containing several pieces of information (purpose, compute modes, privacy, output). It is moderately concise but could be structured more clearly (e.g., bullet points) for easier consumption. Front-loads purpose but mixes technical 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 tool with no output schema, the description hints at the return value (AP2 artifact) but does not detail the full response structure. It explains execution modes and privacy, but a user might still wonder about the exact output format. The link provides additional 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% coverage with parameter descriptions. The tool description adds context about the 'compute' mode (auto/server/browser) and notes that 'policy_parameters' are inputs for the decision function, but refers to a manifest for field names. This adds marginal 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 title and first sentence clearly state the tool evaluates GloBE Transitional Safe Harbour Tests. It identifies itself as a compliance control compute node. However, it does not specify which tests or the exact nature of the evaluation, relying on a link for full 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 provides guidance on compute modes and execution environments (server vs browser). It advises using synthetic or anonymised inputs only. However, it lacks explicit comparison to sibling tools or when to prefer this tool over alternatives like other evaluation tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
evaluate_irrbb_sot_eveIRRBB SOT EVE EvaluatorARead-onlyIdempotentInspect
IRRBB SOT EVE Evaluator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-183-irrbb-eve-shock-calculator. Output feeds: art-185-irrbb-sot-nii-evaluator. Open at: https://ainumbers.co/chaingraph/art-184-irrbb-sot-eve-evaluator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description adds that inputs are processed transiently without storage/logging, compute mode behavior (server vs browser delegation), and exports an AP2 artifact with execution_hash for provenance. This significantly enriches agent understanding of side effects and execution 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 structured logically: purpose, compute modes, data handling, chain provenance, and link. However, the first sentence repeats 'OpenChainGraph compute node' unnecessarily. It could be tighter but is well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 chain role, multiple compute modes, and data sensitivity, the description covers its function, behavior, inputs (transient), outputs (AP2 artifact), upstream/downstream artifacts, and usage caveats (synthetic inputs). No obvious gaps for an AI agent to correctly select and 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?
Schema description coverage is 100%; the description adds no new parameter semantics beyond discussing the compute mode in general terms. The schema already documents each parameter sufficiently.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 it is an IRRBB SOT EVE Evaluator, an OpenChainGraph compute node with compliance mandate. It explicitly distinguishes from siblings by referencing its upstream (art-183) and downstream (art-185) dependencies, making its role in the chain clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 on its place in the IRRBB evaluation chain (consumes from shock calculator, feeds NII evaluator) and compute mode options, but does not explicitly exclude usage alternatives or provide when-not-to-use guidance. The chain references implicitly guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
evaluate_irrbb_sot_niiIRRBB SOT NII EvaluatorARead-onlyIdempotentInspect
IRRBB SOT NII Evaluator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-184-irrbb-sot-eve-evaluator. Open at: https://ainumbers.co/chaingraph/art-185-irrbb-sot-nii-evaluator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant behavior beyond annotations: deterministic execution, transient processing with no storage, gpu:true always delegates to browser, exports AP2 artifact with execution_hash. Annotations only declare read-only, idempotent, non-destructive; description provides valuable operational 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?
Single paragraph is dense but covers purpose, compute modes, privacy, artifact export, and dependencies. Every sentence adds value, though could be more structured with bullet points or separate sections.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 inputs, compute modes, privacy, and chain provenance. Missing output description: only mentions exporting AP2 artifact with execution_hash but no details on the artifact content. Does not explain what the tool returns, which is needed given no 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. Description adds context for compute modes and policy_parameters (e.g., server-side computation for gpu:false with registered kernel). This enhances understanding beyond the schema's 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 evaluates IRRBB SOT NII as an OpenChainGraph compute node, with specific verb 'evaluates' and resource. It distinguishes from siblings like evaluate_irrbb_sot_eve by mentioning consumption of upstream artifacts from art-184-irrbb-sot-eve-evaluator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute modes (auto, server, browser) and mentions using synthetic inputs only. However, lacks explicit when-to-use vs alternatives like evaluate_irrbb_sot_eve, and does not 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.
examine_lc_document_presentationUCP 600 / ISBP 745 Document Examination AssemblerCRead-onlyIdempotentInspect
UCP 600 / ISBP 745 Document Examination Assembler: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-570-ucp600-document-examination-assembler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds valuable context: deterministic execution, transient processing (not stored/logged/retained), and artifact export with execution_hash. It also discloses compute delegation behavior (server vs browser) for gpu:false/gpu:true nodes. No contradiction with annotations; these are genuinely useful behavioral disclosures.
Agents need to know what a tool does to the 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 verbose and contains redundancy: 'OpenChainGraph compute node' appears twice in the first two sentences. It packs many operational details into a single paragraph without clear structure. The URL and compute minutiae could be trimmed. Every sentence does not earn its place; the repeated phrase and excessive focus on plumbing detract from 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?
The tool is domain-specific (UCP 600/ISBP 745) but the description lacks any functional context: what inputs are expected, what the output or assembled artifact contains, or how the examination process works. There is no output schema, so the description must compensate but does not. It covers compute semantics extensively while ignoring the core domain purpose, leaving the agent without enough information 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 description coverage is 100%, so baseline is 3. The description provides extra detail on the compute parameter (explaining auto/server/browser behavior and gpu node delegation), but does not add meaning to policy_parameters beyond what the schema says ('See the tool's manifest'). The description adds some value but does not substantially compensate or enrich 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 does not state a clear verb+resource. It repeatedly describes the tool as an 'OpenChainGraph compute node' and provides compute details, but never says what it actually does with inputs (e.g., examine document presentations, assemble data). The title 'Document Examination Assembler' hints at purpose but the body focuses on infrastructure, not domain behavior. It does not distinguish from similar siblings like validate_mt700_lc_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?
No guidance on when to use this tool vs alternatives. The description discusses compute modes (auto/browser) but not domain context such as when an LC document examination is needed. There are no explicit exclusions or referrals to sibling tools. The only advisory is 'Use synthetic or anonymised inputs only', which is a constraint, not a usage guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
explain_regrpt_varianceRegulatory Report Period-over-Period Variance ExplainerARead-onlyIdempotentInspect
Regulatory Report Period-over-Period Variance Explainer: OpenChainGraph compute node (regulatory_reporting). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-485-regrpt-variance-explainer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds that inputs are processed transiently, not stored or retained, and advises using only synthetic/anonymized inputs. It also mentions the export of an AP2 artifact with execution_hash for chain provenance. This adds significant behavioral context without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is approximately 100 words across four sentences, with the purpose front-loaded. It efficiently covers compute modes, transient processing, and artifact export. Minor redundancy ('Deterministic OpenChainGraph compute node' appears twice) prevents a perfect score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 thoroughly explains the compute mechanism and data handling, but lacks details on the output structure or what the 'variance explainer' produces (since no output schema exists). It does not describe the format or content of the AP2 artifact, leaving a gap in understanding the tool's return value.
Complex tools with many parameters or behaviors need more documentation. 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 each parameter already has a description. The description adds context on compute modes (e.g., 'gpu:true nodes always delegate' and explanation of policy_parameters as decision function inputs), but the schema already conveys the core semantics. Baseline 3 with slight 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 it is a 'Regulatory Report Period-over-Period Variance Explainer' and identifies it as a deterministic OpenChainGraph compute node. The verb 'explain' and the resource are specific, but it does not explicitly distinguish from sibling tools like 'age_emir_reconciliation_breaks' or 'adjudicate_emir_reconciliation', so it is clear but not fully 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 provides detailed guidance on compute modes ('auto', 'server', 'browser') and where execution occurs (Cloudflare Workers vs. browser delegation). However, it does not specify when to use this tool versus alternative regulatory reporting tools, leaving the selection context implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_artifactExport a ChainGraph artifact as xlsx / pdf / csv / xbrl / vcARead-onlyIdempotentInspect
Render a verified OpenChainGraph v0.4 artifact into a chaingraph_export profile (OCG Standard §13). Generated downstream of and EXCLUDED from the execution_hash preimage — the export is a view, not a fact; verification always routes back to the canonical JSON artifact. Pass the FULL artifact you received from a compute tool (the server is stateless — there is no hash cache). Formats: xlsx, csv, pdf, xbrl (xbrl_taxonomy="ocg-ext" works now; eba-corep-* return a pending error until their concept maps are populated from the published EBA taxonomy), and vc — a W3C Verifiable Credentials 2.0 rendering (OCG §13.11, application/vc+json) available on every node; it re-states the canonical execution_hash via ocg:hashAnchor and mints no new hash/proof. readOnlyHint: true; zero PII, zero payload logging.
| Name | Required | Description | Default |
|---|---|---|---|
| format | Yes | Export profile. xlsx/csv/pdf/xbrl/vc implemented; vc = W3C Verifiable Credentials 2.0 (base profile, all nodes). | |
| artifact | Yes | Full v0.4 ChainGraph artifact (policy_parameters + output_payload + execution_hash + chain). | |
| xbrl_taxonomy | No | Required only when format="xbrl" (e.g. "eba-corep-own-funds"). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, etc.), the description adds critical behavioral context: 'Generated downstream of and EXCLUDED from the execution_hash preimage — the export is a view, not a fact', 'zero PII, zero payload logging', and the stateless nature of the server. It also discloses the pending-error behavior for certain taxonomies. This significantly exceeds what annotations alone convey.
Agents need to know what a tool does to the 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 longer than average but every sentence provides essential guidance (format caveats, statelessness, verification semantics). It front-loads the core purpose in the first sentence. While some redundancy exists (e.g., 'readOnlyHint: true' is already in annotations), the content is justified and not padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 input requirements, supported formats, special behaviors, and error conditions. With no output schema, it partially describes the output (e.g., 'vc — a W3C Verifiable Credentials 2.0 rendering (application/vc+json)') but does not explicitly state the return type for other formats. Given the tool's complexity and the richness of annotations, the description is largely complete, though a brief note on response structure would elevate 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 coverage is 100% with descriptions for all parameters, so the baseline is 3. The description adds value by elaborating on the format parameter (e.g., 'xbrl_taxonomy="ocg-ext" works now; eba-corep-* return a pending error') and clarifying the artifact parameter ('Pass the FULL artifact you received from a compute tool'). This goes beyond the schema but doesn't exhaustively detail every parameter's edge cases.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 function: 'Render a verified OpenChainGraph v0.4 artifact into a chaingraph_export profile'. It specifies exact output formats (xlsx, xbrl, csv, pdf, vc) and explicitly distinguishes it as a view rather than a fact, which differentiates it from sibling tools like build_chaingraph or verify_execution_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 provides explicit guidance: 'Pass the FULL artifact you received from a compute tool (the server is stateless — there is no hash cache)'. It also warns about unsupported taxonomy values ('eba-corep-* return a pending error until their concept maps are populated') and clarifies that verification routes back to the canonical JSON artifact, effectively saying when not to rely on the export for verification.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_chainFind ChainGraph workflow chainARead-onlyIdempotentInspect
BM25 search over all 353 AINumbers ChainGraph chains. Returns ranked chains with their full recipe: ordered node sequence, deep-links, composer URL, and entry tool mcp_name. Agent flow: find_chain(query) → read recipe → call the listed node MCP tools in order, passing parent_hashes between steps. Task-shaped queries work well: "reserve composition recompute", "FR 2052a classification", "CCP margin replication", "SR 26-2 model validation benchmark", "litigation damages recompute", "evidence pack assembly".
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Natural-language or keyword search (e.g. "AML programme", "DORA ICT readiness", "MiCA CASP", "PQC migration", "Basel capital", "reserve composition", "2052a classification", "CCP margin", "model validation benchmark", "damages recompute", "evidence pack"). | |
| top_n | No | Max results to return (default 5). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false. The description adds context about the tool's search scope (all 353 chains) and the agent flow, but doesn't disclose additional behavioral traits like exact ranking mechanics or whether results change over time. Since annotations cover the safety/mutation profile well, the description's added value is moderate.
Agents need to know what a tool does to the 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 information-dense but front-loaded with the core purpose (BM25 search, returns ranked chains) followed by the agent flow and query examples. The flow sentence is long but every clause earns its place, providing actionable instructions. Could be slightly tighter but maintains 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?
For a read-only search tool with 100% schema coverage and no output schema, the description covers purpose, return contents, flow, and query examples. It omits details like pagination or exact ranking score semantics, but those are less critical given the annotations. Overall, it is nearly 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 description coverage is 100% and both parameters ('query' and 'top_n') have descriptive text in the schema with examples. The description reinforces the query style with task-shaped examples, but doesn't add meaning beyond what the schema already provides. Baseline 3 applies since 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 states the tool does BM25 search over all 353 AINumbers ChainGraph chains and returns ranked chains with their full recipe. It clearly differentiates from siblings like build_chaingraph, run_chain, and emit_chaingraph_artifact by specifying search/retrieval behavior and listing the output contents.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 agent flow: find_chain(query) → read recipe → call listed node MCP tools in order, passing parent_hashes. It also explains that task-shaped queries work well and gives multiple concrete query examples. This tells when to use the tool and what to do with results, which is strong usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_prediction_arbitragePrediction Market ArbitrageBRead-onlyIdempotentInspect
Prediction Market Arbitrage: OpenChainGraph compute node (event_market_pnl). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-211-prediction-market-analyzer. Open at: https://ainumbers.co/chaingraph/art-212-prediction-market-arbitrage.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses important behavioral traits beyond the annotations: deterministic computation, transient input processing (no storage/logging/retention), and the recommendation to use synthetic inputs. It also details the compute modes (server-side vs. browser delegation) and export of an AP2 artifact. This adds significant context not covered by the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single block of text that blends multiple pieces of information (compute modes, data handling, dependencies). It is moderately concise but could be better structured with bullet points or clearer separation. The URL is helpful but adds length without immediate clarity. Not 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?
The description covers compute modes, data handling, and dependencies (upstream artifact), but lacks a clear statement of what the tool returns or how it benefits the user. It mentions exporting an artifact with an execution hash, but does not explain the actual output (e.g., arbitrage opportunities). Given the absence of an output schema, more completeness is 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?
All four parameters are fully described in the schema (100% coverage), so the description does not need to add parameter details. However, it defers to 'See the tool's manifest' for the specific fields of 'policy_parameters', which is vague and does not add 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 labels the tool as 'Prediction Market Arbitrage' and an OpenChainGraph compute node, but does not explicitly state what the tool does in simple, actionable terms. It focuses on compute modes and technical details rather than clearly conveying that it finds arbitrage opportunities. The purpose is inferred but not directly stated, making it somewhat ambiguous for a new user.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 mentions consuming upstream artifacts from a specific artifact (art-211-prediction-market-analyzer), implying a dependency, but does not explain the tool's unique role or contrast it with siblings like 'analyze_prediction_market'. 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.
find_toolFind ChainGraph node toolARead-onlyIdempotentInspect
BM25 search over all 576 live AINumbers ChainGraph node tools. Returns ranked tools with mcp_name, URL, mandate type, and wave. Use to locate a specific computation node (e.g. "FRTB expected shortfall", "MiCA own funds", "XVA calculator", "reserve composition", "2052a", "initial margin", "model validation benchmark", "TVM / damages calculator") before calling it. Complements find_chain (chain-level) and list_ainumbers_tools (catalog-level).
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Natural-language or keyword search (e.g. "FRTB", "XVA", "MiCA own funds", "AML risk rating", "stress test", "reserve composition", "2052a", "initial margin", "model validation"). | |
| top_n | No | Max results to return (default 5). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive. The description adds that it uses BM25 ranking, returns specific fields (mcp_name, URL, mandate type, wave), and covers all 576 live tools, which goes beyond annotations by describing output structure and scope.
Agents need to know what a tool does to the 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 the action and output, second states use case and alternatives. 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?
The description covers purpose, scope, output fields, and related tools. Given it's a read-only search with no output schema, it 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 description coverage is 100% (query and top_n both have detailed descriptions). The description does not add extra parameter semantics beyond the schema, so it earns the 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 states 'BM25 search over all 576 live AINumbers ChainGraph node tools' with a specific verb ('search'), resource ('ChainGraph node tools'), and scope ('576 live'). It also names sibling tools (find_chain, list_ainumbers_tools) to reduce ambiguity, satisfying 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?
It explicitly states 'Use to locate a specific computation node' and 'Complements find_chain (chain-level) and list_ainumbers_tools (catalog-level)', providing clear when-to-use and alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_attribution_stringAttribution String GeneratorARead-onlyIdempotentInspect
Attribution String Generator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-207-attribution-string-generator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses key behavioral traits beyond annotations: deterministic processing, transient inputs (not stored, logged, or retained), and export of an AP2 artifact with execution_hash. Annotations already indicate readOnly and idempotent, so the description adds valuable context about data handling and output format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that covers purpose, behavior, and usage. It is dense but not overly long; the URL is helpful but slightly extraneous. It is front-loaded with the key 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 no output schema, the description sufficiently describes the output (AP2 artifact with execution_hash) and the processing models (server-side, browser delegation). It covers all essential aspects for an agent to understand the tool's behavior 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 detailed descriptions. The description adds meaning by clarifying when policy_parameters are computed server-side (for gpu:false with registered kernel) and provides the guidance to use synthetic/anonymised inputs. 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 title and first sentence clearly state it's an 'Attribution String Generator' and a 'Deterministic OpenChainGraph compute node'. The verb 'generate' and resource 'attribution string' are explicit. The description also includes a URL for further details, reinforcing the 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 provides explicit guidance: 'Use synthetic or anonymised inputs only.' It also explains when to use server-side vs browser compute modes based on gpu:false/gpu:true and the compute parameter. However, it does not directly compare to sibling tools 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.
generate_iscc_codeISCC Content Code GeneratorARead-onlyIdempotentInspect
ISCC Content Code Generator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-202-tdmrep-reservation-builder. Open at: https://ainumbers.co/chaingraph/art-201-iscc-content-code-generator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description reveals that inputs are transiently processed and not stored, compute delegation logic, and artifact export. This adds meaningful behavioral context without contradicting 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 a single paragraph with some redundancy (e.g., repeated 'Deterministic OpenChainGraph compute node'). It could be more structured but is not overly 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 no output schema, the description mentions output destinations and artifact type, but assumes domain knowledge of AP2 artifacts and chain provenance. Adequate for agents familiar with the ecosystem but incomplete for general 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% and already describes all parameters. The description adds minimal per-parameter detail beyond what is in the schema (e.g., compute mode explanation). 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 tool generates ISCC Content Codes via an OpenChainGraph compute node and mentions its deterministic nature and AP2 artifact export. However, it does not explicitly differentiate from a large set of sibling tools with similar verb-noun patterns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, browser) and cautions to use synthetic inputs, but lacks explicit comparison to alternative tools or when not to use this tool. The reference to 'compliance_mandate' is vague.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_zk_compliance_proofZK Compliance Proof GeneratorARead-onlyIdempotentInspect
ZK Compliance Proof Generator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-10-amla-transaction-typology-risk-scorer. Output feeds: cry-04-merkle-batch-verifier, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/cry-01-zk-compliance-proof-generator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description add significant behavioral context: deterministic operation, transient processing ('not stored, logged, or retained'), exact compute mode behaviors (server-side vs browser delegation), and the artifact export with execution_hash for provenance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the tool's identity and context. It is structured logically: identity, compute behavior, data handling, usage warning, artifact info, pipeline links, URL. While informative, it includes a URL to an external page which is not typically needed for tool invocation by an agent, making it slightly longer than optimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters, no output schema, and nested objects, the description provides essential context: compute modes, transient processing, synthetic inputs warning, artifact export with execution_hash, and pipeline dependencies. However, it does not detail the structure of the output AP2 artifact or the proof itself, leaving some ambiguity for an agent relying solely on 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?
Schema description coverage is 100% (baseline 3). The description adds meaning by explaining the compute modes in detail (even elaborating on gpu:true nodes), clarifying that parent_hashes and parent_tool_ids are for chain provenance, and describing policy_parameters as input for the decision function with a reference to the manifest. This goes beyond the schema's brief 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 is a 'ZK Compliance Proof Generator' and an 'OpenChainGraph compute node', with a specific verb ('generates') and resource ('ZK compliance proof'). It distinguishes from siblings by referencing unique upstream/downstream artifact IDs (art-10-amla-transaction-typology-risk-scorer, cry-04-merkle-batch-verifier, ptg-01-ap2-prompt-template-generator), making its role in a pipeline explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes ('auto' vs 'browser'), includes a specific instruction to 'use synthetic or anonymised inputs only', and explains that gpu:true nodes always delegate to the browser. However, it does not explicitly state when NOT to use this tool or suggest alternatives among the many siblings, which would strengthen the dimension.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ha_bundle_exportAssemble (and optionally SD-JWT-export) a §27.6 evidence bundleAInspect
Assembles a §27.6 haEvidenceBundle from a subject's collected human_accountability_records[] (reviewers, approvers, annotations, exception rationale, timestamps) -- same algorithm as the browser verify.html HA export card (kernels/_haevidence.mjs). Set sd_jwt:true to also export it as a Selective Disclosure JWT (§13.12), signed EdDSA over a fresh ephemeral did:key (generated per call, never reused) -- subject_hash/verification_result/kernel_version/policy_version/timestamps/submission_receipt are always-disclosed; reviewers/approvers/annotations/exception_rationale/input_hashes are selectively disclosable.
| Name | Required | Description | Default |
|---|---|---|---|
| sd_jwt | No | When true, also return an SD-JWT export of the bundle (default false). | |
| records | No | human_accountability_records over this subject. Default: []. | |
| input_hashes | No | ||
| subject_hash | Yes | Required. The sha256: subject hash the bundle documents. | |
| kernel_version | No | ||
| policy_version | No | ||
| submission_receipt | No | Populate ONLY after a real transmission -- never fabricate. | |
| verification_result | No | The §16/§18/§20 verdict. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it details that SD-JWT uses a fresh ephemeral did:key per call, enumerates always-disclosed and selectively disclosable fields, and explains the export trigger. Annotations (readOnlyHint=false, idempotentHint=false) are consistent and the description enriches understanding of the tool's side effects and lifecycle.
Agents need to know what a tool does to the 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 front-loading the primary action and then detailing the optional SD-JWT export. It packs substantial detail without being verbose, though it could benefit from structural formatting for clarity. 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?
Given the tool's complexity (8 parameters, no output schema), the description covers the main assembly and SD-JWT export but does not specify the return format for the primary assembly (e.g., what structure is returned when sd_jwt is false). It also omits error conditions or edge cases. The SD-JWT disclosure details are helpful but leave gaps around the standard bundle 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?
With 63% schema description coverage, the description adds value by explaining the relationship between parameters (e.g., sd_jwt triggers SD-JWT export, records are from human_accountability_records) and the SD-JWT disclosure structure that ties together parameters like verification_result, kernel_version, and submission_receipt. This goes beyond the schema's 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 assembles a §27.6 haEvidenceBundle from human_accountability_records and optionally exports as SD-JWT. It specifies the algorithm reference (browser verify.html HA export card) and the specific data types involved, distinguishing it from sibling bundle tools like 'assemble_ocg_evidence_bundle' through the §27.6 standard reference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 through the §27.6 standard and mention of human_accountability_records, but does not explicitly state when to use this tool versus alternatives or provide when-not scenarios. It lacks guidance on prerequisites or limitations, relying on the implicit context from the tool's purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ha_gate_statusEvaluate a §27.4/§27.5 human-accountability gate preconditionARead-onlyIdempotentInspect
Given a step's haGatePolicy and the human_accountability_records[] collected for a subject, returns whether the gate is satisfied, held, rejected, escalated, or overridden -- same algorithm as the browser verify.html HA gate card (kernels/_hagate.mjs, SPEC.md §27.4-27.5). A rejection record is terminal-blocking regardless of policy; an active time-boxed override (§27.5) takes precedence over the underlying policy. Pure function: caller supplies nowISO for determinism.
| Name | Required | Description | Default |
|---|---|---|---|
| role | Yes | The haRole a satisfying approval record must carry. | |
| now_iso | Yes | Caller-supplied ISO 8601 clock (determinism; never Date.now() internally). | |
| records | No | Collected human_accountability_records over this subject. Default: []. | |
| threshold | No | N for dual_control/review_required/hold. Default 1 (2 for dual_control). | |
| gate_policy | Yes | The step's declared haGatePolicy. | |
| subject_hash | Yes | The sealed artifact's sha256: subject hash. | |
| require_conformant | No | Require §27.2 structural signature shape on every record (default true). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, establishing it as a safe, deterministic pure function. The description adds value by noting that rejection records are terminal-blocking and active time-boxed overrides take precedence, providing behavioral details beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences covering purpose, behavioral details, and purity. It is front-loaded with the main purpose and contains no unnecessary words. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the lack of output schema, the description enumerates possible return states (satisfied, held, rejected, escalated, overridden) and references the algorithm. However, it does not specify the exact output format (e.g., string, object with details) or fully explain parameter defaults like threshold's dual_control 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 some semantic value by explaining the purpose of nowISO for determinism and noting records default to empty array, but does not elaborate on other parameters like threshold defaults or require_conformant behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 whether a gate is satisfied, held, rejected, escalated, or overridden based on haGatePolicy and human_accountability_records, with specific verb 'returns' and resource 'gate precondition'. It references the exact algorithm from SPEC.md and distinguishes from sibling tools like ha_record_validate which handles individual 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 does not provide explicit guidance on when to use this tool versus alternatives. It mentions the tool is a pure function and the caller supplies nowISO for determinism, but no 'when to use' or 'when not to use' advice. Sibling context implies it's for evaluating the overall gate, but this is not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ha_record_validateValidate a §27 human-accountability recordARead-onlyIdempotentInspect
Structural (non-cryptographic) §27.2 signed-named-human check: does this record carry a §16 whole-artifact proof (eddsa-jcs-2022) whose verificationMethod is bound to the record's own identity.id? Does NOT verify the signature bytes -- pair with verify_execution_hash / a proof verifier for that. Use before counting a record toward ha_gate_status.
| Name | Required | Description | Default |
|---|---|---|---|
| record | Yes | A single human_accountability_records[] entry to check. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, but the description adds valuable behavioral context: it specifies the non-cryptographic nature, the specific check performed, and the requirement to pair with a signature verifier. There is no contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, each adding essential information. It is front-loaded with the purpose, followed by limitations and usage advice. 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, one parameter, no output schema, and sufficient annotations, the description covers purpose, limitations, and usage context. It could optionally hint at return type or error conditions, but 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% with one parameter (record) described as 'A single human_accountability_records[] entry to check.' The description adds only marginal extra meaning (signed-named-human check, identity.id binding), but the schema already conveys the core structure. 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 performs a structural (non-cryptographic) check on a §27 human-accountability record, specifically verifying a §16 whole-artifact proof bound to the record's identity.id. It distinguishes itself from signature verification and places itself in the broader workflow (use before ha_gate_status). This differentiates it from sibling tools effectively.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 ('before counting a record toward ha_gate_status') and what it does NOT do ('Does NOT verify the signature bytes'), directing users to pair with verify_execution_hash or a proof verifier. While not exhaustive on when not to use, it provides clear context and alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_visa_tap_signatureVisa Trusted Agent Protocol Signature Inspector & ReadinessARead-onlyIdempotentInspect
Inspect a Visa Trusted Agent Protocol HTTP Message Signature and score TAP readiness. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| parsed | No | |
| findings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint. The description adds valuable context: it renders an interactive widget, runs client-side with zero PII and zero network. This goes beyond annotations to explain 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 clearly states purpose, second explains execution mode. No redundant words, front-loaded with the core 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?
For a tool with one parameter and an output schema, the description covers purpose and execution context. However, it does not detail the scoring output or the widget's behavior, which could be more 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%, so the baseline is 3. The description mentions inputs are applied via AIN Bridge and references the manifest input_schema, but does not add new meaning beyond the schema for the single 'inputs' 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?
The description states a specific verb ('inspect') and resource ('Visa Trusted Agent Protocol HTTP Message Signature'), and adds the action of scoring TAP readiness. It distinguishes itself from the sibling tool 'inspect_visa_trusted_agent_protocol' by focusing on signature inspection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 inspecting signatures and scoring readiness, but does not explicitly state when to use this tool versus alternatives like inspect_visa_trusted_agent_protocol. No when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_visa_trusted_agent_protocolVisa Trusted Agent Protocol (TAP) Signature InspectorARead-onlyIdempotentInspect
Visa Trusted Agent Protocol (TAP) Signature Inspector: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-16-google-ap2-mandate-builder, art-22-agentic-payments-protocol-comparator. Output feeds: art-18-mcp-developer-readiness-scorecard, art-24-mastercard-agentic-token-builder, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-23-visa-trusted-agent-protocol-inspector.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent annotations, the description adds that inputs are 'processed transiently' and 'not stored, logged, or retained,' reveals it exports an AP2 artifact with execution_hash, and lists upstream/downstream artifacts. It also clarifies deterministic behavior and browser delegation, providing rich runtime context that annotations don't cover.
Agents need to know what a tool does to the 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 paragraph, but it front-loads the tool's identity and then covers compute modes, data handling, artifact export, and chain relationships. Every clause carries useful information, though breaking it into separate sections could improve 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?
The description covers execution environment, data retention, output artifact format, upstream/downstream dependencies, and provides a URL for more details. Given no output schema, it does a solid job, but it doesn't precisely describe the shape of the inspection result beyond the artifact mention.
Complex tools with many parameters or behaviors need more documentation. 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 descriptions for all four parameters, including the compute enum and nested policy_parameters object, so the baseline is 3. The description adds minor context (e.g., policy_parameters are for the 'decision function' and mentions the manifest) but largely repeats what's 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 self-identifies as 'Visa Trusted Agent Protocol (TAP) Signature Inspector' and 'OpenChainGraph compute node (compliance_control)' but never states a concrete action like 'verifies' or 'parses' signatures. It focuses more on the execution model than the core function, and it does not differentiate from the similar sibling 'inspect_visa_tap_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 clearly explains when compute:"auto" runs server-side versus compute:"browser" returning a delegation URL, and states that gpu:true nodes always delegate. It also includes an explicit constraint: 'Use synthetic or anonymised inputs only.' However, it doesn't name alternatives or provide exclusions beyond these compute mode distinctions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
intoto_record_chain_runRecord a ChainGraph chain run as in-toto linksARead-onlyInspect
Wraps the result of a run_chain call (server/auto compute mode) as standard in-toto links, one per successfully-executed step, plus a generated in-toto layout matching the chain's linear topology (each step MATCHes the previous step's product). Materials/products are keyed by the step's execution_hash; byproducts carries the raw execution_hash. All links and the layout are DSSE-signed with one ephemeral Ed25519 keypair scoped to this call (never persisted) — first shipping instance of "in-toto for MCP" per the 2026 research gap survey. Verify the bundle offline with the in-toto Link Builder & Verifier (chaingraph/intoto-link-builder.html verify tab) or a reference implementation. Steps that did not run (input_required, skipped_by_gate, gpu_browser_only, etc.) are listed in skipped[] rather than silently omitted.
| Name | Required | Description | Default |
|---|---|---|---|
| run_chain_result | Yes | The structuredContent object returned by run_chain (must include chain and steps[]). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description adds behavioral context: generation of links/layout, ephemeral signing key, skipped steps listed in skipped[]. No contradiction with annotations. Could be improved by explaining the output 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 fairly long (5+ sentences) and includes some jargon and a reference to a research survey. It front-loads the purpose but could be more 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 no output schema, the description explains the input, behavior, output format (in-toto links, layout, skipped array), and verification. Sufficient for an agent 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?
Schema coverage is 100% for the single parameter; the description adds that it expects the structuredContent object from run_chain, which is useful 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's purpose: it wraps the result of a run_chain call as standard in-toto links, one per step, plus a layout. It distinguishes this from siblings by specifying the in-toto output format and context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 a run_chain call and mentions offline verification, but does not explicitly state when to use this vs alternatives like build_workflow_links or other recording tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lei_kyb_checkLive LEI data-quality grading with GLEIF fetchARead-onlyInspect
Fetches an entity's live GLEIF LEI record (api.gleif.org -- the worker's only egress target for this tool, RULINGS-2026-07-19-EGRESS-APEX.md R1) and grades it across six GLEIF data-quality dimensions -- registration status, renewal timeliness, corroboration level, entity status, Level-2 parent disclosure, address completeness -- using the SAME deterministic grader as the tools/551 browser workbench (pasting the same record there reproduces identical grades). Returns per-dimension grades, a composite, and a receipt with source provenance (url, retrieved_at, response_digest). This is an ASSERTED FETCH, not a zkTLS proof of origin, and grades DATA QUALITY only -- never creditworthiness, sanctions status, or entity legitimacy.
| Name | Required | Description | Default |
|---|---|---|---|
| lei | Yes | 20-character ISO 17442 Legal Entity Identifier to look up. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, destructiveHint=false, openWorldHint=true. The description adds significant behavioral context: specific egress target (api.gleif.org), deterministic grader cross-referenced with a browser workbench, return of provenance details (url, retrieved_at, response_digest), and the limitation that it is an asserted fetch without zkTLS proof. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that efficiently conveys the main action, dimensions, return structure, and caveats. It is front-loaded with the primary purpose. It could be slightly more structured (e.g., bullet points), but remains concise 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?
For a tool with one parameter and no output schema, the description covers all necessary context: what it does, what it returns (grades, composite, receipt with provenance), how it works (deterministic grader, cross-referenced), and limitations (asserted fetch, data quality only). This is comprehensive for an effective agent 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?
The input schema fully describes the required 'lei' parameter with a clear description. Schema coverage is 100%, so the description does not need to add more. The description mentions the parameter implicitly (LEI record) but does not add new constraints or format details 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 it fetches a live GLEIF LEI record and grades it across six data-quality dimensions. It specifies the source (api.gleif.org), the grading dimensions, and the return structure (per-dimension grades, composite, receipt). This distinguishes it from siblings by emphasizing it is a fetch and not a zkTLS 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 explicit exclusions: it is an asserted fetch, not a zkTLS proof, and grades only data quality, not creditworthiness or sanctions. This guides users when not to use the tool. However, it does not explicitly recommend alternatives for those use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
link_eudr_supply_chain_traceabilityEUDR Supply-Chain Traceability LinkerARead-onlyIdempotentInspect
EUDR Supply-Chain Traceability Linker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-168-eudr-country-benchmark-risk-scorer. Output feeds: art-170-eudr-readiness-diagnostic. Open at: https://ainumbers.co/chaingraph/art-169-eudr-supply-chain-traceability-linker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint), the description adds valuable behavioral details: inputs are processed transiently and not stored/logged/retained, and the tool is deterministic. It also explains compute modes and artifact export, enriching the agent's understanding without contradicting 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 moderately long but well-structured, covering compute modes, data handling, provenance, and connections. Every sentence adds value, though the first line ('OpenChainGraph compute node (compliance_mandate)') slightly overlaps with the title. 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 complexity (4 parameters, no output schema), the description gives sufficient context: place in the chain graph, compute mode variants, input safety, and output artifact characteristics. The lack of output schema details is partially offset by mentioning execution_hash and AP2 artifact, but more detail on output structure 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?
The input schema has 100% description coverage, but the tool description adds significant context beyond schema descriptions—especially for policy_parameters (explaining server-side computation based on compute mode) and parent_hashes (chaining context). This helps the agent understand parameter behavior in different execution modes.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 role as an OpenChainGraph compute node for EUDR supply chain traceability, linking upstream and downstream artifacts. It includes specific context like compliance mandate and deterministic behavior, but the initial dense terminology may slightly obscure the core 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 provides guidance on compute modes and input restrictions (use synthetic or anonymised inputs only), but does not explicitly state when to use this tool versus sibling tools. The place in the chain is indicated, but not as a direct usage alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
link_traceability_lot_codeFSMA 204 Traceability Lot Code Chain LinkerARead-onlyIdempotentInspect
FSMA 204 Traceability Lot Code Chain Linker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-118-fsma204-cte-validator. Output feeds: art-120-recall-trace-resolver. Open at: https://ainumbers.co/chaingraph/art-119-traceability-lot-code-linker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description goes beyond annotations by stating inputs are processed transiently without storage, logging, or retention. It details compute modes and delegation behavior for gpu:true nodes, and mentions exporting an AP2 artifact with execution_hash. This adds significant behavioral context beyond the readOnlyHint and idempotentHint 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?
Description is a single paragraph that efficiently conveys the tool's purpose, compute modes, input handling, and artifact chain. It is not overly long, and each sentence adds value. A more structured format (e.g., bullet points) could improve readability, but current form is acceptable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute node with no output schema, the description adequately covers key aspects: compliance mandate, compute modes, transient input processing, artifact export, and chain dependencies. It provides enough context for an AI agent to understand the tool's role and limitations, though a brief note on the output format would strengthen 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 all four parameters. The description adds context about compute modes and policy_parameters being for the decision function, but does not elaborate on parent_hashes or parent_tool_ids beyond what schema provides. Baseline score warranted as schema already handles parameter 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 it's a FSMA 204 Traceability Lot Code Chain Linker, an OpenChainGraph compute node for compliance mandates. It specifies its role in linking lot codes and its position in the artifact chain (consumes from art-118, feeds to art-120). However, it does not explicitly differentiate itself from the many sibling tools, relying on the unique name and context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 advises to use synthetic or anonymised inputs only and explains compute mode options (auto/server/browser) and server vs. client execution. However, it lacks explicit guidance on when to choose this tool over alternatives or when not to use it. The context of FSMA 204 traceability is implied but not stated as a decision criterion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_ab2013_training_data_disclosureAB 2013 Training Data Disclosure LinterBRead-onlyIdempotentInspect
AB 2013 Training Data Disclosure Linter: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-315-ab2013-training-data-disclosure-linter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: inputs are transient, not stored, execution modes (auto/server/browser), and output as AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is informative and front-loaded with the purpose. It is slightly verbose due to the URL at the end, but overall efficient 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?
The description covers execution mechanics and output, but lacks the core linting logic or criteria checked. For a complex tool with 4 parameters and nested objects, this is a notable gap in domain-specific 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%, so the schema documents parameters well. The description adds minimal extra meaning, mostly repeating compute mode details. 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 identifies the tool as a linter for AB 2013 training data disclosure, specifying it as an OpenChainGraph compute node. It differentiates from siblings by its specific regulatory focus, but the linting criteria are not elaborated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 description mentions using synthetic or anonymised inputs but does not provide context for selection among sibling linters or other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_aiuc1_control_evidenceAIUC-1 Control Evidence LinterARead-onlyIdempotentInspect
AIUC-1 Control Evidence Linter: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-304-aiuc1-evidence-pack-assembler. Open at: https://ainumbers.co/chaingraph/art-303-aiuc1-control-evidence-linter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds that inputs are transiently processed and not stored, logged, or retained, and clarifies compute delegation logic. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is reasonably concise for the amount of information provided (compute modes, data handling, output, URL). It front-loads the purpose and avoids redundant sentences. Slight wordiness reduces a perfect score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, compute modes, data retention, output artifact, and downstream feed. It lacks explicit linting rules but provides a URL for details. Given no output schema and 4 parameters including nested objects, this is fairly 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%, providing descriptions for all 4 parameters. The description echoes compute mode behavior and policy_parameters role but does not significantly add 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 it is a linter for AIUC-1 control evidence, specifies it is a deterministic OpenChainGraph compute node, and explains its output (AP2 artifact with execution_hash). The resource and action are distinct, and the tool's specialization differentiates it from other linters and general compute 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 guidance on synthetic/anonymised inputs and explains compute modes (auto, server, browser) with conditions for each. However, it does not explicitly contrast with sibling tools (e.g., other linters or evidence composers) 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.
lint_arc_xreserve_configArc xReserve Config LinterARead-onlyIdempotentInspect
Arc xReserve Config Linter: OpenChainGraph compute node (compliance_mandate). Regulatory deadline: 2026-07-18 (GENIUS Act §4 eligible-asset backing requirements; MiCA Art. 54 reserve requirements for EU EMT issuers.). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-42-arc-fit-diagnostic. Open at: https://ainumbers.co/chaingraph/art-45-arc-xreserve-linter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it states inputs are processed transiently and not stored/logged/retained, notes deterministic execution, and mentions export of an AP2 artifact with execution_hash. This complements the annotations (readOnlyHint, idempotentHint) without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that covers key aspects (purpose, usage, compute modes, data handling, artifact output) without excessive verbosity. It is front-loaded with the tool's purpose. However, the dense structure could be improved with clearer demarcation (e.g., bullet points for compute modes).
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 mentions upstream artifact consumption and export of an AP2 artifact, providing some context. However, it lacks details on the linter's output format (e.g., lint errors/warnings) and how results are returned, which is important given no output schema. For a complex compliance tool, this is a notable 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 detailed descriptions for all 4 parameters. The tool description does not add meaningful parameter-specific information beyond restating compute mode logic already in the schema. Baseline score of 3 is appropriate as the schema carries the semantic load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a linter for Arc xReserve config, specifying regulatory context (GENIUS Act, MiCA) and distinguishing it from other lint tools in the sibling list. It uses a specific verb ('lint') and resource ('arc_xreserve_config'), 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 explains when to use different compute modes ('auto', 'browser') based on node type and kernel registration, and advises using synthetic/anonymised inputs. However, it does not explicitly contrast this tool with sibling lint tools 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.
lint_besu_settlement_contractBesu Settlement Contract LinterARead-onlyIdempotentInspect
Besu Settlement Contract Linter: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-292-attest-settlement-orchestrator. Open at: https://ainumbers.co/chaingraph/art-289-lint-besu-settlement-contract.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only and idempotent, and the description adds significant behavioral context: transient input processing, no storage/logging/retention of inputs, requirement for synthetic/anonymized inputs, and export of AP2 artifact with execution_hash for chain provenance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is comprehensive but dense, covering purpose, compute modes, security, and outputs. While not wasteful, it could be structured with clearer sections or bullet points for faster 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?
Despite no output schema, the description explains the output artifact type (AP2 with execution_hash) and its downstream use. It also provides a URL. Given the tool's complexity and 4 parameters, the description is 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%, baseline 3, but the description greatly exceeds it by explaining compute modes with conditions, policy_parameters as decision function inputs referencing a manifest, and parent_hashes/parent_tool_ids as chain provenance links from upstream artifacts. Each parameter's meaning is enriched.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a linter for Besu settlement contracts, specifying it as an OpenChainGraph compute node with compliance mandate. It distinguishes itself from sibling lint tools by naming the specific contract 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 provides detailed guidance on compute modes (auto, server, browser) based on GPU and kernel, but does not explicitly state when to use this lint tool over alternatives like lint_ab2013_training_data_disclosure. Context is clear but exclusions are absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_cbom_structureCBOM Structural Lint & CNSA-2.0 ClassifierCRead-onlyIdempotentInspect
CBOM Structural Lint & CNSA-2.0 Classifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-386-lint-cbom-structure.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds valuable context beyond annotations: it explains that inputs are processed transiently and not stored, advises using synthetic data, and mentions the export of an AP2 artifact with execution_hash for chain provenance. This helps the agent understand the tool's data handling and output 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 moderately concise but front-loads compute mode details rather than the core purpose. It includes a link for more information, which is acceptable, but overall could be 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?
The description lacks details about the tool's output beyond mentioning an AP2 artifact; it does not describe what the artifact contains or how to interpret the linting/classification results. For a specialized tool with no output schema, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema coverage, the baseline is 3. The description does not add significant meaning beyond the schema; for example, it does not explain the purpose of 'parent_hashes' or 'policy_parameters' in the context of linting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 it is a 'CBOM Structural Lint & CNSA-2.0 Classifier' and an OpenChainGraph compute node, but it does not specify what exactly it lints or classifies, nor how it differs from sibling lint tools. The focus on compute modes detracts from clarity of the tool's core 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 is provided on when to use this tool versus alternatives, such as other lint tools. There is no mention of prerequisites, use cases, 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.
lint_cbpr_structured_addressCBPR+ Structured Address LinterARead-onlyIdempotentInspect
CBPR+ Structured Address Linter: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-242-pacs008-party-completeness-validator. Open at: https://ainumbers.co/chaingraph/art-241-cbpr-structured-address-linter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds that inputs are transiently processed and not stored, it exports an AP2 artifact with execution_hash for chain provenance, and it feeds into a specific validator. This contextualizes the tool's role in a chain without contradicting 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 logically structured, starting with the tool name, then compute modes, data handling, output, and a link. It is relatively concise given the complexity, though it could be slightly tighter by removing the link or the output feed 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?
The description covers compute modes, data handling, chaining, and output. However, it does not specify the input format for 'policy_parameters' fields beyond referencing the manifest. With no output schema and a nested object parameter, more detail on expected input structure 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?
With 100% schema coverage, the baseline is 3. The description explains the 'compute' parameter modes and the purpose of 'parent_hashes' and 'parent_tool_ids' for chaining. For 'policy_parameters', it references the tool's manifest, which adds some context but leaves specifics undefined. This is adequate but does not go beyond the schema significantly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'CBPR+ Structured Address Linter' and specifies it is a deterministic OpenChainGraph compute node with a compliance mandate. It distinguishes itself from sibling lint tools by focusing on CBPR+ structured addresses and mentioning its output feeds to a specific validator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes ('auto', 'server', 'browser') are appropriate and that gpu:true nodes always delegate to the browser. It advises using synthetic or anonymised inputs. However, it does not explicitly compare to alternative tools 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.
lint_compelling_evidence_ce30_agenticAgentic Dispute CE3.0 Evidence LinterBRead-onlyIdempotentInspect
Agentic Dispute CE3.0 Evidence Linter: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-01-ap2-mandate-chain-validator, art-23-visa-trusted-agent-protocol-inspector, art-24-mastercard-agentic-token-builder, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-297-agentic-dispute-ce30-linter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant value beyond the annotations by detailing that the tool is deterministic, processes inputs transiently without storage, recommends synthetic inputs, and exports an artifact with execution_hash. It also explains compute modes, which is not covered by 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 somewhat verbose and includes technical details (e.g., specific upstream artifact IDs, a URL) that may not be essential for core understanding. It front-loads the tool name but could be more 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 lack of an output schema, the description should explain what the linter returns. It mentions exporting an AP2 artifact with execution_hash, but not the structure or content of the linting results. Additionally, the specific criteria for linting 'Compelling Evidence' are not elaborated, leaving the tool's core function somewhat underspecified.
Complex tools with many parameters or behaviors need more documentation. 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 coverage, the baseline is 3. The description reinforces the compute mode parameter behavior and explains the purpose of parent_hashes for chaining, but does not add substantial new 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 it is an 'Agentic Dispute CE3.0 Evidence Linter' and an 'OpenChainGraph compute node', indicating it lints evidence. However, it lacks specificity on what exactly it checks or validates, making it slightly less clear compared to more detailed purpose statements.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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, such as other lint tools in the sibling list. It only mentions consuming specific upstream artifacts, which implies a usage context but no direct comparison or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_crypto_asset_whitepaperCrypto-Asset Whitepaper Linter (iXBRL)CRead-onlyIdempotentInspect
Crypto-Asset Whitepaper Linter (iXBRL): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-98-mica-casp-fit-diagnostic. Output feeds: cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-102-crypto-asset-whitepaper-linter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive. The description adds valuable context: inputs are transient, not stored, computed server-side or browser-delegated, and outputs include execution_hash for provenance. This extends transparency without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Approximately 10 sentences; mixes functional and operational details. The opening is somewhat tautological. Could be more concise by front-loading the core linting purpose, but the information density is reasonable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, no output schema), the description covers compute modes, transient processing, and provenance but lacks the core linting rules or what the tool checks. Missing functional scope essential for a linter 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 100% description coverage, so each parameter is documented. The description adds little beyond the schema, repeating compute enum details. Parameter semantics are adequately covered by the schema itself.
Input schemas describe structure but not intent. Descriptions should explain non-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 title suggest a linter for crypto-asset whitepapers, but the description focuses on operational details (compute modes, Cloudflare, provenance) rather than explicitly stating what the tool does. It references 'compliance_mandate' and upstream artifacts hinting at MiCA/CASP, but the functional purpose is vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 siblings. The only usage note is 'Use synthetic or anonymised inputs only,' which is a caution not context for selection. Given many lint siblings, explicit alternatives or criteria are missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_fedwire_structured_addressFedwire Structured Address LinterARead-onlyIdempotentInspect
Fedwire Structured Address Linter: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-350-fedwire-address-sweep. Open at: https://ainumbers.co/chaingraph/art-349-fedwire-structured-address-linter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: transient processing (inputs not stored), requirement for synthetic/anonymised inputs, determinism, and compute mode execution details. No contradiction with annotations (readOnlyHint, idempotentHint, etc.).
Agents need to know what a tool does to the 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 information-dense with clear structure, but contains some repetition (e.g., 'OpenChainGraph compute node' twice). It covers purpose, compute, data handling, outputs, and integration 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?
Given no output schema, the description explains the exported AP2 artifact and output feed. It covers compute modes, input handling, and provenance. However, it does not specify the format or structure of lint results (e.g., errors, warnings), which 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?
Although schema description coverage is 100%, the tool description adds meaning beyond parameter names: it explains that 'policy_parameters' are for the decision function and that 'parent_hashes' chain execution from upstream artifacts. This contextualizes parameter roles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 lints Fedwire structured addresses, a specific resource, and mentions it is a deterministic OpenChainGraph compute node with a compliance mandate. This distinguishes it from sibling lint tools like 'lint_cbpr_structured_address' or 'lint_ab2013_training_data_disclosure'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 the tool (for Fedwire addresses) and provides context on compute modes and output integration. However, it does not explicitly state when not to use it or provide alternatives, limiting guidance on selection among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_insurance_evidence_freshnessAIUC-1 Evidence Freshness LintARead-onlyIdempotentInspect
AIUC-1 Evidence Freshness Lint: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-304-aiuc1-evidence-pack-assembler. Open at: https://ainumbers.co/chaingraph/art-305-aiuc1-evidence-freshness-lint.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds valuable behavioral details beyond annotations: inputs are transiently processed, not stored, and to use synthetic inputs. It also explains compute modes and export 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 a single paragraph that efficiently covers role, compute modes, security, and provenance. It is front-loaded with the tool's identity. Could be more structured, but not 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 and no output schema, the description covers compute modes, transient processing, artifact export, and upstream dependency. However, it does not explain what 'evidence freshness' exactly means, leaving a slight 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 description coverage is 100%, so baseline is 3. The description adds minimal extra meaning for parameters; it mentions compute modes and refers to a manifest for policy_parameters, but mostly repeats 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 it is a 'lint' tool for 'AIUC-1 Evidence Freshness', naming the specific resource and distinguishing it from siblings. The verb 'lint' is specific and the context of OpenChainGraph compute node 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 implies usage by stating it is a compliance mandate and lists upstream artifacts, but does not explicitly state when to use this tool versus alternatives, nor does it provide exclusion criteria 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.
lint_lei_payment_bindingWolfsberg Payment Transparency & LEI Binding LinterBRead-onlyIdempotentInspect
Wolfsberg Payment Transparency & LEI Binding Linter: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-242-pacs008-party-completeness-validator. Open at: https://ainumbers.co/chaingraph/art-246-lei-payment-binding-linter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds meaningful behavioral details beyond annotations: transient processing (no storage), compute mode variations, Cloudflare Workers execution, and the requirement to use synthetic/anonymised inputs. This is consistent with readOnlyHint and idempotentHint 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 front-loaded with the tool's name but includes extensive technical detail about compute modes and execution environment. While informative, it could be more concise to improve agent 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 compute modes, data handling, and upstream dependencies, but lacks explanation of the output format or what the linting result represents. Given no output schema, more details on the AP2 artifact and the linting outcome would be beneficial.
Complex tools with many parameters or behaviors need more documentation. 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 descriptions for all parameters. The description does not add new parameter semantics 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 identifies the tool as a 'Wolfsberg Payment Transparency & LEI Binding Linter' and mentions it is a compliance mandate, but does not clearly specify what it checks or validates. The core linting function is vague, and it does not differentiate from other lint 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. It mentions consuming upstream artifacts from a specific validator, implying a chain context, but lacks direct usage recommendations or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_mcp_server_conformanceMCP Server Self-Attestation PackARead-onlyIdempotentInspect
MCP Server Self-Attestation Pack: OpenChainGraph compute node (infrastructure_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: cry-05-agent-action-audit-trail-aggregator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-33-mcp-server-self-attestation-pack.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds meaningful behavioral context beyond annotations: inputs are processed transiently and not stored, logged, or retained; deterministic compute; gpu-dependent delegation. This aligns with readOnlyHint and idempotentHint, and no contradictions 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 contains redundancy ('OpenChainGraph compute node' appears twice) and includes peripheral details like URL and output feed identifiers. It is not excessively long but could be tighter and more 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?
Since there is no output schema, the description should explain return values. It mentions exporting an AP2 artifact with execution_hash, but does not describe the response structure or content. The reference to a tool manifest for policy_parameters is vague. Compute behavior is well covered, but output format and parameter details are 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?
Schema coverage is 100%, so the baseline is 3. The description enhances understanding of the 'compute' parameter by explaining auto/server/browser semantics and gpu:true delegation. The synthetic-input warning adds context for policy_parameters, though parent_hashes and parent_tool_ids rely on 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 identifies the tool as an 'MCP Server Self-Attestation Pack' for OpenChainGraph, which clearly differentiates it from siblings like lint_mcp_tool_definition and validate_mcp_server_json. It mentions exporting an AP2 artifact with execution_hash, implying an attestation generation purpose, but lacks an explicit active verb like 'generates' or 'validates'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 operational guidance on compute modes (auto/server/browser) and gpu:true delegation behavior. The warning 'Use synthetic or anonymised inputs only' gives explicit usage direction. However, it does not mention alternatives or when not to use this tool relative to other conformance tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_mcp_tool_definitionMCP Tool-Definition Linter & Annotation DesignerARead-onlyIdempotentInspect
Validate an MCP tool definition against JSON Schema 2020-12 and current naming, output-schema, and annotation rules; returns findings, a conformance score, and a recommended annotation set. Use when a developer wants to check an MCP tool definition before publishing. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| score | No | |
| findings | No | |
| annotations | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations that declare read-only and idempotent behavior, the description reveals non-obvious traits: it renders an interactive widget, operates client-side with zero PII and zero network, and uses AIN Bridge for inputs. This fully discloses the execution model and data privacy.
Agents need to know what a tool does to the 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 a clear front-loaded action. The second sentence is slightly long, bundling multiple details, but each part serves a purpose. Minor verbosity is acceptable given the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (linter with output schema, widget rendering, client-side execution) and rich annotations, the description covers purpose, usage, behavioral traits, input mechanism, and return values (findings, score, annotation set). No gaps are 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?
The input schema already provides 100% description coverage for the 'inputs' parameter ('Map of tool input element IDs to values...'). The description adds only minor context about widget rendering and AIN Bridge prefill, not substantially enriching the parameter meaning beyond what the schema 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 tool validates MCP tool definitions against specific rules (JSON Schema 2020-12, naming, output-schema, annotations) and returns findings. However, it does not explicitly differentiate from sibling lint tools that focus on domain-specific validation, relying on context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 when a developer wants to check an MCP tool definition before publishing,' providing clear context. It does not mention when to avoid using it (e.g., for domain-specific linting), but the sibling list implies alternative tools exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_metro2_recordMetro 2 Credit-Reporting Record LintARead-onlyIdempotentInspect
Metro 2 Credit-Reporting Record Lint: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-398-lint-metro2-record.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds context beyond annotations: deterministic, transient processing, no retention, advice to use synthetic data, exports artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is informative but verbose, covering multiple details in one paragraph. Could be more concise by focusing on essential purpose and usage 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?
Covers purpose, compute behavior, input advice, and output provenance. Lacks specifics on what lint checks are performed (e.g., what rules applied), but overall 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?
Schema coverage is 100%; description restates compute mode behavior already in schema. No new parameter-level insight 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 identifies tool as 'Metro 2 Credit-Reporting Record Lint'—specific verb (lint) and resource (Metro 2 record). Distinguishes from sibling lint tools by targeting a specific record 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?
Explains compute modes and transient processing but does not specify when to use this tool over other lint tools. No explicit when-to-use or 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.
lint_mismo_uldd_uladULDD/ULAD Structural LinterBRead-onlyIdempotentInspect
ULDD/ULAD Structural Linter: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-226-mismo-uldd-ulad.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds behavioral context beyond annotations: inputs are processed transiently and not stored, synthetic/anonymised inputs recommended, exports an AP2 artifact. Annotations already indicate read-only and idempotent, but description provides valuable operational 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?
Description is relatively concise at about 5 sentences, covering key points. Could be better structured to front-load 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?
Lacks explanation of what the linter checks (specific structural rules) and does not describe output format beyond artifact export. Missing guidance on return value 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 covers 100% of parameters with detailed descriptions. Description adds minimal extra meaning (e.g., Cloudflare Workers for server-side compute). Baseline score of 3 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 a structural linter for ULDD/ULAD, as indicated by the title and first sentence. However, it does not explicitly state what it lints (e.g., documents, structures) and focuses more on execution mechanics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 lint tools (e.g., lint_ab2013_training_data_disclosure). The description lacks context on appropriate scenarios or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_securities_settlement_messageSecurities-Settlement Message Linter (ISO 20022 sese/semt)ARead-onlyIdempotentInspect
Securities-Settlement Message Linter (ISO 20022 sese/semt): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-81-allocation-affirmation-conformance. Output feeds: cry-04-merkle-batch-verifier, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-82-securities-settlement-message-linter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint=true, idempotentHint=true, etc.), the description adds: 'Deterministic OpenChainGraph compute node', 'Inputs are processed transiently and are not stored, logged, or retained', and 'Exports an AP2 artifact with execution_hash for chain provenance'. This covers data handling, determinism, and persistence characteristics.
Agents need to know what a tool does to the 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 information-dense and front-loads the tool's identity and compute modes. While long, each sentence adds unique value; minor redundancy in restating 'OpenChainGraph compute node' could be trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, one nested object, and no output schema, the description covers purpose, compute modes, data handling, and chain provenance. It lacks explicit return value documentation but the annotation/context signals compensate adequately.
Complex tools with many parameters or behaviors need more documentation. 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 four parameters. The description further explains compute modes and references the tool's manifest for policy_parameters field names, adding 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 starts by naming the tool as a 'Securities-Settlement Message Linter (ISO 20022 sese/semt)' and positions it as an OpenChainGraph compute node with specific upstream and downstream artifact connections. This clearly distinguishes it from sibling tools and provides a precise verb+resource+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 explains compute modes ('auto', 'server', 'browser') and when each is used, plus advises using synthetic/anonymised inputs. It references upstream/downstream artifacts for chain context but does not explicitly state when NOT to use this tool compared to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_settlement_orchestrator_conformanceSettlement Orchestrator AttestationARead-onlyIdempotentInspect
Settlement Orchestrator Attestation: OpenChainGraph compute node (infrastructure_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-289-lint-besu-settlement-contract. Open at: https://ainumbers.co/chaingraph/art-292-attest-settlement-orchestrator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond annotations: transient input handling, non-retention, deterministic execution, browser delegation for gpu:true nodes, and export of an AP2 artifact. This expands on the read-only and idempotent hints without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and mostly front-loaded with the tool's identity and execution model. It contains minor repetition ('OpenChainGraph compute node' twice), but each sentence offers 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?
The description explains execution mechanics and provenance links, but it doesn't specify what conformance is being attested, what the output artifact contains beyond an execution_hash, or how to interpret results. Since there is no output schema, more clarity on the tool's core purpose and return value would be 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 schema already describes all parameters comprehensively, so the baseline is 3. The description adds extra context about server-side Cloudflare Workers execution and the meaning of compute modes, which deepens understanding of the compute parameter 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 identifies the tool as an OpenChainGraph compute node and mentions 'Attestation', but it doesn't explicitly state what conformance is being verified. It focuses on execution mechanics rather than the core purpose. The name implies linting conformance, but the description doesn't clarify the specific assertion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 sibling lint/attestation tools. It mentions consuming an upstream artifact, which implies a dependency but not a use case. The compute mode details are parameter behavior, not usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_stock_token_valuationValuation Double-Count / Decimal LinterARead-onlyIdempotentInspect
Valuation Double-Count / Decimal Linter: OpenChainGraph compute node (collateral_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-319-rhc-valuation-linter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description extensively details behavioral traits beyond annotations: it is deterministic, describes compute modes (auto/server/browser) with gpu:true/false behavior, confirms inputs are transiently processed and not stored, and explains the output artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat verbose, including a URL and repeated mentions of 'OpenChainGraph compute node'. The first sentence is packed with jargon. It could be more concise while preserving 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 no output schema, the description explains the output (AP2 artifact with execution_hash). It covers compute modes, data privacy, and artifact generation. However, it lacks details on the lint results format (e.g., list of issues or scoring).
Complex tools with many parameters or behaviors need more documentation. 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 in detail. The description adds minimal new meaning—it reiterates compute mode options and transient processing, but no further semantic enrichment. 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 states it is a 'Valuation Double-Count / Decimal Linter' and an 'OpenChainGraph compute node (collateral_mandate)', clearly indicating the tool lints stock token valuations. The purpose is evident, though the technical jargon might obscure the core function for some agents. It differentiates from sibling linters by focusing on valuation-related linting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 linter versus other linters or tools in the sibling list. It mentions using synthetic or anonymised inputs, but lacks explicit context about appropriate use cases or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_trace_cat_reportsTRACE / CAT Reporting LintARead-onlyIdempotentInspect
TRACE / CAT Reporting Lint: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-396-compute-15c3-3-reserve. Open at: https://ainumbers.co/chaingraph/art-397-lint-trace-cat-reports.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds important behavioral details beyond annotations: transient processing (no storage), deterministic nature, chain provenance, and compute mode delegation. It aligns with readOnlyHint, idempotentHint, and destructiveHint without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but front-loaded with purpose. All sentences are informative, though it includes a specific URL that may not be essential. Could be slightly more concise, but overall 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?
Covers purpose, compute modes, privacy, idempotency, and chain integration. Lacks details on output format (no output schema) and error conditions, but for a lint tool with good annotations, it is fairly 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 parameter descriptions, so baseline is 3. The description adds minimal extra semantic value, repeating compute mode and referencing a manifest for policy_parameters. No significant new parameter insights.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a lint tool for 'TRACE / CAT Reporting' and a deterministic OpenChainGraph compute node. The specific domain distinguishes it from sibling lint tools, though it doesn't explicitly contrast with similar lint 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 explains compute modes (auto, server, browser) and advises using synthetic/anonymized inputs. However, it does not specify when to use this tool vs other lint tools or alternatives, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_ucp_checkout_payloadUCP Checkout Payload LintBRead-onlyIdempotentInspect
UCP Checkout Payload Lint: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-564-ucp-checkout-payload-lint.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes far beyond the annotations by disclosing determinism, transient data processing ('not stored, logged, or retained'), server/browser execution paths, and artifact export with execution_hash. This gives a clear picture of the tool's runtime behavior and data lifecycle, which the annotations only partially hint at.
Agents need to know what a tool does to the 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 moderately sized but contains redundancy: 'OpenChainGraph compute node' appears twice in the opening. While it front-loads key behavioral info, the repetition and the trailing URL could be streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 lint tool, the description omits critical information about what the tool outputs (pass/fail, violations, report format), especially since there is no output schema. It also doesn't clarify the policy_parameters format or how the exported AP2 artifact relates to lint results. The focus on execution modes leaves the core validation semantics unexplained.
Complex tools with many parameters or behaviors need more documentation. 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 each parameter is already documented. The description adds no new parameter-specific meaning; its compute mode details essentially mirror the schema's own text. Baseline of 3 applies because the schema carries the load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description repeats the tool's name ('UCP Checkout Payload Lint') without specifying what exactly it validates or checks. It mentions 'OpenChainGraph compute node (compliance_mandate)' but that is infrastructure context, not the tool's purpose. It also fails to distinguish itself from the many sibling lint_* 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 some guidance: 'Use synthetic or anonymised inputs only' and explains compute mode behavior (auto, browser, gpu:true). However, it does not state when to use this tool versus alternative lint or validate tools, nor does it mention exclusions or prerequisites for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_x12_claim_recordsX12 837/835 Healthcare-Claim Records LintARead-onlyIdempotentInspect
X12 837/835 Healthcare-Claim Records Lint: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-399-lint-x12-claim-records.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), description details transient input processing, no storage/logging, export of AP2 artifact with execution_hash, and compute mode delegation behavior. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is front-loaded with the tool's identity and purpose, then explains compute modes, data handling, and output. It effectively conveys necessary details without extraneous content, though slightly lengthy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, description covers return value (AP2 artifact with execution_hash) and provides a reference URL. It adequately explains the tool's role in a chain and its deterministic nature, making it reasonably complete for a lint 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 provides 100% coverage with clear descriptions for all 4 parameters. The tool description does not add significant new meaning beyond what the schema already states, meeting the baseline requirement.
Input schemas describe structure but not intent. Descriptions should explain 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 specifies the tool lints X12 837/835 Healthcare-Claim Records using OpenChainGraph. It explicitly names the resource (X12 claim records) and action (lint), and distinguishes itself from siblings by being a dedicated lint tool for this specific domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute mode options and instructs to use synthetic or anonymised inputs only, but lacks explicit guidance on when to choose this tool over alternatives or when not to use it. Usage context is implied but not directly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_x402_v2_migrationx402 v2 Wire-Format Migration LinterBRead-onlyIdempotentInspect
x402 v2 Wire-Format Migration Linter: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-26-x402-payload-decoder-flow-simulator. Output feeds: art-61-x402-batch-settlement-reconciler, art-394-x402-deferred-handshake-validator. Open at: https://ainumbers.co/chaingraph/art-393-x402-v2-migration-linter.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations: it confirms deterministic execution, transient input processing (not stored/logged), and compute-mode behaviors. It also specifies that outputs include an AP2 artifact with execution_hash. These details align with readOnlyHint and idempotentHint. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description contains multiple sentences including upstream/downstream artifact IDs and a URL, which are not essential for tool invocation. The phrase 'OpenChainGraph compute node' is repeated. While not excessively long, it could be more focused on the linting behavior 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?
The description explains compute modes and data handling but omits what the linter actually checks or returns (e.g., pass/fail, list of violations). No output schema is provided, so the description should compensate. The artifact chain information is contextually rich but does not clarify the tool's direct 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?
Schema description coverage is 100%, so all parameters are documented in the schema. The description repeats compute-mode enum options but does not add new meaning. It mentions 'synthetic or anonymised inputs' but does not explain how this relates to specific parameters. A score of 3 is appropriate as the schema carries the semantic load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and opening phrase 'x402 v2 Wire-Format Migration Linter' clearly state the tool's domain and role. The description confirms it is a 'compliance_control' node, but does not explicitly describe the linting operation (e.g., what rules are checked). The verb 'lint' is implied by the name but not reinforced in the description, leaving some ambiguity about what exactly the tool validates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and transient processing but provides no guidance on when to use this linter versus sibling linters (e.g., lint_ab2013_training_data_disclosure). It does not state prerequisites, when not to use the tool, or how to interpret results. Usage context is inferred from the name, 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_ainumbers_toolsList AINumbers toolsARead-onlyIdempotentInspect
Search the AINumbers catalog (480+ client-side fintech tools). Returns deep-links; prefill-enabled tools accept #in=<base64url(JSON of {element_id: value})>[&run=1] for one-click invocation.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No | ||
| category | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false, establishing it as a safe read operation. The description adds significant value beyond annotations by describing the return format (deep-links) and the prefill feature with a specific encoding pattern. This additional behavioral context enhances transparency without contradicting the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loading the core purpose and then providing specific technical detail about the output and a special invocation feature. Every sentence contributes information, with no redundant or filler 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?
For a search/list tool with a given catalog size and output type, the description covers the key aspects: what it searches, what it returns, and a notable feature. However, given the absence of an output schema, more detail about the structure of the deep-links or response format would improve completeness. The inclusion of a size hint partially compensates.
Complex tools with many parameters or behaviors need more documentation. 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 defines three parameters (limit, query, category) with zero description coverage, and the tool description does not mention or explain these parameters. The description adds no meaning beyond the property names, leaving the agent uninformed about expected formats, defaults, or relationships. This is a critical gap for a search tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Search'), the resource ('AINumbers catalog'), and specifies the catalog size (480+ tools). It distinguishes the tool from siblings by describing its output (deep-links) and a unique feature (prefill-enabled tools with one-click invocation). This clearly defines the tool's scope and differentiates it from other tools in the 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 provides no explicit guidance on when to use this tool versus alternatives such as 'find_tool' or 'suggest_tool_idea'. It does not mention when not to use it or what context is appropriate. While the purpose implies it is for searching the catalog, the lack of usage boundaries lowers the score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_mletr_jurisdiction_adoptionMLETR Jurisdiction-Adoption LookupARead-onlyIdempotentInspect
MLETR Jurisdiction-Adoption Lookup: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-354-mletr-jurisdiction-adoption-lookup.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant behavioral detail beyond annotations: compute modes, transient processing, no storage/logging, synthetic inputs required, artifact export with execution_hash. This exceeds what annotations alone convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise paragraph front-loading purpose, then technical details. Could be more structured but no wasted sentences. Appropriate length for the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, so description must fill gaps. Mentions AP2 artifact export and execution_hash, but lacks details on error conditions, return format, or behavior when no adoption found. 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 baseline 3. Description adds minimal parameter-specific meaning, focusing on compute modes and overall behavior. 'Synthetic inputs' advice relates to policy_parameters but not detailed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Title and first sentence clearly state it's for MLETR jurisdiction adoption lookup. Description further explains it's a deterministic OpenChainGraph compute node for compliance mandates, distinguishing it from generic lookups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 from title and context, but no explicit when-to-use or when-not-to-use guidance versus sibling tools. Does not mention alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_reg_z_thresholdsReg Z Threshold LookupCRead-onlyIdempotentInspect
Reg Z Threshold Lookup: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-220-reg-z-threshold-lookup.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations: it states the tool is deterministic, processes inputs transiently without storage or logging, recommends synthetic inputs, and exports an artifact with chain provenance. This usefully complements the readOnlyHint and idempotentHint 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 eight sentences long, which is acceptable but includes some redundant technical jargon. It front-loads the key point but could be tighter and more focused.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 no output schema, yet the description only vaguely mentions exporting an 'AP2 artifact' without describing its structure or fields. It also lacks any explanation of what a Reg Z threshold lookup entails, leaving the agent without a complete understanding of inputs and outputs.
Complex tools with many parameters or behaviors need more documentation. 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 description adds minimal extra meaning. It describes compute modes and mentions policy_parameters as inputs for the decision function, but offers little that the schema doesn't already 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 states it is a 'Reg Z Threshold Lookup' but does not explain what Reg Z thresholds are or what the lookup results contain. It focuses on technical execution modes rather than the business function, leaving the purpose vague for an AI agent unfamiliar with the domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 its many siblings. The description does not mention any conditions, prerequisites, or alternatives, leaving the agent 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.
map_agent_payment_mandateAgent Payment Mandate Cross-Protocol MapperBRead-onlyIdempotentInspect
Agent Payment Mandate Cross-Protocol Mapper: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-476-map-agent-payment-mandate.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Exceeds annotations by detailing compute modes (auto/server/browser), gpu handling, transient data processing (not stored, logged, or retained), Cloudflare Workers execution, and output an AP2 artifact with execution_hash. This adds substantial context beyond the readOnly and idempotent hints. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense paragraph that includes all necessary information but lacks clear segmentation. Repetition of 'OpenChainGraph compute node' and a lengthy sub-sentence about compute modes could be streamlined. Front-loading is moderate; the core action (exporting artifact) appears late.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, and nested objects, the description covers compute behavior and output artifact but does not specify the exact return structure or error states. The external link partially compensates, but the description alone is insufficient for an agent to fully understand the mapping 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?
Schema coverage is 100%, so baseline is 3. The description adds value for the 'compute' parameter by explaining default behavior and mode interactions, but for 'parent_hashes', 'parent_tool_ids', and 'policy_parameters' it merely echoes the schema or defers to an external manifest. Overall, marginal additional 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 focuses on compute implementation details (modes, transient processing) rather than explicitly stating the primary mapping function. The name and title suggest cross-protocol mapping of payment mandates, but the description does not define 'mapping' or the transformation logic. It succeeds in identifying the resource (OpenChainGraph compute node) and verb (export artifact), but the core purpose remains vague, especially relative to sibling mappers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 only usage hint is to use synthetic/anonymised inputs, which is a constraint rather than a decision criterion. Sibling tools like 'map_ai_act_procurement_clauses' or 'map_iso20022_to_evm_calldata' have clearer scopes, but this description provides no differentiation or context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_ai_act_procurement_clausesAI Act Procurement Clause MapperBRead-onlyIdempotentInspect
AI Act Procurement Clause Mapper: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-64-ai-act-highrisk-fit-diagnostic. Output feeds: art-411-ai-addendum-assembler. Open at: https://ainumbers.co/chaingraph/art-412-ai-act-procurement-clause-mapper.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant context beyond annotations: explains transient data handling, compute modes, and artifact chaining. No contradictions with annotations (readOnlyHint, idempotentHint). Slightly verbose but informative.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Adequately structured with front-loaded identification, but contains lengthy technical details (URL, specific artifact IDs, compute modes) that could be shortened. Every sentence serves a purpose, but overall is more verbose than necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 description of the actual mapping logic or output artifact structure. With no output schema, the agent is left uninformed about what the tool returns. The domain behavior of mapping procurement clauses is implied but not explained, making it incomplete for effective 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 schema already documents all 4 parameters. Description adds minimal extra meaning beyond the schema, e.g., repeating compute mode enum values. The guideline about synthetic inputs is not parameter-specific.
Input schemas describe structure but not intent. Descriptions should explain 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 identifies the tool as an AI Act Procurement Clause Mapper within OpenChainGraph, distinguishing it from sibling tools like assess_ai_act_conformity. However, the description is heavy on technical compute mode details rather than the domain mapping 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?
No explicit guidance on when to use this tool vs alternatives such as assemble_ai_addendum or run_ai_act_highrisk_fit. The only guideline is 'use synthetic or anonymised inputs only,' which is about input safety, not usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_bhc_schedule_hcFR Y-9C Schedule HC (Consolidated Balance Sheet) MapperARead-onlyIdempotentInspect
FR Y-9C Schedule HC (Consolidated Balance Sheet) Mapper: OpenChainGraph compute node (regulatory_reporting). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-436-bhc-schedule-hcr-capital. Open at: https://ainumbers.co/chaingraph/art-435-bhc-schedule-hc-balance-sheet.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description goes beyond by detailing compute modes (auto/server/browser), transient processing (not stored/logged/retained), requiring synthetic/anonymised inputs, and explaining the output artifact with execution_hash. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single coherent paragraph with each sentence adding distinct value: purpose, determinism, compute modes, data handling, usage recommendation, output artifact, output feed, and a link. It is front-loaded but could be slightly more structured (e.g., bullet points for compute modes).
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 params, nested objects, no output schema), the description covers key aspects: compute modes, data handling, output artifact (AP2 with execution_hash), and downstream feed. It does not detail the output format, but the link provides further context. Sufficient for an informed 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 description coverage is 100%, so the description does not need to compensate. It adds minimal parameter-specific info: mentions compute modes and briefly alludes to parent_hashes via 'execution_hash for chain provenance', but does not explain parent_tool_ids or policy_parameters in detail. 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 tool name and description clearly state it maps FR Y-9C Schedule HC (Consolidated Balance Sheet). It specifies it is a deterministic OpenChainGraph compute node for regulatory reporting. The description explicitly distinguishes it from sibling mappers (e.g., map_bhc_schedule_hcr) by naming the specific schedule and linking to a dedicated page.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explicit guidance on when to use this tool versus alternatives (e.g., other mappers in the sibling list). The context implies it is for regulatory balance sheet mapping, but no direct 'use when' statements or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_bhc_schedule_hcrFR Y-9C Schedule HC-R (Regulatory Capital) CalculatorARead-onlyIdempotentInspect
FR Y-9C Schedule HC-R (Regulatory Capital) Calculator: OpenChainGraph compute node (regulatory_reporting). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-435-bhc-schedule-hc-balance-sheet. Open at: https://ainumbers.co/chaingraph/art-436-bhc-schedule-hcr-capital.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds deterministic execution, compute mode behavior, transient processing, non-retention of inputs, and browser delegation for GPU nodes. It provides useful behavioral context beyond annotations with 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 reasonably concise at 9 sentences, front-loading purpose and key behaviors. Each sentence adds unique value (compute modes, input handling, output artifact, upstream dependency, URL). Minor verbosity possible but structure is 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 no output schema, the description covers compute modes, input sensitivity, output artifact, and upstream dependency. It could explicitly state what the computed output is (e.g., the HC-R schedule content), but overall it provides sufficient context for understanding tool behavior.
Complex tools with many parameters or behaviors need more documentation. 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 4 parameters. The description adds minimal extra meaning (e.g., default compute behavior and browser delegation), but mainly restates schema info. For high 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?
The description clearly specifies the tool as a calculator for FR Y-9C Schedule HC-R (Regulatory Capital) tied to OpenChainGraph. It distinguishes from sibling tools like map_bhc_schedule_hc by naming upstream artifact art-435-bhc-schedule-hc-balance-sheet, making the purpose concrete and unique.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and transient input handling, implying server-side use with synthetic data. However, it does not explicitly state when to prefer this tool over siblings (e.g., for capital vs. balance sheet) 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.
map_call_report_schedule_rcCall Report Schedule RC (Balance Sheet) MapperARead-onlyIdempotentInspect
Call Report Schedule RC (Balance Sheet) Mapper: OpenChainGraph compute node (regulatory_reporting). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-434-call-report-edit-check-gate. Open at: https://ainumbers.co/chaingraph/art-432-call-report-rc-balance-sheet.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it states the tool is deterministic, inputs are transient and not stored, and warns to use synthetic/anonymised inputs. It also details compute execution locations (server vs browser). This aligns with readOnlyHint and idempotentHint, with 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 reasonably concise and front-loads the purpose. It includes essential details about compute modes and data handling, though some sentences are dense. Overall efficient and informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description explains the output artifact (AP2 with execution_hash), downstream feed, and provides a URL for reference. It covers inputs, processing, and safety guidance comprehensively for this compute node 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 compute enum behaviors and server-side computation for policy_parameters. It clarifies the role of parent_hashes and parent_tool_ids, although the schema descriptions are already 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 identifies the tool as a mapper for Call Report Schedule RC, a specific regulatory reporting task. It includes context as an 'OpenChainGraph compute node (regulatory_reporting)' and specifies the output feed, making it distinguishable 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 explains compute modes and transient processing but does not explicitly state when to use this tool versus alternatives. No exclusions or when-not guidance are provided, leaving usage context somewhat implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_call_report_schedule_rcrCall Report Schedule RC-R (Regulatory Capital) MapperARead-onlyIdempotentInspect
Call Report Schedule RC-R (Regulatory Capital) Mapper: OpenChainGraph compute node (regulatory_reporting). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-434-call-report-edit-check-gate. Open at: https://ainumbers.co/chaingraph/art-433-call-report-rcr-capital.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnly, idempotent, non-destructive. Description adds that the tool is deterministic, processes inputs transiently without storage, and requires synthetic or anonymised inputs. This provides context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is well-structured, front-loading purpose and key characteristics. While slightly lengthy, each sentence provides relevant information like compute modes, data handling, and output links.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 complexity (4 params, nested objects, no output schema), description covers behavioral aspects (deterministic, transient), execution modes, provenance (execution_hash), downstream output (art-434), and a reference URL. Missing explicit return value description, but output schema is absent.
Complex tools with many parameters or behaviors need more documentation. 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 covers all 4 parameters with descriptions (100% coverage). Description adds minimal additional meaning, such as policy_parameters referring to 'tool's manifest', but does not detail the fields.
Input schemas describe structure but not intent. Descriptions should explain 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 is a 'Call Report Schedule RC-R (Regulatory Capital) Mapper', specifying the exact regulatory schedule and domain. It differentiates from similar siblings like map_call_report_schedule_rc by naming the RC-R variant.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 detailed execution mode guidance (auto/server/browser) but does not explicitly contrast with sibling mapping tools or state when to use this tool over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_irrbb_standardised_approachIRRBB Standardised Approach MapperARead-onlyIdempotentInspect
IRRBB Standardised Approach Mapper: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-187-irrbb-csrbb-scope-checker. Open at: https://ainumbers.co/chaingraph/art-186-irrbb-standardised-approach-mapper.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds rich behavioral context beyond annotations: transient processing, no storage/logging/retention, compute delegation logic, and requirement for synthetic inputs. It confirms read-only and idempotent nature without contradicting 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 concise (105 words) and well-structured, starting with the purpose, then compute modes, data handling, output, and a link. 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 no output schema, the description adequately explains the output as an AP2 artifact with execution_hash and its downstream feed. It covers compute modes and safety. Minor gap: the exact mapping logic is not detailed, but the domain context suffices.
Complex tools with many parameters or behaviors need more documentation. 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 minimal extra meaning, mainly restating that policy_parameters are inputs for the decision function. It does not expand on individual fields 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 identifies it as an IRRBB Standardised Approach Mapper and an OpenChainGraph compute node. It explains the compute modes and output artifact, distinguishing it from siblings like check_irrbb_csrbb_scope by mentioning its output feeds into that 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 guidance on compute mode selection and safety (use synthetic/anonymized inputs) but does not explicitly state when to use this tool versus other IRRBB-related siblings. It mentions output feeds but not 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.
map_iso20022_to_evm_calldataISO 20022-to-EVM Calldata MapperARead-onlyIdempotentInspect
ISO 20022-to-EVM Calldata Mapper: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-291-screen-onledger-transfer-batch. Open at: https://ainumbers.co/chaingraph/art-288-map-iso20022-to-evm-calldata.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotent and read-only hints. The description adds significant context: deterministic operation, transient input processing (not stored or logged), requirement for synthetic inputs, and export of AP2 artifact with execution_hash. This goes beyond the annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is information-dense and front-loads the purpose. It efficiently covers compute modes, data handling, and output details. While lengthy, every sentence adds value, and it avoids unnecessary 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 tool with 4 parameters (including nested objects) and no output schema, the description explains compute infrastructure and data handling well. However, it lacks specifics about the actual mapping logic (e.g., which ISO 20022 messages, EVM calldata format). This leaves some gaps for an agent needing full 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 the baseline is 3. The description does not add extra meaning beyond the schema descriptions. It mentions compute mode behavior but that is already in the schema's description. No additional semantics for the other 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 tool maps ISO 20022 to EVM calldata, with a specific verb and resource. It distinguishes itself from sibling mapping tools by mentioning it is an OpenChainGraph compute node for compliance mandates and referencing output feeds.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. It implies usage as part of a chain via output feeds but lacks direct guidance or exclusions. No comparison to other mapping tools is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_mt9xx_to_camtSwift MT9xx to camt Statement Migration MapperCRead-onlyIdempotentInspect
Swift MT9xx to camt Statement Migration Mapper: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-563-mt9xx-camt-statement-migration-mapper.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description richly expands beyond the annotations. It discloses deterministic behavior, compute modes (auto/server/browser delegation), transient processing with no storage/logging/retention, the requirement for synthetic/anonymised inputs, and the export of an AP2 artifact with execution_hash. These are significant behavioral details not present in the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is wordy and includes redundancy, such as repeating 'OpenChainGraph compute node' and 'Deterministic'. While it is organized with useful technical details, it could be tightened without losing 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?
Although the description covers operational aspects well, it fails to describe the core domain behavior—what the MT9xx-to-camt mapping involves, what inputs are expected beyond generic policy_parameters, and what the output AP2 artifact represents. With no output schema and a complex tool, the agent cannot determine if this tool fits the migration task.
Complex tools with many parameters or behaviors need more documentation. 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 100% coverage with descriptions for all four parameters (compute, parent_hashes, parent_tool_ids, policy_parameters). The tool description adds no additional context about parameter semantics, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with the title and then discusses compute-node mechanics (server/browser delegation, AP2 artifact), but it never explicitly states what the tool does—e.g., converts Swift MT9xx messages to camt statement format. The core function is only implied by the name, making it effectively a restatement of the title.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 other mapping tools in the sibling list. The 'compliance_mandate' label hints at a compliance context, and 'use synthetic or anonymised inputs only' is a constraint, but no explicit 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.
map_nist_ai_rmf_functionsNIST AI RMF Function MapperARead-onlyIdempotentInspect
NIST AI RMF Function Mapper: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-175-gpai-code-of-practice-conformance, art-314-traiga-safe-harbor-pack-builder. Open at: https://ainumbers.co/chaingraph/art-174-nist-ai-rmf-function-mapper.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations: it declares determinism, transient input processing (not stored/logged/retained), and cautions to use synthetic or anonymised inputs. These details complement the readOnlyHint and idempotentHint annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured, beginning with the tool's identity and proceeding to execution modes, data handling, outputs, and a link. Minor redundancy (e.g., 'Deterministic OpenChainGraph compute node' appears twice in similar phrasing) but overall compact and informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested objects, no output schema) and rich annotations, the description covers execution modes, transient processing, output feeds, and provides a reference URL. It lacks a summary of the mapping function itself, but the overall context is adequate for an AI agent to invoke 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%, so the baseline is 3. The description does not add meaningful semantics beyond the schema; for policy_parameters it merely references an external manifest. The compute mode and parent_hashes descriptions mirror the schema. No additional value 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 clearly identifies the tool as a 'NIST AI RMF Function Mapper' and an 'OpenChainGraph compute node' with a compliance mandate. The resource (NIST AI RMF functions) and general action (mapping) are clear, but the exact mapping semantics are not explained in detail, leaving some 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?
The description explains compute modes and execution environments but provides no guidance on when to use this tool versus its many siblings. It lacks explicit when-to-use, when-not-to-use, or alternative comparisons. Usage context is implied only through its niche in compliance mapping.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_nmd_behavioral_repricingNMD Behavioral Repricing MapperARead-onlyIdempotentInspect
NMD Behavioral Repricing Mapper: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-442-nmd-behavioral-repricing-mapper.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant context beyond annotations: it states inputs are transient and not stored, logged, or retained; it describes the output as an AP2 artifact with execution_hash for chain provenance. Annotations already indicate readOnlyHint=true and idempotentHint=true, and the description aligns with 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 informative but slightly verbose, with repetition ('Deterministic OpenChainGraph compute node' appears twice). It is well-structured with front-loaded purpose, compute modes, privacy note, and output artifact. Every sentence adds value, but trimming redundancy could improve 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 tool's complexity (4 parameters, nested policy_parameters object, no output schema), the description covers compute modes, privacy, and output artifact. It provides a link for further details. It does not explain the decision function or what NMD behavioral repricing entails, but that may be domain-specific knowledge.
Complex tools with many parameters or behaviors need more documentation. 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 restates some compute mode information already in the schema and mentions policy_parameters generically. It does not add meaningful new details beyond what the parameter descriptions provide (e.g., no explanation of the decision function 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 the tool as an OpenChainGraph compute node for NMD behavioral repricing. It specifies the resource and action (mapping). However, it does not explicitly distinguish itself from sibling tools like 'map_agent_payment_mandate' or 'map_ai_act_procurement_clauses', though the naming itself provides some 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 explains compute modes ('auto', 'browser', 'server') and when each applies, including conditions for GPU vs non-GPU nodes. It also advises to use synthetic or anonymized inputs. However, it does not provide explicit guidance on when to choose this tool over similar mapping tools among the siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_pil_flavorStory PIL Flavor MapperARead-onlyIdempotentInspect
Story PIL Flavor Mapper: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-197-pil-flavor-mapper.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint, idempotentHint, destructiveHint. The description adds critical behavioral context: inputs are transient and not retained, warning to use synthetic/data, and compute mode implications. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is front-loaded with purpose, covers compute modes, privacy, and output in a logical order. Minor redundancy 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 tool's complexity (4 params, nested object, no output schema), the description provides sufficient context on purpose, behavior, compute modes, privacy, and output format. Lacks explanation of 'PIL flavor' and specifics on return values, but output artifact is 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?
Schema coverage is 100% with detailed parameter descriptions. The description adds no additional parameter meaning 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 tool is a deterministic OpenChainGraph compute node for mapping PIL flavor, but the concept of 'PIL flavor' is domain-specific and may not be immediately clear to all agents. It differentiates from siblings through its specific role in chain provenance, but no explicit comparison.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. The description focuses on compute mode behavior but does not provide context for selection 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.
map_robinhood_chain_regimeFinancial-Instrument Regime MapperARead-onlyIdempotentInspect
Financial-Instrument Regime Mapper: OpenChainGraph compute node (crypto_regulatory_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-318-rhc-regime-mapper.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations: it details data handling (transient processing, no storage), idempotent nature ('Deterministic'), output format (AP2 artifact with execution_hash), and warns about input sensitivity. No contradiction with readOnlyHint or other 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 about six sentences, front-loaded with purpose, and every sentence contributes essential information. No unnecessary words 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?
The description covers compute modes, data handling, and output format adequately for a compute node. However, it lacks details about the mapping output (e.g., what the AP2 artifact contains, structure of results) and the decision function's regime mapping logic. Given the tool's complexity and no output schema, this gap 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?
Schema coverage is 100% with detailed parameter descriptions. The tool description reinforces the compute mode behavior and mentions chaining via parent_hashes but adds little semantic value 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 it is a 'Financial-Instrument Regime Mapper' for crypto regulatory mandates, explicitly distinguishing it from sibling mapping tools like map_agent_payment_mandate or map_ai_act_procurement_clauses. The verb 'map' and resource 'financial-instrument regime' 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 explains compute modes and security precautions ('Use synthetic or anonymised inputs only') but does not explicitly state when to use this tool over alternatives. There is no mention of prerequisites or exclusion criteria, leaving the agent to infer usage context from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_tempo_settlementTempo Agentic Checkout Settlement MapperARead-onlyIdempotentInspect
Tempo Agentic Checkout Settlement Mapper: OpenChainGraph compute node (settlement_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-34-tempo-fit-diagnostic, art-36-tempo-mpp-agent-mandate. Open at: https://ainumbers.co/chaingraph/art-40-tempo-agentic-checkout.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Significant detail beyond annotations: deterministic execution, transient processing with no storage/logging, artifact export with execution_hash, and compute mode delegation logic. Annotations provide readOnly/idempotent hints, and this description adds rich 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?
Contains repetitive phrasing ('OpenChainGraph compute node' twice) and is somewhat dense. Front-loads title but could be more streamlined. Informative but not optimally 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?
Covers key context: compute behavior, input rules, artifact export, dependency chain. With no output schema, description adequately explains the output nature (AP2 artifact with execution_hash). Sufficient for safe 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%, so the schema already documents parameters. The description adds minimal extra semantics (e.g., input hygiene for policy_parameters, compute mode explanation) but does not elaborate on each parameter 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 identifies as a Tempo Agentic Checkout Settlement Mapper, an OpenChainGraph compute node for settlement_mandate. Distinguishes from siblings like map_agent_payment_mandate through specific domain and dependencies, though not explicitly contrasted.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute modes (auto/server/browser), input restrictions (synthetic/anonymised only), and upstream dependencies. Does not explicitly state when not to use or compare to alternative tools, but context is sufficient for appropriate use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
match_confirmationsBank/AR Confirmation MatcherBRead-onlyIdempotentInspect
Bank/AR Confirmation Matcher: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-464-confirmation-matcher.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds valuable behavioral context: 'Inputs are processed transiently... not stored, logged, or retained' and 'Exports an AP2 artifact with execution_hash for chain provenance'. This goes beyond annotations by detailing privacy and output side effects. 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?
The description is functional but wordy, with redundancy (e.g., 'Deterministic OpenChainGraph compute node' appears twice). It front-loads the title but could be tightened. No structural issues, but every sentence does not fully justify its presence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters (including a nested object) and no output schema, the description explains compute modes, transient processing, and artifact export. However, it does not clarify what the tool actually outputs in detail (AP2 artifact not explained) or what the 'decision function' requires. The link references external documentation, which is not actionable for an AI 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?
Input schema has 100% coverage of parameter descriptions, so the schema already documents them well. The description adds minimal extra meaning, mostly repeating or elaborating on compute modes already detailed in the schema enum. 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 title 'Bank/AR Confirmation Matcher' hints at the purpose, but the description focuses on the OpenChainGraph compute infrastructure rather than explaining the matching logic itself. It lacks a clear verb-resource statement like 'Matches bank/AR confirmations', relying on the title and schema to imply the 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 its many siblings (e.g., reconcile_* tools, compute_* tools). The description only discusses compute modes, not the decision context or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mobilize_margin_collateralMargin Call Collateral MobilizerARead-onlyIdempotentInspect
Margin Call Collateral Mobilizer: OpenChainGraph compute node (collateral_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: 505-tokenized-collateral-eligibility-checker. Output feeds: 506-onchain-cash-leg-finality-checker. Open at: https://ainumbers.co/tools/513-margin-call-collateral-mobilizer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint), the description adds key behavioral details: inputs are processed transiently and not stored, the tool is deterministic, and it exports an AP2 artifact with execution hash. This adds significant context beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured. It front-loads the tool's identity and purpose, then efficiently covers compute modes, data privacy, and chain provenance. 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 absence of an output schema, the description adequately hints at response contents (AP2 artifact, browser delegation URL) and provides upstream/downstream chain context. For a 4-parameter compute node with 0 required parameters, 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?
Schema coverage is 100% and already describes all parameters well. The description adds context about the compute parameter's behavior (e.g., 'auto' vs 'browser') but does not significantly enhance understanding of other parameters 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 identifies the tool as a 'Margin Call Collateral Mobilizer' and an 'OpenChainGraph compute node', specifies its role with upstream and downstream artifacts, and mentions its compute modes. However, it does not explicitly differentiate from the myriad sibling tools, relying on the chain context to imply uniqueness.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 technical details about compute modes and input handling but does not give explicit guidance on when to use this tool versus alternatives. The warning 'Use synthetic or anonymised inputs only' is a constraint, not a usage guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_agent_service_meteringAgent-Service Metering & Marketplace Economics ModelerARead-onlyIdempotentInspect
Agent-Service Metering & Marketplace Economics Modeler: OpenChainGraph compute node (payment_policy). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-60-agent-economy-runtime-fit-diagnostic. Output feeds: art-03-x402-settlement-modeler, ml-03-timeseries-anomaly-detector. Open at: https://ainumbers.co/chaingraph/art-63-agent-service-metering-modeler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: inputs are transiently processed and not stored, synthetic inputs are recommended, and it exports an AP2 artifact with execution hash. No contradiction with annotations (readOnlyHint=true, destructiveHint=false).
Agents need to know what a tool does to the 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 detailed but well-organized, front-loading the core purpose and then progressively adding specificity. Each sentence adds value, though slightly verbose; still appropriate for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 parameter count, annotations, and no output schema, the description covers all essential aspects: compute modes, data handling, provenance, and artifact links. It lacks detailed output format but is sufficient for the agent to understand the tool's role.
Complex tools with many parameters or behaviors need more documentation. 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 enhances understanding by explaining compute mode behavior (auto/server/browser distinctions), chaining via parent_hashes/parent_tool_ids, and that policy_parameters are for the decision function. This adds value beyond 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 identifies the tool as an OpenChainGraph compute node for agent-service metering and marketplace economics, with details on compute modes and provenance. However, it does not explicitly differentiate from sibling tools, so it lacks 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 does not provide explicit guidance on when to use this tool versus alternatives. It mentions upstream/downstream artifact relationships, which implies context but no direct usage recommendations or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_arc_cpn_economicsArc CPN Corridor Economics ModelARead-onlyIdempotentInspect
Arc CPN Corridor Economics Model: OpenChainGraph compute node (treasury_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-42-arc-fit-diagnostic. Open at: https://ainumbers.co/chaingraph/art-43-arc-cpn-model.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds substantial behavioral context: inputs are processed transiently and not stored, deterministic execution, GPU vs browser delegation, and that it exports an AP2 artifact with execution_hash. 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 moderately long but each sentence provides distinct value: it covers tool purpose, compute modes, input handling, output artifact, upstream dependencies, and a link. It is front-loaded with the title and purpose. Some minor redundancy (e.g., 'deterministic' repeated) 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 complexity (compute node, transient processing, artifact export) and absence of an output schema, the description explains the output as an AP2 artifact with execution_hash but does not detail the structure or content of that artifact. It could be more explicit about what the tool returns (e.g., the artifact itself or a reference). The link to the model page partially compensates.
Complex tools with many parameters or behaviors need more documentation. 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 4 parameters. The description adds meaning beyond the schema: for 'compute', it explains defaults and delegation logic; for 'policy_parameters', it notes they are input parameters for the decision function and can be computed server-side. The parameter descriptions in the schema are already clear, but the description provides additional 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 is an OpenChainGraph compute node for the Arc CPN Corridor Economics Model, with deterministic behavior and specific compute modes. It does not explicitly differentiate from sibling tools, but the unique identifier 'model_arc_cpn_economics' and reference to upstream artifact 'art-42-arc-fit-diagnostic' imply its specific 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 explicit usage guidelines: use synthetic or anonymised inputs only, choice of compute modes ('auto', 'server', 'browser') with clear behavior for each, and notes that inputs are transient and not stored. It does not mention when not to use it but offers sufficient context for correct invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_arc_paymaster_economicsArc Paymaster Economics ModelARead-onlyIdempotentInspect
Arc Paymaster Economics Model: OpenChainGraph compute node (treasury_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-42-arc-fit-diagnostic. Open at: https://ainumbers.co/chaingraph/art-46-arc-paymaster-model.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description supplements annotations with specific behavioral details: transient input processing, no storage/logging, requirement for anonymized inputs, and the export of an AP2 artifact with execution_hash. This adds meaningful context beyond the annotation hints. However, it does not cover all edge cases (e.g., 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?
The description is informative and well-structured, starting with the tool's identity and then explaining compute modes, data handling, and outputs. However, there is minor redundancy (e.g., mentioning 'deterministic compute node' twice) and the compute mode explanation could be streamlined. Overall, it earns 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?
The description covers key aspects: identity, compute modes, data handling, output artifact, and dependencies. However, it lacks detail on the structure of the response/artifact beyond execution_hash, and the policy_parameters field remains under-specified. For a tool with no output schema, more clarity on return values 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?
The schema already provides detailed descriptions for each parameter, covering 100% of parameters. The tool description does not add parameter-specific semantics; it only reiterates compute modes and adds a general constraint on input types. For policy_parameters, the schema defers to a manifest, which is not provided here, leaving ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a deterministic compute node for Arc Paymaster Economics, with specific references to treasury_mandate and OpenChainGraph. It distinguishes from sibling tools by its focus on paymaster economics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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's purpose as a compute node for paymaster economics and explains compute modes, but it does not provide explicit guidance on when to choose this tool over similar model tools or what conditions warrant usage. It is implied that this tool is for arc paymaster economics calculations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_arc_stablefx_rfqArc StableFX RFQ Economics ModelARead-onlyIdempotentInspect
Arc StableFX RFQ Economics Model: OpenChainGraph compute node (treasury_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-42-arc-fit-diagnostic. Open at: https://ainumbers.co/chaingraph/art-44-arc-stablefx-model.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds significant behavioral context: determinism, transient input processing, no storage/logging/retention, compute mode delegation (server vs browser), and requirement for synthetic inputs. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, dense paragraph. It front-loads purpose and compute mode but is verbose with tangential details like the URL. Could be more concisely structured with bullet points or sections.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Explains upstream dependency and artifact export but omits return value details (e.g., response structure). No output schema exists, so the description should clarify what the agent receives. The constraint 'synthetic or anonymised inputs only' is ambiguous.
Complex tools with many parameters or behaviors need more documentation. 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 reiterates compute modes but does not add new semantic value beyond the schema. 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 identifies the tool as an 'Arc StableFX RFQ Economics Model' and an 'OpenChainGraph compute node (treasury_mandate)', specifying it computes economics for RFQ under a treasury mandate. While it distinguishes from generic model tools through its domain-specific name, it does not explicitly contrast with sibling models like 'model_arc_cpn_economics'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. Mentions dependency on 'art-42-arc-fit-diagnostic', implying a sequence, but does not state conditions or exclusions. Lacks comparisons with other model_* siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_buy_in_exposureBuy-In Exposure ModelerARead-onlyIdempotentInspect
Buy-In Exposure Modeler: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-78-csdr-penalty-calculator. Output feeds: cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-83-buy-in-exposure-modeler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. The description adds significant behavioral context: deterministic execution, transient processing (no storage/logging), compute mode behavior (server vs browser), and artifact generation with execution_hash. This enriches the agent's understanding beyond annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is information-dense but well-structured: purpose, compute modes, data handling, artifact output, chain links, and URL. Every sentence contributes; no redundancy. It could be slightly streamlined (e.g., repeating 'OpenChainGraph compute node'), 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?
For a tool with 4 parameters, nested objects, and no output schema, the description covers purpose, compute behavior, data safety, artifact output, provenance, upstream/downstream chain, and a reference URL. It lacks explicit description of the return value (artifact content), but given the complexity, it provides a comprehensive 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 covers 100% of parameters with descriptions. The description adds some value: it clarifies the compute enum behavior, and for 'policy_parameters' it directs to the tool's manifest for field names (since schema has additionalProperties). This is helpful but not extensive. 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 as a 'Buy-In Exposure Modeler' within the OpenChainGraph compliance mandate, with specific verb 'compute node'. It distinguishes itself by naming upstream and downstream artifacts (art-78, cry-05), providing context among many sibling modelers. However, it doesn't explicitly differentiate from other modelers in the sibling list, missing a chance for clearer uniqueness.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using 'synthetic or anonymised inputs only', which is a specific usage guideline. It also explains compute modes and when browser delegation occurs. However, it does not explicitly say when to use this tool versus alternatives (e.g., other exposure modelers) nor when not to use it. The upstream/downstream chain hints at workflow integration but is indirect.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_cbam_certificate_costCBAM Certificate Cost & Free-Allocation EngineARead-onlyIdempotentInspect
CBAM Certificate Cost & Free-Allocation Engine: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-69-cbam-embedded-emissions-calculator. Output feeds: cry-05-agent-action-audit-trail-aggregator, art-76-climate-scenario-applicator. Open at: https://ainumbers.co/chaingraph/art-71-cbam-certificate-cost-engine.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint=true, idempotentHint=true), the description adds critical behavioral details: deterministic processing, transient execution with no storage or retention, and emission of an execution_hash for chain provenance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured with a clear lead-in, followed by compute mode explanation, behavioral notes, usage guidance, and integration points. While it is somewhat lengthy, each sentence serves a purpose, and the URL provides a fallback for 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 complexity (4 parameters, nested objects) and the absence of an output schema, the description covers purpose, behavior, parameter semantics, usage guidelines, and integration with upstream/downstream artifacts. It is sufficiently complete for an AI 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?
The input schema already has 100% description coverage for all four parameters. The description adds value by explaining how 'policy_parameters' are conditionally computed based on the 'compute' mode, linking the two parameters semantically.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'CBAM Certificate Cost & Free-Allocation Engine' with a specific role as an OpenChainGraph compute node for compliance mandates. It distinguishes itself by listing upstream and downstream artifacts, making its place in a workflow 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 explains when to use different compute modes ('auto', 'server', 'browser') and advises using synthetic or anonymized inputs only. It does not explicitly compare to sibling tools, but the context of artifact dependencies implies its specific use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_clearing_access_economicsClearing Access Model SelectorBRead-onlyIdempotentInspect
Clearing Access Model Selector: OpenChainGraph compute node (treasury_mandate). Regulatory deadline: 2026-12-31 (flagship access-model decision (W-A).). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-48-treasury-clearing-fit-diagnostic. Output feeds: 504-settlement-risk-capital-optimizer, art-50-ficc-margin-netting-estimator. Open at: https://ainumbers.co/chaingraph/art-49-clearing-access-model-selector.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions transient processing and deterministic computation, which aligns with annotations. However, it states 'Exports an AP2 artifact with execution_hash for chain provenance', which suggests a side effect that contradicts the readOnlyHint=true annotation. This contradiction reduces transparency trust.
Agents need to know what a tool does to the 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 quite verbose, including specific artifact IDs, URLs, and downstream tool names that could be streamlined. Important information is present but not optimally structured for quick consumption by 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?
The description covers purpose, compute behavior, input constraints, and artifact generation, but fails to describe the output format or return value. Since there is no output schema, this gap reduces completeness for an agent to understand the tool's 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?
All four parameters are described in the input schema, achieving 100% schema coverage. The description adds context about compute modes and policy_parameters, but largely echoes the schema descriptions without providing significant new semantic 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 identifies the tool as a 'Clearing Access Model Selector' with specific details about its role as an OpenChainGraph compute node for treasury mandate decisions. It distinguishes itself from siblings by focusing on clearing access model selection with regulatory deadlines and compute modes, though the description could be more concise.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and input requirements (synthetic/anonymised inputs only), but lacks explicit instructions on when to use this tool versus alternatives among the many sibling tools. No when-not-to-use guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_l1_fee_runwayL1 Continuous-Fee Runway ModelARead-onlyIdempotentInspect
L1 Continuous-Fee Runway Model: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-496-l1-continuous-fee-runway.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond annotations: transient input processing with no storage/logging, server vs browser execution on Cloudflare Workers, gpu:true delegation to browser, and AP2 artifact export with execution_hash. These details meaningfully enrich the readOnly/idempotent annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is informative but redundant, repeating 'OpenChainGraph compute node' twice, and includes a URL. It remains organized and front-loaded with the model name, but the redundancy and extra URL prevent a higher score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description adequately explains input processing, compute modes, and the AP2 artifact output with execution_hash. Policy_parameters fields are deferred to an external manifest, which is acceptable given the rich schema descriptions.
Complex tools with many parameters or behaviors need more documentation. 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 full descriptions for all 4 parameters (100% coverage). The description reinforces the compute parameter behavior but does not add new meaning to parent_hashes or policy_parameters beyond what the schema states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as an OpenChainGraph compute node for the L1 Continuous-Fee Runway Model, making its role inferable, but lacks an explicit verb like 'calculates' or 'estimates.' The title and name differentiate it from sibling model tools, though the purpose could be stated more directly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 indicates when to choose this tool over sibling modeling tools. The description covers compute modes (auto/browser) and input restrictions ('Use synthetic or anonymised inputs only'), but does not state use-case fit, exclusions, or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_perp_positionPerp Position LifecycleBRead-onlyIdempotentInspect
Perp Position Lifecycle: OpenChainGraph compute node (derivatives_margin_health). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-213-perp-liquidation-calculator. Open at: https://ainumbers.co/chaingraph/art-214-perp-position-lifecycle.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate safe and idempotent behavior. The description adds valuable context: inputs are transiently processed and not stored/logged/retained, synthetic/anonymised inputs required, deterministic execution, and compute mode delegation (browser vs server). This exceeds annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but includes extraneous details like a specific URL and artifact IDs. The purpose is front-loaded, but some sentences could be removed or condensed without losing 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?
No output schema exists, so the description should explain the return value. It only mentions exporting an AP2 artifact with execution_hash, but does not describe the output format or content, such as margin health indicators. This is a significant gap for a compute 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 baseline is 3. The description does not add significant new meaning beyond the schema; it reiterates compute mode behavior and refers to a manifest for policy_parameters fields. Some context on gpu:true delegation adds 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 identifies the tool as an OpenChainGraph compute node for perp position lifecycle, specifically 'derivatives_margin_health'. It differentiates from sibling tools like compute_perp_funding and compute_perp_margin by being a higher-level lifecycle compute node, though the exact output is not stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 its siblings (e.g., compute_perp_funding, compute_perp_margin). The description focuses on compute modes but does not provide context for selection among related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_stablecoin_corridor_economicsStablecoin Corridor Economics ModelBRead-onlyIdempotentInspect
Stablecoin Corridor Economics Model: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-249-compare-corridor-cost. Open at: https://ainumbers.co/chaingraph/art-250-model-stablecoin-corridor-economics.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds meaningful behavioral context beyond annotations: inputs are transient and not stored, use synthetic inputs only, deterministic computation, export of AP2 artifact with execution_hash, and details about compute modes (server-side vs browser). Annotations already declare readOnlyHint and idempotentHint, and the description reinforces and expands on these without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat lengthy and mixes execution details, data handling, and output information. It front-loads the model name but then dives into compute modes. While every sentence has value, it could be more concise by separating execution mechanics from core purpose. The structure is adequate but not optimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 parameters including a nested object, no output schema), the description lacks critical context: it does not explain the economic model's inputs (policy_parameters) or outputs beyond referencing another tool. The mention of an output feed provides some context, but the absence of details on the economic computation and return values leaves the tool incomplete 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%, so the schema itself documents all parameters with descriptions. The tool description reiterates compute mode defaults but does not add new semantic meaning beyond the schema. For the nested 'policy_parameters', it merely directs to the tool manifest, leaving the structure undisclosed. 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 identifies the tool as a 'Stablecoin Corridor Economics Model' and mentions it feeds into 'art-249-compare-corridor-cost', indicating it computes stablecoin corridor economics. However, it does not specify what economic metrics or model outputs are generated, leaving the core purpose somewhat ambiguous. It distinguishes from siblings like 'model_arc_cpn_economics' by name and output feed, but lacks a clear verb-resource statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 any prerequisites, limitations, or when to choose this over sibling tools like 'compare_corridor_cost' or other economics models. The compute mode instructions are about execution, not usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_tempo_gas_economicsTempo Fee-Sponsorship & Gas-AMM EconomicsBRead-onlyIdempotentInspect
Tempo Fee-Sponsorship & Gas-AMM Economics: OpenChainGraph compute node (treasury_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-35-tempo-payments-business-case. Open at: https://ainumbers.co/chaingraph/art-107-tempo-gas-economics.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds meaningful behavioral details beyond the annotations: it states inputs are transient and not stored, declares determinism, and explains compute mode delegation rules (gpu:true always browser). These traits complement readOnlyHint and idempotentHint, giving the agent confidence in safe, repeatable execution.
Agents need to know what a tool does to the 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 fits a single paragraph of about 10 lines, covering all key points with minimal redundancy. While a bulleted structure could improve scanability, it is efficient and front-loads the tool's identity as a compute node before diving into mechanics.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 a nested object parameter (policy_parameters) and no output schema, the description leaves critical gaps. It does not explain what the tool returns (e.g., the economic result inside the AP2 artifact), and it defers parameter structure to an external manifest. The agent lacks enough context to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. 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 marginal value by clarifying compute mode default behavior and providing a concrete upstream artifact example (art-35). However, it does not enrich the semantics of policy_parameters beyond the schema's manifest reference.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description frames this tool as a compute node for Tempo Fee-Sponsorship & Gas-AMM Economics but never states what specific output it produces (e.g., a fee schedule, a metric, a decision). The heavy emphasis on compute mode mechanics and execution environment obscures the core function, leaving the purpose vague for an AI 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?
There is no guidance on when to prefer this tool over siblings like model_tempo_payment_economics or compute_tempo_mainnet_fee_capacity. The description only advises 'Use synthetic or anonymised inputs only', which is an input-level constraint rather than a usage context cue.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_tempo_payment_economicsTempo Payments Business CaseARead-onlyIdempotentInspect
Tempo Payments Business Case: OpenChainGraph compute node (treasury_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-34-tempo-fit-diagnostic. Output feeds: art-37-tempo-stablecoin-issuance, art-36-tempo-mpp-agent-mandate. Open at: https://ainumbers.co/chaingraph/art-35-tempo-payments-business-case.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint. The description adds significant behavioral context: determinism, transient input processing (no storage), compute mode delegation rules, and artifact export with execution_hash. This goes well beyond the annotations and clarifies side effects and execution behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-structured, front-loading the core purpose and then layering details. Every sentence adds distinct information (modes, transient handling, artifact, chain position, link). No waste, though the list of upstream/downstream IDs could be slightly trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4-parameter, no-output-schema tool, the description covers compute modes, processing guarantees, artifact export, and chain context. It defers policy_parameters details to a manifest, which is acceptable. The link provides full documentation. Slightly lacking explanation of parent_hashes/parent_tool_ids usage, but schema covers them.
Complex tools with many parameters or behaviors need more documentation. 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 four parameters. The description adds value by explaining the compute mode default behavior ('auto' vs server/browser) and that policy_parameters are computed server-side in certain modes. This provides operational context that the schema alone does not 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 clearly identifies this as a deterministic OpenChainGraph compute node for the Tempo Payments Business Case. It explains the compute modes and transient processing. While specific and detailed, it does not explicitly differentiate from sibling tools like model_tempo_gas_economics, leaving a small gap in purpose 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 provides context such as 'Use synthetic or anonymised inputs only' and lists upstream/downstream artifacts, giving implicit guidance on when to use the tool within a chain. However, it lacks explicit when-to-use or when-not-to-use comparisons with alternatives, and does not mention prerequisites or constraints beyond the synthetic input warning.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
model_x402_settlementx402 Settlement Cost & Finality ModelerARead-onlyIdempotentInspect
x402 Settlement Cost & Finality Modeler: OpenChainGraph compute node (settlement_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-01-ap2-mandate-chain-validator. Output feeds: cry-04-merkle-batch-verifier, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-03-x402-settlement-modeler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| finality_sec | No | |
| eligible_rails | No | |
| per_tx_fee_usd | No | |
| monthly_cost_usd | No | |
| recommended_rail | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the readOnly/idempotent annotations. It discloses that inputs are processed transiently and are not stored, logged, or retained, that gpu:true nodes always delegate to the browser, and that the tool exports an AP2 artifact with execution_hash for chain provenance. These are meaningful behavioral traits an agent needs to know, and they are not present in the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is fairly long but well-structured: it starts with the tool's identity, then explains compute modes, data handling, artifact export, dependencies, and an operational URL. Each sentence adds value, though there is minor redundancy ('OpenChainGraph compute node' appears twice) and the phrasing could be tightened without losing 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 tool with 4 optional parameters, an output schema, and rich annotations, the description is comprehensive. It covers compute execution modes, privacy/retention guarantees, artifact provenance, upstream/downstream artifact feeds, and a public URL. Since an output schema exists, the description does not need to enumerate return values. The only minor gap is that it does not enumerate policy_parameters fields, but it points to the tool manifest for 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 input schema already covers 100% of parameters with descriptions, so the baseline is 3. The tool description adds extra behavioral semantics, particularly for policy_parameters (server-side computation when compute is auto or server) and compute mode nuances (gpu:true always delegates to browser). This goes beyond the schema's field-level descriptions and helps the agent understand how parameters behave in different execution modes.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title clearly identifies the tool as modeling x402 settlement cost and finality, and the description adds OpenChainGraph compute node context and settlement_mandate role. However, beyond the title, the description does not explicitly define what the cost & finality computation entails, relying on the name. It distinguishes itself from siblings via domain-specific artifact feeds, but lacks a plain-language statement of what it computes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 operational context: compute modes (auto/server/browser), GPU behavior, transient input processing, and a directive to use synthetic or anonymised inputs only. It also names upstream and downstream artifact consumers, which implies integration points. However, it does not explicitly compare this tool with alternatives or state when to prefer it over sibling tools like simulate_x402_flow or compute_settlement_efficiency_kpi, so 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.
optimize_settlement_capitalSettlement-Risk Capital Efficiency OptimizerARead-onlyIdempotentInspect
Settlement-Risk Capital Efficiency Optimizer: OpenChainGraph compute node (capital_assessment). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: 503-canton-tokenization-readiness-diagnostic. Open at: https://ainumbers.co/tools/504-settlement-risk-capital-optimizer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, not destructive), description adds deterministic execution, transient processing (no storage/logging), and export of AP2 artifact for provenance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is informative but slightly verbose with repetition (e.g., 'OpenChainGraph compute node' twice). Front-loaded with key identity. Each sentence adds value, but some redundancy could be trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, but description mentions 'exports an AP2 artifact with execution_hash'—incomplete return explanation. Provides external URL for more details. Missing explicit behavior for policy_parameters results. Adequate for moderate complexity given schema and 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 descriptions for all 4 parameters. Description reiterates compute modes and mentions policy_parameters are 'for this tool's decision function', but does not clarify the structure or fields of policy_parameters beyond the schema. Baseline score with high schema coverage 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?
Title clearly states 'Settlement-Risk Capital Efficiency Optimizer', and description identifies it as an OpenChainGraph compute node for capital_assessment. However, the description focuses more on compute mechanics (server vs browser, data handling) than on the specific optimization function. The purpose is clear but could be more direct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute modes (auto, server, browser) and advises using synthetic/anonymized inputs. Mentions consumption of upstream artifacts from a specific tool, implying chaining. No explicit when-to-use vs alternatives among many sibling tools, which is a gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
optimize_social_security_claim_ageSocial Security Claiming-Age OptimizerBRead-onlyIdempotentInspect
Social Security Claiming-Age Optimizer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-283-pension-lump-sum-vs-annuity-decision-engine. Open at: https://ainumbers.co/chaingraph/art-282-social-security-claiming-optimizer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it states inputs are not stored or logged, describes compute modes and delegation conditions, mentions deterministic execution, and advises using synthetic inputs. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but includes technical jargon (OpenChainGraph, AP2, execution_hash) that may not be essential for tool selection. Front-loaded with title, but could be streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema is provided, and the description does not explain what the tool returns beyond mentioning an AP2 artifact and a downstream artifact link. The policy_parameters input is underspecified, making the tool's interface incomplete 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 100% with descriptions for all parameters. The description adds context for the compute parameter by explaining default behavior and gpu:true delegation, but does not clarify the nested policy_parameters fields (defers to manifest).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and description clearly indicate the tool is a Social Security Claiming-Age Optimizer, and the context of being a compute node is stated. However, the core purpose is somewhat buried under execution model 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?
No explicit guidance on when to use this tool versus alternatives is provided. The sibling tools include other optimizers, but no differentiation or when-not-to-use guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
otlp_span_receiptGenerate or verify a per-span OTel receipt bundle over an OTLP/JSON traceAInspect
Three modes, chosen by which input is supplied. (1) Pass trace alone to GENERATE a receipt bundle: a per-span receipt (span digest, parent-span receipt digest, semconv_snapshot, eddsa-jcs-2022 signature over an ephemeral did:key) for every span, plus a Merkle-rooted (RFC 6962) trace receipt. (2) Pass bundle ({trace, span_receipts, trace_receipt, issuer_did}) to VERIFY it: recomputes every digest, walks the parent-receipt chain, rebuilds the Merkle root, and reports which spans are attested, unattested, or tampered. (3) Pass run_chain_result (the structuredContent from run_chain) instead of trace to bridge a ChainGraph chain run into an OTLP trace first -- one execute_tool span per successfully-executed step, each carrying its own execution_hash as a span attribute (ocg.execution_hash) -- then generates the same receipt bundle over it. Byte-identical receipt engine to tools/566-otel-span-receipt-verifier.html -- a human's browser-generated bundle and this tool's output interoperate on the exact same wire shape.
| Name | Required | Description | Default |
|---|---|---|---|
| trace | No | An OTLP/JSON trace document to generate a receipt bundle over. Omit if passing bundle or run_chain_result. | |
| bundle | No | {trace, span_receipts[], trace_receipt, issuer_did} to VERIFY instead of generate. | |
| service | No | resource service.name to stamp when bridging run_chain_result into a trace. Defaults to "ainumbers-chaingraph-worker". | |
| run_chain_result | No | The structuredContent object returned by run_chain (must include chain and steps[]) -- bridges the chain run into an OTLP trace, then generates a receipt bundle over it. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description details the generation process (per-span receipt components, Merkle root), verification steps (recomputes digests, rebuilds tree, reports status), and bridging logic (converts run_chain result to OTLP trace with execution_hash). It also mentions byte-identical engine to another tool. Annotations provide limited safety hints, but the description fully compensates with rich 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 paragraph but well-structured with numbered modes. It is front-loaded with the key mode distinction. While it contains detailed information, every sentence adds value. It could be slightly more concise, but overall it is clear 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 the tool's complexity (4 parameters, nested objects, no output schema), the description provides complete context: it explains each mode's inputs, outputs (generation yields per-span and trace receipts; verification yields attestation status; bridge converts ChainGraph results), and behavioral details like byte-identical engine to another tool. It covers all necessary aspects for an AI agent to understand and invoke 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%, so each parameter has a description. The description adds value by explaining the mode selection logic (which parameter to use for which mode) and the default value for 'service'. This goes beyond the schema's individual parameter descriptions, providing semantic context about mutual exclusivity and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 generates or verifies a per-span OTel receipt bundle over an OTLP/JSON trace. It specifies three distinct modes based on input, making the purpose specific and well-defined. It distinguishes from sibling tools by its unique functionality involving receipt bundles and bridging ChainGraph results.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 outlines when to use each mode: pass trace alone to generate, pass bundle to verify, or pass run_chain_result to bridge. It provides clear contextual guidance on mode selection, and notes interoperability with a human-generated bundle, effectively guiding an AI agent on appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
otlp_validateValidate an OTLP/JSON trace for structure + gen_ai conformanceARead-onlyIdempotentInspect
Structurally validates an OTLP/JSON trace (resourceSpans -> scopeSpans -> spans: hex traceId/spanId shape, quoted nanosecond timestamps, parent-span references, time ordering) and checks every gen_ai span's attributes against a pinned gen_ai semantic-convention attribute snapshot (the upstream open-telemetry/semantic-conventions-genai namespace ships zero tagged releases, so this is a dated pin, stamped as semconv_snapshot in the result -- expect it to drift as the upstream spec moves). Byte-identical lint engine to tools/556-otlp-genai-span-composer-linter.html.
| Name | Required | Description | Default |
|---|---|---|---|
| trace | Yes | An OTLP/JSON trace document: { resourceSpans: [{ scopeSpans: [{ spans: [...] }] }] }. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds important behavioral context: it performs static structural validation against a pinned (dated) semantic convention snapshot, acknowledges potential drift, and notes it's byte-identical to a lint engine. 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 two sentences but densely packed with relevant technical details. Every clause adds value, and the information is logically ordered from general purpose to specific checks to annotations about the semantic convention snapshot. No 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?
For a single-parameter validation tool with no output schema, the description covers the input structure, the scope of validation, and a key caveat about the semantic convention snapshot. It mentions a result stamp but does not detail the output format. However, given the tool's straightforward nature, 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?
The single 'trace' parameter has 100% schema coverage. The description adds specific structural expectations (resourceSpans, scopeSpans, spans, hex IDs, timestamps) that go beyond the schema's basic description, providing the agent with concrete formatting 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 title and description clearly state the tool validates OTLP/JSON traces for structure and gen_AI conformance, listing specific checks like hex IDs, timestamps, and parent-span references. This distinguishes it from sibling tools that validate other 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?
The description does not explicitly provide guidance on when to use this tool versus alternatives. It mentions a reference to another tool but lacks direct context on exclusions or when-not to use. The usage is implied by the tool's purpose but not elaborated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pain001_validateValidate a pain.001.001.09 message against the schema-subset tableARead-onlyIdempotentInspect
Validates a pain.001.001.09 customer credit transfer initiation XML document against the same hand-derived schema-subset table as the tools/555 browser validator -- structural (mandatory fields), facet (IBAN mod-97, BIC format, ISO 4217 currency, decimal/date patterns), and batch-total cross-checks (NbOfTxs vs. actual transaction count, CtrlSum vs. sum of InstdAmt). Byte-identical error set to the browser tool for the same input. Subset validation, not full XSD conformance -- prepare/validate only, never transmits or generates a live payment message.
| Name | Required | Description | Default |
|---|---|---|---|
| xml | Yes | pain.001.001.09 XML document text to validate. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and readOnlyHint=true, and the description adds significant behavioral details: it enumerates the exact validation checks (mandatory fields, IBAN mod-97, BIC format, ISO 4217 currency, etc.), notes byte-identical errors to a browser tool, and clarifies it does not transmit or generate live payments. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that efficiently conveys purpose, scope, and key behaviors without unnecessary words. It is front-loaded with the core action. While slightly dense, it remains readable and avoids 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?
Given the tool's complexity (specific validation logic) and the absence of an output schema, the description covers most necessary aspects: what it validates, what it does not, and its non-destructive nature. It lacks explicit documentation of the return format (e.g., list of errors or success status), but the 'byte-identical error set' hint somewhat compensates.
Complex tools with many parameters or behaviors need more documentation. 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 (xml) with schema coverage 100%. The description adds context by specifying the expected XML format (pain.001.001.09), which is already implied by the tool name. This provides minor additional value beyond the schema's type and 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 identifies the tool as validating a pain.001.001.09 XML against a schema-subset table, listing specific checks (structural, facet, batch-total) and explicitly distinguishing it from full XSD validation. The verb 'validates' paired with the specific message type makes the purpose unambiguous, and it is well-differentiated from sibling validation tools by its focus on a specific ISO 20022 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?
The description states the tool is for 'subset validation, not full XSD conformance' and that it 'never transmits or generates a live payment message,' providing clear boundaries. It implies usage for pre-validation of pain.001.001.09 messages. However, it does not explicitly reference sibling tools or alternative validation approaches, missing a small opportunity for guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
parse_camt053_reconciliationISO 20022 camt.053 Statement ReconciliationARead-onlyIdempotentInspect
ISO 20022 camt.053 Statement Reconciliation: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-263-score-cash-forecast-accuracy. Open at: https://ainumbers.co/chaingraph/art-258-parse-camt053-reconciliation.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds significant value by detailing compute modes (server-side vs browser), transient processing of inputs, and the export of an AP2 artifact for chain provenance. No contradiction with annotations is observed.
Agents need to know what a tool does to the 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 front-loaded with the purpose and key behavior. It is well-structured: identity, compute modes, transient processing, caution, output. While it includes a URL, the length is justified by the technical details and remains 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 the tool's complexity (nested objects, no required params, part of a chain), the description explains compute options, transient processing, and the output feed. However, it lacks explicit information on the return value or expected output format beyond exporting an artifact. This is adequate for the system context but 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?
The input schema provides complete descriptions for all 4 parameters (100% coverage). The description adds context about the 'policy_parameters' being for the decision function and to see the tool's manifest, which is helpful but not extensive. Baseline is met with slight 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 title clearly indicates it's for ISO 20022 camt.053 Statement Reconciliation. The description elaborates that it's a deterministic OpenChainGraph compute node and mentions export of an artifact. However, it does not explicitly state the core action of parsing and reconciling the statement, which is slightly ambiguous when compared to the sibling 'camt053_parse'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 instructs to use synthetic or anonymised inputs only, but it does not differentiate when to use this tool versus the sibling 'camt053_parse' or other tools. The compute mode details provide some context on execution options but lack 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.
plan_aml_disposition_sampleAML Disposition Sampling Frame BuilderARead-onlyIdempotentInspect
AML Disposition Sampling Frame Builder: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-471-disposition-sampling-frame.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations: it states inputs are transient (not stored, logged, or retained), warns to use synthetic or anonymised inputs only, and describes the output (AP2 artifact with execution_hash). This complements the readOnlyHint and idempotentHint annotations. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with the tool's identity and then explaining compute modes, data handling, and output. It is informative without being overly verbose. Every sentence adds value, though some details (e.g., URL) could be considered optional.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested objects, no output schema), the description covers the key aspects: compute mode behavior, data handling constraints, output type, and a reference URL. It does not explain return values in detail, but the mention of AP2 artifact with execution_hash suffices for a compute node. The warning about synthetic data adds safety 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 already covers 100% of parameters with descriptions, so the baseline is 3. The tool description echoes the compute modes and adds a note to see the manifest for policy_parameters field names, which is useful but redundant. It also adds a validation warning about synthetic inputs, but that is not directly 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 identifies the tool as an 'AML Disposition Sampling Frame Builder' and an 'OpenChainGraph compute node (compliance_control)', specifying its role in building sampling frames for AML disposition. However, it does not explicitly differentiate this tool from similar siblings like 'plan_attribute_sample', which may handle other sampling 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?
The description provides detailed guidance on compute modes (auto, server, browser) and when each applies, which helps with parameter usage. However, it offers no guidance on when to select this tool over alternative tools (e.g., other planning tools in the sibling list), nor does it specify prerequisites or context for using this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
plan_attribute_sampleAttribute Sampling Plan GeneratorARead-onlyIdempotentInspect
Attribute Sampling Plan Generator: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-458-attribute-sampling-plan.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (read-only, idempotent, non-destructive), the description adds critical details: deterministic execution, compute mode behavior (server vs browser delegation), transient input processing (no storage), and output artifact nature (AP2 with execution_hash). No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with the main purpose, then covering compute modes, data handling, output, and a reference link. It is somewhat long but each sentence adds necessary information. Could be slightly tighter, 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 complexity (4 parameters, no output schema, but good annotations), the description covers all essentials: purpose, compute modes, data handling (transient, no storage), output artifact type, and a reference URL for more details. It sufficiently explains the tool's behavior and return value 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?
With 100% schema description coverage, the baseline is 3. The description adds value by contextualizing the parameters: explaining compute modes in more detail, noting that policy_parameters refer to the tool's manifest, and describing the purpose of parent_hashes and parent_tool_ids for chaining. This additional context justifies 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 title and description clearly identify it as an 'Attribute Sampling Plan Generator' for OpenChainGraph. It distinguishes itself with specific details: deterministic compute node, compute mode options, transient processing, and AP2 artifact output. This provides a specific verb-resource combination that differentiates it from sibling plan 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 explains the different compute modes and when to use each (auto, browser, gpu), and advises using synthetic inputs due to transient processing. It does not explicitly state when not to use this tool or compare with siblings, but the context is clear enough for an agent to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
plan_tls_pki_migrationTLS / X.509 PKI Migration PlannerARead-onlyIdempotentInspect
TLS / X.509 PKI Migration Planner: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-85-pqc-timeline-fit-diagnostic, 499-crypto-asset-inventory-classifier. Output feeds: cry-04-merkle-batch-verifier, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-86-tls-pki-migration-planner.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable context: inputs are processed transiently and not stored, logged, or retained; it is deterministic; and compute modes (server/browser/gpu) are detailed. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is informative and well-structured, covering title, compute behavior, transient processing, input caution, and artifact chain. It is not overly verbose but could be slightly trimmed without losing 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?
The description explains compute modes, transient processing, and artifact chain (upstream/downstream), which provides good context. However, it does not specify what the plan artifact contains (no output schema), leaving a gap in understanding the tool's output. Missing details on the actual planning 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?
All four parameters have descriptions in the input schema (100% coverage), so the description adds limited additional meaning. It mentions 'execution_hash' and chain provenance related to parent hashes, and clarifies the 'compute' enum behavior, but the schema already covers the essentials.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'TLS / X.509 PKI Migration Planner' and provides a detailed explanation of its functionality. The name and description distinguish it from sibling tools such as 'plan_aml_disposition_sample' and 'plan_attribute_sample'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 input safety ('Use synthetic or anonymised inputs only') and compute mode selection but does not explicitly state when to use this tool versus alternatives. Usage is implied through the specific domain and artifact dependencies.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
precheck_reserve_attestationGENIUS Act Reserve Attestation Pre-CheckBRead-onlyIdempotentInspect
GENIUS Act Reserve Attestation Pre-Check: OpenChainGraph compute node (attestation_mandate). Regulatory deadline: 2027-01-01 (GENIUS Act effective ≤ January 2027; monthly reserve reports + annual PCAOB audit (>$50B issuers); FDIC NPRM April 2026). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-06-genius-act-reserve-attestation.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds valuable detail: compute delegation modes (auto/server/browser), transient processing (inputs not stored or retained), and deterministic execution. This goes beyond annotations and improves understanding of data handling and execution location.
Agents need to know what a tool does to the 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 moderately concise but includes regulatory details (deadline, FDIC NPRM) that may be extraneous for tool selection. It is structured as a single paragraph mixing technical and regulatory content. The key compute behaviors are front-loaded, but the output feed URL and fine-print security note add length without clear prioritization.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 describing compute behavior and export of an AP2 artifact, the description fails to explain what the pre-check actually evaluates or returns. It does not mention pass/fail criteria, a score, or any decision output. With no output schema, this is a significant gap. The tool's purpose as a 'pre-check' implies validation, but the result is unclear.
Complex tools with many parameters or behaviors need more documentation. 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 minor value by noting that policy_parameters are computed server-side in certain modes, which clarifies when the parameter is actually used. Other parameters are well-documented in the schema, and the description does not introduce new constraints or meanings.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 GENIUS Act Reserve Attestation Pre-Check using an OpenChainGraph compute node and exports an AP2 artifact. It names the regulatory deadline and specifies the compute node type, which helps distinguish it from generic compute tools. However, it does not explicitly differentiate from sibling tools that also handle attestations or reserve proofs, and the precise output (e.g., whether it returns a pass/fail or computed data) is not stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 one explicit usage guideline: 'Use synthetic or anonymised inputs only.' It does not specify when to use this tool versus alternatives, no prerequisites or context for invocation, and no mention of when not to use it. Given the large sibling set, this lack of guidance reduces usability.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
predict_settlement_failSettlement-Fail PredictorARead-onlyIdempotentInspect
Settlement-Fail Predictor: OpenChainGraph compute node (model_governance). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-77-t1-settlement-readiness-diagnostic, art-80-ssi-conformance-checker. Output feeds: art-84-settlement-efficiency-kpi, cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-79-settlement-fail-predictor.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds value by explaining that inputs are processed transiently without storage, logging, or retention, and that the tool is deterministic. It also details compute propagation (server vs browser) and GPU 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?
The description is verbose and includes many details (compute modes, GPU handling, upstream/downstream artifacts, URL) that could be condensed. It lacks a clear, concise overview first, making it less scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 parameters, no output schema), the description covers compute modes, transient processing, dependencies, and provenance. It explains the 'policy_parameters' object and links to a web resource for more info, providing a well-rounded 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 has 100% coverage with descriptions for all four parameters. The description does not add significant new meaning beyond the schema, except for detailing the 'compute' parameter's behavior. Thus, 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?
Clearly states it is a 'Settlement-Fail Predictor' and an 'OpenChainGraph compute node'. The description specifies its role in predicting settlement failures and distinguishes it from other tools by listing specific upstream and downstream artifacts, making its purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides some usage guidance, such as 'Use synthetic or anonymised inputs only' and explains compute modes. However, it does not explicitly state when to use this tool versus alternatives or when not to use it, 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.
prevalidation_readiness_scorerCross-Border Payment Prevalidation Readiness ScorerARead-onlyIdempotentInspect
Cross-Border Payment Prevalidation Readiness Scorer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-243-purpose-code-requirement-checker. Open at: https://ainumbers.co/chaingraph/art-247-prevalidation-readiness-scorer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, not destructive), description adds deterministic execution, transient processing (no storage/logging), and artifact export with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is relatively long but front-loaded with purpose. Each sentence adds information, though some technical details (e.g., compute modes) could be more streamlined. Adequate but not 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?
Covers main aspects: purpose, compute modes, data handling, artifact output, and upstream dependency. Missing output format details (no output schema) and deeper explanation of scoring logic, which 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?
Schema coverage is 100%, so parameters are documented. Description adds context for compute modes and mentions policy_parameters defers to manifest. Adds some value but does not fully detail the nested object 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 identifies the tool as a cross-border payment prevalidation readiness scorer, a deterministic OpenChainGraph compute node with a specific compliance mandate. Distinguishes from siblings by specifying its role in a chain and consuming upstream artifacts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute modes (auto, server, browser) and when each applies, including handling of gpu:true/false and data sensitivity (use synthetic/anonymised inputs). Does not explicitly exclude alternatives but context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
price_embedded_insuranceEmbedded Insurance Pricing ModellerARead-onlyIdempotentInspect
Embedded Insurance Pricing Modeller: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-366-price-embedded-insurance.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag readOnlyHint, idempotentHint, destructiveHint. Description adds value by stating inputs are 'processed transiently and not stored, logged, or retained' and that the tool exports an AP2 artifact with execution_hash for chain provenance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is moderately sized with clear front-loading of purpose, followed by compute mode details, data handling, and artifact. Some redundancy in repeating 'OpenChainGraph compute node' but overall well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 absence of an output schema, the description explains the artifact (AP2 with execution_hash) and provides a URL for further details. It covers compute behavior, data privacy, and chain provenance adequately for a complex tool with nested 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 the schema already documents all 4 parameters. The description adds minimal extra context: explains when policy_parameters are computed server-side and references a manifest for field names. Not significantly 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 tool's purpose as 'Embedded Insurance Pricing Modeller' and describes it as a deterministic OpenChainGraph compute node. This specific verb-resource pairing distinguishes it from 200+ 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?
Provides detailed guidance on compute modes (auto, server, browser) and when each applies, including the condition gpu:true nodes always delegate to browser. Includes a safety instruction to use synthetic/anonymised inputs. Does not explicitly contrast with alternatives, but the context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prove_metadata_sanitizationMetadata Sanitization ProverARead-onlyIdempotentInspect
Metadata Sanitization Prover: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-191-conversion-receipt-builder. Open at: https://ainumbers.co/chaingraph/art-193-metadata-sanitization-prover.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses key behavioral traits beyond annotations: deterministic execution, transient data processing (inputs not stored, logged, or retained), compute mode differentiation (server/browser delegation), and chain provenance (exports AP2 artifact with execution_hash). Annotations (readOnlyHint, idempotentHint) are confirmed and enriched with operational 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 well-structured: starts with identity and type, then behavior, constraints, and output. Each sentence serves a purpose, though it is somewhat dense with technical details that could be streamlined. It is front-loaded with the key 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 has 4 parameters, nested objects, and no output schema, the description covers the tool's purpose, execution modes, data handling, output format (AP2 artifact with execution_hash), and downstream feed. It lacks details on error conditions or response structure, but the annotations and schema 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?
The input schema has 100% description coverage, so baseline is 3. The description adds some value by explaining the purpose of policy_parameters ('input parameters for decision function') and clarifying the compute parameter's modes, but it does not provide new information beyond the schema's own 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 identifies the tool as a 'Metadata Sanitization Prover' and an OpenChainGraph compute node, explaining its deterministic behavior and output. It specifies the verb 'prove' and the resource 'metadata sanitization', which is distinctive among siblings, though it could clarify what constitutes a 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 usage constraints like 'Use synthetic or anonymised inputs only' and mentions the output feeds into another artifact, but it lacks explicit guidance on when to choose this tool over alternatives or when it is not appropriate. No comparison with sibling tools is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rdarr_aggregation_recomputeRDARR Aggregation RecomputeARead-onlyIdempotentInspect
RDARR Aggregation Recompute: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-480-rdarr-aggregation-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: transient processing (inputs not stored), caution to use synthetic/anonymized inputs, deterministic compute, and export of AP2 artifact with execution_hash. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections: purpose, compute modes, input handling, output. Each sentence adds information, but the URL at the end is somewhat extraneous and could be trimmed. Still 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's complexity (4 params, no output schema), the description covers compute behavior, input privacy, output artifact, and provides a reference URL. It is fairly complete, though it could specify the return value format more explicitly.
Complex tools with many parameters or behaviors need more documentation. 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 useful context: compute mode behavior, chaining via parent_hashes/parent_tool_ids, and policy_parameters input. However, it defers to external manifest for field names, which reduces direct 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 is an 'OpenChainGraph compute node' for 'RDARR Aggregation Recompute' with a specific scope (attestation_mandate). The verb 'recompute' and resource 'aggregation' are clear. While distinct from siblings like 'rdarr_quality_scorecard', the description could better differentiate from other RDARR 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 explains when to use each compute mode ('auto', 'server', 'browser') and how GPU nodes affect execution. It provides context but does not explicitly give when-not-to-use or compare to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rdarr_quality_scorecardRDARR Quality ScorecardCRead-onlyIdempotentInspect
RDARR Quality Scorecard: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-481-rdarr-quality-scorecard.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable behavioral context: transient processing, inputs not stored/logged, compute mode behavior (server vs browser), and that it exports an AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but contains some redundancy (e.g., 'Deterministic OpenChainGraph compute node' restated). It could be more front-loaded with the core action. The link is helpful but adds 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?
Despite having no output schema, the description does not explain what the quality scorecard contains or the relationship between parent_hashes and parent_tool_ids. The output is vaguely described as an 'AP2 artifact with execution_hash'. More detail is needed for an agent to fully understand the tool's capabilities.
Complex tools with many parameters or behaviors need more documentation. 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 coverage is 100% with descriptions for all parameters. The description slightly elaborates on compute modes and parent_hashes/parent_tool_ids but does not significantly add meaning beyond the schema. Policy_parameters remain vague. 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 identifies the tool as a 'RDARR Quality Scorecard: OpenChainGraph compute node' and mentions exporting an AP2 artifact, but does not explicitly state the verb+resource (e.g., 'computes a quality scorecard'). The purpose is implied rather than clearly declared, making it somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using synthetic or anonymised inputs only, but provides no guidance on when to use this tool versus its many siblings (e.g., other scoring tools). There is no explicit when-to-use or when-not-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_best_executionBest-Execution NBBO RecomputeARead-onlyIdempotentInspect
Best-Execution NBBO Recompute: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-541-best-execution-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations by disclosing that inputs are transient and not stored/logged/retained, that the output is an AP2 artifact with execution_hash, and that compute modes affect where computation occurs. It also states the tool is deterministic and warns to use synthetic or anonymized inputs, adding significant context not available from the schema or 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 largely concise and front-loaded, but it repeats 'OpenChainGraph compute node' twice in the first two sentences, which is redundant. Each other sentence carries distinct information, and the inclusion of a reference URL is useful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute tool with four parameters and no output schema, the description covers execution modes, data handling, deterministic behavior, and the output artifact, which is sufficient for an agent to invoke it correctly. It lacks an explanation of what NBBO means and the exact structure of the AP2 artifact, but the URL provides a resource for those 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?
The schema covers all four parameters with 100% coverage, providing the baseline of 3. The description enhances the 'compute' parameter by explaining the server-side vs browser delegation behavior and adds meaning to 'parent_hashes' by mentioning chain provenance via execution_hash. However, it does not elaborate on 'policy_parameters' field names, relying on the schema and manifest reference.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 this is a 'Best-Execution NBBO Recompute' tool and an 'OpenChainGraph compute node' that exports an AP2 artifact, distinguishing it from other recompute tools in the sibling list. The verb 'recompute' and resource 'best-execution NBBO' make the purpose specific and 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 execution context, explaining the compute parameter modes (auto, server, browser) and the rule that gpu:true nodes delegate to the browser. However, it does not explicitly state when to choose this tool over alternative recompute tools, nor does it mention exclusions or alternative tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_bordereauDelegated Authority Bordereau RecomputationARead-onlyIdempotentInspect
Delegated Authority Bordereau Recomputation: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-508-recompute-bordereau.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), the description discloses transient input processing, no storage/logging/retention, server vs. browser execution modes, a requirement for synthetic or anonymised inputs, and AP2 artifact export with execution_hash. This adds substantial context the annotations alone do not provide.
Agents need to know what a tool does to the 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 dense with operational details and front-loads the purpose. The first two sentences are somewhat redundant in calling it an OpenChainGraph compute node, but the remaining content 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 tool with four parameters, a nested object, and no output schema, the description covers purpose, compute modes, privacy, and output artifact. It omits details of the AP2 artifact's internal structure and any prerequisites, but is generally 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?
All four parameters have detailed schema descriptions covering compute modes, parent hashes, tool IDs, and policy parameters. The description reinforces compute mode behavior and references the manifest for policy_parameters, but adds little beyond what the schema already communicates.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'Delegated Authority Bordereau Recomputation' and an 'OpenChainGraph compute node', giving a specific verb and resource. It does not explicitly differentiate from other recompute tools, but the domain and function are 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 in the OpenChainGraph pipeline for deterministic recomputation with provenance, but provides no explicit when-to-use or alternative guidance. With many recompute siblings present, there is no exclusion or differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_ccp_default_waterfallCCP Default Waterfall RecomputationARead-onlyIdempotentInspect
CCP Default Waterfall Recomputation: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-529-ccp-default-waterfall-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond the annotations: it states the tool is deterministic, inputs are processed transiently and not stored/logged/retained, browser delegation behavior for gpu:true nodes, and that it exports an AP2 artifact with execution_hash. These details meaningfully extend the read-only, idempotent, non-destructive hints, giving the agent a clear picture of side effects and data 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?
The description is packed with useful information in a compact form: compute modes, data handling, artifact export, and a reference link. It is slightly redundant with the title but each sentence earns its place, making it efficient and reasonably 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 no output schema, the description explains the output at a high level (AP2 artifact with execution_hash) and covers input modes, data retention, and usage constraints. It is fairly complete for a tool with strong annotations and full schema coverage, though it lacks details on the exact response format or what 'ccp_default_waterfall' means domain-wise.
Complex tools with many parameters or behaviors need more documentation. 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 coverage, the baseline is 3. The description enhances the compute parameter semantics by explaining what 'auto' vs 'browser' actually do (server-side on Cloudflare Workers vs. client-side delegation URL), and it clarifies that policy_parameters are the tool's decision function inputs. This adds value beyond the schema's per-parameter descriptions, though it does not cover all parameters in depth.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 recomputes a 'CCP Default Waterfall' as an OpenChainGraph compute node, giving a specific verb and resource. However, it does not explicitly distinguish this from sibling recomputation tools like recompute_payment_waterfall or size_ccp_default_fund_cover2, and the description focuses more on execution mechanics than the domain 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 guidance on compute modes ('compute:"auto"' vs 'compute:"browser"') and advises using synthetic or anonymized inputs only, which are useful usage constraints. However, it does not explain when to choose this tool over alternatives, and the guidance is really about parameter behavior rather than tool selection context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_certified_payroll_pwaCertified Payroll / Prevailing Wage RecomputationARead-onlyIdempotentInspect
Certified Payroll / Prevailing Wage Recomputation: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-574-certified-payroll-prevailing-wage-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite readOnlyHint and idempotentHint annotations, the description adds substantial behavioral detail: determinism, transient processing without storage/logging/retention, browser delegation for gpu:true nodes, and AP2 artifact export. This goes well beyond what annotations provide, giving the agent critical safety and execution 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 information-dense and well-structured, front-loading the compute modes and then safety/artifact details. It earns its length, though the opening repeats the title and 'OpenChainGraph compute node' twice, which is slightly redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema and 4 params including a nested object, the description covers execution modes, input constraints, and output artifact (AP2 with execution_hash). It provides a URL for more details. It could be more explicit about what server-side compute returns versus the browser delegation URL, leaving slight ambiguity.
Complex tools with many parameters or behaviors need more documentation. 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 valuable semantics for the compute parameter, explaining the auto/server/browser behavior in detail. It also ties parent_hashes to the AP2 execution_hash concept. However, policy_parameters is left to 'see manifest', so not fully elaborated.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as a deterministic OpenChainGraph compute node for certified payroll/prevailing wage recomputation, with specific compute modes. It states the verb (recompute) and resource (certified payroll/prevailing wage) and adds execution context. However, it does not distinguish from sibling recompute_* tools beyond the domain name, so not 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?
Provides clear guidance on compute modes (auto/server/browser) and when each applies, plus the important instruction to use synthetic or anonymised inputs only. It does not explicitly mention when to prefer this over alternatives or when not to use it, but the compute mode semantics serve as effective usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_corporate_action_entitlementCorporate Action Entitlement RecomputeARead-onlyIdempotentInspect
Corporate Action Entitlement Recompute: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-546-dtcc-ca-iso20022-validator. Open at: https://ainumbers.co/chaingraph/art-547-corporate-action-entitlement-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, but the description goes beyond by explaining deterministic execution, transient input handling (not stored/logged), AP2 artifact export with execution_hash, and specific browser delegation behavior. This provides meaningful transparency about what happens to inputs and outputs beyond the annotation baseline.
Agents need to know what a tool does to the 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 long but well-structured, front-loading purpose and then detailing execution modes, data handling, artifact, and dependencies. It repeats 'OpenChainGraph compute node' twice, which is slightly redundant, but each sentence otherwise adds substantive 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 tool with 4 parameters and no output schema, the description covers execution modes, data retention policy, output artifact (AP2 with execution_hash), upstream dependency, and a reference URL. It lacks a more detailed description of the returned AP2 artifact, but given the absence of an output schema, it makes a reasonable effort to 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 description coverage is 100%, so the baseline is 3. The description adds value by explaining the compute enum's default behavior and the server-side vs browser execution semantics, and clarifies that policy_parameters are computed server-side under certain conditions. It doesn't list the policy_parameters fields but references the manifest, which is a minor gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a specific verb ('recompute') and resource ('corporate action entitlement'), and distinguishes it from sibling recompute tools by naming the compliance_mandate domain. The OpenChainGraph compute node context and reference to an upstream artifact further clarify its 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 explicit guidance on when to use which compute mode (auto vs browser, with gpu:true always delegating) and instructs to use synthetic or anonymised inputs only. It also mentions the upstream artifact dependency. However, it does not name alternative tools for comparison, though the context is sufficient for most cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_csdr_penaltyCSDR Penalty Recompute (Caller Reference Price)CRead-onlyIdempotentInspect
CSDR Penalty Recompute (Caller Reference Price): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-543-csdr-penalty-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds meaningful behavioral context beyond the readOnlyHint/idempotentHint annotations: it discloses transient processing, no storage/logging/retention, the requirement to use synthetic or anonymised inputs, browser delegation behavior, and the export of an AP2 artifact with execution_hash. This is valuable and non-redundant, though it doesn't cover error cases or auth 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 verbose and repetitive: 'OpenChainGraph compute node' appears twice in consecutive sentences, and the long URL adds bulk without clear benefit. The core purpose is buried under execution environment 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?
With no output schema, the description should explain what the tool returns, but it only mentions 'Exports an AP2 artifact with execution_hash'. It omits the actual computation semantics (e.g., what inputs map to the penalty, what the result contains) and fails to relate to the domain context. An agent would struggle to understand when and why to 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?
Schema description coverage is 100% and the schema already provides detailed descriptions for compute, parent_hashes, parent_tool_ids, and policy_parameters. The tool description adds no parameter-specific meaning beyond repeating the compute mode behavior already present in the schema, so it stays at 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 restates the tool's name and title ('CSDR Penalty Recompute (Caller Reference Price)') and labels it an 'OpenChainGraph compute node', but never uses a specific verb to state what the tool computes or what 'caller reference price' means. It does not distinguish this recompute tool from its sibling 'calculate_csdr_penalty' or other recompute 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. It explains compute modes and privacy constraints, but does not state that this tool is for recomputing CSDR penalties with a caller reference price, nor does it mention any when-not-to-use scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_exchange_fee_tier_invoiceExchange Access-Fee / Maker-Taker Tier RecomputeARead-onlyIdempotentInspect
Exchange Access-Fee / Maker-Taker Tier Recompute: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-577-exchange-fee-tier-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds meaningful behavioral context: it is deterministic, inputs are processed transiently and not stored/logged/retained, and it exports an AP2 artifact with execution_hash for chain provenance. These details inform the agent about privacy and output behavior, exceeding the annotation coverage without contradicting 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?
The description is moderately sized but includes extraneous elements like an 'Open at: URL' link and technical details about Cloudflare Workers and gpu nodes that could be streamlined. While the first sentence is clear and the compute mode explanation is useful, not every sentence earns its place, and the description is less concise than ideal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description partially compensates by stating it 'Exports an AP2 artifact with execution_hash for chain provenance', but it does not explain the structure of the output tier or result. It also omits details about what policy_parameters should contain (only referencing a manifest). Given the tool's complexity and lack of output schema, the description is not fully complete for an agent to invoke without additional 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 input schema already covers 100% of parameters with descriptions. The description adds a summary of compute mode behavior (e.g., 'auto' default, browser delegation) but this largely duplicates the schema description for the 'compute' parameter. For policy_parameters, it points to 'the tool's manifest for field names', which is a small addition but not substantial. Overall, minimal added 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 tool performs an 'Exchange Access-Fee / Maker-Taker Tier Recompute' as an OpenChainGraph compute node, which is specific and action-oriented. However, it does not explicitly differentiate this tool from sibling recompute_* tools that also handle fee or tier calculations, so it doesn't fully meet the 5-level criterion for 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 implies usage for recomputing exchange fee tiers in a compliance context and instructs to 'Use synthetic or anonymised inputs only', which is a usage constraint. It provides details on compute modes (auto/server/browser) but does not explicitly state when to prefer this tool over other recompute tools or when not to use it, so guidance is more implied than direct.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_fund_feesRecompute Fund FeesARead-onlyIdempotentInspect
Recompute Fund Fees: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-511-recompute-fund-fees.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds substantial behavioral detail: deterministic execution, server-side vs browser compute delegation, transient processing with no storage/logging/retention, and artifact export with execution_hash. These are exactly the kind of contextual behaviors an agent 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 reasonably concise but repeats 'OpenChainGraph compute node' in the first two sentences, which is redundant. The essential information is front-loaded, but the redundancy prevents a higher score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description discloses the output type ('Exports an AP2 artifact with execution_hash'). It covers compute modes, data handling, and provides a link to the artifact page. However, it does not elaborate on what fund fees are or list the exact policy_parameters fields, only referencing a manifest.
Complex tools with many parameters or behaviors need more documentation. 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 100% parameter coverage, so the baseline is 3. The description adds value by explaining the compute parameter's semantics in detail (auto/server/browser, gpu:true delegation), and by clarifying that inputs are processed transiently. This raises it above 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 opens with 'Recompute Fund Fees' and identifies the tool as an 'OpenChainGraph compute node (analytics_mandate)', clearly stating the action and resource. This distinguishes it from sibling tools like recompute_fund_nav and compute_fund_expense_ratios by focusing specifically on fund fees.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explicit guidance on when to use this tool versus alternatives. It mentions compute mode behavior and the constraint to 'Use synthetic or anonymised inputs only,' but does not explain scenarios where this tool is preferred over similar tools like recompute_fund_nav.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_garnishment_stackMulti-Garnishment Stacking RecomputationARead-onlyIdempotentInspect
Multi-Garnishment Stacking Recomputation: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-572-multi-garnishment-stacking-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already indicate readOnly, idempotent, and non-destructive, and the description significantly expands on this: it is deterministic, inputs are processed transiently and not stored or logged, browser delegation behavior is disclosed, and it exports an AP2 artifact with execution_hash. These are meaningful behavioral traits beyond the structured hints, with no contradiction. The 'use synthetic or anonymised inputs only' warning is also valuable safety 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 reasonably concise and front-loaded with the title, but it repeats 'OpenChainGraph compute node' twice in the first two sentences, which is redundant. The rest of the content earns its place by covering compute modes, privacy, and output artifact. Slightly better structure would merge the duplicate phrases without losing 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 thoroughly covers compute modes, execution environment, transient processing, and artifact export. However, it omits the core semantic: what garnishment stacking is, what inputs are relevant, what the output represents, or even a reference to the manifest except in the schema. Without an output schema, the agent cannot anticipate the response shape. Given the tool's complexity, the description leaves a significant gap in functional 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 covers 100% of parameters with descriptions, so the baseline is 3. The description adds extra meaning around the compute parameter (auto/server/browser semantics, Cloudflare Workers, browser delegation URL) and clarifies that policy_parameters are passed to the decision function. It does not detail the garnishment logic or the policy_parameters structure, but it complements the schema well. No contradiction with 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 title and opening phrase identify the tool as recomputing a 'garnishment stack', which is a clear verb+resource pattern. However, the description never explains what garnishment stacking actually is or what the computation produces, relying on domain jargon. It also fails to distinguish itself from the many other recompute_* sibling tools, so an agent cannot tell what makes this computation unique.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 the many comparable recompute_* siblings. It does state that inputs should be synthetic or anonymised and explains compute modes, but that is operational constraint, not usage selection. There is no mention of prerequisites, typical use cases, or when to prefer alternatives, so an agent has little basis for choosing this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_lease_schedule_asc842_ifrs16Lease Schedule Recompute — ASC 842 / IFRS 16ARead-onlyIdempotentInspect
Lease Schedule Recompute — ASC 842 / IFRS 16: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-571-lease-schedule-recompute-asc842-ifrs16.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses determinism, transient input processing (not stored/logged/retained), the gpu:true delegation rule, and the AP2 artifact with execution_hash — all beyond the readOnly/idempotent annotations. It also explains the compute mode behavior in detail, enriching the agent's understanding of side effects and execution constraints. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description front-loads the title but contains redundancy, notably 'OpenChainGraph compute node' appearing twice. It also includes lengthy technical detail about compute modes and privacy that could be condensed. It is not overly long, but the repetition and drift reduce 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?
With no output schema, the description should explain the return value, but it only mentions the AP2 artifact. It also omits what a recomputed lease schedule contains or how inputs map to outputs, leaving a meaningful gap for a domain-specific tool. However, annotations and schema cover execution safety and parameter structure, so it 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?
The input schema already describes all four parameters with 100% coverage, so the description adds little new meaning. It repeats the compute enum semantics already in the schema and does not elaborate on parent_hashes, parent_tool_ids, or policy_parameters beyond what the schema provides. Baseline of 3 applies since 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 title 'Lease Schedule Recompute — ASC 842 / IFRS 16' clearly identifies the tool's domain and differentiates it from sibling recompute_* tools. However, the description quickly shifts to compute-node mechanics without explicitly stating what the tool does (e.g., recomputes lease payment schedules), relying on the title for the verb+resource meaning.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context for compute modes (server vs. browser) and mandates synthetic/anonymized inputs, but it does not clarify when to use this tool over sibling recompute tools or offer any exclusion criteria. 'When to use' is implied by the name rather than explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_payment_waterfallSecuritisation Payment Waterfall RecomputationARead-onlyIdempotentInspect
Securitisation Payment Waterfall Recomputation: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-510-build-art5-diligence-evidence. Open at: https://ainumbers.co/chaingraph/art-509-recompute-payment-waterfall.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that inputs are processed transiently and not stored, logged, or retained, and that outputs are AP2 artifacts with execution_hash for chain provenance. It also notes determinism and the compute-mode delegation behaviors. These details go beyond the annotations (readOnlyHint, idempotentHint, destructiveHint) and provide valuable transparency about side effects and execution environment.
Agents need to know what a tool does to the 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 longer than typical but every sentence adds distinct value: purpose, compute modes, data handling, output artifact, output feed, and relevant URL. It is front-loaded with the title and is structured logically. Slightly verbose but not redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description adequately explains the output as an AP2 artifact with execution_hash and mentions the browser delegation URL for browser mode. It covers data retention, compute modes, and parent_hashes via the schema. The policy_parameters reference to a manifest is a minor gap, but overall it is complete given the 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 has 100% description coverage, so the baseline applies. The description adds some context for the compute parameter (explaining 'auto', 'server', 'browser') and mentions that policy_parameters are input parameters for the decision function, but it defers field names to the tool's manifest. This does not significantly exceed the schema's own 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 identifies the tool as a 'Securitisation Payment Waterfall Recomputation' OpenChainGraph compute node. The verb 'recompute' and resource 'payment waterfall' are specific and distinguish it from sibling compute tools (e.g., recompute_fund_nav). It also clarifies its role as an analytics_mandate node.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context by explaining compute modes (auto/server/browser) and when each applies, including the behavior for gpu:true nodes. It explicitly instructs users to 'Use synthetic or anonymised inputs only,' which is a clear usage guideline. It does not name alternatives, but the context is sufficient for an experienced agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_pe_waterfall_lpPE Distribution Waterfall LP-Side RecomputeARead-onlyIdempotentInspect
PE Distribution Waterfall LP-Side Recompute: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-567-pe-waterfall-lp-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, non-destructive), the description meaningfully adds that inputs are transient and not stored/logged/retained, that compute can be server- or browser-delegated, that gpu:true always delegates, that outputs are AP2 artifacts with execution_hash, and that the node is deterministic. This gives the agent substantial behavioral 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 contains valuable density but repeats 'OpenChainGraph compute node' twice in the opening, creating redundancy. It is otherwise organized with compute behavior, privacy, output, and a reference URL, but could be tightened without losing 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?
With 4 parameters, a nested policy_parameters object, and no output schema, the description is quite complete: it covers compute modes, delegation behavior, privacy constraints, input restrictions, output artifact type, and provenance. It does not fully describe the returned artifact structure or define 'LP-side waterfall' semantics, but the operational context is strong enough for an agent to select and invoke 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 already has 100% description coverage, so the baseline is 3. The description adds useful context about compute mode behavior and transient input handling, but it does not provide additional field-level semantics for parent_hashes, parent_tool_ids, or policy_parameters beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and description clearly identify the tool as a deterministic OpenChainGraph compute node for recomputing the PE Distribution Waterfall LP-side. It distinguishes itself from siblings through the specific PE distribution waterfall scope and the attestation_mandate/AP2 artifact context, though it leans on the tool name for part of the meaning.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 how compute modes ('auto', 'browser') behave and instructs to use synthetic or anonymised inputs only, but it provides no explicit guidance on when to choose this tool over sibling recompute_* tools or what prerequisites/alternatives exist. The when-to-use context is only implied by the OpenChainGraph compute node positioning.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_section16b_profitSection 16(b) Short-Swing Profit RecomputationARead-onlyIdempotentInspect
Section 16(b) Short-Swing Profit Recomputation: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-573-section16b-short-swing-profit-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description richly supplements the annotations by explaining that inputs are 'processed transiently... not stored, logged, or retained,' that browser mode 'returns a browser delegation URL,' that gpu:true nodes always delegate, and that the tool 'Exports an AP2 artifact with execution_hash for chain provenance.' This adds significant behavioral context beyond the readOnly/idempotent/destructive 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 dense but contains redundancy: 'Deterministic OpenChainGraph compute node' appears twice, and the URL adds little to selection/invocation. It is a single unbroken paragraph, though each clause does convey meaningful information about execution modes, data handling, 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 covers compute execution, transient data handling, and artifact export, but it does not explain the output response structure (beyond mentioning execution_hash) and leaves policy_parameters semantics to an external manifest. Given no output schema and a nested object parameter, some important context is missing for a complete 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% with detailed descriptions for all four parameters. The description adds some context about compute modes and parent_hashes for chaining, but policy_parameters details are deferred to the manifest. The added value is marginal since the schema already explains each 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?
The name and title clearly identify the tool as recomputing Section 16(b) short-swing profit, and the description calls it a 'Deterministic OpenChainGraph compute node'. However, the description does not explicitly state what Section 16(b) recomputation entails or how this tool differs from the many other recompute_* siblings, relying on the name for 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 provides no guidance on when to choose this tool over alternatives. It mentions compute modes and the constraint 'Use synthetic or anonymised inputs only,' but does not explain when to invoke this tool versus a sibling recompute tool or how to select between compute modes for different use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_stock_loan_rebate_feeStock-Loan Rebate/Fee RecomputeARead-onlyIdempotentInspect
Stock-Loan Rebate/Fee Recompute: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-579-stock-loan-rebate-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent/non-destructive annotations, the description discloses deterministic execution, transient input processing with no storage/logging/retention, the requirement to use synthetic or anonymised inputs only, and AP2 artifact export with execution_hash for chain provenance. This is substantial operational transparency with no contradiction to 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 dense and front-loaded, covering purpose, compute routing, privacy, and output in about six sentences. The phrase 'OpenChainGraph compute node' is repeated, but otherwise the text is reasonably concise and information-dense for a tool with this complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, privacy, and the AP2 artifact output at a high level, which is helpful given there is no output schema. However, it does not explain the actual stock-loan rebate/fee calculation or the expected fields inside policy_parameters beyond pointing to a manifest, leaving a gap for autonomous 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?
The input schema already covers all four parameters with detailed descriptions, so the baseline is 3. The description mostly restates the compute parameter semantics that are already in the schema and defers policy_parameters field names to an external manifest, adding little new parameter-level 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 identifies the tool as a Stock-Loan Rebate/Fee Recompute OpenChainGraph compute node in compliance_control, making the domain and action evident. It does not explain the underlying calculation, but the title plus this context sufficiently distinguishes it from other recompute_* 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 compute-mode routing guidance (auto/server/browser, gpu:true delegation) but no explicit statement of when to use this tool over alternative recompute or compute tools. There are no exclusions, alternatives, or workflow context beyond the implied 'compliance_control' category.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_tmpg_fails_chargeTMPG Fails-Charge RecomputeARead-onlyIdempotentInspect
TMPG Fails-Charge Recompute: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-575-tmpg-fails-charge-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, and the description adds substantial behavioral context: deterministic execution, transient processing with no storage/logging/retention, browser delegation for gpu:true nodes, and export of an AP2 artifact with execution_hash for chain provenance. This goes well beyond the annotations and clarifies side effects and privacy properties.
Agents need to know what a tool does to the 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 several information-dense sentences that each add value (purpose, compute modes, privacy, provenance, URL). It is front-loaded with the tool name and core identity, and while it is longer than the minimum, it avoids padding and remains concise relative to the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested objects, no output schema), the description covers compute modes, privacy, and provenance, but it does not explain what a 'fails-charge' is, what the compute response contains, or how the browser delegation URL is used. The lack of an output schema means more return-value explanation was needed, leaving a gap in 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% so baseline is 3. The description adds meaningful semantics beyond the schema by explaining the compute mode behaviors ('auto' default, server-side on Cloudflare Workers, browser delegation URL), noting that parent_hashes are execution_hash values from upstream artifacts, and directing users to the manifest for policy_parameters field names. This enhances 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 it is a deterministic OpenChainGraph compute node for 'TMPG Fails-Charge Recompute' with a compliance_control tag, giving a specific resource and action. However, it does not differentiate from the many other recompute_* sibling tools beyond the name, nor explain what a fails-charge is, so it lacks sibling 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?
The description explains compute modes ('auto', 'server', 'browser') and when each is used, and advises using synthetic/anonymised inputs, which is a usage guideline. However, it provides no guidance on when to choose this tool over alternative recompute or compliance tools, and no explicit when-not-to-use conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recompute_trustee_report_waterfallSecuritization Trustee-Report Waterfall RecomputationARead-onlyIdempotentInspect
Securitization Trustee-Report Waterfall Recomputation: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-568-securitization-trustee-report-recompute.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond the annotations: it is deterministic, explains server-side vs. browser delegation, states that inputs are transient and not stored/logged/retained, and discloses the output as an AP2 artifact with execution_hash. This significantly enriches the safety and execution 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 dense but appropriately sized for the tool's complexity. It front-loads the purpose and then details behavior. However, it repeats 'Deterministic OpenChainGraph compute node' twice and includes a URL that, while useful, is not essential. Minor redundancy prevents a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute node with no output schema, the description covers the core semantics, privacy guarantees, execution modes, and output artifact. It lacks error-handling details and a breakdown of the waterfall algorithm, but given the tool's niche use, this is acceptable. The presence of an output artifact description helps compensate for the absent 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?
With 100% schema coverage, the baseline is 3. The description adds meaningful context by explaining how the 'compute' parameter interacts with policy_parameters (server-side computation for gpu:false nodes) and clarifies the default behavior. This goes beyond simple 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 recomputes a Securitization Trustee-Report Waterfall, with a specific verb ('recompute') and resource. It also identifies it as an OpenChainGraph compute node, distinguishing it from sibling tools like recompute_payment_waterfall or recompute_ccp_default_waterfall.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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, including compute mode behavior and a strict directive to 'Use synthetic or anonymised inputs only.' It does not explicitly name alternatives or provide when-not-to-use scenarios, but the context is sufficient for an informed agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reconcile_aml_lookback_completenessAML Lookback Completeness ReconcilerARead-onlyIdempotentInspect
AML Lookback Completeness Reconciler: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-470-lookback-completeness-reconciler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint. The description adds that inputs are 'processed transiently' and 'not stored, logged, or retained,' and that the tool exports an 'AP2 artifact with execution_hash for chain provenance.' It also notes determinism. This provides meaningful behavioral context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph but front-loads the purpose. It covers compute modes, data handling, privacy caution, and output. While concise, it could be more structured (e.g., bullet points for compute modes) to improve readability. 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 4 parameters, no output schema, and annotations present, the description covers compute behavior, data transience, privacy advice, and output artifact. A link to more detailed documentation is provided. This is sufficient for understanding the tool's role 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% and all parameters are well-described in the schema. The description reiterates the compute parameter but does not add new semantic information beyond the schema. With high schema coverage, the baseline is 3, and no extra parameter-specific details are 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 clearly states it is an 'AML Lookback Completeness Reconciler: OpenChainGraph compute node (compliance_control).' This specifies the domain (AML lookback completeness) and the verb 'reconcile' implies checking completeness. It distinguishes from siblings by being a compute node specific to compliance, with a unique output artifact.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes ('auto', 'browser', gpu:true) and when each applies. It also advises 'Use synthetic or anonymised inputs only,' providing clear usage context. However, it does not explicitly state when not to use this tool versus alternatives, though the specialized name implicitly limits usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reconcile_commission_statementCommission Statement ReconcilerARead-onlyIdempotentInspect
Commission Statement Reconciler: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-264-validate-commission-hierarchy. Output feeds: art-265-amortize-asc606-commissions. Open at: https://ainumbers.co/chaingraph/art-266-reconcile-commission-statement.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description provides significant behavioral context beyond annotations: it states the tool is deterministic, inputs are transient and not stored, and it exports an AP2 artifact with execution hash. It also explains compute modes and the conditions for server vs browser execution. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat lengthy and dense, mixing high-level purpose with implementation details. It front-loads the tool name and role but could be more concise. It includes a link for further information, which is helpful, but the structure could be improved for quick 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?
Given the tool's complexity (4 params, one enum, nested objects, no output schema), the description covers key aspects: purpose, chain position, compute modes, data handling, security, and output artifact. It is fairly complete for making informed usage decisions, though it lacks detail on the exact reconciliation logic or output 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 description coverage is 100%, so the baseline is 3. The description adds some extra context, such as explaining when policy_parameters are computed server-side, but overall it does not significantly deepen understanding beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as a commission statement reconciler and an OpenChainGraph compute node. It specifies its role in a chain of artifacts (consumes from art-264, outputs to art-265), which provides context. However, it does not explicitly distinguish this tool from its many siblings beyond the artifact chain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using synthetic or anonymised inputs, which is a usage guideline. It also implies usage in a specific pipeline by listing upstream and downstream artifacts. However, there is no explicit guidance on when to use this tool versus alternative tools for similar tasks, 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.
reconcile_emir_pairingEMIR Counterparty Pairing ReconcilerARead-onlyIdempotentInspect
EMIR Counterparty Pairing Reconciler: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-157-emir-lifecycle-event-validator. Open at: https://ainumbers.co/chaingraph/art-156-emir-counterparty-pairing-reconciler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable behavioral context: inputs are processed transiently and not stored, logged, or retained; deterministic execution; and output export details. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is lengthy and includes many technical details (e.g., Cloudflare Workers, gpu:false nodes). While informative, it could be more concise and front-loaded with the essential purpose. Several sentences could be simplified without loss of 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?
Given no output schema, the description provides useful output context: exports an AP2 artifact with execution_hash and feeds into another validator tool. It covers compute behavior, input constraints, and output purpose, making it fairly 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?
Input schema coverage is 100%, so the schema already describes each parameter. The description adds minimal extra meaning beyond the schema, such as that policy_parameters are for the decision function and computed server-side. This is mildly helpful but doesn't significantly augment 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 as an 'EMIR Counterparty Pairing Reconciler' and a compute node. It explains it processes inputs transiently and exports an artifact. However, it does not differentiate from sibling tools like 'adjudicate_emir_reconciliation' or 'age_emir_reconciliation_breaks', which have similar 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 explains compute modes and when to use each, and advises using synthetic/anonymised inputs. However, it does not specify when to use this tool over alternatives or provide exclusion criteria. The usage context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reconcile_erc8056_multiplierERC-8056 Multiplier ReconcilerARead-onlyIdempotentInspect
ERC-8056 Multiplier Reconciler: OpenChainGraph compute node (collateral_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-317-rhc-multiplier-reconciler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare safety and idempotency; description adds transient input processing and AP2 artifact export, complementing annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is well-structured with key sections, though somewhat lengthy. All sentences contribute value, but could be slightly more 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?
Covers compute modality, transient processing, and output artifact, but does not explain what the 'multiplier reconciler' actually computes or the return format. Leaves some 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 coverage is 100%, description adds no new parameter meaning beyond what schema already provides. Baseline score 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 identifies it as an OpenChainGraph compute node for ERC-8056 multiplier reconciliation, providing specific verb and resource. However, jargon may obscure purpose for general AI 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?
Explains compute modes and transient behavior, but lacks explicit guidance on when to use this tool versus siblings. Provides context but no exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reconcile_mpp_subscriptionTempo Subscription & Streaming Settlement ReconcilerARead-onlyIdempotentInspect
Tempo Subscription & Streaming Settlement Reconciler: OpenChainGraph compute node (settlement_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-36-tempo-mpp-agent-mandate. Output feeds: cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-106-tempo-subscription-reconciler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant value beyond annotations by explicitly stating that inputs are processed transiently and not stored, logged, or retained, and that only synthetic or anonymised inputs should be used. It also details compute modes (auto, server, browser) and delegation behavior, which are not in annotations. No contradiction with annotations (readOnlyHint, idempotentHint, destructiveHint).
Agents need to know what a tool does to the 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 comprehensive yet efficient. It front-loads the tool's identity and type, followed by key behavioral details, transient processing warning, and workflow context. Every sentence provides unique 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 and absence of an output schema, the description covers inputs, compute modes, transient behavior, artifact export, and upstream/downstream dependencies. It mentions the AP2 artifact but lacks detailed output structure. The warning about synthetic inputs is a valuable addition.
Complex tools with many parameters or behaviors need more documentation. 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 has a description. The overall description adds context about how compute modes relate to GPU and kernel registration, which is not in the schema. This enhances understanding of the parameters without repeating 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 identifies the tool as a reconciler for Tempo subscription and streaming settlements within a ChainGraph compute node. It specifies the tool's role in a larger workflow (consumes upstream artifacts, feeds downstream), distinguishing it effectively from sibling reconcile_* tools by the specific domain (Tempo streaming 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 is provided on when to use this tool versus alternative reconciliation tools from the sibling list. The description focuses on internal behavior (compute modes, transient processing) but does not indicate typical scenarios or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reconcile_report_to_general_ledgerReport-to-General-Ledger ReconciliationBRead-onlyIdempotentInspect
Report-to-General-Ledger Reconciliation: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-526-report-gl-reconciliation.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| as_of | No | |
| accounts | No | |
| currency | No | |
| decision | No | |
| gl_as_of | No | |
| gl_closed | No | |
| rationale | No | |
| account_count | No | |
| cadence_refused | No | |
| rejected_inputs | No | |
| schedule_cadence | No | |
| reporting_cadence | No | |
| gl_closed_declared | No | |
| plugged_account_count | No | |
| breaking_account_count | No | |
| appendix_schedule_source | No | |
| appendix_schedule_version | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Even with annotations already declaring readOnly/idempotent/non-destructive, the description adds significant behavioral detail: deterministic execution, inputs processed transiently and 'not stored, logged, or retained,' client-side vs server-side execution, and export of an AP2 artifact with execution_hash for chain provenance. It also clearly states the synthetic/anonymised input requirement. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is 4 sentences and moderately dense, but it repeats 'OpenChainGraph compute node' twice in the first two sentences, which is redundant. The URL is useful, and the compute/privacy details earn their place, but the opening could be much tighter and purpose-focused.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, privacy, determinism, and output artifact, and an output schema is present, so return-value documentation is not required. However, it lacks any explanation of the actual reconciliation logic, the meaning of 'attestation_mandate', or what should go into policy_parameters—leaving the agent to rely on the schema and title. For a domain-specific reconciliation tool, this is a noticeable 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 baseline is 3, but the description enriches the 'compute' parameter by explaining the auto/server/browser semantics, Cloudflare Workers default, and browser delegation URL behavior. It does not add detail for parent_hashes/parent_tool_ids/policy_parameters beyond schema, but the schema already documents those. Overall it adds value above the structured 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 restates the title as 'Report-to-General-Ledger Reconciliation' and labels it an 'OpenChainGraph compute node (attestation_mandate)', but never states what the tool actually does—there is no explicit verb like 'reconciles' or 'generates an attestation.' The focus is on execution mechanics (compute modes, browser delegation) rather than the reconciliation function, leaving the agent to infer purpose from the name. It does not distinguish itself from sibling reconcile_* or compute_* 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 is provided on when to use this tool versus alternative reconciliation or attestation tools. The only usage-related instruction is 'Use synthetic or anonymised inputs only,' which is a data-privacy constraint, not a use-case selector. The compute-mode explanation gives operational context but not decision guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reconcile_sii_ifrs17SII-IFRS 17 Reconciliation BridgerARead-onlyIdempotentInspect
SII-IFRS 17 Reconciliation Bridger: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-180-solvency2-scr-ratio-calculator. Output feeds: art-182-insurance-reporting-readiness-diagnostic. Open at: https://ainumbers.co/chaingraph/art-181-sii-ifrs17-reconciliation-bridger.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: inputs are transient and not stored, compute modes are explained (server vs browser), and the tool is deterministic and exports an artifact with execution hash. This complements the annotations (readOnlyHint, idempotentHint) by specifying execution environment and data 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?
The description is fairly concise, conveying purpose, compute modes, data handling, and chain context in a single paragraph. It front-loads key information but could be better structured (e.g., separate sections) to improve 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?
The description provides good context about the compute chain, upstream and downstream artifacts, and behavioral aspects. However, it lacks details on the actual reconciliation logic and the output format (no output schema exists), which may leave users uncertain about what the tool returns.
Complex tools with many parameters or behaviors need more documentation. 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 does not add much new parameter information beyond the schema, only noting that policy_parameters are computed server-side when applicable. It lacks details on what specific fields are expected in policy_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 identifies the tool as a 'SII-IFRS 17 Reconciliation Bridger' within an OpenChainGraph compute node context, and differentiates it from sibling tools by its specific focus on SII-IFRS 17 reconciliation and its place in the artifact chain. However, it could be more explicit about the core reconciliation function rather than emphasizing technical compute 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 implies use for SII-IFRS 17 reconciliation in a compliance-mandate chain graph context, and warns to use only synthetic or anonymized inputs. However, it lacks explicit guidance on when to use this tool versus other reconciliation tools, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reconcile_x402_batch_settlementx402 V2 Batch-Settlement ReconcilerARead-onlyIdempotentInspect
x402 V2 Batch-Settlement Reconciler: OpenChainGraph compute node (settlement_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-60-agent-economy-runtime-fit-diagnostic. Output feeds: cry-04-merkle-batch-verifier, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-61-x402-batch-settlement-reconciler.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses deterministic behavior ('Deterministic OpenChainGraph compute node'), transient data handling ('Inputs are processed transiently to compute the response and are not stored, logged, or retained'), and the export of an AP2 artifact for chain provenance. These details go well beyond the annotations (readOnlyHint, idempotentHint, destructiveHint) by explaining the lifecycle and side effects. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with purpose, then explaining compute modes, data handling, artifact export, and links. While informational, it is slightly verbose (e.g., the URL and detailed upstream/downstream artifact IDs) and could be trimmed without losing key details. Overall, every sentence adds value, but minor redundancy exists.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 parameters with nested objects, no output schema), the description provides essential context: transient processing, determinism, compute modes, artifact export, and upstream/downstream relationships. It lacks explicit description of the response format (no output schema) but this is beyond scope per rules. The handling of safety and input guidelines 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 100% description coverage, with each parameter (compute, parent_hashes, parent_tool_ids, policy_parameters) documented in the schema. The description adds context about compute modes and node behavior but does not enrich parameter semantics 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?
The description clearly identifies the tool as an 'x402 V2 Batch-Settlement Reconciler' and an 'OpenChainGraph compute node (settlement_mandate)', explaining its role in processing transient inputs and exporting an AP2 artifact with execution_hash. It distinguishes itself from siblings through references to specific upstream/downstream artifacts (art-60, cry-04, cry-05) and compute mode behavior, though it does not explicitly differentiate 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 explains when to use different compute modes ('auto', 'server', 'browser') based on node type and GPU flag, and advises using synthetic or anonymised inputs. However, it does not provide guidance on when to select this tool over alternative reconciliations or settlement tools, nor does it mention exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recon_matchMatch a camt.053 statement against a counterpart expectation setARead-onlyIdempotentInspect
Parses a camt.053.001 statement (same schema-subset checks as camt053_parse) and a counterpart expectation set (CSV, header EndToEndId,Amount,Currency,Date -- same strict RFC 4180 parser as the WORKBOOK-1 CSV tools), then runs the SAME deterministic match engine as the tools/565 browser workbench: EndToEndId exact match first (statement order), then amount+date tolerance + currency match (first unmatched expectation in CSV order). Returns matches, exceptions (unmatched entries/expectations), and a reconciliation receipt (statement digest, expectation-set digest, match-rule declaration, counts, exception digests, execution_hash) -- byte-identical to the browser tool for the same inputs. Prepare/hash/receipt only; per-exception disposition receipts are the browser workbench's interactive follow-on.
| Name | Required | Description | Default |
|---|---|---|---|
| statement_xml | Yes | camt.053.001 XML statement document text. | |
| amount_tolerance | No | Absolute amount-match tolerance (default 0.01). | |
| expectations_csv | Yes | Counterpart expectations, CSV with header EndToEndId,Amount,Currency,Date. | |
| date_tolerance_days | No | Date-match tolerance in days (default 0). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, openWorldHint=false, idempotentHint=true, destructiveHint=false. The description reinforces idempotency and non-destructiveness by stating it is 'byte-identical' and 'prepare/hash/receipt only'. It adds context about the matching engine being 'deterministic' and the output being a receipt with an execution hash, which goes beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that front-loads the core action. It is somewhat verbose but each sentence adds value (input formats, matching algorithm, output structure). Could be slightly more concise, but 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 complexity of the tool (two inputs, specific matching rules, detailed output), the description covers all necessary aspects: input format constraints, matching order (EndToEndId exact then amount+date tolerance+currency), output components (matches, exceptions, receipt with digest and execution hash). Without an output schema, the description effectively explains return values, 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 coverage is 100% with descriptions for all 4 parameters. The description adds extra context: for expectations_csv it mentions 'same strict RFC 4180 parser as the WORKBOOK-1 CSV tools', and for amount_tolerance it states 'default 0.01' (also in schema description). For statement_xml and date_tolerance_days, the description adds minimal additional value. Since schema already covers basics, the description provides modest extra semantics, warranting a 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 parses two inputs (camt.053 statement and CSV expectations), runs a deterministic match engine, and returns matches, exceptions, and a reconciliation receipt. It distinguishes itself from siblings like 'camt053_parse' (only parses) and 'match_confirmations' (different matching).
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 that this tool is for initial reconciliation (prepare/hash/receipt only) and that per-exception disposition is handled by the browser workbench. It provides context on when to use it but does not explicitly exclude alternatives or 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.
record_fund_positionsRecord Fund PositionsBRead-onlyIdempotentInspect
Record Fund Positions: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-558-record-fund-positions.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations by disclosing deterministic execution, transient input processing with no storage/logging/retention, and the export of an AP2 artifact with execution_hash for provenance. These details add critical behavioral context beyond readOnly/idempotent 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 information-dense but contains redundancy, repeating 'OpenChainGraph compute node' twice. The embedded URL and parenthetical 'attestation_mandate' add some clutter. It is acceptable but not optimally 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 no output schema, the description must explain the result format and content, but it only mentions an AP2 artifact with execution_hash. The core domain semantics of 'recording fund positions' remain underspecified, and the relationship between inputs (parent_hashes, policy_parameters) and the artifact is not clarified.
Complex tools with many parameters or behaviors need more documentation. 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 schema already documents all parameters. The description adds some explanatory context for compute modes, but this largely duplicates the schema's own descriptions. No meaningful extra semantics are provided for parent_hashes or policy_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 names the tool as 'Record Fund Positions' and identifies it as a deterministic OpenChainGraph compute node with an attestation mandate. However, it does not explain what 'recording' actually involves or how it differs from similar sibling tools like record_index_constituents, so it stops short of full 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 offers compute-mode guidance (auto/server/browser) and a warning about using synthetic or anonymised inputs, but it does not indicate when to use this tool versus alternative record or recompute siblings. No explicit when-to-use or exclusion conditions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
record_index_constituentsRecord Index ConstituentsBRead-onlyIdempotentInspect
Record Index Constituents: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-557-record-index-constituents.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnly, idempotent, and non-destructive hints. The description adds valuable context: determinism, server-side vs. browser delegation, transient processing with no storage/logging/retention, and artifact export with execution_hash. This goes beyond the annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but each sentence contributes: compute node identity, default behavior, browser override, gpu delegation, privacy, artifact output, and reference link. It is longer than average but information-dense; front-loading the name and type helps. Slight redundancy in repeating 'OpenChainGraph compute node' twice, 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?
For a tool with no output schema and rich operational details, the description covers compute modes, privacy, artifact generation, and a documentation link. It does not explain what 'index constituents' means or the expected input structure, but the schema covers parameters. The combination of annotations and description is sufficiently complete for an AI agent to invoke the tool safely.
Complex tools with many parameters or behaviors need more documentation. 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 enhances the 'compute' parameter by explaining the auto/server/browser modes and the gpu:true delegation rule, which is more detailed than the schema's enum descriptions. However, it does not add meaningful semantics for parent_hashes or policy_parameters 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 identifies the tool as an 'OpenChainGraph compute node' with an attestation mandate, and mentions exporting an AP2 artifact, but never explicitly states what 'Record Index Constituents' does with the index constituents. The purpose is implied through the name and artifact output, but the description leans heavily on mechanics (compute modes) rather than the core 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. The description discusses compute modes and privacy (use synthetic inputs), but does not mention scenarios, prerequisites, or sibling tool comparisons. The context is operational rather than use-case oriented.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
redline_diffDiff an original vs. proposed revision and mint a diff receiptARead-onlyIdempotentInspect
An agent proposes an edit: diffs original text/markdown against its own revised version and returns the line-level hunks plus a diff receipt (original/revised digests, diff-algorithm declaration, per-hunk digests). Byte-identical to what the tools/552 browser workbench computes for the same inputs -- a human can paste the SAME original/revised text into that workbench, disposition each hunk (accept/reject/comment), and their resulting hunk/disposition receipts will reference this diff_receipt's execution_hash. Pass the whole bundle (this diff_receipt + the human's hunk_receipts + disposition_receipt) to redline_verify to check the interleaved chain end-to-end.
| Name | Required | Description | Default |
|---|---|---|---|
| revised | Yes | Proposed revised text or markdown document. | |
| original | Yes | Original text or markdown document. | |
| generated_at | No | ISO 8601 timestamp (caller-supplied for determinism). Defaults to the call time. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds valuable context: byte-identical behavior with a workbench, deterministic execution_hash, and interleaved receipt chain. This goes beyond what annotations provide, though it omits potential error handling or authorization detail.
Agents need to know what a tool does to the 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 that efficiently conveys key points without redundancy. While not overly verbose, it could be slightly better organized by separating the workflow instructions from the behavior note. Still, 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 has 3 parameters, no output schema, and moderate complexity, the description explains the output format, interop with a workbench, and the receipt chain. It does not address error conditions or detailed field descriptions, but it is sufficient 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 description coverage is 100%, so the schema already documents all parameters. The description does not add new parameter-level semantics but provides overall context. 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 identifies the tool's action (diff), the resources (original vs revised text/markdown), and the output (line-level hunks and diff receipt). It also distinguishes itself from the sibling tool `redline_verify` by explicitly stating the downstream use.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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's purpose for proposing an edit and explains the next step with `redline_verify`. While it does not list explicit exclusion criteria, the context is clear and relevant for an AI agent to understand 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.
redline_verifyVerify a redline receipt bundle against the original + revised textARead-onlyIdempotentInspect
Recomputes a redline review from scratch: the diff (from the pasted original+revised text), the diff_receipt's execution_hash, every hunk_receipt's digest/execution_hash/chain-link (in the order supplied -- entries may be minted by an agent, a human, or both interleaved), the disposition_receipt's execution_hash, and the accepted-text digest. Returns valid:true/false, a per-check breakdown, and broken_hunk (the zero-based index of the first divergence, or null) -- never trusts a bundle claim without checking it against a fresh recomputation.
| Name | Required | Description | Default |
|---|---|---|---|
| bundle | Yes | The redline receipt bundle to verify. | |
| revised | Yes | Revised text or markdown document. | |
| original | Yes | Original text or markdown document. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false, which are consistent with the description. The description adds substantial detail on what gets recomputed and what the output contains, going well beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with the main action front-loaded. It lists specific checks and return values. While somewhat lengthy, every sentence adds useful 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?
Despite no output schema, the description fully explains return values (valid, per-check breakdown, broken_hunk) and the verification process. It covers all necessary aspects for effective tool 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%, so the schema already documents parameters. The description adds value by explaining the bundle structure, order of hunk_receipts, and possibilities for agent/human interleaving, which aids 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 it recomputes a redline review from scratch and lists the components it verifies. It distinguishes itself from the sibling tool 'redline_diff' by focusing on verification of a bundle rather than generating the diff.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 tool verifies a redline receipt bundle and never trusts a bundle claim. It implies when to use (to verify) but does not explicitly state when not to use or mention alternatives. However, 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.
register_mra_remediation_closureConsent-Order / MRA Remediation Closure RegisterCRead-onlyIdempotentInspect
Consent-Order / MRA Remediation Closure Register: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-533-mra-remediation-closure-register.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds valuable behavioral context beyond the annotations: deterministic execution, transient input processing with no storage/logging/retention, browser delegation behavior, and AP2 artifact export with execution_hash. These details complement the readOnly/idempotent hints and there is no contradiction with the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description repeats 'OpenChainGraph compute node' in the first two sentences and restates compute-mode behaviors already present in the schema. It includes boilerplate and a URL while lacking a crisp, single-sentence functional summary, so it is not as concise as it should be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 no output schema, yet the description only vaguely says 'Exports an AP2 artifact with execution_hash for chain provenance' without describing the artifact's structure or meaning. The actual policy_parameters fields are not specified, and the domain semantics of 'MRA remediation closure' and when to use the tool remain unexplained, leaving significant 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 coverage is 100%, so the baseline is 3. The description does not add meaning beyond the schema for any parameter; the compute-mode explanation largely repeats the schema enum descriptions, and policy_parameters still refers the agent to 'the tool's manifest' rather than providing actual field names or 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 restates the title ('Consent-Order / MRA Remediation Closure Register') and labels the tool as an 'OpenChainGraph compute node', but never states what the tool actually does with a specific verb like 'registers' or 'computes an attestation'. It provides generic compute-node mechanics rather than distinguishing the remediation-closure domain purpose from siblings such as track_fatca_crs_ro_remediation_closure.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 choose this tool over alternatives or what conditions warrant calling it. The only operational instruction is 'Use synthetic or anonymised inputs only,' which addresses data handling, not tool selection, and no exclusions or alternative tool names are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
register_source_arrival_freshnessSource Arrival & Freshness RegisterARead-onlyIdempotentInspect
Source Arrival & Freshness Register: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-524-source-arrival-freshness-register.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| reason | No | |
| sources | No | |
| decision | No | |
| source_count | No | |
| execution_state | No | |
| missing_sources | No | |
| late_or_stale_sources | No | |
| unknown_freshness_sources | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial context beyond the readOnly/idempotent annotations: inputs are transient and not stored/logged/retained, it is deterministic, browser delegation behavior for gpu:true nodes, and it exports an AP2 artifact with execution_hash. These details meaningfully inform the agent about side effects and execution characteristics.
Agents need to know what a tool does to the 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 informative but contains redundancy, repeating 'OpenChainGraph compute node' in consecutive sentences. It is front-loaded with the title and key node type, but could be tightened without losing important context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 rich output schema, annotations, and 100% parameter schema coverage, the description covers compute modes, data handling, artifact export, and a reference URL. Still, it leaves the core concept of 'source arrival freshness' somewhat implicit, which 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?
The input schema already covers 100% of parameters with detailed descriptions, including compute modes and parent_hashes semantics. The description restates compute-related behavior but adds no new parameter-level information 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 identifies this as an OpenChainGraph compute node for a 'Source Arrival & Freshness Register' that exports an AP2 artifact with execution_hash. However, it does not explicitly define what the register computes or how it differs from sibling tools like lint_insurance_evidence_freshness.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 concrete compute mode guidance (auto vs browser vs gpu:true delegation) and a privacy constraint ('Use synthetic or anonymised inputs only'). However, it does not state when to prefer this tool over 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.
replay_supervisory_scenarioSupervisory Scenario Replay (DFAST-lite)ARead-onlyIdempotentInspect
Supervisory Scenario Replay (DFAST-lite): OpenChainGraph compute node (capital_assessment). Regulatory deadline: 2027-02-01 (Annual re-pin — Fed publishes new supervisory scenarios each February). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: sim-01-lcr-nsfr-liquidity-stress-test, sim-03-basel-rwa-scenario-modeler. Open at: https://ainumbers.co/chaingraph/art-370-supervisory-scenario-replay.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable context: inputs are transient and not stored, use anonymized inputs, and the tool exports an AP2 artifact with execution_hash. This goes beyond annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose with multiple sentences and some repetition ('OpenChainGraph compute node' appears twice). While it is front-loaded with purpose, it could be more concise by removing redundancy and focusing on essential behavioral guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (nested policy_parameters object, no output schema), the description explains artifact export and output feed names. However, it defers details of policy_parameters to an external manifest, leaving some incompleteness. Output feeds are listed but no format or structure of the artifact is given beyond execution_hash.
Complex tools with many parameters or behaviors need more documentation. 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 parameter meaning beyond what the schema already provides; it reiterates compute mode behavior and mentions data handling, but that is behavioral, not parameter-specific.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 replaying supervisory scenarios (DFAST-lite) as a deterministic OpenChainGraph compute node for capital assessment. It specifies regulatory deadlines, output feeds, and distinguishes itself from siblings by its specific regulatory scope and artifact export.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and a regulatory deadline but does not explicitly state when to use this tool versus other stress-test or scenario-modeling tools. It implicitly suggests usage for Fed supervisory scenarios and specific output feeds, but lacks guidance on alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
replicate_model_outputsModel Replication DiffARead-onlyIdempotentInspect
Model Replication Diff: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-488-model-replication-diff.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds critical behavioral details: inputs are transiently processed, not stored/logged, and requires synthetic/anonymised inputs. Also notes deterministic behavior and outputs execution_hash for provenance. This adds significant value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but could be trimmed. It front-loads the title and key details, but the last sentence about the URL is externally referenced. Some redundancy (e.g., 'Deterministic OpenChainGraph compute node' repeated). Still, 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?
The description covers compute modes, transient processing, and provenance, but lacks details on the output artifact (e.g., structure of AP2 artifact, how execution_hash is used). With no output schema, more guidance on return values would be helpful. Also, 'Model Replication Diff' is not explained in terms of what is diffed.
Complex tools with many parameters or behaviors need more documentation. 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 meaning by explaining the compute parameter's default behavior, interaction with gpu flag, and the purpose of policy_parameters as inputs for the decision function. This clarifies parameter semantics beyond the schema's enum and 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 is a 'Model Replication Diff' OpenChainGraph compute node for compliance control. It specifies the tool computes replication diffs, determines compute location (server vs browser) based on parameters, and exports an artifact. This distinguishes it from sibling tools which are mostly validation/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?
No explicit guidance on when to use this tool vs alternatives. The description explains compute modes but does not state prerequisites, when not to use it, or recommend alternative tools. Sibling tools include many similar validation tools, but no comparison is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_cbam_default_valueCBAM Default-Value ResolverARead-onlyIdempotentInspect
CBAM Default-Value Resolver: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-68-carbon-compliance-fit-diagnostic. Output feeds: art-69-cbam-embedded-emissions-calculator. Open at: https://ainumbers.co/chaingraph/art-70-cbam-default-value-resolver.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it is 'deterministic', inputs are 'processed transiently and not stored, logged, or retained', and it exports an AP2 artifact with 'execution_hash for chain provenance'. All annotations (readOnlyHint, idempotentHint) are consistent and supported.
Agents need to know what a tool does to the 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 long but each sentence adds value: first identifying the tool, then explaining compute modes, transient processing, artifact export, and artifact relationships. It is well-structured and front-loaded with 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?
Despite no output schema, the description explains the tool's role in a chain (upstream/downstream artifacts) and its output as an AP2 artifact with execution_hash. It covers behavior, input constraints, and compute modes adequately for a complex tool with nested objects and enums.
Complex tools with many parameters or behaviors need more documentation. 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 input schema already describes all parameters well. The description reiterates the 'compute' parameter's behavior and adds context about upstream/downstream artifacts, but does not substantially 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?
The description clearly states it is a 'CBAM Default-Value Resolver' and an 'OpenChainGraph compute node (compliance_mandate)', defining its core purpose. However, it does not explicitly distinguish itself from sibling tools, relying on the unique name and context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different 'compute' modes (auto, server, browser) based on node type (gpu:true/false) and kernel registration. It also advises using synthetic or anonymised inputs only. However, it does not compare this tool to alternatives directly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_provenance_ingredient_treeProvenance Ingredient Tree ResolverARead-onlyIdempotentInspect
Provenance Ingredient Tree Resolver: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-124-content-credential-signature-verifier. Open at: https://ainumbers.co/chaingraph/art-125-provenance-ingredient-tree-resolver.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds: 'Inputs are processed transiently and are not stored, logged, or retained.' This discloses transient processing and data non-retention, which goes beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph that front-loads the core purpose and then covers modes, safety, export, and upstream artifacts. It is efficient but could be split into multiple sentences for 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 complexity (compute modes, upstream artifacts, export behavior) and the lack of an output schema, the description does not fully explain what the tool returns (it mentions exporting an AP2 artifact but doesn't describe the response structure). It covers inputs and behavior well but lacks an explicit 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?
The input schema covers all four parameters with descriptions (100% coverage). The description adds context for the compute parameter by explaining what each mode does and when gpu matters, and clarifies that policy_parameters are used for server-side computation. This adds meaningful nuance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a deterministic OpenChainGraph compute node for resolving provenance ingredient trees, with a specific reference to consuming upstream artifacts (art-124). It is distinct from siblings by specifying its role in chain provenance. However, the purpose is buried in technical jargon, and the name itself is self-explanatory.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute modes (auto, server, browser), when server vs browser execution occurs, and that gpu:true always delegates. It also warns to use synthetic/anonymised inputs only, which is a critical usage directive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_recall_traceFSMA 204 Recall Trace Resolver (24-Hour FDA List)ARead-onlyIdempotentInspect
FSMA 204 Recall Trace Resolver (24-Hour FDA List): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-119-traceability-lot-code-linker. Open at: https://ainumbers.co/chaingraph/art-120-recall-trace-resolver.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by detailing compute modes (auto, server, browser), transient input processing, and that inputs are not stored. It also explains the export of an AP2 artifact with execution_hash. This provides useful behavioral context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat verbose, mixing implementation details (Cloudflare Workers, GPU delegation) with purpose. It front-loads the tool's identity but includes redundant phrases like 'OpenChainGraph compute node (compliance_mandate)'. A more concise version could improve 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 complexity (4 params, nested objects, chain context), the description covers the chain relationship (upstream artifact, execution hash export) and provides a link to the OpenChainGraph. It does not explain the output format since no output schema exists, but it's reasonably complete for a chain 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 schema already documents all four parameters. The description restates the compute mode options and references a manifest for policy_parameters fields, but adds minimal semantic value 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 title clearly identifies the tool as an FSMA 204 recall trace resolver. The description states it is a deterministic OpenChainGraph compute node that consumes upstream artifacts from the lot code linker, distinguishing it from upstream tools. However, it does not explicitly differentiate from other resolve tools (like resolve_cbam_default_value) or explain the specific 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?
The description advises using synthetic or anonymised inputs only, which is a usage constraint. It implies sequencing (consumes upstream artifacts) but does not provide explicit when-to-use or when-not-to-use guidance relative to alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rollforward_y14_capital_worksheetFR Y-14 Capital Worksheet Roll-Forward & Cross-CheckARead-onlyIdempotentInspect
FR Y-14 Capital Worksheet Roll-Forward & Cross-Check: OpenChainGraph compute node (regulatory_reporting). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-439-y14-capital-worksheet-rollforward.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), the description discloses that inputs are transient and not stored, it is deterministic, and it exports an AP2 artifact with execution_hash for chain provenance. This is rich behavioral context that helps the agent understand 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 paragraph but packs necessary information: purpose, compute modes, data handling, caution, output, and a URL. It is front-loaded and reasonably concise, though it could benefit from structured bullet points.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute behavior and data privacy well, but lacks an explanation of the actual roll-forward calculation (what does the tool compute?). It mentions the output artifact but not its structure. With no output schema, the agent may need more detail on what the tool returns.
Complex tools with many parameters or behaviors need more documentation. 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 semantics beyond the schema; it only references policy_parameters and compute modes, which are already detailed in the schema. No additional parameter meaning 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 clearly states it is an OpenChainGraph compute node for rolling forward and cross-checking FR Y-14 capital worksheets. The title reinforces this. However, it does not explicitly differentiate from numerous sibling tools, relying on the specific name to distinguish.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. It provides a caution about synthetic/anonymized inputs and explains compute modes, but does not mention any alternative tools or scenarios where this tool is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
roll_up_aml_lookback_dispositionAML Lookback Disposition RollupBRead-onlyIdempotentInspect
AML Lookback Disposition Rollup: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-534-aml-lookback-disposition-rollup.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses significant behavioral traits beyond annotations: deterministic execution, server-side on Cloudflare Workers vs browser delegation, transient non-retention of inputs, and artifact export with execution_hash. This aligns with readOnlyHint/idempotentHint and adds valuable 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 has a redundant opening ('...OpenChainGraph compute node' appears twice) and is fairly dense. It front-loads the purpose but includes operational details that could be streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description fails to describe the actual result content beyond an AP2 artifact with execution_hash. It also leaves policy_parameters vague ('see manifest'), so the overall functionality remains ambiguous. However, the operational and privacy context 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%, and the description repeats the compute parameter explanation already present in the schema without adding new meaning. It does not elaborate on parent_hashes, parent_tool_ids, or policy_parameters 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 identifies the tool as an 'OpenChainGraph compute node (compliance_control)' and mentions 'AML Lookback Disposition Rollup', but it never explicitly states what 'roll up' means in terms of input/output behavior. It's clear that it deals with AML lookback dispositions, but the core function is implied rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 mention of when to prefer this tool over sibling tools like reconcile_aml_lookback_completeness or score_aml_typologies. The only usage guidance is 'Use synthetic or anonymised inputs only', which is a constraint rather than a selection guideline. Compute mode explanations are about parameter choices, not tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
route_einvoice_jurisdiction_mandateE-Invoice Jurisdiction Mandate RouterARead-onlyIdempotentInspect
E-Invoice Jurisdiction Mandate Router: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-294-einvoice-vat-calc-verifier. Output feeds: art-296-einvoice-transmission-receipt-builder. Open at: https://ainumbers.co/chaingraph/art-295-einvoice-jurisdiction-mandate-router.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, and non-destructive. The description adds valuable detail: inputs are processed transiently and not stored, compute modes are explained (server vs. browser delegation), and it exports an execution_hash for provenance. This goes beyond the annotation baseline.
Agents need to know what a tool does to the 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 dense but not overly long, providing key information upfront: name, type, compute modes, data handling, and chain context. It is efficiently structured but could benefit from bullet points or clearer separation of sections.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, chain integration, compute modes) and no output schema, the description covers purpose, parameter behavior, data handling, and chain linkage. The decision function details are omitted but likely in the manifest; overall adequate for agent 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?
With 100% schema coverage, baseline is 3. The description adds meaningful context: explains compute parameter's behavior in detail (auto, server, browser modes), clarifies that parent_hashes and parent_tool_ids are for chaining, and describes policy_parameters as the decision function inputs. This enhances 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 identifies the tool as an 'E-Invoice Jurisdiction Mandate Router' and an 'OpenChainGraph compute node'. It explains its role in processing inputs to compute a response, exporting an AP2 artifact, and its place in the chain with upstream and downstream artifacts. This distinguishes it from sibling route_* tools like route_mica_transitional_deadline, which target different domains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 on compute modes and chain dependencies, and advises using synthetic/anonymised inputs, but does not explicitly state when to use this tool versus other routing tools. The usage context is implied by the domain-specific artifact IDs, but lacks clear when-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
route_mica_transitional_deadlineMiCA Transitional-Deadline RouterARead-onlyIdempotentInspect
MiCA Transitional-Deadline Router: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-98-mica-casp-fit-diagnostic. Output feeds: art-100-mica-casp-authorization-readiness, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-99-mica-transitional-deadline-router.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond annotations by detailing compute modes (auto, server, browser), transient processing with no data retention, synthetic input recommendation, and chain provenance via AP2 artifact. No contradiction with annotations (readOnly=true, idempotent=true) 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 well-structured, starting with purpose, then compute behavior, data handling, and chain integration. Each sentence adds value, though the length could be slightly trimmed without losing 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?
While the description covers technical aspects (compute modes, data handling, provenance), it lacks explanation of the business logic or decision criteria for the transitional deadline routing. The 'policy_parameters' field is left vague, and no output schema exists, leaving the agent without full 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 descriptions for all four parameters. The description adds context for compute modes and a data safety note, but does not significantly enhance understanding of the 'policy_parameters' object 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 identifies it as a MiCA transitional deadline router with deterministic compute node behavior. It specifies the upstream and downstream artifacts, which helps distinguish it from sibling tools. However, it does not fully elaborate on what decision the router makes, leaving some ambiguity about its exact 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 implies usage through pipeline context (upstream/downstream artifacts), but does not explicitly state when to use this tool versus alternatives. No when-not-to-use guidance 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.
route_partner_stablecoin_jurisdictionArc Multi-Currency Corridor Jurisdiction RouterARead-onlyIdempotentInspect
Arc Multi-Currency Corridor Jurisdiction Router: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: 511-multi-currency-pvp-validator. Open at: https://ainumbers.co/chaingraph/art-111-arc-corridor-jurisdiction-router.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: deterministic compute node, compute modes (auto/server/browser), transient processing (no storage), synthetic input requirement, and AP2 artifact export. This aligns with and enriches the readOnlyHint and idempotentHint annotations. Minor gaps: no details on error handling or output format specifics.
Agents need to know what a tool does to the 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 well-structured, starting with purpose, then compute modes, input handling, output, and reference URL. Some sentences are technical but relevant. The URL at the end is marginally useful for a human but not essential for an AI agent. Could be slightly trimmed without losing 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?
Covers compute modes, input handling, output artifact, and downstream feed. However, lacks specifics on the routing logic (jurisdiction criteria) and the full output structure (no output schema). The policy_parameters object is left opaque, and the return value is only hinted at. Adequate but incomplete for a complex routing 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 described. The description reiterates the compute modes and briefly mentions policy_parameters as decision inputs, but adds no new semantic details beyond the schema. 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 it is a router for stablecoin jurisdiction compliance, and the name/title reinforce this. However, the specific routing logic and decision criteria are not explained, relying on the generic 'policy_parameters' object. This leaves some ambiguity compared to a more explicit statement of what jurisdiction routing entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 sibling routing tools (e.g., route_einvoice_jurisdiction_mandate). Usage is implied by the name and title, but no comparisons or exclusions are provided, making it harder for an agent to distinguish between similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
route_vida_oss_registrationViDA OSS Registration RouterARead-onlyIdempotentInspect
ViDA OSS Registration Router: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-162-vida-platform-deemed-supplier-classifier. Output feeds: art-164-vida-compliance-readiness-diagnostic. Open at: https://ainumbers.co/chaingraph/art-163-vida-oss-registration-router.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, non-destructive), the description reveals that inputs are processed transiently and not stored/logged/retained, and explains the compute mode decision logic including browser delegation. This adds valuable behavioral context not available from annotations alone.
Agents need to know what a tool does to the 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 yet comprehensive, starting with the tool's purpose and then methodically covering compute modes, data handling, and artifact relationships. Every sentence adds essential information 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 4 parameters (none required), strong annotations, and no output schema, the description covers the tool's behavior fully: what it does, how compute modes work, data handling policy, upstream/downstream artifact connections, and a reference URL. An agent has sufficient information 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?
The schema covers all 4 parameters (100% coverage), but the description adds meaning by explaining the 'compute' parameter's enum values and their effects, the role of 'parent_hashes' and 'parent_tool_ids' in chain provenance, and the purpose of 'policy_parameters' as inputs to the decision function.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 as a 'ViDA OSS Registration Router' and a 'Deterministic OpenChainGraph compute node'. It explains the core function of routing registration requests with different compute modes, distinguishing it from sibling tools which handle other compliance or data processing 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?
The description provides guidance on when to use this tool (for ViDA OSS Registration) and important context: inputs are transient and not stored, so synthetic or anonymised inputs should be used. It also details the compute modes and their behavior. However, it does not explicitly state when not to use it or list alternative tools for similar tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_401k_adp_acp_test401(k) ADP/ACP Nondiscrimination TesterBRead-onlyIdempotentInspect
401(k) ADP/ACP Nondiscrimination Tester: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-302-401k-adp-acp-test.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds critical details: inputs are processed transiently and not stored, synthetic/anonymised inputs recommended, and deterministic execution. This goes beyond annotations for practical safety.
Agents need to know what a tool does to the 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 5 sentences, concise. Minor redundancy (e.g., 'OpenChainGraph compute node' repeated) could be tightened, but overall efficient and front-loaded with compute mode 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?
Covers compute modes, transient input handling, and output artifact URL. However, it lacks description of the return value (e.g., structure of the AP2 artifact) and does not explain what happens on error. Without output schema, more detail on results 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?
Input schema has 100% coverage with descriptions for all 4 parameters. The description echoes compute modes but adds no semantic value beyond the schema. 'See the tool's manifest for field names' for policy_parameters is vague, but schema coverage baseline is met.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title clearly states it runs a 401(k) ADP/ACP nondiscrimination test, but the description focuses on compute infrastructure rather than the business purpose. It lacks specific details about what the test computes (e.g., ADR, ACR) and how it differs from sibling compliance 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 compute-mode guidance (auto, server, browser) but does not specify when to use this tool versus other compliance or testing tools. Missing context on prerequisites, input requirements, or alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_agent_economy_fitAgent Economy Runtime Fit DiagnosticARead-onlyIdempotentInspect
Agent Economy Runtime Fit Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-61-x402-batch-settlement-reconciler, art-62-ap2-payment-receipt-verifier, art-63-agent-service-metering-modeler, art-02-agent-spend-policy-simulator, mms-03-app-fraud-graph, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-60-agent-economy-runtime-fit-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, indicating a safe, non-destructive operation. The description adds valuable details: inputs are not stored or retained, compute modes are explained, and it exports an AP2 artifact. There is no contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with the core purpose, then explaining compute modes, data handling, outputs, and a link. It is informative but somewhat lengthy due to listing output feeds. Overall, it is 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?
The description covers compute modes, data transience, anonymity requirement, artifact export, and output dependencies. Given no output schema, it sufficiently explains the tool's outputs. However, the core diagnostic function ('fit diagnostic') is not elaborated, leaving some ambiguity about what exactly is being diagnosed.
Complex tools with many parameters or behaviors need more documentation. 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 four parameters. The description adds minimal extra meaning, only reiterating the compute mode default and referencing the manifest for policy_parameters. Baseline 3 is appropriate as the schema already 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 it is a diagnostic for Agent Economy Runtime Fit, specifically an OpenChainGraph compute node with a deterministic guardrail mandate. It explains the compute modes and inputs processing. However, it does not explicitly differentiate from sibling diagnostic tools like run_agentic_readiness_diagnostic or run_arc_fit_diagnostic, which reduces clarity in the sibling context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 privacy guideline ('Use synthetic or anonymised inputs only') but no explicit guidance on when to use this tool versus alternatives. Given numerous sibling diagnostic tools, the lack of usage context or comparison makes it difficult for an AI agent to decide when to invoke this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_agentic_readiness_diagnosticAgentic Payments Readiness DiagnosticARead-onlyIdempotentInspect
Agentic Payments Readiness Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-15-agentic-mandate-sandbox, art-16-google-ap2-mandate-builder, art-17-ap2-mcp-policy-validator, art-18-mcp-developer-readiness-scorecard. Open at: https://ainumbers.co/chaingraph/art-27-agentic-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent annotations, the description discloses determinism ('Deterministic'), transient processing ('Inputs are processed transiently... not stored, logged, or retained'), and output behavior ('Exports an AP2 artifact with execution_hash'). This adds meaningful context about side effects and data safety. It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a dense paragraph but front-loaded with purpose ('Agentic Payments Readiness Diagnostic') followed by execution details. Each sentence adds distinct value (compute modes, data handling, output artifact, output feeds, link). It is appropriately sized for the tool's complexity, though slightly long and could be restructured for 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?
The description is comprehensive: it covers purpose, compute execution modes, data retention policy, output artifact, downstream output feeds, and provides a URL for further context. It lacks explicit prerequisites or error conditions, but for a deterministic read-only diagnostic with good annotations, this 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?
The schema covers all 4 parameters with descriptions (100% coverage). The description adds background on compute modes and transient processing but does not add new meanings to the parameters beyond what the schema already provides. Baseline 3 is appropriate when schema carries the parameter 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 this is an 'Agentic Payments Readiness Diagnostic' and an 'OpenChainGraph compute node (agent_guardrail_mandate)', which identifies the resource and scope. It distinguishes from sibling readiness diagnostics (e.g., run_dora_readiness_diagnostic) by focusing on agentic payments with a guardrail mandate. However, the core action verb is implied rather than explicitly stated as 'assesses readiness'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 when-to-use guidance for compute modes: 'compute:"auto" inputs are computed server-side... compute:"browser" forces client-side execution', and notes that gpu:true nodes always delegate. It also gives a strong input constraint: 'Use synthetic or anonymised inputs only'. It does not explicitly mention alternatives among siblings, but the context is adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_ai_act_highrisk_fitEU AI Act High-Risk Fit & Classification DiagnosticARead-onlyIdempotentInspect
EU AI Act High-Risk Fit & Classification Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-65-ai-conformity-pack-builder, art-66-fria-postmarket-monitoring-builder, art-67-agentic-ai-risk-classifier, art-05-eu-ai-act-credit-scoring-conformity, 452-fair-lending-ai-bias-assessment, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-64-ai-act-highrisk-fit-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint: true and idempotentHint: true. The description adds significant behavioral context: inputs are processed transiently and not stored, logged, or retained; it exports an AP2 artifact with execution_hash for chain provenance; and it lists downstream feed tools. There is no contradiction with annotations. The description goes beyond the annotations by detailing the transient nature and the export format.
Agents need to know what a tool does to the 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 long and includes multiple pieces of information: compute modes, data handling, output, downstream feeds, and a URL. While well-structured, it could be more concise. Not every sentence is essential; for instance, listing all output feeds might be redundant if the information is available elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters including nested objects) and the lack of an output schema, the description covers compute behavior, data handling, and output artifact description. However, it does not explain the return value structure or how the output can be consumed by downstream tools beyond listing their IDs. The description is adequate but leaves some gaps for an agent to fully understand how to use the results.
Complex tools with many parameters or behaviors need more documentation. 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, providing clear meaning for each parameter. The description adds minimal extra semantic value beyond what the schema already conveys. For example, it illustrates compute modes but doesn't explain the 'policy_parameters' object in detail. 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 title clearly states 'EU AI Act High-Risk Fit & Classification Diagnostic', and the description reiterates this. The tool is explicitly for assessing high-risk conformity under the EU AI Act, which distinguishes it from other AI Act tools like 'run_ai_governance_fit' or 'run_agentic_readiness_diagnostic'. However, the description does not elaborate on what 'fit' means exactly, leaving some 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?
The description provides some usage guidance: it advises using synthetic or anonymized inputs only, and explains compute modes (auto, server, browser) and when each applies. However, it does not explicitly state when to choose this tool over alternatives, nor does it provide scenarios where it should not be used. For example, it does not compare with other AI Act diagnostic tools, which are numerous among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_ai_governance_fitAI Governance Readiness DiagnosticARead-onlyIdempotentInspect
AI Governance Readiness Diagnostic: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-175-gpai-code-of-practice-conformance. Open at: https://ainumbers.co/chaingraph/art-176-ai-governance-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds significant context: inputs are processed transiently with no storage/logging, synthetic/anonymised inputs are advised, compute modes and browser delegation are explained, and the AP2 artifact export with execution_hash is mentioned. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph with multiple sentences, each contributing information. It starts with purpose, then covers compute, data handling, artifact export, and dependencies. While dense, it is efficient with no wasted words. Could be better 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 tool's complexity (4 params, nested object, no output schema), the description covers compute modes, data privacy, chaining, upstream dependency, and the type of output (AP2 artifact with execution_hash). However, it leaves the structure of policy_parameters unresolved, referencing the manifest. Overall fairly complete but not exhaustive.
Complex tools with many parameters or behaviors need more documentation. 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 (100% coverage). The description adds moderate value by explaining compute mode behavior in context and the purpose of parent_hashes/parent_tool_ids for chaining. For policy_parameters, it defers to the manifest, which is a minor gap. With full 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 identifies the tool as an 'AI Governance Readiness Diagnostic' and an 'OpenChainGraph compute node'. It distinguishes itself from sibling diagnostics (e.g., run_ai_act_highrisk_fit) by specifying it consumes upstream artifacts from art-175-gpai-code-of-practice-conformance, which is unique to AI governance readiness. The verb 'run' and title 'Diagnostic' align 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?
While the description mentions consuming upstream artifacts from a specific source, it does not explicitly state when to use this tool versus other 'run_*_fit' tools. It provides context but lacks direct guidance on selection criteria 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.
run_arc_fit_diagnosticArc Fit DiagnosticARead-onlyIdempotentInspect
Arc Fit Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-43-arc-cpn-model, art-44-arc-stablefx-model, art-45-arc-xreserve-linter, art-46-arc-paymaster-model, art-47-arc-cctp-transfer. Open at: https://ainumbers.co/chaingraph/art-42-arc-fit-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds deterministic execution, transient processing (not stored/logged/retained), output as AP2 artifact with execution_hash for provenance, and the list of output feeds. This provides meaningful context beyond annotations, such as the compute mode delegation and input privacy requirement.
Agents need to know what a tool does to the 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 yet comprehensive, covering purpose, compute modes, processing behavior, output, and a reference link. Every sentence adds value, with no redundancy or wasted words. It is well-structured and front-loaded with the primary 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 has 4 parameters (one with enum), nested objects, and no output schema, the description adequately explains compute modes, transient processing, and output feeds. It mentions the output artifact and provides a link for more details. It could be more explicit about the return format, but overall, it is complete enough for effective tool 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 description coverage is 100%, so the schema already documents all parameters. The description adds context for the 'compute' parameter by explaining default behavior and delegation, and for 'policy_parameters' by stating it is the input for the decision function. This adds marginal value beyond the schema, aligning with 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?
The description clearly states it is an 'Arc Fit Diagnostic: OpenChainGraph compute node' used for arc fit diagnostics. It specifies it is deterministic and outlines its role in the OpenChainGraph ecosystem. The tool name and description together provide a clear verb (run diagnostic) and resource (arc fit), distinguishing it from numerous sibling tools by its specialized 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 gives explicit guidance on compute modes: 'auto' for server-side, 'browser' for client-side, and notes that gpu:true nodes always delegate. It also warns to use synthetic or anonymised inputs only, indicating data sensitivity. However, it does not explicitly state when NOT to use or contrast with alternatives, but the guidance is clear enough for proper selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_audit_recalc_suiteAudit Recalculation SuiteARead-onlyIdempotentInspect
Audit Recalculation Suite: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-463-recalc-suite.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that inputs are not stored, logged, or retained, that the computation is deterministic, and that the tool exports an AP2 artifact with execution_hash. It also explains compute modes and server vs browser execution. These details add significant value beyond the annotations (readOnlyHint, idempotentHint) without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph with no wasted words. It front-loads the tool's identity and key behavior, then details parameters and constraints. Every sentence contributes useful information, including the URL for further reference.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 optional parameters and no output schema, the description covers purpose, behavior, parameter semantics, and output (AP2 artifact). It lacks details on error handling or size limits, but for a deterministic compute node with annotations, it is mostly complete. Score 4.
Complex tools with many parameters or behaviors need more documentation. 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. However, the description adds meaning to the compute parameter by explaining default behavior and modes, and clarifies that parent_hashes are execution_hash values from upstream artifacts. This goes beyond the schema descriptions, justifying a score of 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 is an 'Audit Recalculation Suite: OpenChainGraph compute node (compliance_control)' that processes inputs transiently and exports an AP2 artifact. The verb 'compute' and resource 'Audit Recalculation Suite' are specific, and the mention of 'Deterministic OpenChainGraph compute node' distinguishes it from other run_ tools like run_agent_economy_fit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 a guideline to 'Use synthetic or anonymised inputs only' but does not provide explicit guidance on when to use this tool versus sibling tools like other run_ or audit_ tools. No context on prerequisites or alternatives is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_call_report_edit_checksCall Report Published Edit-Check GateARead-onlyIdempotentInspect
Call Report Published Edit-Check Gate: OpenChainGraph compute node (regulatory_reporting). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-432-call-report-rc-balance-sheet, art-433-call-report-rcr-capital. Open at: https://ainumbers.co/chaingraph/art-434-call-report-edit-check-gate.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| checks | No | |
| entity_id | No | |
| check_count | No | |
| gate_status | No | |
| report_form | No | |
| coverage_note | No | |
| all_fatal_passed | No | |
| reporting_period | No | |
| fatal_failure_count | No | |
| warning_failure_count | No | |
| rounding_tolerance_usd | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations by disclosing that inputs are processed transiently and not stored/logged/retained, that the node is deterministic, that compute modes determine server-side vs. browser execution, and that gpu:true nodes always delegate to the browser. It also mentions the export of an AP2 artifact with execution_hash for chain provenance. This is rich behavioral context that helps an agent understand side effects and execution semantics.
Agents need to know what a tool does to the 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 information-dense but contains redundancy: 'OpenChainGraph compute node' appears twice, and 'Deterministic OpenChainGraph compute node' repeats the same concept. The technical details about compute modes and data handling are valuable, but the repetition and occasional verbosity prevent it from being a model of 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?
For a complex tool with 4 parameters, nested objects, and an output schema, the description covers a lot: compute behavior, data retention, upstream artifacts, output artifact, and a URL for the chain graph. It does not enumerate policy_parameters (but the schema admits that), and it lacks explicit alternative comparisons. Overall it gives a solid contextual picture for an agent to decide whether and how to invoke 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 already provides 100% coverage with descriptions for each parameter, so the baseline is 3. The description adds value by naming the specific upstream artifact IDs (art-432-call-report-rc-balance-sheet, art-433-call-report-rcr-capital) that should be supplied as parent_hashes, and by mentioning the output artifact (execution_hash). However, it does not enumerate the policy_parameters fields, leaving that to the tool's manifest, so it doesn't fully compensate for that gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title 'Call Report Published Edit-Check Gate' and name 'run_call_report_edit_checks' identify a clear verb+resource action. The description frames it as an OpenChainGraph compute node that consumes specific upstream artifacts and exports an AP2 artifact, which distinguishes it from siblings like run_regrpt_edit_checks. However, the description does not explicitly state 'runs edit checks' or describe the exact validation logic, relying on the name/title for that semantic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 by stating it consumes upstream artifacts (art-432 and art-433) and exports a provenance artifact, suggesting it should be used after those upstream artifacts are available. It also gives a data usage rule ('Use synthetic or anonymised inputs only') and compute mode behavior. However, it does not explicitly say when to use this tool versus alternatives, nor does it provide any exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_carbon_compliance_fitCarbon & Climate Compliance Fit DiagnosticARead-onlyIdempotentInspect
Carbon & Climate Compliance Fit Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-69-cbam-embedded-emissions-calculator, art-72-cbam-precursor-emissions-aggregator, art-73-taxonomy-alignment-scorer, art-75-eugb-factsheet-validator, art-76-climate-scenario-applicator, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-68-carbon-compliance-fit-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds valuable context: inputs are processed transiently and not stored, logged, or retained. It also details artifact export with execution_hash, complementing the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long and contains technical details (Cloudflare Workers, AP2 artifacts). While each sentence adds value, it could be more succinct. Front-loads purpose but buries some key points.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, nested objects, no output schema), the description covers compute modes, transient processing, and artifact export. However, it lacks details on what the diagnostic actually does (how compliance fit is evaluated) and what the output artifact contains beyond execution_hash.
Complex tools with many parameters or behaviors need more documentation. 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 compute modes' behavior, chaining via parent_hashes/parent_tool_ids, and referencing policy_parameters to the manifest. This goes beyond the schema's basic 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 identifies the tool as a carbon/climate compliance fit diagnostic and an OpenChainGraph compute node. It distinguishes from many siblings by listing specific output feeds for chain provenance, though the verb 'run' is generic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using only synthetic or anonymised inputs and explains compute modes (auto/server/browser). However, it 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.
run_chainRun a whole ChainGraph chain in one callARead-onlyIdempotentInspect
Executes every step of a named chain (list names with find_chain / build_workflow_links) and returns ONE composite artifact whose execution_hash anchors all step outputs. compute:"server"/"auto" (default) runs each kernel-backed step server-side, threading step N's execution_hash into step N+1's parent_hashes; compute:"browser" returns a zero-egress delegation bundle (composer URL + ordered deep-links) to run client-side instead — no data leaves the agent. Supply inputs as a map of step tool_id -> policy_parameters (field names per node manifest / build_chaingraph); a step whose kernel needs inputs you omit is reported per-step (status "input_required"), never failed silently. Steps that are browser-only (gpu:true or no registered kernel) are listed for browser delegation. Deterministic, zero PII, zero payload logging. Verify the result with verify_execution_hash. Response includes a ledger_url fragment link for human verification at ledger.ainumbers.co.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Chain name, e.g. "agent-commerce-conformance". List names with find_chain or build_workflow_links. | |
| inputs | No | Map of step tool_id -> policy_parameters overrides. Omitted steps run with {} (kernels needing required fields are reported, not failed silently). | |
| compute | No | "auto"/"server" (default) runs kernel-backed steps server-side; "browser" returns a zero-egress delegation bundle to run client-side. | |
| mandate | No | Optional §22 Work Mandate artifact. When supplied: §16 signature is verified and validity window is checked (unsigned/bad-sig/expired returns a structured error); mandate_hash is folded into every step and the composite receipt as a conditional-presence key, proving which policy governed this run. A no-mandate run is byte-identical to the pre-binding baseline (linear-hash-freeze invariant). | |
| escalation_transport | No | How an OCG §22.8 escalation is delivered. "resolve_handle" (DEFAULT) never blocks: the run COMPLETES with status "escalated" plus the open record, its record_hash and a resolve handle, and a human closes it out of band. "input_required" opts into the SEP-2322 multi-round-trip: the call answers with an InputRequiredResult asking for the §22.8.4 closure, and the retry (echoing requestState) resolves the record inline. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description claims the tool 'executes every step', implying mutation, but annotations indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which contradict the notion of execution causing side effects. Additional context about determinism and zero logging is helpful, but the contradiction lowers the score.
Agents need to know what a tool does to the 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 long but front-loaded with main purpose. Each sentence adds value, though some details could be more concisely expressed. Overall, it is well-structured and informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description adequately explains return type (composite artifact with execution_hash) and edge cases (browser-only steps, mandate validation, escalation behavior). It covers key aspects needed 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 has 100% coverage, so baseline is 3. Description adds significant value beyond schema: explains behavior for omitted inputs, mandate integration, compute modes, and escalation transport options. This extra context warrants a score of 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 'executes' and resource 'chain', and distinguishes itself from siblings like find_chain and build_workflow_links by explaining that run_chain executes the chain while the others list or build 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?
Provides guidance on using different compute modes ('server'/'auto' vs 'browser') and input supply as a map. Mentions verification via verify_execution_hash, but does not explicitly state when not to use this tool or alternative approaches for specific cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_digital_trade_fitDigital Trade Corridor Fit DiagnosticARead-onlyIdempotentInspect
Digital Trade Corridor Fit Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-53-mletr-ebl-conformance-validator, art-54-digital-trade-rules-checker, art-55-trade-document-provenance-verifier, 509-canton-party-allowlist-validator, art-10-amla-transaction-typology-risk-scorer, ml-02-credit-default-risk-scorer, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-52-digital-trade-fit-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, non-destructive), the description adds critical behavioral context: inputs are 'processed transiently... and are not stored, logged, or retained', and the tool is deterministic. It also mentions the artifact export and chain provenance, providing transparency not covered by 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 moderately concise, covering purpose, compute modes, data handling, output, and a link. Every sentence adds value, though it could be slightly streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description adequately explains the output (AP2 artifact with execution_hash, feeds into other tools). It covers compute modes, transient input handling, and usage caveats. Some details about the decision function's parameters are deferred to the manifest, which 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 parameters. The tool description adds value by explaining how the 'policy_parameters' are processed server-side based on compute mode, and clarifies the behavior of enum values ('auto', 'server', 'browser').
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 as a 'Digital Trade Corridor Fit Diagnostic' and that it is an 'OpenChainGraph compute node' with a specific function. It distinguishes itself from numerous sibling tools by specifying its domain (digital trade corridor fit) and deterministic 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 provides guidance on when to use different compute modes ('auto', 'browser', 'server') and explicitly advises to use 'synthetic or anonymised inputs only'. However, it does not directly compare with siblings 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.
run_dora_readiness_diagnosticDORA Readiness DiagnosticARead-onlyIdempotentInspect
DORA Readiness Diagnostic: OpenChainGraph compute node (infrastructure_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-09-dora-incident-classifier, pnr-01-dora-ict-cascade-simulator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-29-dora-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint. Description adds significant extra context: inputs are processed transiently, not stored/logged/retained; deterministic execution; compute modes with server/browser delegation; exports AP2 artifact with execution_hash. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is informative and well-structured, starting with a label, then compute modes, data handling, usage instruction, output, and links. Every sentence adds value, but could be slightly more concise by combining some phrases.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 rich annotations and schema, the description covers all necessary aspects: purpose, compute modes, data handling, output artifact, downstream feeds, and a reference link. No major gaps identified, especially as no output schema is expected.
Complex tools with many parameters or behaviors need more documentation. 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 3. Description adds detail for compute parameter behavior and mentions that policy_parameters are for the decision function, but defers to 'tool's manifest' for field names, leaving some ambiguity. Overall, description complements schema 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?
Description states it is a 'DORA Readiness Diagnostic' as an OpenChainGraph compute node with deterministic behavior and output feeds. However, it does not explicitly define what DORA stands for or what the diagnostic computes, leaving some ambiguity. Distinguishes from sibling tools by naming DORA and specific output feeds.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance: 'Use synthetic or anonymised inputs only.' Explains compute modes (auto/server/browser) and when each applies. Does not explicitly compare to alternatives or state when not to use this tool, but the context of sibling diagnostics implies domain-specific use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_emir_reporting_fitEMIR Reporting Readiness DiagnosticARead-onlyIdempotentInspect
EMIR Reporting Readiness Diagnostic: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-157-emir-lifecycle-event-validator. Open at: https://ainumbers.co/chaingraph/art-158-emir-reporting-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate safe, idempotent, non-destructive behavior. The description adds valuable transparency: inputs are processed transiently and not stored, compute modes are explained (server-side vs browser delegation), and the artifact export with execution_hash is detailed. No contradictions with annotations. The advice to use synthetic inputs further clarifies safety.
Agents need to know what a tool does to the 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 ~100 words, front-loading the title and key points. Every sentence adds value (e.g., compute modes, transient processing, usage advice). However, it could be more structured (e.g., bullet points) for easier scanning, but it remains relatively concise for the information conveyed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, no output schema), the description covers many aspects: compute modes, transient processing, artifact export, upstream dependency, and a URL. However, it does not describe the output content of the diagnostic (what the AP2 artifact contains, e.g., a readiness score or report), which is a notable gap. Missing error behaviors and edge cases also 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?
With 100% schema description coverage, the baseline is 3. The description adds meaningful context beyond the schema by explaining compute mode behavior (gpu:false vs gpu:true, 'auto' default), referencing the tool's manifest for policy_parameters, and linking upstream artifacts. This extra detail helps the agent understand parameter interactions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 'EMIR Reporting Readiness Diagnostic' and explains it is a deterministic OpenChainGraph compute node. It mentions consuming upstream artifacts and exporting an AP2 artifact, which distinguishes it from other similar diagnostics. However, the verb 'run' is generic and the purpose could be more explicitly stated as 'assess' or 'evaluate', so it is not a perfect 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 provides some usage guidance (e.g., use synthetic inputs, compute modes), but it lacks explicit when-to-use and when-not-to-use compared to sibling tools like 'run_agentic_readiness_diagnostic' or 'run_dora_readiness_diagnostic'. No alternatives are named, and prerequisites are not mentioned. This leaves ambiguity for the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_eudr_readiness_fitEUDR Readiness DiagnosticARead-onlyIdempotentInspect
EUDR Readiness Diagnostic: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-169-eudr-supply-chain-traceability-linker. Open at: https://ainumbers.co/chaingraph/art-170-eudr-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations, which already indicate readOnlyHint=true and destructiveHint=false. It adds critical details: determinism, transient processing (no storage/logging/retention), compute mode behavior (server-side vs browser delegation), and chain provenance via execution_hash. It also warns about input sensitivity. All behavioral traits are disclosed without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of about eight sentences, each adding meaningful information. It front-loads the purpose and key characteristics. While efficient, it could be more structured (e.g., bullet points) for readability. No wasted sentences, but it is slightly lengthy for quick 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?
Given the complexity (4 params, nested objects, no output schema), the description covers compute modes, transient processing, chain provenance, and upstream dependency. However, it lacks details on the output semantics (e.g., what the diagnostic returns, pass/fail criteria, structure of the AP2 artifact). The 'policy_parameters' parameter is vague, and the output format is only partially described. The presence of a URL for more info partially compensates.
Complex tools with many parameters or behaviors need more documentation. 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 four parameters. The description reiterates compute modes but adds little beyond the schema, other than mentioning 'policy_parameters' as input to a decision function and referencing a manifest. The description does not significantly enhance understanding of parameters beyond what the schema provides, meeting 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 is an 'EUDR Readiness Diagnostic' and an 'OpenChainGraph compute node (compliance_mandate)', indicating the tool performs a diagnostic for EUDR compliance. The resource and action are specific, but it does not explicitly differentiate from similar diagnostic tools like 'run_dora_readiness_diagnostic' or 'run_agentic_readiness_diagnostic', though the unique resource name helps.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 mentioning it consumes upstream artifacts from a specific tool and advises using synthetic/anonymized inputs. However, it lacks explicit when-to-use or when-not-to-use guidance compared to alternative tools, such as 'check_eudi_readiness' or other diagnostics. The absence of exclusion criteria or clear context limits this dimension.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_illustration_selfsupport_testLife Illustration Self-Support Test (NAIC Model 582)ARead-onlyIdempotentInspect
Life Illustration Self-Support Test (NAIC Model 582): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-254-compute-rbc-action-level. Open at: https://ainumbers.co/chaingraph/art-253-run-illustration-selfsupport-test.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses deterministic behavior, separate compute modes, transient processing (no stored/logged/retained inputs), and output artifact generation. This aligns with and extends annotations (readOnlyHint, idempotentHint). No contradictions found.
Agents need to know what a tool does to the 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 well-structured with an initial purpose statement followed by compute specifics, data handling, input restrictions, and output links. While slightly verbose, each sentence contributes meaningful 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 complexity (nested object, no output schema), the description covers compute modes, data handling, input guidelines, artifact export, and provenance. It compensates for missing output schema by describing the artifact and feeds.
Complex tools with many parameters or behaviors need more documentation. 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 value by explaining compute mode semantics, transient processing, and output artifact details. It also references the tool's manifest for policy_parameters fields, aiding 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 identifies the tool as running the Life Illustration Self-Support Test (NAIC Model 582) on an OpenChainGraph compute node. It distinguishes the tool from siblings by specifying the regulation and artifact output feeds.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes (auto, browser) and advises using synthetic/anonymised inputs. It lacks explicit when-not-to-use statements or alternative tool names, but the specific regulation context implies appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_insurance_reporting_fitInsurance Reporting Readiness DiagnosticARead-onlyIdempotentInspect
Insurance Reporting Readiness Diagnostic: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-181-sii-ifrs17-reconciliation-bridger. Open at: https://ainumbers.co/chaingraph/art-182-insurance-reporting-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it explains determinism, compute mode behavior (auto, server, browser), transient data handling (no storage/logging), and output artifact provenance. All consistent with annotations (readOnlyHint, idempotentHint, destructiveHint).
Agents need to know what a tool does to the 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 moderately long but well-structured, front-loading the purpose and then detailing compute modes, data handling, and output. Each sentence adds relevant information, though some redundancy exists (e.g., 'Deterministic OpenChainGraph compute node' repeated).
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, chaining, compute modes, nested policy_parameters), the description covers purpose, compute behavior, data handling, output artifact, and upstream dependencies. Lacks explicit output schema, but mentions execution_hash and AP2 artifact. Adequate for a diagnostic tool without 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?
With 100% schema coverage, description adds value by explaining compute modes in detail, the role of parent_hashes/parent_tool_ids for chaining, and referencing the tool's manifest for policy_parameters. This enriches understanding 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 identifies the tool as an 'Insurance Reporting Readiness Diagnostic' for OpenChainGraph, specifying it is a compliance_mandate compute node. It distinguishes from siblings by its unique focus and title, providing a specific verb and resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for insurance reporting readiness but does not explicitly state when to use this tool versus other similar diagnostics. It provides input guidelines (use synthetic/anonymised inputs) and mentions upstream artifact consumption, but no exclusion or alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_irrbb_disclosure_fitIRRBB Disclosure Readiness DiagnosticARead-onlyIdempotentInspect
IRRBB Disclosure Readiness Diagnostic: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-187-irrbb-csrbb-scope-checker. Open at: https://ainumbers.co/chaingraph/art-188-irrbb-disclosure-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond the annotations. It states inputs are transiently processed and not stored, logged, or retained. It explains compute modes and delegation behavior (gpu:true always delegates to browser). It also notes the tool is deterministic and exports an AP2 artifact with execution_hash, which aligns with the idempotentHint=true annotation. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately sized but contains some redundancy, notably repeating 'OpenChainGraph compute node'. It front-loads the purpose but includes technical details that could be more efficiently presented. Some sentences could be merged or removed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 the tool's complexity (nested objects, no output schema), the description does not explain what the diagnostic assesses or the structure of the output AP2 artifact beyond an execution_hash. It omits domain context about IRRBB disclosure readiness, making it incomplete for users unfamiliar with the domain. The dependency on upstream artifacts is noted but not elaborated.
Complex tools with many parameters or behaviors need more documentation. 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 parameters are already well-documented. The description adds minimal additional semantics: it explains the compute parameter modes and indicates policy_parameters are inputs to a decision function. This is baseline adequacy 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 identifies the tool as an IRRBB Disclosure Readiness Diagnostic and an OpenChainGraph compute node. It clearly specifies the verb 'run' and resource 'diagnostic', and differentiates by mentioning upstream artifacts from art-187-irrbb-csrbb-scope-checker. However, the technical phrasing ('OpenChainGraph compute node') may obscure the core purpose for some users.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 instructs to use synthetic or anonymised inputs only, providing a privacy guideline. However, it does not specify when to use this tool versus sibling diagnostic tools like 'run_agentic_readiness_diagnostic' or 'run_irrbb_csrbb_scope', nor does it define the context where the diagnostic is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_kernel_vmKernel VMARead-onlyIdempotentInspect
Run a ChainGraph decision kernel's compute(policy_parameters) inside a sandboxed, deterministic, in-browser QuickJS-ng WebAssembly VM (ocg-deterministic-compute@2) and return its output_payload. Demo kernel set only -- for the full catalog, use the worker's compute kernels directly. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| elapsed_ms | No | |
| output_payload | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant context beyond annotations: sandboxed, deterministic, in-browser QuickJS-ng WebAssembly VM, client-side execution, zero PII, zero network, widget rendering. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each conveying essential information: core function, limitation, and security/UI 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?
Covers purpose, limitations, runtime environment, and security. Slight gap in not detailing how the kernel is selected or the output schema, but the latter is provided separately.
Complex tools with many parameters or behaviors need more documentation. 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 coverage, baseline is 3. The description adds minimal extra meaning beyond the schema, only mentioning that inputs are applied via AIN Bridge prefill and referencing the manifest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 runs a ChainGraph decision kernel's compute inside a sandboxed VM and returns the output. It distinguishes itself from siblings like 'run_chain' and explicitly notes it is for demo kernels 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 provides explicit guidance: for the full catalog, use the worker's compute kernels directly. It also implies safe usage (zero PII, zero network) but does not exhaustively list 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.
run_liquidity_stress_testLiquidity Stress Test Simulator (LCR/NSFR)ARead-onlyIdempotentInspect
Liquidity Stress Test Simulator (LCR/NSFR): OpenChainGraph compute node (liquidity_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: rca-02-mica-reserve-stress, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/sim-01-lcr-nsfr-liquidity-stress-test.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses significant behavioral traits beyond the annotations: determinism, transient input processing with no storage/logging/retention, export of AP2 artifact with execution_hash for chain provenance, and specific compute mode behaviors. This adds substantial context beyond the readOnlyHint, idempotentHint, and destructiveHint annotations, fully informing the agent of side effects and constraints.
Agents need to know what a tool does to the 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 well-structured, starting with purpose, then compute modes, input handling, and output. It is concise for the amount of information conveyed, with no redundant sentences. Minor density could be improved, but overall 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?
The description provides thorough context for a complex tool: compute modes, input handling, output provenance, and links to further info. Since there is no output schema, the lack of explicit output format is a minor gap, but the description mentions artifact export and feeds, making it fairly 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?
With 100% schema description coverage, the baseline is 3. The description adds meaningful context, especially for the 'compute' parameter, explaining default behavior and delegation logic for gpu:true. While other parameters (parent_hashes, parent_tool_ids) are not elaborated, the extra detail for compute justifies a score above 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's function: 'Liquidity Stress Test Simulator (LCR/NSFR)' and describes it as an 'OpenChainGraph compute node (liquidity_mandate)'. It specifies the verb (simulate), resource (liquidity stress test), and scope (LCR/NSFR). The detail about compute modes and determinism further clarifies its role, distinguishing it from other run_* 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 usage guidance on compute modes (auto/server/browser) and input constraints ('Use synthetic or anonymised inputs only'). However, it does not explicitly mention when to use this tool over alternatives or provide exclusion criteria. The guidance is implied but lacks comparative context with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_mcp_deployability_diagnosticMCP Server Deployability DiagnosticARead-onlyIdempotentInspect
MCP Server Deployability Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-18-mcp-developer-readiness-scorecard. Open at: https://ainumbers.co/chaingraph/art-28-mcp-server-deployability-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| gaps | No | |
| verdict | No | |
| score_pct | No | |
| all_answered | No | |
| domain_scores | No | |
| is_deployable | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint=true, idempotentHint=true, destructiveHint=false), the description adds valuable behavioral context: inputs are transient and not stored/logged/retained, the tool is deterministic, it exports an AP2 artifact with execution_hash, and it can delegate to browser execution. This goes well beyond the annotations and clarifies privacy and output 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 densely packed with relevant technical details (compute modes, privacy, output destination, URL) in about five sentences. It is longer than a typical two-sentence ideal, but every sentence adds value; the length is justified by the tool's complexity and the need to convey guardrail/privacy 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 tool has an output schema (not shown here but referenced), the description needn't detail return values. It covers the tool's purpose, compute modes, privacy guarantees, chain provenance, and output feed. Notable omissions: no mention of potential error conditions or how the policy_parameters map to the decision function, but these are partially covered by the schema. Overall, the description is nearly complete for a diagnostic compute node.
Complex tools with many parameters or behaviors need more documentation. 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 provides 100% coverage with detailed descriptions for all 4 parameters, including the compute enum and policy_parameters. The description does not add new meaning to the parameters beyond what the schema already states, though it mentions compute behavior in a broader context. Baseline 3 is appropriate since the schema already 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 tool is a 'MCP Server Deployability Diagnostic' and a 'Deterministic OpenChainGraph compute node', with a specific focus on MCP server deployability. It distinguishes itself from sibling diagnostic tools (e.g., run_agentic_readiness_diagnostic, run_dora_readiness_diagnostic) by naming its exact domain and providing unique details about compute modes, output, and privacy.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some usage constraints (e.g., 'Use synthetic or anonymised inputs only') and explains the compute mode semantics (auto/browser, gpu:true delegation), but it does not explicitly state when to prefer this tool over alternative diagnostics or provide when-not-to-use guidance. Usage context is implied through the detailed behavioral description, but explicit alternatives are absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_mica_casp_fitMiCA CASP Fit DiagnosticARead-onlyIdempotentInspect
MiCA CASP Fit Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-99-mica-transitional-deadline-router, art-100-mica-casp-authorization-readiness, art-102-crypto-asset-whitepaper-linter, art-103-mar-crypto-surveillance-readiness, art-104-tfr-travel-rule-batch-validator, art-105-mica-token-service-scoper, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-98-mica-casp-fit-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations (readOnlyHint, idempotentHint, destructiveHint). Describes deterministic behavior, transient processing (inputs not stored/logged/retained), and the export of an AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-organized, starting with purpose and identity, then compute behavior, data handling, output, and links. Each sentence adds value; no redundancy. Front-loaded with essential 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 the complexity (4 params, nested objects, no output schema), the description is thorough. It explains compute modes, data handling, output artifact, and provides a documentation URL. However, it does not detail the structure of policy_parameters or the exact response format, relying on a manifest reference.
Complex tools with many parameters or behaviors need more documentation. 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 by explaining how compute modes interact with gpu:false nodes and registered kernels, and that policy_parameters are computed server-side in certain modes. This adds meaningful operational context 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 is a 'MiCA CASP Fit Diagnostic: OpenChainGraph compute node', identifying it as a specific diagnostic tool for MiCA CASP. The name and title reinforce this. It distinguishes itself from sibling tools like 'run_arc_fit_diagnostic' by specifying the regulatory context and compute node architecture.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute modes ('auto', 'server', 'browser') and when each applies, including the distinction between gpu:false and gpu:true nodes. Also warns to use 'synthetic or anonymised inputs only'. However, it does not explicitly state when to avoid this tool in favor of alternatives, though the specific domain narrows usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_model_test_batteryModel Test BatteryARead-onlyIdempotentInspect
Model Test Battery: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-489-model-test-battery.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, non-destructive. Description adds valuable context: transient input processing (no storage/logging/retention), compute mode delegation rules (server vs browser), and export of AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single paragraph packs necessary detail: compute modes, transient processing, security note, export, link. Slight repetition of 'Deterministic OpenChainGraph compute node' but overall efficient. Well 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?
Covers compute modes, transient processing, export artifact, and provides a link for more info. Missing details on policy_parameters structure and concrete model testing behavior, but annotations and link compensate. Good for a tool with no 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 covers 100% of parameters with descriptions. Description enhances the 'compute' parameter by explaining default behavior and conditions for each enum value. For 'policy_parameters', it directs to manifest. Adds meaningful detail despite schema already rich.
Input schemas describe structure but not intent. Descriptions should explain 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 is a 'Model Test Battery: OpenChainGraph compute node (compliance_control)' and explains its deterministic, transient processing. While it details the compute modes and export, it does not explicitly differentiate from sibling run_* tools, limiting 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 vs alternatives. Only a constraint to use synthetic or anonymised inputs, but no context on scenarios or exclusions. Lacks explicit use-case orientation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_pqc_timeline_fitPQC Timeline & Migration Fit DiagnosticARead-onlyIdempotentInspect
PQC Timeline & Migration Fit Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-86-tls-pki-migration-planner, art-87-iso20022-pqc-readiness-checker, art-88-fido-pqc-conformance-checker, art-89-blockchain-quantum-risk-classifier, 499-crypto-asset-inventory-classifier, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-85-pqc-timeline-fit-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint, idempotentHint true, and destructiveHint false. The description adds significant context: inputs are transiently processed and not stored, synthetic/anonymized inputs required, and deterministic compute. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a dense single paragraph with critical details but lacks formatting. It includes a URL and long list of output feeds, which impacts conciseness. However, it is 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?
No output schema, but the description specifies the artifact export and lists output feeds. Given good annotations and 100% schema coverage, it provides sufficient context for agent invocation, though a return value description 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?
Schema coverage is 100%, so baseline is 3. The description adds value by explaining default compute behavior and the role of 'policy_parameters' and chain provenance parameters, going beyond 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 identifies the tool as 'PQC Timeline & Migration Fit Diagnostic' and specifies its role as an 'OpenChainGraph compute node'. It effectively distinguishes its purpose through unique output feed references and compute mode behavior, providing a specific verb+resource combination.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute mode options and mentions deterministic behavior, but it does not explicitly state when to use this tool versus siblings or provide exclusions. The extensive sibling list makes guidance useful, but it is only implied through context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_rate_shock_ladderRate Shock Ladder ReplayARead-onlyIdempotentInspect
Rate Shock Ladder Replay: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-369-run-rate-shock-ladder.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds valuable behavior context: 'Inputs are processed transiently and are not stored, logged, or retained' and explains compute modes, including delegation to browser. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise paragraph with no wasted sentences. It front-loads the purpose and then provides supporting details. Minor improvement could be grouping compute mode details more structurally.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description mentions exporting an 'AP2 artifact with execution_hash for chain provenance' but lacks details on the artifact's structure or additional return values. For a tool with 4 parameters and nested objects, the description covers the compute behavior well but leaves output expectations somewhat vague.
Complex tools with many parameters or behaviors need more documentation. 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 meaningful context beyond schema, especially for the 'compute' parameter (explaining enum values and behavior) and for the overall input processing (transient, no retention). For nested 'policy_parameters', it refers to the manifest for field names, which is acceptable given schema clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'Rate Shock Ladder Replay: OpenChainGraph compute node' with a specific verb ('replay') and resource ('rate shock ladder'). It explains core functionality and compute modes, though it does not explicitly distinguish it from sibling tools like 'run_chain' or 'run_kernel_vm'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some usage guidance, such as 'Use synthetic or anonymised inputs only' and explains compute mode selection. However, it lacks explicit when-to-use or when-not-to-use guidance compared to similar tools, and no alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_regrpt_edit_checksPublished Regulatory Report Edit-Check RunnerARead-onlyIdempotentInspect
Published Regulatory Report Edit-Check Runner: OpenChainGraph compute node (regulatory_reporting). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-484-regrpt-editcheck-runner.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds valuable behavioral context beyond annotations, including that inputs are processed transiently and not stored, and that the tool is deterministic. It also details compute modes and browser delegation, which annotations do not cover.
Agents need to know what a tool does to the 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 somewhat verbose, with redundancy like 'OpenChainGraph compute node' repeated, and includes a URL. It could be more concise while retaining 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 no output schema, the description does a reasonable job explaining compute modes, data handling, and the output artifact. However, it lacks specifics about the edit checks themselves and the output format, relying on external references.
Complex tools with many parameters or behaviors need more documentation. 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. The description reinforces compute mode behavior but does not significantly add new semantics 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 identifies the tool as a 'Published Regulatory Report Edit-Check Runner' and an 'OpenChainGraph compute node', specifying the resource and action. However, it does not explicitly differentiate from siblings like 'run_call_report_edit_checks', which is a similar tool for call reports.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage guidelines such as compute modes and the instruction to 'Use synthetic or anonymised inputs only', but it lacks explicit guidance on when to use this tool versus alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_robinhood_chain_fit_diagnosticRobinhood Chain Fit DiagnosticARead-onlyIdempotentInspect
Robinhood Chain Fit Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-317-rhc-multiplier-reconciler, art-318-rhc-regime-mapper, art-319-rhc-valuation-linter, art-320-rhc-collateral-haircut, art-321-rhc-bold-finality-classifier, art-322-rhc-ap-redemption-stress. Open at: https://ainumbers.co/chaingraph/art-323-rhc-fit-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and non-destructive nature. The description adds deterministic execution, transient processing without storage or logging, and the compute mode behavior (browser delegation, server-side execution). This enriches the agent's understanding beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that efficiently conveys purpose, compute behavior, privacy instructions, and output links. It is front-loaded with the key identity and deterministic nature. Minor issue: the sentence about output feeds could be more structured, but overall it is concise and well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, transient inputs, and output artifact type with feeds and a URL. However, it lacks detail on the expected output structure (beyond 'AP2 artifact with execution_hash'), and the 'policy_parameters' reference to a manifest may be inaccessible to the agent. Given the complexity and absence of an output schema, the description is adequate 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 input schema has 100% description coverage, so parameters are already well-documented. The description adds a bit of context for 'compute' (reiterating modes) and for 'policy_parameters' (referencing a manifest), but does not provide new semantic depth 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 it is a 'Robinhood Chain Fit Diagnostic' and an 'OpenChainGraph compute node' with a deterministic behavior. It explains its role in computing a diagnostic with output feeds. However, it does not explicitly contrast with sibling diagnostic tools, relying on the specific name to 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?
The description provides usage guidance on compute modes and recommends using only synthetic or anonymised inputs. However, it does not state when to use this tool versus other diagnostic tools in the sibling list, nor does it mention prerequisites 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.
run_sanctions_screening_fitSanctions & Export-Control Screening Fit DiagnosticARead-onlyIdempotentInspect
Sanctions & Export-Control Screening Fit Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-91-ownership-50pct-aggregator, art-92-screening-list-coverage-checker, art-93-fuzzy-match-calibration-scorer, art-94-eccn-dual-use-classifier, art-95-circumvention-diligence-assessor, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-90-sanctions-screening-fit-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds valuable behavioral context: inputs are 'processed transiently and are not stored, logged, or retained', compute modes are explained in detail (server-side vs browser, gpu:true vs false), and it notes that it is 'Deterministic'. This goes well beyond the annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is fairly concise for its content, starting with a clear title and type. It then explains compute modes, data handling, output artifact, and downstream feeds. It ends with a link. While there is some repetition (e.g., 'OpenChainGraph compute node' appears twice), the overall structure is logical 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 complexity (4 parameters, nested objects, no output schema), the description lacks information about what the diagnostic output contains. It mentions exporting an 'AP2 artifact with execution_hash' and lists output feeds, but does not describe the actual result (e.g., a score, pass/fail, or data structure). This gap is significant for an agent invoking the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 explains the 'compute' parameter in detail (auto/server/browser) but the schema already provides that. For 'parent_hashes' and 'parent_tool_ids', the description adds little beyond the schema. For 'policy_parameters', it directs to the manifest, which is not part of the definition. Thus, the description adds marginal value over 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 it is a 'Sanctions & Export-Control Screening Fit Diagnostic' and an 'OpenChainGraph compute node'. It specifies the verb 'run' and the resource 'screening fit diagnostic'. It distinguishes from siblings like 'score_sanctions_screening_quality' and 'screen_sanctions_private' by focusing on 'fit' assessment and listing output feeds that connect to other tools in the pipeline.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some usage constraints ('Use synthetic or anonymised inputs only') but does not explicitly guide when to use this tool versus alternatives such as 'score_sanctions_screening_quality' or 'check_screening_list_coverage'. The context of output feeds implies it is part of a larger workflow, but no direct comparison with siblings is made.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_section125_ndt§125 Cafeteria Plan Nondiscrimination TesterARead-onlyIdempotentInspect
§125 Cafeteria Plan Nondiscrimination Tester: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-301-section125-ndt.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable behavioral details: deterministic execution, transient processing (not stored, logged, or retained), and where computation occurs (Cloudflare Workers or browser). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is just a few sentences, front-loaded with the purpose, and every sentence adds necessary context (compute modes, privacy, export, URL). 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 (4 params, nested objects, no output schema), the description covers compute behavior, privacy, and export. It lacks details on the specific decision function but the tool name implies the purpose. The URL provides additional reference. Sufficient for an AI 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 baseline is 3. The description adds minimal semantic value beyond the schema: it explains the compute mode briefly and mentions that policy_parameters are documented in the tool's manifest. No contradiction or significant enrichment.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a '§125 Cafeteria Plan Nondiscrimination Tester' and explains it as a 'deterministic OpenChainGraph compute node' for compliance. The verb 'test' and resource 'nondiscrimination' are specific, and the tool is clearly distinguished from its diverse set of 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 provides explicit guidance on compute modes (auto, server, browser) and warns to use synthetic or anonymized inputs only. While it does not directly compare to alternatives, the specific context of execution and privacy is clearly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_slate_reporting_fitSLATE Reporting Readiness DiagnosticARead-onlyIdempotentInspect
SLATE Reporting Readiness Diagnostic: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-544-slate-report-validator. Open at: https://ainumbers.co/chaingraph/art-545-slate-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations by disclosing key behavioral traits: inputs are processed transiently and not stored/logged/retained, the tool is deterministic, compute routing behavior (server-side vs browser delegation) for different gpu:false/gpu:true nodes, and the export of an AP2 artifact with execution_hash for provenance. It also warns to use synthetic data only and references the upstream artifact dependency. This richly informs the agent about privacy, execution, and output behavior without contradicting the readOnlyHint and idempotentHint 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 information-dense but somewhat verbose and repetitive. For example, 'OpenChainGraph compute node' appears twice in the first two sentences, and the compute-mode explanation is lengthy. While it is structured with clear sentences and front-loaded with the title, the redundancy and excessive detail on internal routing make it less concise than ideal. Every sentence earns its place, but some could be merged or trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 an output schema, the description covers the essential outputs: it mentions the AP2 artifact with execution_hash for provenance and the browser delegation URL when compute is 'browser'. It also describes consumption of upstream artifacts, which is critical for the compute graph context. The tool has four parameters including a nested object, and the description gives sufficient context about how parameters relate to the overall execution, though the exact readiness result structure is not detailed.
Complex tools with many parameters or behaviors need more documentation. 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 100% description coverage for all four parameters, including the compute enum, parent_hashes, parent_tool_ids, and policy_parameters. The description adds marginal value by clarifying the default 'auto' compute behavior and the browser delegation URL, but it does not substantially enrich the parameter meanings beyond what the schema already states. The mention of 'See the tool's manifest for field names' defers detail rather than adding it, 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 identifies the tool as a 'SLATE Reporting Readiness Diagnostic' and an 'OpenChainGraph compute node', which conveys its function as a readiness assessment for SLATE reporting. It distinguishes itself from the many other run_*_fit diagnostics by explicitly naming the SLATE Reporting domain and referencing the compliance mandate. However, it lacks a direct verb+action phrasing (e.g., 'Runs the SLATE Reporting Readiness Diagnostic'), relying more on the noun phrase and title, 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?
The description provides some usage context: it explains when to use compute modes ('auto' vs 'browser'), notes that gpu:true nodes always delegate, and instructs users to use synthetic or anonymised inputs only. It also mentions a dependency on upstream artifacts from art-544-slate-report-validator. However, it does not explicitly state when to choose this tool over related diagnostics (e.g., run_emir_reporting_fit) or provide any exclusion criteria, leaving the usage guidance partially implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_t1_readiness_diagnosticT+1 Settlement Readiness DiagnosticARead-onlyIdempotentInspect
T+1 Settlement Readiness Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-78-csdr-penalty-calculator, art-79-settlement-fail-predictor, art-80-ssi-conformance-checker, art-81-allocation-affirmation-conformance, art-82-securities-settlement-message-linter, art-83-buy-in-exposure-modeler, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-77-t1-settlement-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate idempotentHint=true, readOnlyHint=true, and destructiveHint=false. The description adds key behavioral details: inputs are 'processed transiently ... not stored, logged, or retained', compute mode logic, and deterministic execution. This enriches the agent's understanding beyond annotations. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded, starting with the tool's essence. It condenses compute modes, data handling, output feeds, and a reference link into a single paragraph. While effective, a more structured format (e.g., bullet points) could improve scannability, but it avoids 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?
Given four parameters, no output schema, and rich annotations, the description covers: purpose, compute behavior, data retention, output artifact nature, and downstream consumers. It does not detail return format (since no output schema) but the mention of AP2 artifact and execution_hash suffices. The link provides additional reference.
Complex tools with many parameters or behaviors need more documentation. 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 meaningful context: it clarifies the effect of 'gpu:true' on compute delegation and references a 'tool's manifest' for policy_parameters fields. This provides more nuance than the schema alone, justifying above 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 it is a 'T+1 Settlement Readiness Diagnostic' as an 'OpenChainGraph compute node'. It distinguishes itself from sibling diagnostics (e.g., run_dora_readiness_diagnostic) by specifying the domain (T+1 settlement) and listing specific output artifact IDs, making its purpose unique and actionable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context: it explains compute modes ('auto', 'browser', 'server') and when each applies, and explicitly instructs to 'Use synthetic or anonymised inputs only.' However, it does not compare against alternatives or explicitly state when not to use this tool versus other diagnostics, which would elevate the score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_tempo_fit_diagnosticTempo Fit DiagnosticARead-onlyIdempotentInspect
Tempo Fit Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-35-tempo-payments-business-case, art-36-tempo-mpp-agent-mandate, art-37-tempo-stablecoin-issuance, art-40-tempo-agentic-checkout. Open at: https://ainumbers.co/chaingraph/art-34-tempo-fit-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations, such as 'Inputs are processed transiently and are not stored, logged, or retained' and 'Deterministic OpenChainGraph compute node', which aligns with readOnlyHint and idempotentHint. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph but packs essential information efficiently. It could be improved with structuring (e.g., bullet points for compute modes), but it remains concise and front-loads 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?
For a complex tool without output schema, the description covers the main aspects: purpose, compute modes, transient processing, output artifact details, and a link. It provides enough context for an agent to use it correctly, though return format could be clearer.
Complex tools with many parameters or behaviors need more documentation. 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 the description adds little beyond what the schema already provides. The description mentions compute modes and policy_parameters but repeats schema details. 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 a 'Tempo Fit Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate)', providing a specific verb and resource. It distinguishes from sibling tools by mentioning the specific artifact outputs and the context of agent_guardrail_mandate, which is unique among the many 'run_*_fit' 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 explains when to use the tool (for diagnostic purposes) and provides guidance on compute modes ('auto', 'server', 'browser') and warns to use synthetic or anonymised inputs. It does not explicitly state when not to use it or compare to alternatives, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_tokenized_settlement_fitWholesale Tokenized Settlement Fit DiagnosticBRead-onlyIdempotentInspect
Wholesale Tokenized Settlement Fit Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-57-deposit-token-compliance-validator, art-58-cross-network-settlement-validator, art-59-settlement-asset-finality-classifier, 505-tokenized-collateral-eligibility-checker, 509-canton-party-allowlist-validator, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-56-tokenized-settlement-fit-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral detail beyond annotations: deterministic execution, compute modes, transient input processing, no data retention, and artifact export. This is consistent with the idempotent and read-only 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 verbose and dense with technical jargon (e.g., Cloudflare Workers, AP2 artifact). It front-loads a colon after the title but includes unnecessary details that could be summarized more 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?
Without an output schema, the description fails to specify the artifact structure or return format. The policy_parameters nested object is deferred to a manifest, leaving gaps. The list of output feeds hints at usage but does not fully explain the tool's 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?
All parameters have schema descriptions (100% coverage). The description adds context for compute modes and chaining, but the policy_parameters object is left underspecified, referencing an external manifest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and name clearly indicate a 'Wholesale Tokenized Settlement Fit Diagnostic', and the description provides technical details about compute modes and output feeds. However, the core decision logic or what constitutes 'fit' is not explicitly stated, making it slightly vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 the many sibling tools (e.g., run_agent_economy_fit, run_arc_fit_diagnostic). It only lists downstream consumers, not usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_treasury_clearing_fitTreasury Clearing Fit DiagnosticARead-onlyIdempotentInspect
Treasury Clearing Fit Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Regulatory deadline: 2026-12-31 (SEC UST clearing: cash Dec 31 2026, repo Jun 30 2027. D0 root of all treasury-clearing chains.). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-49-clearing-access-model-selector, art-50-ficc-margin-netting-estimator. Open at: https://ainumbers.co/chaingraph/art-48-treasury-clearing-fit-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true. The description adds valuable context: inputs are processed transiently, not stored/logged/retained, use synthetic inputs, and export an AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively long but each part adds value: purpose, regulatory deadline, behavior, compute modes, data handling, output. Slightly dense but well-structured with front-loaded 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 no output schema, the description covers return artifact, execution_hash, and output feeds. Addresses compute modes, data transiency, and input constraints. Minor gap: exact response format not detailed, but sufficient for a diagnostic 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 clarifies compute mode behavior and policy_parameters purpose but refers to 'manifest for field names' without adding specific meaning beyond 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 is a 'Treasury Clearing Fit Diagnostic' and an 'OpenChainGraph compute node (agent_guardrail_mandate)'. It specifies the regulatory deadline and deterministic nature, distinguishing it from sibling diagnostic tools like 'run_arc_fit_diagnostic' or 'run_emir_reporting_fit' by domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. It implies usage via domain (treasury clearing) but lacks when/when-not instructions or direct comparisons to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_umr_aana_readinessUMR / AANA Readiness DiagnosticARead-onlyIdempotentInspect
UMR / AANA Readiness Diagnostic: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-407-umr-aana-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations, including determinism, transient input processing (not stored/logged/retained), compute mode behavior, and export of an AP2 artifact with execution_hash. Annotations already cover readOnly, idempotent, and non-destructive; description aligns and enriches.
Agents need to know what a tool does to the 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 with front-loaded name and node type. It covers key aspects without excessive verbosity, though some repetition ('Deterministic OpenChainGraph compute node' twice) could be trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 technical behavior is covered, the description omits what the readiness diagnostic actually returns. No output schema exists, so the description should explain the result (e.g., output format, pass/fail). It only mentions an execution_hash. Guidance on use vs. many sibling diagnostics is also missing.
Complex tools with many parameters or behaviors need more documentation. 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 marginal value. It explains compute mode behavior beyond schema enum descriptions and policy_parameters context (server-side computation), but leaves policy_parameters fields to an external manifest, not fully specifying them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'UMR / AANA Readiness Diagnostic' and identifies it as a 'Deterministic OpenChainGraph compute node'. The verb is implied but clear: it runs a diagnostic for UMR/AANA, distinguishing it from other readiness diagnostic tools by domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 other readiness diagnostic tools (e.g., run_dora_readiness_diagnostic). It only provides a constraint ('Use synthetic or anonymised inputs only') but no context on appropriate use cases or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_vida_readiness_diagnosticViDA Compliance Readiness DiagnosticARead-onlyIdempotentInspect
ViDA Compliance Readiness Diagnostic: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-163-vida-oss-registration-router. Open at: https://ainumbers.co/chaingraph/art-164-vida-compliance-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond annotations: deterministic execution, transient input processing (not stored, logged, or retained), compute mode behavior (server vs. browser delegation), and artifact export with execution_hash for chain provenance. This fully aligns with and enriches the readOnly and idempotent 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 a single, dense paragraph that front-loads the core purpose and then details compute modes and data handling. It is informative without being verbose, though a slight restructuring into two sentences could improve 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?
For a diagnostic tool with 4 parameters, no output schema, and annotations covering safety, the description sufficiently covers purpose, compute modes, data handling, artifact export, and upstream dependency. Minor gaps include the exact structure of the returned AP2 artifact and detailed field names for policy_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?
The input schema covers 100% of parameters, but the description adds meaningful context: it explains the compute modes for the 'compute' enum, the role of parent_hashes/parent_tool_ids for chaining provenance, and the purpose of policy_parameters. However, policy_parameters lacks detailed field names, referencing 'See the tool's manifest' instead.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 as a 'ViDA Compliance Readiness Diagnostic' within the OpenChainGraph framework. It distinguishes from sibling tools by specifically naming ViDA compliance and referencing a unique upstream artifact ('art-163-vida-oss-registration-router'). The verb+resource combination is specific and 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 context on when to use this tool for ViDA compliance and includes specific guidelines like 'Use synthetic or anonymised inputs only.' It explains compute modes but does not explicitly exclude alternative readiness diagnostics (e.g., run_agentic_readiness_diagnostic), though the naming and upstream dependency imply its scope.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_vop_readiness_diagnosticVoP Readiness DiagnosticARead-onlyIdempotentInspect
VoP Readiness Diagnostic: OpenChainGraph compute node (vop_readiness_attestation). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-548-vop-readiness-diagnostic.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite the annotations already indicating read-only, idempotent, and non-destructive behavior, the description adds significant transparency: it explains compute modes (server/browser delegation), deterministic execution, transient input processing with no retention, and the AP2 artifact with execution_hash for provenance. This goes well beyond the annotation fields.
Agents need to know what a tool does to the 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 dense but information-rich, covering purpose, compute behavior, data handling, output artifact, and a reference URL. It is somewhat long for a tool description, but every sentence adds unique context, and it is well-structured with a clear lead sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description adequately explains the output (AP2 artifact with execution_hash) and provides a URL for more details. It covers compute modes, input constraints, and data retention policy, making it sufficiently complete despite not detailing the readiness assessment's exact content.
Complex tools with many parameters or behaviors need more documentation. 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 provides 100% coverage with detailed descriptions for all four parameters (compute, parent_hashes, parent_tool_ids, policy_parameters), so the schema does the heavy lifting. The description adds little beyond referencing the compute modes and noting that policy_parameters may be computed server-side, which 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 identifies the tool as a VoP Readiness Diagnostic compute node for OpenChainGraph, producing a vop_readiness_attestation. It distinguishes itself from the many sibling readiness diagnostics by explicitly naming VoP and its deterministic compute-node nature, though it doesn't elaborate on what 'readiness' entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 prefer this tool over sibling readiness diagnostics (e.g., run_agentic_readiness_diagnostic, run_dora_readiness_diagnostic). It does include a safety directive to use synthetic or anonymised inputs only, but this is a data-handling constraint rather than tool-selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scan_tool_poisoningMCP Tool-Poisoning & Prompt-Injection Manifest ScannerARead-onlyIdempotentInspect
Scan an MCP tool description/manifest for tool-poisoning and prompt-injection smells; returns a risk score and flagged patterns. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| risk | No | |
| findings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, indicating a safe read operation. The description adds valuable behavioral context: the tool runs client-side, zero PII, zero network, and renders an interactive widget. This goes beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long. The first sentence states the core purpose and return value. The second sentence adds important context about widget rendering, client-side execution, and data privacy. 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 complexity (security scanning, widget rendering), the presence of an output schema, and full schema coverage, the description provides key behavioral details (client-side, zero PII, zero network) but does not explain the risk score scale or specific flagged patterns. However, these are likely covered by the 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?
The schema has 100% coverage for the only parameter 'inputs'. The description adds meaning by explaining that inputs are 'a map of tool input element IDs to values' and that they are 'applied via AIN Bridge prefill'. This clarifies the parameter's role beyond the schema's type 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 uses the specific verb 'Scan' and identifies the resource as 'MCP tool description/manifest'. It clearly states the tool detects 'tool-poisoning and prompt-injection smells' and returns a risk score and flagged patterns. This distinguishes it from siblings like 'lint_mcp_tool_definition' (structural linting) and 'find_tool' (search).
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 by stating the tool scans for security smells, but it does not provide explicit guidance on when to use it versus alternative tools, nor does it mention scenarios where the tool should not be used. The usage context is implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scope_mica_token_and_serviceMiCA Token & Service ScoperARead-onlyIdempotentInspect
MiCA Token & Service Scoper: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-98-mica-casp-fit-diagnostic. Output feeds: cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-105-mica-token-service-scoper.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds that the node is deterministic, inputs are processed transiently and not stored/logged/retained, and that it exports an AP2 artifact with execution_hash. This aligns with and extends the annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is information-dense but well-structured. It opens with a clear purpose, then details compute modes, data handling, and artifact linkage. While every sentence serves a purpose, some redundancy (e.g., mentioning OpenChainGraph twice) could be trimmed. Still, it is efficient for the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested objects, no output schema), the description covers behavioral traits, compute modes, data retention policy, and artifact integration with other tools. It does not explain return values, but the mention of AP2 artifact and execution_hash partially addresses output. Overall, it is comprehensive enough 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 description coverage is 100%, so the schema thoroughly documents each parameter. The description adds context about compute modes and transient processing but does not significantly augment individual parameter meanings 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 identifies the tool as a 'MiCA Token & Service Scoper' and specifies it is an OpenChainGraph compute node with a deterministic function. It distinguishes from siblings by linking to specific upstream (art-98-mica-casp-fit-diagnostic) and downstream (cry-05-agent-action-audit-trail-aggregator) artifacts, making its role 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 explains when to use different compute modes (auto, server, browser) and provides a critical guideline: use synthetic or anonymised inputs only because inputs are not stored. It also mentions the artifact chain provenance, which helps agents understand integration context. However, explicit comparison to sibling tools is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_agent_insurability_evidenceAgent Insurability Evidence ScorerARead-onlyIdempotentInspect
Agent Insurability Evidence Scorer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-307-claim-dispute-bundle-builder. Open at: https://ainumbers.co/chaingraph/art-306-agent-insurability-evidence-scorer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly states the tool is deterministic, processes inputs transiently without storage/logging/retention, exports an AP2 artifact with execution_hash, and explains compute mode behaviors. Annotations already provide readOnlyHint, idempotentHint, destructiveHint; the description adds valuable behavioral context without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose, covering compute modes, transient processing, output chain, and a URL. It front-loads the name and type but includes extraneous detail; could be more concise without losing 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 complexity (compute modes, chain provenance, nested parameters), the description covers key operational aspects: determinism, non-persistence, output artifact, and usage constraints. It lacks a concrete definition of the scoring input/output, but the domain is established via title and output feed reference.
Complex tools with many parameters or behaviors need more documentation. 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 are fully described in the schema (100% coverage). The description reiterates compute modes and mentions policy_parameters are for the decision function but defers to the manifest for field names, adding 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 states it's an 'Agent Insurability Evidence Scorer' and an OpenChainGraph compute node, but the actual scoring function is not defined. It focuses on compute modes and transient processing rather than what evidence scoring means or its specific role. The verb is implied by the title, but the description lacks a clear action statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using only synthetic or anonymised inputs, which is a key usage note, and explains compute mode selection (server vs browser). However, there is no guidance on when to use this tool over the many sibling score_* tools, or any exclusionary context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_aml_typologiesAMLA Transaction-Typology Risk ScorerARead-onlyIdempotentInspect
AMLA Transaction-Typology Risk Scorer: OpenChainGraph compute node (risk_control). Regulatory deadline: 2027-07-01 (EU AMLR full application July 2027; AMLA full operations 2028). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: cry-01-zk-compliance-proof-generator, art-11-vop-batch-match-rate-analyser, ptg-01-ap2-prompt-template-generator, mms-03-app-fraud-graph, ml-01-isolation-forest. Open at: https://ainumbers.co/chaingraph/art-10-amla-transaction-typology-risk-scorer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description extensively covers behavioral traits beyond annotations: deterministic compute, compute modes (auto/server/browser), transient processing without storage, safety mandate for synthetic inputs, AP2 artifact export, and output feeds. No contradictions with annotations (readOnlyHint, idempotentHint).
Agents need to know what a tool does to the 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 front-loaded with purpose and regulatory context, then details compute modes and privacy. It is relatively concise but includes some secondary details (regulatory deadline, URL) that could be repositioned. 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?
Covers compute behavior, data handling, and downstream feeds, but lacks output semantics: the tool is a risk scorer but does not describe the output format or range. Schema and annotations cover safety but not output. Somewhat incomplete for a scorer.
Complex tools with many parameters or behaviors need more documentation. 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 some context for the 'compute' parameter but does not significantly enhance the meaning of other parameters beyond what the schema already provides. Policy_parameters remain vague despite schema 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 title 'AMLA Transaction-Typology Risk Scorer' and the first sentence clearly indicate the tool scores transaction-typology risk using AMLA. It distinguishes from sibling 'score_*' tools by specifying AMLA typologies, but does not explicitly state it computes a risk score for transactions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 such as transient data handling and synthetic input requirement, but lacks explicit guidance on when to use this tool vs alternatives like other score tools. It is implied through the specific AMLA focus.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_cash_forecast_accuracyCash Forecast Accuracy ScoringCRead-onlyIdempotentInspect
Cash Forecast Accuracy Scoring: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-258-parse-camt053-reconciliation, art-261-test-hedge-effectiveness. Open at: https://ainumbers.co/chaingraph/art-263-score-cash-forecast-accuracy.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint and idempotentHint. The description adds that inputs are processed transiently, not stored, logged, or retained, and that synthetic inputs should be used. This aligns with and extends the annotations, providing meaningful behavioral context. 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 several sentences long and contains technical details about compute modes that could be more succinct. The purpose is not front-loaded. While not overly verbose, it could be structured better 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 lacks information about the output, such as what the score represents or how to interpret the exported AP2 artifact. It does not explain the required inputs from upstream artifacts or any error handling. No output schema is provided, so the description should fill this gap but fails to do so.
Complex tools with many parameters or behaviors need more documentation. 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 about compute modes and that policy_parameters are input parameters, but references 'the tool's manifest' which is not available. Overall, the schema descriptions already cover the parameters 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 title and description indicate the tool is for scoring cash forecast accuracy, but the description focuses on compute modes and technical details rather than clearly stating what the tool does. It does not differentiate from other scoring tools or explain the scoring objective.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 mentions it consumes specific upstream artifacts, implying a sequence, but does not explicitly state prerequisites or exclusions. No usage context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_clause_coverageClause Coverage ScorerARead-onlyIdempotentInspect
Clause Coverage Scorer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-410-clause-coverage-scorer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations by detailing deterministic behavior, transient input processing (no storage/logging), requirement for synthetic/anonymised inputs, and the export of an AP2 artifact with execution_hash for chain provenance. It also explains compute mode delegation (server vs browser) and that gpu:true nodes always delegate to browser. No contradiction with annotations found.
Agents need to know what a tool does to the 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 moderately concise but contains redundancies (e.g., 'OpenChainGraph compute node' mentioned twice) and includes a URL that may be secondary. The key details are front-loaded, but the overall length could be reduced without losing essential information. Sentences like 'Deterministic OpenChainGraph compute node' add little beyond the first statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, nested objects, no output schema), the description covers compute modes, privacy, and artifact export but does not explain what 'clause coverage' means, the nature of the output score, or how to interpret the execution_hash or AP2 artifact. Despite good annotations, the lack of output schema documentation and unclear input requirements (all params optional but 'use synthetic inputs' implies necessity) leave 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 decent parameter descriptions. The description adds some context, e.g., that policy_parameters are computed server-side when compute is 'auto' or 'server' for gpu:false nodes with a registered kernel. However, this does not profoundly enhance semantic understanding beyond what the schema provides, 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 indicates it is a 'Clause Coverage Scorer' and an 'OpenChainGraph compute node' associated with 'compliance_mandate', providing a specific verb and resource. It distinguishes itself from sibling scorers (e.g., 'score_agent_insurability_evidence') by the domain-specific term 'clause coverage' and the unique OpenChainGraph compute node context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 alternative scoring tools. It details compute modes and privacy but does not provide selection criteria (e.g., 'use for X type of clause coverage, use Y for other types'). With numerous sibling scorers, this omission hinders accurate tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_credit_default_riskCredit Default Risk ScorerCRead-onlyIdempotentInspect
Credit Default Risk Scorer: OpenChainGraph compute node (credit_assessment). Regulatory deadline: 2027-12-02 (EU AI Act Annex III Part 5(b) credit-scoring high-risk obligations — 2 December 2027, per the Digital Omnibus amendments (June 2026); EBA GL/2017/16 IRB model performance). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-05-eu-ai-act-credit-scoring-conformity. Output feeds: sim-03-basel-rwa-scenario-modeler, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/ml-02-credit-default-risk-scorer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, non-destructive. The description adds valuable behavioral context: inputs are processed transiently and not stored, logs, or retained; it is deterministic; it warns to use synthetic or anonymized inputs only; and it explains compute delegation logic. This provides meaningful additional transparency beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is overly verbose, including regulatory deadline details, OpenChainGraph technicalities, and artifact chaining information that dilute the core message. It is not front-loaded with the most critical information and contains redundant or tangential 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?
Despite the complexity (4 parameters, nested objects, no output schema), the description fails to explain what the tool returns (e.g., a credit risk score or score range). It omits basic output details and the meaning of the AP2 artifact. Context is missing for an agent to fully understand the tool's 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?
Schema description coverage is 100%, with detailed descriptions for all parameters in the input schema. The tool description does not add additional semantics or usage examples beyond what the schema already provides. A baseline score of 3 is appropriate given the 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 states it is a 'Credit Default Risk Scorer' and mentions 'credit_assessment', which conveys the basic purpose. However, the description is cluttered with implementation details (OpenChainGraph, compute modes) and does not provide a clear, concise verb+resource statement. It also fails to differentiate from sibling tools like 'score_credit_model_quantized'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes (server vs. browser) but provides no guidance on when to use this tool versus alternative credit scoring tools among the siblings. There is no mention of prerequisites, use cases, or exclusions, making the selection decision unclear 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.
score_credit_model_quantizedQuantized Credit Model ScorerBRead-onlyIdempotentInspect
Quantized Credit Model Scorer: OpenChainGraph compute node (credit_assessment). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-348-score-credit-model-quantized.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds transparency by stating inputs are processed transiently and not stored, logged, or retained, and that the tool is deterministic. This extra context about data handling and execution characteristics enhances understanding.
Agents need to know what a tool does to the 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, covering key aspects in about six sentences. It front-loads the title and core identity. However, the density of information (compute modes, data handling, artifact export) could be better structured for quick 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?
Given that there is no output schema, the description should explain the return value. It mentions an AP2 artifact with execution_hash but does not describe the scoring result or artifact contents. The compute mode and data handling are well covered, but the return value gap makes 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?
Schema coverage is 100%, so baseline is 3. The description mentions compute modes and browser delegation, but the schema already describes 'compute' in detail. For 'policy_parameters', the description directs to 'the tool's manifest for field names', which is vague and adds little value. The other parameters are adequately 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 identifies the tool as a quantized credit model scorer and an OpenChainGraph compute node, specifying the resource and action. However, it does not explicitly distinguish this tool from other score_ tools like score_credit_default_risk, though the 'quantized' qualifier provides implicit 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 mentions that inputs should be synthetic or anonymized and notes compute mode options, but it fails to provide guidance on when to use this tool versus other scoring or assessment tools in the sibling list. No alternatives or exclusion criteria are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_eudr_country_riskEUDR Country Benchmark Risk ScorerARead-onlyIdempotentInspect
EUDR Country Benchmark Risk Scorer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-169-eudr-supply-chain-traceability-linker. Open at: https://ainumbers.co/chaingraph/art-168-eudr-country-benchmark-risk-scorer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint; description adds that inputs are processed transiently and not stored, and states 'Deterministic OpenChainGraph compute node', providing useful context beyond annotations. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of about 6-7 sentences covering key aspects, but it includes some technical jargon that could be streamlined. Still, it is reasonably concise for the information conveyed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 lacks details about the output (the risk score format or structure). It mentions exporting an AP2 artifact but does not describe the score itself. With no output schema, the description should compensate, but it does not fully explain what the agent will receive.
Complex tools with many parameters or behaviors need more documentation. 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 itself documents all parameters. The description mentions compute modes and policy_parameters but does not add significant detail 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 title 'EUDR Country Benchmark Risk Scorer' and description state it's a compute node for scoring EUDR country risk, but the technical language (OpenChainGraph compute node, AP2 artifact) may obscure the primary function for some agents. Still, the verb 'score' and resource 'country risk' are clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and when to use synthetic/anonymized inputs, but does not explicitly distinguish this tool from siblings like 'classify_eudr_commodity_scope' or 'validate_eudr_due_diligence_statement'. No explicit when-not-to-use or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_fuzzy_match_calibrationFuzzy-Match Calibration ScorerARead-onlyIdempotentInspect
Fuzzy-Match Calibration Scorer: OpenChainGraph compute node (model_governance). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-90-sanctions-screening-fit-diagnostic. Output feeds: art-97-sanctions-screening-quality-scorer, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-93-fuzzy-match-calibration-scorer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds value beyond annotations: explains deterministic nature, compute modes, transient processing (no storage), export artifact with execution_hash, chain dependencies. Annotations already indicate safe read-only behavior, description enhances with detailed execution 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?
Description is information-dense and covers many aspects but could be more concise. Front-loads the name and key concept, but includes URLs and detailed chain flow that may be excessive. Adequate but not streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (compute modes, chain provenance, artifact export), the description covers essential aspects. Explains input handling, chain links, and provides an open link. Lacks explanation of the calibration score result format, but artifact export compensates.
Complex tools with many parameters or behaviors need more documentation. 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 parameters. Description does not add new meaning beyond schema; it mentions 'policy_parameters' but does not elaborate further. 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 it is an OpenChainGraph compute node for scoring fuzzy match calibration. It explains its role in a chain (consumes upstream, feeds downstream). However, it does not differentiate from sibling tools that also score (e.g., score_sanctions_screening_quality), 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?
Provides one important guideline: 'Use synthetic or anonymised inputs only.' It describes compute modes but does not specify when to use this tool versus alternatives. No explicit when-to-use or when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_mcp_readinessMCP Developer Readiness ScorecardARead-onlyIdempotentInspect
Compute a composite MCP server ship-readiness score across tool definitions, server.json, OAuth, transport, tool poisoning, and spec compliance. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| overall | No | |
| sections | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant behavioral context beyond annotations: mentions client-side execution, zero network, AIN Bridge input application, and rendering as an interactive widget. Annotations already declare readOnlyHint=true and destructiveHint=false, but the description enriches understanding of the tool's execution model.
Agents need to know what a tool does to the 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 without redundancy: first states the core function, second adds key execution and privacy details. 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?
Covers the tool's scope, execution model, and privacy. Output format is omitted but an output schema exists, so that is acceptable. The description could mention the widget's interactive nature more, but overall complete 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 coverage is 100% and already describes the 'inputs' parameter as a map from element IDs to values. The description echoes this by saying 'inputs are applied via the AIN Bridge', adding marginal clarification. Baseline 3 is appropriate 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?
Clearly states the verb 'Compute' and the specific resource 'composite MCP server ship-readiness score'. Specifies the evaluation dimensions (tool definitions, server.json, OAuth, etc.), making it distinct from other score tools like score_aml_typologies or score_credit_default_risk. No 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?
Provides context (client-side, zero PII, zero network) which implies safe usage for sensitive data, but does not explicitly compare to alternatives like run_mcp_deployability_diagnostic or attest_mcp_server. Lacks direct when-to-use or 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.
score_mcp_server_readinessMCP Developer Readiness ScorecardARead-onlyIdempotentInspect
MCP Developer Readiness Scorecard: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-17-ap2-mcp-policy-validator, art-23-visa-trusted-agent-protocol-inspector, art-24-mastercard-agentic-token-builder, art-25-a2a-agent-card-validator, art-26-x402-payload-decoder-flow-simulator, art-27-agentic-readiness-diagnostic, art-28-mcp-server-deployability-diagnostic. Open at: https://ainumbers.co/chaingraph/art-18-mcp-developer-readiness-scorecard.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| gaps | No | |
| note | No | |
| overall | No | |
| verdict | No | |
| sections | No | |
| gaps_count | No | |
| answers_used | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Even with annotations like readOnlyHint and idempotentHint, the description adds significant behavioral detail: inputs are processed transiently and not stored/logged/retained, compute delegation differs for gpu:true vs gpu:false nodes, and it exports an AP2 artifact with execution_hash. These details clarify side effects, privacy, and the deterministic nature beyond what the annotations alone convey.
Agents need to know what a tool does to the 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 medium-length paragraph that repeats 'OpenChainGraph compute node' twice and includes dense jargon. It is front-loaded with a title and core compute explanation, but the redundancy and extra details (e.g., long upstream artifact list, URL) could be tightened without losing essential 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?
The description explains compute modes, privacy, artifact export, and upstream dependencies, which is helpful. However, it does not describe what the readiness scorecard itself contains (the actual scoring criteria or output fields), and while output schema exists, the description could still outline the expected result. It feels complete for the compute mechanics but less so for the tool's substantive 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 already covers 100% of parameters with descriptions, so the baseline is 3. The description adds useful context about the compute parameter's behavior (auto vs browser vs gpu delegation) and references upstream artifact IDs for parent_hashes/parent_tool_ids, but policy_parameters is deferred to a manifest and not elaborated. This adds modest value but doesn't substantially exceed 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 identifies the tool as an 'MCP Developer Readiness Scorecard' operating as a deterministic OpenChainGraph compute node, which conveys the core purpose: scoring readiness and producing an AP2 artifact. It distinguishes itself from siblings like score_mcp_readiness by emphasizing its OpenChainGraph/artifact-export role, though it doesn't explicitly contrast with similar scoring 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 some usage context: it explains compute modes ('auto', 'browser'), the need for synthetic inputs, and lists upstream artifacts to chain from. However, it lacks explicit guidance on when to use this tool versus alternatives such as score_mcp_readiness or run_mcp_deployability_diagnostic, and doesn't state exclusions or prerequisites beyond 'use synthetic inputs.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_mt_mx_translation_fidelityMT103 to MX Translation Fidelity ScorerCRead-onlyIdempotentInspect
MT103 to MX Translation Fidelity Scorer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-244-gpi-tracker-lifecycle-simulator. Open at: https://ainumbers.co/chaingraph/art-245-mt-mx-translation-fidelity-scorer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, destructive), description adds behavioral context: determinism, compute modes (auto, server, browser), transient processing without data retention, export of AP2 artifact with execution_hash, and upstream artifact consumption. This is valuable additional transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is fairly long and includes multiple details (compute modes, data handling, artifact export, upstream, URL). It is front-loaded with the title but then lists details without clear sections. Could be more concise by separating essential vs. secondary 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?
For a tool that scores translation fidelity, the description fails to explain what the tool returns (e.g., a score, a report). It mentions exporting an AP2 artifact but does not describe the output structure or content, leaving the user guessing about results.
Complex tools with many parameters or behaviors need more documentation. 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 coverage, the baseline is 3. The description does not add significant meaning beyond what the schema already provides for parameters like compute, parent_hashes, etc. It mentions policy_parameters generically but lacks specifics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and name clearly indicate the tool scores MT103 to MX translation fidelity, but the description opens with 'OpenChainGraph compute node (compliance_mandate)' which is vague about the actual scoring function. It does not elaborate on what fidelity means or how it is computed, leaving the purpose somewhat ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 any prerequisites or conditions. It only advises to use synthetic or anonymised inputs, which is a data handling guideline, not a usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_nis2_incident_significanceNIS2 Incident Significance Scorer (Art. 23 Reporting Threshold)CRead-onlyIdempotentInspect
NIS2 Incident Significance Scorer (Art. 23 Reporting Threshold): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-145-nis2-ict-supply-chain-diligence-scorer. Open at: https://ainumbers.co/chaingraph/art-144-nis2-incident-significance-scorer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations: it states determinism, transient processing (no storage/logging), requirement for synthetic inputs, and export of AP2 artifact. However, annotations already cover safety (readOnly, idempotent, non-destructive), so the addition is moderate. The compute mode details are implementation-specific.
Agents need to know what a tool does to the 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 7-8 sentences, front-loading the purpose but then diving into technical implementation details (compute modes, Cloudflare Workers, URLs). It could be more concise and structured for agent 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?
As a scoring tool, the description lacks an explanation of the output format or significance level. It mentions exporting an AP2 artifact but not the actual score/result. With no output schema, this is a significant gap. Also includes a URL that may not be actionable for an AI 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 100%, so parameters are already documented in the schema. The description adds marginal value by clarifying the 'compute' parameter's default and modes, but does not elaborate on 'policy_parameters' (refers to manifest). 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 title and description clearly state 'NIS2 Incident Significance Scorer (Art. 23 Reporting Threshold)', indicating the tool scores NIS2 incident significance under Article 23. While the purpose is clear, it lacks explicit differentiation from similar siblings like 'score_nis2_supply_chain_diligence', relying on the name for 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. The description mentions output feeds to another scorer but does not specify use cases or when not to use it. Sibling tools are not referenced.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_nis2_supply_chain_diligenceNIS2 ICT Supply-Chain Diligence Scorer (Art. 21(2)(d) / ENISA)BRead-onlyIdempotentInspect
NIS2 ICT Supply-Chain Diligence Scorer (Art. 21(2)(d) / ENISA): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-144-nis2-incident-significance-scorer. Output feeds: art-146-nis2-governance-readiness-checker. Open at: https://ainumbers.co/chaingraph/art-145-nis2-ict-supply-chain-diligence-scorer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by detailing compute modes (auto/server/browser), transient processing with no storage/logging/retention, deterministic behavior, and GPU delegation. These are valuable behavioral traits not captured in readOnlyHint or idempotentHint alone.
Agents need to know what a tool does to the 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 dense but efficient, covering purpose, compute modes, transient processing, and chain provenance in a single paragraph. It could be more structured (e.g., bullet points) but is not overly 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 complexity (4 parameters, nested objects, no output schema), the description explains compute modes, data handling, and chain links, but leaves policy_parameters undefined, directing to an external manifest. This gap makes it less complete for an agent to use autonomously.
Complex tools with many parameters or behaviors need more documentation. 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. However, the description adds minimal value: it mentions compute modes already described in the schema, and for policy_parameters it only says 'See the tool's manifest for field names,' which is unhelpful. The description fails to enrich 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?
The title and description clearly state the tool is for scoring NIS2 ICT supply-chain diligence under Art. 21(2)(d)/ENISA. It identifies itself as a deterministic OpenChainGraph compute node, but does not explicitly differentiate from sibling tools; the purpose is clear but sibling context is implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 description mentions it consumes from and feeds into specific chain artifacts, implying a workflow context, but does not state usage conditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_partner_stablecoin_readinessArc Partner Stablecoin Onboarding ConformanceCRead-onlyIdempotentInspect
Arc Partner Stablecoin Onboarding Conformance: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-42-arc-fit-diagnostic. Output feeds: art-45-arc-xreserve-linter. Open at: https://ainumbers.co/chaingraph/art-110-arc-partner-stablecoin-onboarding.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds context about deterministic execution, transient processing, and artifact export. However, it contradicts the readOnlyHint annotation by stating it exports an AP2 artifact (a write operation). This contradiction undermines trust.
Agents need to know what a tool does to the 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 longer than necessary, mixing purpose, technical implementation, warnings, and artifact flow. It repeats the title and includes a URL that is not actionable. The structure could be more 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?
The description covers compute modes, transient processing, and artifact relationships, but lacks details on the output (readiness score) and the policy_parameters fields. Without an output schema, more explanation of the return value is needed 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% and parameter descriptions are present. The description adds marginal value by explaining compute modes and transient processing, but it fails to specify the fields within policy_parameters, referring instead to an external manifest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ties the tool to 'Arc Partner Stablecoin Onboarding Conformance' and 'compliance_mandate', indicating it scores readiness. However, the purpose is somewhat buried in technical details about compute modes and artifacts, and it lacks explicit differentiation from many sibling 'score_*_readiness' and 'run_*_fit_diagnostic' 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 does not state when to use this tool over alternatives. It mentions upstream and downstream artifact dependencies, but no explicit when-to-use or when-not-to-use guidance. Among many sibling tools with similar names, the lack of usage guidance 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.
score_payee_name_matchPayee Name-Match Score (VoP/CoP)BRead-onlyIdempotentInspect
Payee Name-Match Score (VoP/CoP): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-376-score-payee-name-match.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, so the description adds context about transient processing and compute modes. However, it does not disclose all behaviors (e.g., what happens on error, authentication needs). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately long and contains some boilerplate phrasing. It is front-loaded with the purpose but includes a URL and redundant statements. Could be more 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 no output schema, the description does not explain the return value (e.g., score format, AP2 artifact details). The important 'policy_parameters' object is left to an external manifest. This leaves gaps for an 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%, so the schema already documents parameters. The description adds value for 'compute' parameter by explaining modes, but for 'policy_parameters' it merely references a manifest without providing field details. 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?
Title and description clearly state the tool computes a payee name-match score for compliance. It specifies it is an OpenChainGraph compute node, which differentiates it from other scoring 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?
The description provides no guidance on when to use this tool versus alternatives like other scoring tools. It focuses on technical compute modes rather than usage context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_sanctions_screening_qualitySanctions Screening-Program Quality ScorerARead-onlyIdempotentInspect
Sanctions Screening-Program Quality Scorer: OpenChainGraph compute node (model_governance). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-92-screening-list-coverage-checker, art-93-fuzzy-match-calibration-scorer. Output feeds: cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-97-sanctions-screening-quality-scorer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds meaningful behavioral details: deterministic execution, transient input processing (not stored/logged/retained), compute mode delegation rules, and export behavior (AP2 artifact with execution_hash). No contradiction with annotations; the description enriches understanding of the tool's operational characteristics.
Agents need to know what a tool does to the 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 several sentences long and includes technical details (Cloudflare Workers, kernel registration, AP2 artifact) that may be excessive for an AI agent. It front-loads the purpose well but could be more concise by omitting implementation-specific URL and minor chain details. Structurally, it progresses from purpose to compute modes to data handling to output, which is logical.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested object, no output schema), the description lacks explanation of the scoring algorithm or what the output AP2 artifact contains. It names upstream and downstream artifacts but does not specify the output format or meaning, leaving a gap for agent understanding. The data handling and compute mode descriptions are thorough, but output semantics are underspecified.
Complex tools with many parameters or behaviors need more documentation. 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 elaborate on individual parameters beyond what the schema provides. It mentions compute modes and references 'See the tool's manifest for field names' for policy_parameters, but this does not add significant new 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 title 'Sanctions Screening-Program Quality Scorer' clearly identifies the tool's verb (scorer) and resource (sanctions screening program quality). The description reinforces this by specifying it computes quality scores and distinguishes from sibling tools by naming upstream artifacts (screening list coverage checker, fuzzy match calibration scorer) and downstream target (audit trail aggregator), making its specific role in a processing chain evident.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using synthetic or anonymised inputs and explains compute modes, but does not explicitly state when to use this tool versus alternative sanctions screening tools (e.g., check_screening_list_coverage or run_sanctions_screening_fit). It provides context through upstream/downstream references but lacks explicit when-to-use or 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.
score_taxonomy_alignmentEU Taxonomy Alignment ScorerARead-onlyIdempotentInspect
EU Taxonomy Alignment Scorer: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-68-carbon-compliance-fit-diagnostic. Output feeds: art-74-taxonomy-kpi-gar-aggregator, art-75-eugb-factsheet-validator, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-73-taxonomy-alignment-scorer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description details transient processing, deterministic behavior, artifact export with execution_hash, and privacy practices. These go beyond annotations (readOnlyHint, idempotentHint) providing complete behavioral 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 front-loaded and every sentence adds value, covering purpose, compute modes, privacy, artifacts, and links. It is slightly verbose but well-structured and efficient for the information conveyed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
All aspects—compute modes, input processing, chaining, artifact handling, privacy guidance—are covered. No output schema exists, but the description is complete for understanding and using the tool 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?
With 100% schema coverage, baseline is 3. The description adds context on compute mode delegation, chaining behavior for parent_hashes, and clarifies that policy_parameters are inputs to a decision function, adding significant 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 tool scores EU Taxonomy Alignment and identifies it as an OpenChainGraph compute node. It differentiates via domain specificity but does not explicitly compare with sibling score 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 explains compute mode options, client-side vs server-side execution, and advises using synthetic inputs only. It also specifies upstream and downstream artifact relationships. However, no exclusions or alternative tools are mentioned despite many siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_tempo_validator_readinessTempo Validator Readiness ScorerARead-onlyIdempotentInspect
Tempo Validator Readiness Scorer: OpenChainGraph compute node (infrastructure_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-41-tempo-validator-readiness.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant value beyond annotations: it confirms determinism, transient processing and non-retention of inputs, compute mode delegation behavior, and output as an AP2 artifact with execution_hash. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a concise 5-sentence paragraph that front-loads the purpose, then explains compute modes, data handling, and output. 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?
The description covers the main aspects: purpose, compute modes, data privacy, and output. However, it does not explain the scoring logic or specify the exact fields in the AP2 artifact. A reference to a manifest partially compensates.
Complex tools with many parameters or behaviors need more documentation. 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 parameters. The tool description enhances this by explaining the compute parameter's behavior in detail and referencing 'policy_parameters' as decision function inputs. 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 identifies the tool as a 'Tempo Validator Readiness Scorer' and an 'OpenChainGraph compute node', specifying its role in scoring readiness. It differentiates from sibling tools by detailing compute modes and transient processing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes ('auto' vs 'browser') and mentions using synthetic or anonymised inputs. However, it does not explicitly state when not to use the tool or compare it to alternatives, which is acceptable given the sibling list size.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
screen_je_rulesetJournal-Entry Ruleset ScreenBRead-onlyIdempotentInspect
Journal-Entry Ruleset Screen: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-462-je-ruleset-screen.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations: it states inputs are processed transiently and not stored, logged, or retained, and advises using synthetic or anonymised inputs only. It also explains compute mode behavior and deterministic nature, which are not covered by the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat lengthy (10 sentences) and front-loads the title repetition. While the first sentence states purpose, subsequent sentences delve into technical implementation details. It could be more concise and structured with separate sections for usage and behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested objects, no output schema), the description covers compute modes, data transience, and AP2 artifact export. However, it lacks return value details and does not fully compensate for the missing output schema. The URL at the end is a helpful reference.
Complex tools with many parameters or behaviors need more documentation. 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 much new meaning beyond the schema; it mentions compute modes and parent hashes indirectly but does not enhance parameter understanding. The 'See the tool's manifest' reference for policy_parameters reduces clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a Journal-Entry Ruleset Screen and an OpenChainGraph compute node for compliance control. It specifies the verb 'screen' and the resource 'je_ruleset', though the purpose is slightly obscured by technical implementation details. It distinguishes from other screening tools by focusing on journal-entry rulesets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 when-to-use or when-not-to-use guidance compared to siblings like 'screen_sanctions_private' or 'screen_onledger_transfer_batch'. It does not mention alternatives or exclusion criteria, leaving the agent to infer usage from the technical details.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
screen_onledger_transfer_batchOn-Ledger Transfer Batch ScreenARead-onlyIdempotentInspect
On-Ledger Transfer Batch Screen: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-288-map-iso20022-to-evm-calldata. Open at: https://ainumbers.co/chaingraph/art-291-screen-onledger-transfer-batch.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond annotations by detailing transient processing (no storage/logging), compute modes with delegation behavior, artifact export, and dependency chain. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that efficiently conveys key points, though it could be more structured for readability. No redundant sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 thorough coverage of compute modes and privacy, the description fails to describe the screening output or result format (no output schema). This is a significant gap for a screening 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?
With 100% schema coverage, baseline is 3. The description adds meaningful context for compute (mode behavior) and policy_parameters (reference to manifest), though parent_hashes and parent_tool_ids are not further elaborated.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and description clearly identify the verb 'screen' and resource 'on-ledger transfer batch', and it distinguishes from sibling 'screen_tip20_transfer_batch'. However, the core purpose of screening for compliance is implied rather than explicitly stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using synthetic or anonymised inputs and hints at compute mode selection, but provides no guidance on when to choose this tool over siblings like screen_tip20_transfer_batch.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
screen_sanctions_privatePrivate-Input Sanctions ScreenARead-onlyIdempotentInspect
Private-Input Sanctions Screen: OpenChainGraph compute node (analytics_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-413-screen-sanctions-private.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description details transient processing: 'not stored, logged, or retained', which adds context beyond annotations (readOnlyHint, idempotentHint). Also explains compute modes and artifact export. However, it omits error handling, rate limits, or authentication requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is reasonably concise (5 sentences) with relevant details upfront. The final line with an open URL is marginally useful but adds some noise. Overall efficient without 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?
Explains compute modes, privacy, and artifact export, but does not describe what the screening result looks like (e.g., match/no match, score). Lacks output schema, so description should cover return format. Also missing prerequisites or access 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%, so parameters are fully described in schema. Description adds some context for 'policy_parameters' regarding server-side computation, but largely restates schema info. Minimal added value beyond the schema itself.
Input schemas describe structure but not intent. Descriptions should explain 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 is a sanctions screening tool with private, transient processing. Title 'Private-Input' and description emphasize no storage of inputs, distinguishing it from other screening tools that may retain data. However, it does not explicitly differentiate from sibling screening tools like 'screen_je_ruleset' or 'screen_onledger_transfer_batch'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 to use synthetic or anonymised inputs only. Also explains when to use different compute modes ('auto' vs 'browser') and that gpu:true nodes always delegate. Does not provide direct comparison to alternative tools or say 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.
screen_tip20_transfer_batchTempo On-Chain AML & Travel Rule ScreenerARead-onlyIdempotentInspect
Tempo On-Chain AML & Travel Rule Screener: OpenChainGraph compute node (aml_rule). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-37-tempo-stablecoin-issuance. Output feeds: art-39-tempo-zone-disclosure, art-10-amla-transaction-typology-risk-scorer. Open at: https://ainumbers.co/chaingraph/art-38-tempo-onchain-aml.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations: inputs are processed transiently and not stored, logged, or retained; a privacy warning ('Use synthetic or anonymised inputs only'); compute delegation logic for GPU nodes; and export of AP2 artifact with execution_hash for chain provenance. No contradiction with readOnlyHint, idempotentHint, or destructiveHint.
Agents need to know what a tool does to the 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 comprehensive yet focused, with a clear structure: title, node characterization, compute modes, data handling, privacy warning, inputs/outputs, and a link. It is slightly verbose in the first sentence but overall efficient for the amount of information conveyed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested objects, no output schema), the description covers purpose, compute behavior, data handling, privacy constraints, upstream/downstream artifacts, and provides a URL. It omits explicit return value details but mentions artifact export, which is sufficient 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?
Schema coverage is 100%, so baseline is 3. The description adds value by explaining the 'compute' parameter's behavior in detail (auto vs server vs browser, GPU delegation) and mentioning that 'policy_parameters' are for the decision function. It does not elaborate on 'parent_hashes' or 'parent_tool_ids', but schema descriptions already cover them 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 identifies the tool as a Tempo On-Chain AML & Travel Rule screener and a deterministic OpenChainGraph compute node. It specifies upstream and downstream artifacts, providing context within a pipeline. However, it does not explicitly distinguish itself from sibling tools like 'screen_onledger_transfer_batch'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes ('auto', 'server', 'browser') and when each applies, including conditions for GPU nodes and browser delegation. It advises using synthetic or anonymized inputs. However, it lacks explicit guidance on when to choose this tool over alternatives, such as other screening tools in the list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sdjwt_issueIssue a Selective Disclosure JWT (RFC 9901)AInspect
Issues a Selective Disclosure JWT (RFC 9901) from a claims object, marking selected top-level claim keys as selectively disclosable via salted-hash digests in the _sd array. Signed EdDSA over a fresh ephemeral did:key (generated per call, not reused). Pair with sdjwt_present to build a redacted presentation from the returned sd_jwt.
| Name | Required | Description | Default |
|---|---|---|---|
| claims | Yes | Claim key-value pairs to issue (required, at least one entry). | |
| subject | No | sub claim. Default: "subject-001". | |
| selective_keys | No | Top-level claim keys marked selectively disclosable. Keys not listed stay always-disclosed cleartext. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behavioral traits beyond annotations: ephemeral key generation per call, EdDSA signing, and selective disclosure mechanism. No contradictions with annotations. Could add that the key is not stored, but current detail is good.
Agents need to know what a tool does to the 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 and standard followed, then pairing guidance. 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 purpose, mechanism, and pairing. Could explicitly state the return format (string), but the sibling tool's description likely fills the gap. With no output schema, this is mostly 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% with descriptions. The description adds meaning by explaining how claims and selective_keys interact to form digest-based selective disclosure, which clarifies the parameter roles 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 it issues an SD-JWT per RFC 9901, explains the selective disclosure mechanism via salted-hash digests, and distinguishes from the sibling tool sdjwt_present by specifying its role in creating redacted presentations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 pairing guidance with sdjwt_present and notes key ephemerality per call. Does not list when not to use or other alternatives, but the pairing is strong enough for an agent to understand workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sdjwt_presentPresent a redacted Selective Disclosure JWTAInspect
Builds a redacted presentation from an existing SD-JWT (as returned by sdjwt_issue), keeping only the listed disclosures. Pass aud to add a KB-JWT holder-binding (a fresh ephemeral holder key is generated per call). Pass issuer_did (the sd_jwt's "issuer" field) to also verify the JWS and return the verifier_view -- exactly the claim set a relying party would resolve -- plus an OCG receipt of the presentation activity.
| Name | Required | Description | Default |
|---|---|---|---|
| aud | No | KB-JWT audience. Supplying this adds a holder-binding KB-JWT to the presentation. | |
| nonce | No | KB-JWT nonce. Auto-generated if aud is set and this is omitted. | |
| sd_jwt | Yes | An SD-JWT string with all disclosures attached, as returned by sdjwt_issue. | |
| keep_keys | No | Disclosure keys to keep in the presentation. Default: none (all disclosures redacted). | |
| issuer_did | No | The sd_jwt's issuer did:key, to verify the JWS and populate verifier_view + receipt. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the minimal annotations (all false), the description discloses key behaviors: a fresh ephemeral holder key is generated per call when aud is provided, and issuer_did triggers JWS verification resulting in verifier_view and OCG receipt. It does not mention side effects, but the transformation 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?
Three sentences efficiently convey core purpose, optional features, and return values. Information is front-loaded with no redundant 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?
The description explains the basic return values (verifier_view, OCG receipt) for the issuer_did case, but does not explicitly state the default output (presumably the redacted SD-JWT string) when issuer_did is omitted. Overall adequate for a moderate-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?
While schema descriptions are already informative (100% coverage), the tool description adds value by explaining parameter interactions (e.g., nonce auto-generation when aud is set, verification flow with issuer_did) and the default for keep_keys.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 builds a redacted presentation from an SD-JWT, keeping only listed disclosures. It distinguishes from its sibling sdjwt_issue, which issues SD-JWTs, making the purpose specific and 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 explains that the tool uses an SD-JWT from sdjwt_issue and details when to use optional parameters (aud, issuer_did). However, it does not explicitly state when not to use this tool or directly compare to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_agentic_checkout_protocolAgentic Checkout Protocol SelectorBRead-onlyIdempotentInspect
Agentic Checkout Protocol Selector: OpenChainGraph compute node (routing_policy). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-20-acp-ucp-product-feed-conformance-auditor, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-19-agentic-checkout-protocol-selector.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses deterministic behavior, transient input processing, non-retention of data, and output artifact generation. Adds value beyond annotations by specifying security practices (synthetic inputs) and output feeds.
Agents need to know what a tool does to the 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 moderately concise but includes an unnecessary URL at the end. Information is front-loaded but could be more streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 sufficient detail for a compute node with no output schema, including output artifact details and security considerations. Missing usage guidelines, but 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 covers all 4 parameters with descriptions (100% coverage). The tool description adds minimal 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 identifies the tool as a compute node for routing policy but does not clearly specify what selecting an agentic checkout protocol entails. The focus on compute modes overshadows the selection 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 alternative sibling tools. The description lacks context for proper tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_cbe_licenseCan't Be Evil License SelectorARead-onlyIdempotentInspect
Can't Be Evil License Selector: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-196-cant-be-evil-license-selector.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds meaningful behavioral context beyond annotations: transient processing, no storage/logging, synthetic data recommendation, and AP2 artifact with execution_hash. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is concise and front-loaded with purpose. Five sentences cover key points without redundancy. Could be more structured with bullet points 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?
Covers processing behavior and export artifact, but lacks explicit description of the output (e.g., what license is selected). Given no output schema, the description should provide more on return values. Security/privacy context 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 parameter descriptions. The description adds context about compute modes and policy_parameters but does not significantly enhance understanding 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?
Description clearly states it's a 'Can't Be Evil License Selector' and an OpenChainGraph compute node, indicating a specific license selection purpose. It distinguishes from siblings by naming the license family, but could be more explicit about the output being a license choice.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute modes (auto, server, browser) and when to use synthetic data, but does not compare with sibling tools like choose_cc_license or select_embedded_license. Usage context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_embedded_licenseEmbedded License SelectorARead-onlyIdempotentInspect
Embedded License Selector: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-198-cross-license-rights-comparator. Output feeds: art-204-license-compatibility-checker. Open at: https://ainumbers.co/chaingraph/art-203-embedded-license-selector.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations (readOnly, idempotent, non-destructive) by disclosing that inputs are processed transiently and not stored/logged/retained, a critical privacy constraint. It also explains deterministic behavior, server vs. browser execution paths, and the AP2 artifact export with execution_hash for chain provenance. This adds substantial behavioral context without contradicting 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 dense and each sentence adds information, but it has redundancy in the opening: 'OpenChainGraph compute node' is stated twice consecutively. The structure is logical (identity, compute modes, privacy, output, chain links), but the duplication and length prevent a higher score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute behavior, privacy, output artifact, and chain context (upstream/downstream artifacts), which is comprehensive for a tool with no output schema. It does not explain the actual license-selection logic, but that appears delegated to the manifest and policy_parameters, so the description is sufficiently complete 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 coverage is 100%, providing a baseline of 3. The description adds semantic value by explaining the compute enum in detail (auto vs browser vs gpu:true), clarifying that policy_parameters feed the decision function, and indicating that parent_hashes/parent_tool_ids are for chain provenance. This enrichment justifies a score above 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 identifies the tool as an 'OpenChainGraph compute node' but never explicitly states that it selects an embedded license. The title implies the function, and the mention of 'compliance_mandate' hints at purpose, but the description focuses on compute mechanics rather than the core selection act. It also does not distinguish from siblings like select_cbe_license beyond citing upstream/downstream artifacts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context: it explains compute modes (auto/server/browser), when browser delegation is forced, and instructs users to 'use synthetic or anonymised inputs only' due to transient processing. However, it does not explicitly state when to choose this tool over alternatives or provide exclusions, stopping short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_agent_spend_policyAgentic Mandate SandboxARead-onlyIdempotentInspect
Agentic Mandate Sandbox: OpenChainGraph compute node (agent_guardrail_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-27-agentic-readiness-diagnostic. Output feeds: art-16-google-ap2-mandate-builder. Open at: https://ainumbers.co/chaingraph/art-15-agentic-mandate-sandbox.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the bar is lower. The description adds substantial behavioral detail: inputs are processed transiently and 'not stored, logged, or retained,' the tool is deterministic, and compute location/browser delegation behavior is disclosed. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and information-rich, leading with the tool's identity and then detailing compute modes, privacy, and chain provenance. There is slight redundancy ('OpenChainGraph compute node' appears twice), but no filler or wasted sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 complex with 4 parameters, nested objects, and no output schema. The description covers compute binding, transient processing, artifact export, and upstream/downstream chain artifacts. However, it does not explain what the spend-policy simulation actually computes or what the response format looks like for server/auto mode beyond 'an AP2 artifact with execution_hash,' leaving a meaningful 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 baseline is 3. The description adds meaning by explaining the compute modes ('auto', 'server', 'browser') in terms of server-side versus browser delegation, and clarifies that policy_parameters are computed server-side under certain modes. It does not enumerate policy_parameters fields, but the schema already points to a manifest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 an 'OpenChainGraph compute node (agent_guardrail_mandate)' and explains its deterministic behavior, compute modes, and artifact export. However, it never explicitly states that it simulates an agentic spend policy, nor does it distinguish itself from sibling tools like 'simulate_spend_policy' or 'agentic_mandate_sandbox'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 useful operational context: default server-side compute, browser delegation for gpu:true, and an explicit warning to 'use synthetic or anonymised inputs only.' It also places the tool in an artifact chain (consumes art-27, feeds art-16), implying when it fits. However, it lacks explicit when-to-use versus when-not-to-use guidance or references to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_app_fraud_graphAPP Fraud Graph SimulatorARead-onlyIdempotentInspect
APP Fraud Graph Simulator: OpenChainGraph compute node (aml_rule). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-09-dora-incident-classifier, art-10-amla-transaction-typology-risk-scorer. Output feeds: ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/mms-03-app-fraud-graph.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description fully discloses the tool's behavior: it is deterministic, processes inputs transiently (not stored, logged, retained), and explains compute modes and delegation to browser for GPU-enabled nodes. This aligns with annotations (readOnlyHint, idempotentHint) and adds significant context beyond them.
Agents need to know what a tool does to the 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 well-structured, front-loading the purpose and then detailing modes, constraints, and chain context. It is slightly verbose with repetition of 'deterministic OpenChainGraph compute node', but every sentence contributes meaningful information. Could be slightly more 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 complexity (4 params, nested objects, no output schema), the description provides extensive context: compute modes, execution chain with specific upstream/downstream artifacts, export behavior, and usage constraints. It lacks a description of the return value format when not exporting, but overall it is 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?
With 100% schema coverage, the schema already describes all 4 parameters. The description adds valuable semantics by detailing compute enum modes, providing specific upstream artifact IDs for parent_hashes/parent_tool_ids, and clarifying policy_parameters refer to the tool's manifest. This elaborates 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 identifies the tool as an 'APP Fraud Graph Simulator' that is a deterministic OpenChainGraph compute node for an AML rule. It specifies the verb 'simulate' and resource 'app_fraud_graph' with unique details like compute modes, artifact export, and upstream/downstream connections, 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 guidance on compute mode selection and warns to use synthetic inputs only, but it does not explicitly state when to use this tool over its siblings or alternatives. While context is present, there are no exclusions or comparisons to other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_consent_stressOpen Banking Consent Flow Stress SimulatorARead-onlyIdempotentInspect
Open Banking Consent Flow Stress Simulator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: pnr-01-dora-ict-cascade-simulator. Output feeds: ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/sim-07-open-banking-consent-flow-stress.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds valuable behavioral context: inputs are transiently processed and not stored, compute modes are explained, and it confirms determinism and chain provenance (AP2 artifact with execution_hash). No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose (over 1800 characters), includes implementation details like Cloudflare Workers, gpu nodes, and URLs that could be condensed. The first sentence is long and technical, lacking a concise, front-loaded summary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, the description explains the output (AP2 artifact with execution_hash), data retention, compute modes, and chain dependencies. It also provides a UI link and cautions about input data quality. The context is rich and covers most practical concerns, though error behavior is not discussed.
Complex tools with many parameters or behaviors need more documentation. 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 does not add significant new meaning beyond the schema, only mentions transient processing and compute modes. 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 identifies the tool as an 'Open Banking Consent Flow Stress Simulator' and a 'Deterministic OpenChainGraph compute node', specifying its domain and behavior. This distinguishes it from sibling simulation tools like 'simulate_app_fraud_graph' and 'simulate_ict_cascade' by explicitly naming the focus area.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage guidance via data flow references (consumes upstream, outputs to specific nodes) and a directive to use synthetic data only. However, it does not explicitly state when to prefer this tool over other simulation tools or provide clear 'when to use/not use' guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_frtb_esFRTB IMA Expected Shortfall Pre-ValidatorARead-onlyIdempotentInspect
FRTB IMA Expected Shortfall Pre-Validator: OpenChainGraph compute node (risk_parameter). Regulatory deadline: 2028-01-01 (UK FRTB-IMA go-live January 2028; EU slipped to ~2029-30. Pre-validation educational tool.). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: qfa-02-portfolio-var-engine, sim-03-basel-rwa-scenario-modeler. Output feeds: ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/rca-01-frtb-ima-pre-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, idempotentHint, and destructiveHint. The description adds substantial detail: deterministic compute node, explanation of compute modes (auto/server/browser) with specific delegation behaviors, transient input processing (not stored/logged/retained), artifact export with execution_hash, and chain provenance. This goes well beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and informative within a single paragraph, front-loading the tool's name and core purpose. It covers regulatory context, behavior, inputs, outputs, and provides a link. While it could benefit from bullet points for readability, 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 complexity (4 parameters, no output schema, compute binding details, chain provenance), the description covers most aspects: compute modes, data handling, determinism, artifact export, and upstream/downstream connections. It lacks explicit return value description, but that is acceptable without an output schema. Annotations cover safety and idempotency.
Complex tools with many parameters or behaviors need more documentation. 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 4 parameters. The description adds value by explaining the compute modes in detail (e.g., 'compute:'browser' forces client-side execution and returns a browser delegation URL') and clarifying the role of policy_parameters. However, for policy_parameters it defers to 'the tool's manifest', which slightly diminishes completeness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 as 'FRTB IMA Expected Shortfall Pre-Validator' and defines it as an 'OpenChainGraph compute node (risk_parameter)'. It explicitly mentions 'Pre-validation educational tool', leaving no ambiguity about its function. This specificity distinguishes it from the numerous 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 usage context: regulatory deadline, educational purpose, and the instruction to use synthetic or anonymised inputs only. It also lists upstream and downstream artifact dependencies. However, it does not explicitly state when not to use this tool or suggest alternatives, though the name and context make it fairly clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_gpi_tracker_lifecycleSWIFT GPI Tracker Lifecycle SimulatorARead-onlyIdempotentInspect
SWIFT GPI Tracker Lifecycle Simulator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-245-mt-mx-translation-fidelity-scorer. Open at: https://ainumbers.co/chaingraph/art-244-gpi-tracker-lifecycle-simulator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explains that inputs are processed transiently and not stored, logged, or retained, which adds behavioral detail beyond the annotations. It notes deterministic behavior and compute delegation, but could elaborate more on the lifecycle simulation's 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, covering key points in a single paragraph. It front-loads the tool's identity and compute modes, but the density of technical details could be better 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 no output schema, the description mentions exporting an AP2 artifact and its output feed, which provides sufficient context for an AI agent. However, the simulation's internal logic and expected inputs for policy_parameters are not fully specified.
Complex tools with many parameters or behaviors need more documentation. 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 coverage, the description adds meaning by explaining compute mode behavior and mentioning that policy_parameters are computed server-side when applicable. However, details for parent_hashes and parent_tool_ids are minimal, relying largely on 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 is a 'SWIFT GPI Tracker Lifecycle Simulator' and an 'OpenChainGraph compute node (compliance_mandate)', indicating its role. However, it does not explicitly differentiate this tool from other simulation tools in the sibling list, lacking a distinct usage context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, server, browser) and advises using only synthetic or anonymised inputs. However, it does not address when to use this tool versus alternative simulation tools, leaving usage context largely implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_ict_cascadeDORA ICT Cascade SimulatorARead-onlyIdempotentInspect
DORA ICT Cascade Simulator: OpenChainGraph compute node (infrastructure_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-09-dora-incident-classifier. Output feeds: sim-07-open-banking-consent-flow-stress, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/pnr-01-dora-ict-cascade-simulator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable context: inputs are transient, not stored/logged/retained, compute mode behavior, and delegation to browser for gpu:true nodes. 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?
The description is well-structured, starting with purpose, then compute modes, transient processing, and chaining. While slightly long, each sentence adds value and there is 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?
For a complex tool with 4 parameters and no output schema, the description covers key behaviors: compute modes, transient nature, chaining inputs/outputs, and provides an external link. It lacks explicit return value details but mentions exporting an AP2 artifact, which 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?
With 100% schema coverage, the description adds meaningful context beyond the schema, such as explaining compute modes in natural language and the purpose of parent_hashes/parent_tool_ids for chaining. The schema already provides detailed descriptions, so the addition is helpful but not essential.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a DORA ICT Cascade Simulator as an OpenChainGraph compute node. It distinguishes from sibling tools by specifying deterministic behavior, compute modes, and chain provenance 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 explains when to use different compute modes and advises using synthetic/anonymised inputs, but does not explicitly state when not to use this tool or provide direct comparisons with sibling simulate_* tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_output_floorBasel Output-Floor Phase-In SimulatorARead-onlyIdempotentInspect
Basel Output-Floor Phase-In Simulator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-358-simulate-output-floor.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds valuable context: inputs are transient and not stored/logged/retained, it is deterministic, and it exports an AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the purpose. It covers key aspects without unnecessary fluff. The URL at the end is a bonus but could be separated. Two paragraphs are 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, nested object, no output schema), the description covers core behavior, data handling, and provenance info. It could be more explicit about return values, but the mention of execution_hash partially addresses 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 coverage is 100%, so each parameter already has a description. The description does not add new parameter-level details beyond what is in the schema. It mentions compute modes and policy_parameters but provides no additional semantics or 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 it is a Basel Output-Floor Phase-In Simulator and an OpenChainGraph compute node. The verb 'simulate' and the specific domain (Basel output floor phase-in) make the purpose clear. However, it does not explicitly differentiate from sibling simulation tools, such as simulate_var_monte_carlo or simulate_consent_stress.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto/browser) and a warning to use synthetic or anonymised inputs only. It does not explicitly state when to use this tool versus alternatives, nor does it mention prerequisites 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.
simulate_spend_policyAgent Spend-Policy SimulatorARead-onlyIdempotentInspect
Agent Spend-Policy Simulator: OpenChainGraph compute node (payment_policy). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-01-ap2-mandate-chain-validator, art-04-agent-identity-attestation-checker. Output feeds: ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-02-agent-spend-policy-simulator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| verdict | No | |
| fail_count | No | |
| pass_count | No | |
| fail_rate_pct | No | |
| compliance_flags | No | |
| top_fail_reasons | No | |
| total_transactions | No | |
| total_approved_spend | No | |
| bypass_paths_detected | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (read-only, idempotent, non-destructive), the description discloses determinism, transient input processing with no storage/logging/retention, server-side execution on Cloudflare Workers, and gpu behavior. It also explains the artifact export with execution_hash and upstream/downstream dependencies, providing rich 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 dense and well-organized, covering compute modes, privacy, provenance, and workflow links in a compact passage. Minor redundancy exists with 'OpenChainGraph compute node' stated twice in the first two sentences, but overall the structure is 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?
Given the tool's complexity, the description is remarkably complete: it explains compute binding behavior, transient processing, artifact export, upstream artifact consumption, downstream output feeds, and provides a URL. The presence of an output schema means return values need not be detailed, and the description covers the remaining contextual needs thoroughly.
Complex tools with many parameters or behaviors need more documentation. 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 covers all parameters with 100% description coverage, so the baseline is 3. The description adds nuance about how compute modes affect server-side versus browser execution, but it does not enumerate the fields inside policy_parameters and refers to an external manifest for field names, offering limited added parameter 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 title and first line clearly identify this as an Agent Spend-Policy Simulator and OpenChainGraph compute node for payment_policy, so the tool's purpose is evident. However, the description never uses an explicit action verb to state what simulation is performed, and it does not distinguish this tool from the sibling simulate_agent_spend_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?
The description gives clear context for when to use each compute mode (auto/server/browser), states the gpu:true delegation rule, and advises using synthetic or anonymised inputs only. It does not explicitly compare against alternative tools or state when not to use this tool, but the pipeline and compute guidance are clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_stablecoin_reserveMiCA Stablecoin Reserve Stress SimulatorARead-onlyIdempotentInspect
MiCA Stablecoin Reserve Stress Simulator: OpenChainGraph compute node (liquidity_mandate). Regulatory deadline: 2024-06-30 (MiCA Title III/IV in force June 30 2024 — ART/EMT issuers subject to Article 36 reserve requirements now). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-06-genius-act-reserve-attestation, sim-01-lcr-nsfr-liquidity-stress-test. Output feeds: ptg-01-ap2-prompt-template-generator, cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/rca-02-mica-reserve-stress.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description adds key behaviors: inputs are processed transiently and not stored/logged/retained, compute modes and delegation details, and export of an AP2 artifact with execution_hash for chain provenance. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but well-structured: it opens with the tool's name and regulatory context, then explains compute modes, data handling, and dependencies. Every sentence provides relevant information, though the length could be slightly reduced without losing 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 4 parameters, no output schema, and complex behavior, the description covers compute modes, data handling, regulatory deadline, upstream/downstream artifacts, and input hygiene. It mentions the AP2 artifact and execution_hash for outputs, which is sufficient for an agent to understand the tool's role and side effects.
Complex tools with many parameters or behaviors need more documentation. 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 little meaning beyond the schema for parameters like 'compute' and 'parent_hashes'. For 'policy_parameters', it merely points to 'the tool's manifest' which is vague. Overall, the description does not significantly enrich 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 identifies the tool as a 'MiCA Stablecoin Reserve Stress Simulator' with specific regulatory context (MiCA Title III/IV in force June 30 2024) and resource (stablecoin reserve). It uses a specific verb ('simulate') and explicitly mentions the OpenChainGraph compute node and liquidity mandate, distinguishing it from siblings like simulate_consent_stress or simulate_frtb_es.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes ('auto', 'server', 'browser') and when each applies (e.g., gpu:false nodes with registered kernel vs. gpu:true nodes). It also advises to use synthetic or anonymised inputs only. However, it does not explicitly state when to use this tool over 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.
simulate_var_monte_carloPortfolio VaR — Monte Carlo (Integer PRNG)ARead-onlyIdempotentInspect
Portfolio VaR — Monte Carlo (Integer PRNG): OpenChainGraph compute node (risk_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: qfa-02-portfolio-var-engine, qfa-03-stress-test-engine. Open at: https://ainumbers.co/chaingraph/art-371-simulate-var-monte-carlo.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses deterministic behavior, transient non-retention of inputs, export of AP2 artifact, and output feeds. This goes beyond the annotations (readOnlyHint, idempotentHint, destructiveHint) by providing concrete details on data handling and chain integration.
Agents need to know what a tool does to the 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 well-structured: a brief title, then compute mode explanation, transient processing, export details, and output feeds. Every sentence adds unique value without 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?
The description provides complete context for an AI agent: what the tool does, how it works (compute modes, deterministic), data handling, export artifact, output feeds, and a reference link. It covers all required aspects 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?
The schema covers all parameters with descriptions (100% coverage). The description adds valuable context about default compute behavior and the policy_parameters field, enhancing the agent's 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 it is a Monte Carlo VaR simulator for a portfolio, with a specific 'Integer PRNG' detail. It distinguishes itself from sibling tools like 'compute_portfolio_var' and 'compute_var_backtest_traffic_light' by specifying the deterministic OpenChainGraph compute node, compute modes, and transient processing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 the compute modes ('auto', 'server', 'browser') and when to use each, including a warning to use 'synthetic or anonymised inputs only'. However, it does not explicitly compare to similar VaR tools to guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_vop_matchingVoP Batch Match-Rate AnalyserARead-onlyIdempotentInspect
VoP Batch Match-Rate Analyser: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: rca-03-iso20022-address-migration-verifier, art-10-amla-transaction-typology-risk-scorer. Output feeds: ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-11-vop-batch-match-rate-analyser.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant value beyond annotations: specifies deterministic compute, transient processing (no storage), synthetic data requirement, artifact export with execution_hash, and compute mode delegation details. Annotations already declare readOnlyHint and idempotentHint, which the description supports.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with title and purpose. Each sentence adds value, but could be slightly more concise. Structure is logical, covering modes, processing guarantees, and chain context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Describes compute modes, transient processing, input constraints, output artifact, and chain provenance. Lacks detail on the output format (e.g., the AP2 artifact contents) since no output schema is provided, but the URL offers additional reference.
Complex tools with many parameters or behaviors need more documentation. 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 provides descriptions for all parameters. The tool description adds minimal extra meaning beyond the schema, only briefly explaining compute modes. No new details for parent_hashes or parent_tool_ids.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Title and description clearly state 'VoP Batch Match-Rate Analyser' and explain it's a deterministic OpenChainGraph compute node for batch match-rate analysis. Distinguishes from siblings by naming specific upstream/downstream artifacts and providing a URL.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 VoP batch matching analysis and explains compute modes, but lacks explicit guidance on when to use vs. alternatives among many similar sibling tools. No exclusion criteria or comparative statements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_x402_flowx402 Header Decoder, Payload Linter & 402 Flow SimulatorARead-onlyIdempotentInspect
x402 Header Decoder, Payload Linter & 402 Flow Simulator: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-22-agentic-payments-protocol-comparator, art-25-a2a-agent-card-validator. Output feeds: art-03-x402-settlement-modeler, art-18-mcp-developer-readiness-scorecard, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-26-x402-payload-decoder-flow-simulator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, non-destructive, non-open-world), the description discloses important behaviors: inputs are processed transiently and not stored/logged/retained, the operation is deterministic, and browser-mode returns a delegation URL. It also details artifact export with execution_hash for chain provenance. These traits are not deducible from annotations and meaningfully inform an agent's expectations.
Agents need to know what a tool does to the 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 dense but well-structured, moving from function to compute behavior, data handling, artifact provenance, and links. It contains a minor redundancy ('Deterministic OpenChainGraph compute node' repeated after the title) but otherwise every sentence adds useful context. The length is justified by the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description compensates by stating that it exports an AP2 artifact with execution_hash and mentions browser delegation URL. It also gives upstream/downstream artifact relationships, which helps an agent understand the tool's role in a larger pipeline. It stops short of describing the exact return body for server-side execution, but the essential context is 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?
The input schema already describes all parameters in full (100% coverage), including enums for compute and the meaning of parent_hashes/parent_tool_ids. The description adds minimal parameter-specific value; it mentions compute modes and the policy_parameters manifest pointer, but these are already present in the schema. Baseline 3 is appropriate given the 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 opens with a specific, multi-verb phrase: 'x402 Header Decoder, Payload Linter & 402 Flow Simulator'. This clearly distinguishes the tool's function (decode, lint, simulate) from siblings like decode_x402_payment or validate_x402_deferred_handshake, and the resource (x402 flow) is explicit. The 'OpenChainGraph compute node' context adds 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 concrete usage guidance, including compute mode selection ('auto' vs 'browser' vs 'server'), conditions for gpu:true and gpu:false nodes with registered kernels, and the explicit instruction to 'Use synthetic or anonymised inputs only'. It does not name direct alternative tools or exclusions, but the context is clear enough for an agent to decide when to invoke this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
size_ccp_default_fund_cover2CCP Default Fund Cover-2 SizingARead-onlyIdempotentInspect
CCP Default Fund Cover-2 Sizing: OpenChainGraph compute node (risk_parameter). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: qfa-03-stress-test-engine. Open at: https://ainumbers.co/chaingraph/art-530-default-fund-cover2-sizing.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, non-destructive), the description discloses deterministic behavior, server vs. client compute routing, transient data processing with no storage/logging/retention, and the export of an AP2 artifact with execution_hash for provenance. It even includes a URL for further details. This is rich behavioral context well beyond the structured annotations, and it does not contradict them.
Agents need to know what a tool does to the 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 dense block of text but each sentence contributes unique information: purpose, compute routing, data handling, artifact output, upstream dependency, and reference URL. It is front-loaded with the tool name and role. Minor structure improvement could be achieved with bullets, but the content is concise relative to the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 params, nested objects, no output schema), the description covers the essential operational context: compute modes, transient processing, input sensitivity, chaining, and artifact export with execution_hash. It does not detail the exact numeric output shape, but the 'AP2 artifact' reference and 'sizing' title sufficiently imply the result is the computed cover-2 size.
Complex tools with many parameters or behaviors need more documentation. 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 100% description coverage for all four parameters, including enums and nested object descriptions. The description adds only a pointer to 'the tool's manifest for field names' for the policy_parameters object, which is not substantive semantics. Baseline of 3 applies because the schema carries the load and the description does not subtract 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 identifies the tool as a deterministic OpenChainGraph compute node for 'CCP Default Fund Cover-2 Sizing', and explains that inputs are processed transiently to compute a response. While the title 'Sizing' is nominal rather than a verb, the text makes the purpose unambiguous. It distinguishes itself from siblings by naming specific upstream requirements and a 'risk_parameter' classification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 the tool: it consumes upstream artifacts from 'qfa-03-stress-test-engine', implying a dependency chain. It also gives explicit usage constraints such as 'Use synthetic or anonymised inputs only' and describes compute mode selection (auto/server/browser) with conditions for gpu:false and gpu:true nodes. No explicit alternatives are named, but the prerequisites and compute behavior form sufficient guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
stress_test_ap_redemption_pathAP Concentration + Redemption-Path StressARead-onlyIdempotentInspect
AP Concentration + Redemption-Path Stress: OpenChainGraph compute node (collateral_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-322-rhc-ap-redemption-stress.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: inputs are 'processed transiently' and 'not stored, logged, or retained', the tool exports an 'AP2 artifact with execution_hash', and it provides a link for opening. Annotations already indicate readOnly, idempotent, non-destructive; the description complements these without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise, front-loaded with the title and purpose. It contains necessary details about compute modes, data handling, and output. Minor redundancy ('OpenChainGraph compute node' repeated) prevents a perfect 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description adequately covers the output (AP2 artifact with execution_hash) and provides an external URL. It details compute modes and data privacy. It could be more complete about the artifact structure, but overall sufficient for a stress test 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 compute mode semantics (server-side vs. browser delegation) and notes that 'policy_parameters' are computed server-side. It also directs to the manifest for field names. This extra context justifies 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 tool performs 'AP Concentration + Redemption-Path Stress' and identifies it as an 'OpenChainGraph compute node (collateral_mandate)'. The verb 'stress' and resource 'ap_redemption_path' are specific, and the purpose is distinct from siblings like 'stress_test_scenarios' or 'simulate_consent_stress'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and explicitly states 'Use synthetic or anonymised inputs only.' It explains how compute='auto', 'server', and 'browser' behave and when delegation occurs. However, it does not explicitly specify when not to use this tool vs. alternatives, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
suggest_tool_ideaSuggest a new tool, node, or workflowARead-onlyIdempotentInspect
Builds a prefilled GitHub Issue-Forms URL for proposing a new AINumbers fintech tool, OpenChainGraph compute node, or verifiable workflow. Returns the URL only -- it never posts to GitHub on the caller's behalf. Companion to the site's mailto suggestion form (suggest.html); this is the agent-callable path.
| Name | Required | Description | Default |
|---|---|---|---|
| who | No | The persona or buyer who would use this (e.g. "a compliance officer at a CASP"). | |
| kind | No | What kind of suggestion this is (default "New tool"). | |
| title | No | Short issue title (the "[Suggestion] " prefix is added automatically). | |
| domain | No | The regulation or standard it serves (e.g. "MiCA", "ISO 20022", "EMIR Refit"). | |
| why_now | No | The driver, deadline, or demand behind the suggestion. | |
| computes | Yes | What the tool would compute or verify (e.g. "validates a CBAM precursor emissions declaration against Annex III default values"). Required by the issue form. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, providing strong behavioral context. The description adds value by explicitly confirming it never posts on behalf of the caller, reinforcing the read-only, non-destructive 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?
Two sentences with no fluff: first sentence defines the action and resource, second clarifies output and context. 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?
Given 6 parameters and no output schema, the description explains the output (URL) and the tool's scope (no posting). It could elaborate on URL usage, but the provided info is sufficient for an agent to understand the tool's role.
Complex tools with many parameters or behaviors need more documentation. 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 need not elaborate on parameters. It adds minimal extra meaning beyond mentioning the URL is prefilled. 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 it builds a prefilled GitHub Issue-Forms URL for proposing new tools, nodes, or workflows. The verb 'builds' and resource 'URL' are specific, and the description distinguishes it from the mailto suggestion form, ensuring no ambiguity among 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 explicitly states what the tool does not do ('never posts to GitHub') and identifies itself as the 'agent-callable path' compared to the mailto form. However, it does not explicitly list when to use this tool over other siblings, though the unique purpose makes this clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sweep_fedwire_addressesFedwire Payment-File Address SweepCRead-onlyIdempotentInspect
Fedwire Payment-File Address Sweep: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-349-fedwire-structured-address-linter. Open at: https://ainumbers.co/chaingraph/art-350-fedwire-address-sweep.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, and non-destructive hints. The description adds valuable behavioral details: transient input processing (not stored/logged/retained), compute mode delegation logic (auto/server/browser), platform (Cloudflare Workers), and AP2 artifact export with execution_hash. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose and repetitive (e.g., 'Deterministic OpenChainGraph compute node' appears twice). It mixes purpose, implementation details, and a link without clear front-loading. Several sentences could be condensed or omitted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters and nested objects, the description lacks explanation of 'policy_parameters', 'parent_hashes', and 'parent_tool_ids'. It assumes knowledge of OpenChainGraph concepts. There is no output schema, and the description does not clarify expected output beyond AP2 artifact.
Complex tools with many parameters or behaviors need more documentation. 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 individual parameter descriptions. The tool description only discusses the 'compute' parameter, not adding significant meaning beyond the schema. Baseline score of 3 is appropriate since schema already provides adequate param 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 states it's an 'OpenChainGraph compute node' for 'Fedwire Payment-File Address Sweep' and mentions compliance mandate, but does not clearly specify what the tool does (e.g., validate, transform, or aggregate addresses). The purpose is vague compared to sibling tools like 'lint_fedwire_structured_address' which have clearer verbs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 mentions 'Use synthetic or anonymised inputs only' as a constraint, but does not compare with sibling tools or specify prerequisites beyond consuming upstream artifacts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
test_bifsg_bias_thresholdsBIFSG Insurance Proxy Bias Threshold Test (Colorado SB 21-169)ARead-onlyIdempotentInspect
BIFSG Insurance Proxy Bias Threshold Test (Colorado SB 21-169): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-240-assess-naic-ais-program-readiness. Open at: https://ainumbers.co/chaingraph/art-239-test-bifsg-bias-thresholds.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, and non-destructive. The description adds value by explaining transient processing (inputs not stored), deterministic nature, output as AP2 artifact with execution hash, and output feed target. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but each sentence adds value: purpose, compute behavior, data handling, output, and link. It front-loads key information. A minor reduction in verbosity could improve conciseness, but it remains 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 detailed input and compute mode explanations, the description lacks a clear output schema description. It mentions an AP2 artifact and output feed, but does not specify the structure or fields of the response. For a complex tool with 4 params and nested objects, this leaves some ambiguity.
Complex tools with many parameters or behaviors need more documentation. 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 meaning: explains compute modes in detail, clarifies parent_hashes/tool_ids as upstream chain references, and notes policy_parameters are for the decision function. 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 identifies the tool as a deterministic OpenChainGraph compute node for the BIFSG Insurance Proxy Bias Threshold Test under Colorado SB 21-169. It distinguishes from siblings by specifying the exact compliance test and compute 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 provides guidance on compute modes (auto, server, browser) and warns to use synthetic or anonymised inputs only. However, it does not explicitly state when to use this tool over siblings or provide alternatives, leaving usage context partially implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
test_hedge_effectivenessHedge Effectiveness TestARead-onlyIdempotentInspect
Hedge Effectiveness Test: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-263-score-cash-forecast-accuracy. Open at: https://ainumbers.co/chaingraph/art-261-test-hedge-effectiveness.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals deterministic behavior, transient input processing (not stored/logged/retained), and export of AP2 artifacts with execution_hash for provenance. These details complement the annotations (readOnlyHint=true, idempotentHint=true). It also warns to use synthetic inputs, implying no permanent record. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is reasonably concise but contains redundancy (e.g., 'OpenChainGraph compute node' repeated) and some unnecessary detail (e.g., specific URL and output feed name). It front-loads the key purpose but could be tighter without losing 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's complexity (4 params, nested objects, no output schema), the description covers compute modes, data handling, and provenance. However, it lacks explanation of what hedge effectiveness is, what the test measures, or the expected shape of policy_parameters. The completeness is adequate but leaves gaps for a new user.
Complex tools with many parameters or behaviors need more documentation. 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. The tool description adds context for the 'compute' parameter (explaining auto/server/browser behavior) and references the tool's manifest for policy_parameters. However, it does not explain parent_hashes and parent_tool_ids beyond what schema states. The additional value is moderate, 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 identifies the tool as a 'Hedge Effectiveness Test' (specific verb+resource) and explains it's an OpenChainGraph compute node. It distinguishes from sibling tools like test_hoepa_high_cost or test_bifsg_bias_thresholds by its specific focus on hedge effectiveness. However, it does not elaborate on what the test evaluates (e.g., methodology, criteria), leaving some 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?
The description provides detailed guidance on compute modes (auto, server, browser) and conditions (gpu:false vs gpu:true), as well as the instruction to use synthetic or anonymised inputs. It does not explicitly compare with alternative tools, but the specificity of the test renders such comparison less necessary. The guidelines are clear for when to use different execution paths.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
test_hoepa_high_costHOEPA High-Cost Mortgage Trigger TestARead-onlyIdempotentInspect
HOEPA High-Cost Mortgage Trigger Test: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-220-reg-z-threshold-lookup. Open at: https://ainumbers.co/chaingraph/art-234-test-hoepa-high-cost.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), description adds that inputs are processed transiently, not stored, and details compute mode behavior, including gpu:true delegation. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is well-structured, starting with purpose, then compute modes, transient processing, artifact export, and upstream artifact. Slightly redundant with 'Deterministic OpenChainGraph compute node' mentioned twice, but overall 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?
Description covers compute modes, transient processing, and artifact export with execution_hash. However, it lacks detail on the output format or what the artifact contains (e.g., test result), and does not describe the return value for the agent, which is a gap given no 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?
Input schema has 100% coverage with descriptions, so baseline is 3. Description adds context by explaining compute parameter options and purpose of parent_hashes/policy_parameters in chain context, but this is minimal extra 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?
Description clearly identifies the tool as a HOEPA High-Cost Mortgage Trigger Test, specifying it is a compliance mandate compute node. It distinguishes from siblings by mentioning 'Deterministic OpenChainGraph compute node' and 'compliance_mandate', which sets it apart from other test tools like test_bifsg_bias_thresholds or test_hpml_escrow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explains compute modes (auto, server, browser) and when each is used, and advises using synthetic or anonymized inputs. However, it lacks explicit guidance on when to choose this tool over other test tools, missing direct comparisons or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
test_hpml_escrowHPML Definition and Escrow Requirement TestARead-onlyIdempotentInspect
HPML Definition and Escrow Requirement Test: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-220-reg-z-threshold-lookup. Open at: https://ainumbers.co/chaingraph/art-235-test-hpml-escrow.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds significant value by explaining deterministic behavior, transient processing ('inputs are processed transiently... not stored'), no logging, and the requirement for synthetic inputs. It details compute modes (auto, server, browser) and artifact export. This goes well beyond annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of about 8 sentences, concise and front-loaded with the purpose. It efficiently covers compute modes, data handling, and artifact export. However, it could be more structured (e.g., bullet points) for easier scanning. No unnecessary sentences, but the URL at the end is helpful extra context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 an output schema, the description does not specify the format of the response or the artifact details beyond mentioning 'execution_hash'. It covers upstream artifact consumption and data privacy, but omits output structure. For a test tool, this might be acceptable, but completeness for decision-making 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%, so baseline is 3. The description adds meaningful context for the 'compute' parameter by explaining each mode and its implications. For 'policy_parameters', it notes that inputs are computed server-side for certain nodes and directs to the manifest for field names. This enhances understanding beyond 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 is an 'HPML Definition and Escrow Requirement Test' and an 'OpenChainGraph compute node (compliance_mandate)'. It specifies that it computes responses deterministically and exports an AP2 artifact with execution_hash. The verb 'computes' and resource 'HPML Definition and Escrow Requirement Test' are explicit, distinguishing it from sibling tools despite no direct 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 provides usage constraints such as 'Use synthetic or anonymised inputs only' and explains compute modes, but it does not explicitly state when to use this tool versus alternatives. There is no mention of when not to use it or comparisons with sibling tools. The context is implied but not directive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
test_reg_w_affiliate_transactionsReg W Affiliate Transaction TesterARead-onlyIdempotentInspect
Reg W Affiliate Transaction Tester: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-536-reg-w-affiliate-transaction-tester.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, non-destructive), the description discloses deterministic behavior, transient input handling ('not stored, logged, or retained'), export of an AP2 artifact with execution_hash, and the conditional delegation logic for gpu:true nodes. This adds significant value over annotations alone and is fully consistent with them.
Agents need to know what a tool does to the 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 about 100 words and covers essential aspects, but it contains redundancy: 'OpenChainGraph compute node (compliance_control)' and 'Deterministic OpenChainGraph compute node' repeat similar information. The structure is clear and sentences are mostly purposeful, but a tighter phrasing would improve it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema and four parameters, the description explains the compute behavior, input privacy expectations, artifact export, and provides a URL for more information. It does not fully disclose the exact return payload structure (beyond the artifact mention), but given the rich annotations and schema, the description 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?
Schema coverage is 100%, so the baseline is 3. The description enhances parameter understanding by explaining the 'compute' modes in detail (auto/server/browser semantics, gpu:true always delegates) and notes that 'policy_parameters' are computed server-side when applicable, directing users to the manifest for field names. This adds 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 identifies the tool as a 'Reg W Affiliate Transaction Tester' and an 'OpenChainGraph compute node (compliance_control)', specifying both the domain (Reg W affiliate transactions) and the role (testing/compliance). This specific verb+resource combination distinguishes it from sibling tools like generic 'test_*' functions or other compliance testers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 practical usage context: compute modes (auto/server/browser), server-side versus browser delegation, and the explicit guidance 'Use synthetic or anonymised inputs only' due to transient processing. It gives clear context on how to invoke the tool, though it does not explicitly list alternatives or exclusions relative to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_fatca_crs_ro_remediation_closureFATCA/CRS RO Remediation Closure TrackerBRead-onlyIdempotentInspect
FATCA/CRS RO Remediation Closure Tracker: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-491-ro-remediation-closure.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Exceeds annotations by detailing transient processing (no storage/logging), requiring synthetic/anonymized inputs, and exporting an AP2 artifact with execution_hash for chain provenance. Aligns with readOnlyHint and idempotentHint. 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?
Relatively concise (~150 words) covering key aspects: type, compute modes, data processing, export, URL. Front-loaded with name and type. Some redundancy with schema, 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?
Lacks output schema; description only mentions 'AP2 artifact with execution_hash' without detailing return value structure. Provides guidance on input sensitivity but insufficient for an agent to fully anticipate tool 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?
Schema covers 100% of parameters, so baseline is 3. Description adds minimal context (e.g., policy_parameters mentioned as 'decision function' inputs, reference to manifest). No significant 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?
Title suggests a tracking function, but description focuses on compute node mechanics (OpenChainGraph, compute modes, transient processing) without clearly stating what the tool tracks or outputs. The verb 'track' is implied but not explicitly defined in terms of resource or action. It vaguely distinguishes from siblings as a chain graph node.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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., check_fatca_crs_submission_conformance). Missing prerequisites, context, or exclusions. Description is entirely technical about execution modes, leaving the agent without any usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_ifrs17_loss_component_rollforwardIFRS 17 Loss Component Roll-Forward TrackerARead-onlyIdempotentInspect
IFRS 17 Loss Component Roll-Forward Tracker: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-178-ifrs17-csm-rollforward-validator. Open at: https://ainumbers.co/chaingraph/art-448-ifrs17-loss-component-tracker.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description provides extensive behavioral context beyond annotations: it is deterministic, processes inputs transiently without storage, exports an AP2 artifact with execution_hash, details compute modes (server vs browser), and links to a web page. These details far exceed the minimal annotations (readOnly, idempotent, non-destructive).
Agents need to know what a tool does to the 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 front-loaded with the tool's identity and purpose, then proceeds with details. It is concise given the technical complexity, though the mention of 'gpu:false nodes with a registered kernel' could be simplified. Overall, it earns 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?
While the description covers compute modes, data handling, and provenance, it lacks detail on the output format beyond 'exports an AP2 artifact with execution_hash'. No output schema is provided, so the description should have elaborated on the artifact structure. The provided URL partially compensates.
Complex tools with many parameters or behaviors need more documentation. 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 4 parameters with descriptions (100% coverage). The description adds no additional parameter guidance beyond restating the compute modes and referring to the tool's manifest for policy_parameters. Baseline 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?
The description clearly states the tool is an IFRS 17 Loss Component Roll-Forward Tracker, identifying the specific resource and action. It distinguishes itself from the sibling tool 'validate_ifrs17_csm_rollforward' by explicitly consuming its upstream artifact, clarifying its role in the pipeline.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 the tool by linking it to an upstream validator artifact ('Consumes upstream artifacts from...'). It also specifies compute mode selection criteria and warns to use synthetic inputs only. However, it does not explicitly list 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.
validate_a2a_agent_cardA2A Agent Card Validator & Extension CheckerARead-onlyIdempotentInspect
Validate an A2A agent-card.json against the v1.0 shape, check signatures, and confirm extension declarations. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| score | No | |
| findings | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by explaining the tool runs client-side, renders a widget, involves zero PII, and zero network. This complements the readOnlyHint and idempotentHint annotations. However, it could mention error handling 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?
The description consists of two concise sentences: first stating the primary validation function, second explaining the rendering and execution context. No unnecessary words; each sentence serves a clear 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 function, input mechanism, and privacy aspects. However, it does not describe the output schema, which is present in structured metadata. For a validation tool, explaining the return value (e.g., validity status or errors) 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?
The single parameter 'inputs' is described in the schema with 100% coverage. The description adds context by explaining the AIN Bridge prefill and widget rendering, which clarifies how the parameter is used. The description does not conflict with 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 validates an A2A agent-card.json against v1.0 shape, checks signatures, and confirms extension declarations. This clearly distinguishes it from siblings like 'verify_a2a_agent_card' and 'validate_a2a_trust_chain'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. It mentions validation and signature checking but does not contrast with similar tools like 'verify_a2a_agent_card' or indicate prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_a2a_trust_chainA2A Agent-Card Trust-Chain ValidatorARead-onlyIdempotentInspect
A2A Agent-Card Trust-Chain Validator: OpenChainGraph compute node (compliance_mandate). Regulatory deadline: 2026-08 (A2A at Linux Foundation (150+ orgs); EU AI Act Aug 2026 pushes agent KYA toward requirement.). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-04-agent-identity-attestation-checker, art-02-agent-spend-policy-simulator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-32-a2a-agent-card-trust-chain-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant details beyond annotations: deterministic execution, transient processing with no storage, browser delegation for gpu:true nodes, and export of AP2 artifact with execution_hash. Annotations already indicate readOnly, idempotent, non-destructive; 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?
The description is relatively long with regulatory context and a URL, which may be seen as verbose. It is front-loaded with the core purpose but could be more concise by trimming extraneous details like the Linux Foundation membership count and EU AI Act reference.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description explains the export of an AP2 artifact with execution_hash and lists downstream feeds. It covers compute modes, behavior, and usage context well for a tool with nested parameters and regulatory significance.
Complex tools with many parameters or behaviors need more documentation. 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 a baseline of 3. The description enriches parameter meaning: explains compute modes, parent_hashes as upstream execution_hash values, parent_tool_ids as matching tool_ids, and policy_parameters as decision function inputs referencing a manifest. This adds value beyond the schema's brief 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 validates A2A Agent-Card Trust-Chains and is a deterministic OpenChainGraph compute node. The verb 'validate' and resource are specific, but it does not explicitly differentiate from sibling tools like validate_a2a_agent_card, which may 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?
Provides some guidance on compute modes and recommends using synthetic or anonymised inputs. However, it lacks explicit when-not-to-use scenarios or alternatives among the many validate_* siblings, 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.
validate_a2a_x402_mandateA2A x402-Extension Mandate ValidatorARead-onlyIdempotentInspect
A2A x402-Extension Mandate Validator: OpenChainGraph compute node (settlement_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-03-x402-settlement-modeler. Output feeds: art-30-agent-commerce-conformance-validator, cry-05-agent-action-audit-trail-aggregator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-31-a2a-x402-extension-mandate-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses deterministic execution, transient input processing (not stored, logged, or retained), the recommendation to use synthetic inputs, export of execution_hash, and artifact dependencies. These go beyond the annotations (readOnlyHint, idempotentHint, destructiveHint) with actionable 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 thorough but slightly lengthy; however, each sentence contributes unique information (compute modes, transient processing, artifact chain, URL). It efficiently front-loades the tool's identity and 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 (no output schema, nested parameters, high sibling count), the description fully explains the tool's behavior, inputs, outputs (AP2 artifact), execution environment, privacy guarantees, and pipeline positioning. No critical 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 the baseline is 3. The description adds minimal parameter-specific meaning beyond the schema; it re-emphasizes compute modes but does not introduce new field-level 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 it is an 'A2A x402-Extension Mandate Validator' and an 'OpenChainGraph compute node (settlement_mandate)'. It provides a specific verb-resource pair (validate mandate) with detailed context on compute modes and artifact outputs, distinguishing it from sibling tools through its specialized 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 explains the tool's role in a data pipeline (consumes upstream, feeds downstream) and its deterministic nature, but does not explicitly state when to use this tool over alternatives. The usage context is implied but lacks direct comparisons or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_acp_checkoutACP Checkout Conformance ValidatorARead-onlyIdempotentInspect
ACP Checkout Conformance Validator: OpenChainGraph compute node (payment_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-01-ap2-mandate-chain-validator. Output feeds: ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-12-acp-checkout-conformance-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnly, idempotent, non-destructive; description adds deterministic behavior, transient processing, no storage, execution hash provenance, and advice to use synthetic inputs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Packed with relevant information; front-loaded purpose; each sentence adds value, though could be slightly more 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?
Covers compute modes and input handling well, but lacks detailed description of output artifact structure; no output schema exists to 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%; description adds context for compute enum behavior and chaining purpose for parent_hashes/parent_tool_ids, beyond 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?
Clearly identifies as ACP Checkout Conformance Validator, a deterministic OpenChainGraph compute node, distinguishing it from numerous sibling validation 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 compute mode selection details and transient input caveats, but lacks explicit guidance on when to use this tool vs. alternative validation tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_adverse_action_noticeValidate Adverse Action NoticeARead-onlyIdempotentInspect
Validate Adverse Action Notice: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-228-build-adverse-action-notice. Open at: https://ainumbers.co/chaingraph/art-227-validate-adverse-action-notice.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it states the tool is deterministic, processes inputs transiently without storage, exports an AP2 artifact with execution_hash, and advises using synthetic/anonymised inputs. This complements the readOnlyHint and idempotentHint annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with purpose, then compute modes, data handling, output, and dependencies. It is concise but includes all necessary information. Minor redundancy (repeating 'Deterministic OpenChainGraph compute node') does not detract significantly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, execution modes, data privacy, output artifact, and chain dependencies. For a tool with 4 parameters and no output schema, this is adequate. It could explain the validation logic or output structure in more detail, but 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?
With 100% schema description coverage, the baseline is 3. The description re-emphasizes compute modes and mentions policy_parameters but does not add new semantic information beyond the schema. No extra details for parent_hashes or parent_tool_ids.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 adverse action notice within the OpenChainGraph system. It specifies it is a deterministic compute node for compliance mandates and explicitly references its upstream dependency (art-228-build-adverse-action-notice), distinguishing it from the sibling tool build_adverse_action_notice.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 should be used after building the notice by stating it consumes upstream artifacts from the build tool. Compute mode options provide execution context, but explicit exclusions or alternatives are not provided. The implied usage 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.
validate_agent_audit_trailAgent Audit Trail Conformance Validator (IETF AAT)ARead-onlyIdempotentInspect
Agent Audit Trail Conformance Validator (IETF AAT): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-236-build-ai-decision-log-record. Open at: https://ainumbers.co/chaingraph/art-237-validate-agent-audit-trail.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds critical behavioral information beyond annotations: inputs are transiently processed and not stored/logged/retained, use synthetic inputs only, and exports AP2 artifacts. Annotations declare readOnlyHint, idempotentHint, etc., and description does not contradict them.
Agents need to know what a tool does to the 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 reasonably concise for the amount of detail, though slightly verbose. It front-loads the core purpose and then provides structured additional 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 4 parameters (including nested object) and no output schema, the description fully covers purpose, compute modes, transient processing, provenance, and related artifacts, making it complete for agent 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% with detailed descriptions for all 4 parameters. The description adds minor context (e.g., 'execution_hash values from upstream') but mostly restates schema info, 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 validates agent audit trail conformance (IETF AAT) as a deterministic OpenChainGraph compute node, which is specific and distinguishes 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 context on compute modes (auto, server, browser) and when gpu:true nodes delegate, but does not explicitly name alternatives among siblings 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.
validate_agent_commerce_conformanceAgent Commerce Cross-Protocol Conformance ValidatorARead-onlyIdempotentInspect
Agent Commerce Cross-Protocol Conformance Validator: OpenChainGraph compute node (payment_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-01-ap2-mandate-chain-validator, art-12-acp-checkout-conformance-validator, art-03-x402-settlement-modeler. Output feeds: cry-05-agent-action-audit-trail-aggregator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-30-agent-commerce-conformance-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description adds value by explaining transient data processing, compute mode mechanics, and export artifact details. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with identity and compute modes, includes essential details on data handling and artifact links. Some technical verbosity, but no 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?
Despite no output schema, the description provides a good level of detail: consumed/output artifacts, compute behavior, data transience, and a link for further reference. Adequately covers 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 coverage is 100% with parameter descriptions. The description adds minimal extra meaning, mostly repeating schema info (e.g., compute modes). The deferral to 'tool's manifest' for policy_parameters reduces 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 title and description clearly identify the tool as an OpenChainGraph compute node for payment_mandate conformance validation. It details compute modes and artifact links, distinguishing it from siblings through specificity of artifact chain and compute 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?
Provides guidance on input sensitivity ('synthetic or anonymised inputs only') and compute mode selection, but does not explicitly differentiate from sibling tools or state when to use this tool over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_agent_obo_mandateAgent On-Behalf-Of (OBO) Mandate ValidatorARead-onlyIdempotentInspect
Agent On-Behalf-Of (OBO) Mandate Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-150-mcp-tool-scope-revocation-auditor. Output feeds: art-152-mcp-task-lifecycle-validator. Open at: https://ainumbers.co/chaingraph/art-151-agent-obo-mandate-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), the description adds that inputs are transiently processed (not stored/logged/retained) and that the node is deterministic. It also explains compute delegation 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 concise and front-loaded with purpose. It is a single paragraph that covers key points without waste, though it could be more structured (e.g., bullet points).
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 params, nested objects, no output schema), the description covers inputs, compute modes, chaining, and transient processing. It also provides a link for further details and mentions consumed/upstream artifacts.
Complex tools with many parameters or behaviors need more documentation. 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%, achieving baseline 3. The description adds context about compute modes and chaining via parent_hashes 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?
The description clearly states the tool validates Agent On-Behalf-Of mandates and is a deterministic OpenChainGraph compute node. It specifies the verb 'validates' and the resource 'Agent On-Behalf-Of Mandate' but does not explicitly distinguish it from sibling validation 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 advises using synthetic or anonymised inputs and explains compute modes ('auto', 'server', 'browser'). It mentions consumed and output artifacts but lacks explicit when-not-to-use or alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_ai_impact_assessmentAI Risk Impact Assessment ValidatorARead-onlyIdempotentInspect
AI Risk Impact Assessment Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-171-iso42001-aims-clause-conformance. Output feeds: art-173-ai-system-governance-classifier. Open at: https://ainumbers.co/chaingraph/art-172-ai-risk-impact-assessment-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds critical details: 'Deterministic', inputs processed transiently and not stored, require synthetic/anonymised inputs, exports AP2 artifact with execution_hash, and GPU node delegation behavior. This goes beyond annotations to clearly communicate privacy and execution 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 relatively concise given the complexity, front-loading the purpose and key behaviors. It uses bullet-like phrasing for constraints. Minor redundancy (e.g., 'Deterministic' repeated) could be trimmed, 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?
The description mentions it exports an AP2 artifact with execution_hash and lists upstream/downstream artifacts, which provides chain context. However, it does not describe the output format or structure, and there is no output schema to compensate. For a tool that produces an artifact, more output details 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?
All 4 parameters are fully described in the schema (100% coverage). The description restates compute mode options and mentions policy_parameters but adds no new semantic value 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 title 'AI Risk Impact Assessment Validator' and description 'OpenChainGraph compute node (compliance_mandate)' clearly indicate it validates AI impact assessments. However, the description could be more concise and directly state 'Validates an AI risk impact assessment' as a primary verb+resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes (auto/server/browser) and mentions upstream/downstream artifacts, but does not explicitly state when to prefer this tool over sibling validation tools like 'validate_ai_act_conformity' or 'validate_model_validation_status'. Usage context is implied but not directly guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_ap2_mandate_chainAP2 Mandate-Chain ValidatorBRead-onlyIdempotentInspect
AP2 Mandate-Chain Validator: OpenChainGraph compute node (payment_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-02-agent-spend-policy-simulator, art-03-x402-settlement-modeler, art-04-agent-identity-attestation-checker, art-12-acp-checkout-conformance-validator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-01-ap2-mandate-chain-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| has_cart | No | |
| checks_run | No | |
| mandate_ids | No | |
| failing_checks | No | |
| warning_checks | No | |
| human_not_present | No | |
| validation_verdict | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent/non-destructive annotations, the description adds valuable behavioral context: inputs are processed transiently and not stored/logged/retained, compute:browser returns a browser delegation URL, and gpu:true nodes always delegate to the browser. It also notes the tool is deterministic, aligning with the idempotentHint. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured but contains redundancy: 'OpenChainGraph compute node' appears twice. It includes a human-oriented URL that isn't useful for tool selection. Each sentence otherwise adds information, but the repetition and extraneous URL make it less concise than it could be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 includes compute mode details, data retention guarantees, and downstream output feeds, which helps situate the tool. However, it doesn't explain what a mandate chain is, what validation entails, or how to construct parent_hashes/policy_parameters beyond the schema's minimal descriptions. The output schema likely covers return values, but domain context is missing for an AI 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?
Input schema covers 100% of parameters with descriptions, so the baseline is 3. The description mentions compute modes and defaults, but these are already present in the schema's compute parameter description. No additional parameter semantics beyond the schema are provided in the 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 identifies the tool as an 'AP2 Mandate-Chain Validator' and a 'deterministic OpenChainGraph compute node', but it never explicitly states what validation it performs or what a mandate chain is. It mentions exporting an AP2 artifact with execution_hash for chain provenance, which implies the core function, but the purpose is not directly articulated and could be confused with sibling validators like validate_ap2_mandate_credential.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 constraint to 'Use synthetic or anonymised inputs only' and explains compute modes (server vs browser) and delegation behavior. However, it doesn't state when to choose this tool over alternatives or what scenarios mandate-chain validation is appropriate for. The output feeds list gives some indication of downstream consumers, but no 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.
validate_ap2_mandate_credentialAP2/MCP Policy ValidatorBRead-onlyIdempotentInspect
AP2/MCP Policy Validator: OpenChainGraph compute node (scheme_rule). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-16-google-ap2-mandate-builder, art-27-agentic-readiness-diagnostic. Output feeds: art-18-mcp-developer-readiness-scorecard. Open at: https://ainumbers.co/chaingraph/art-17-ap2-mcp-policy-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only/idempotent safety; the description adds crucial context: inputs are transient and not stored, compute mode controls server vs. browser delegation, and it exports an execution_hash for chain provenance. 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?
The description is dense but each sentence conveys relevant information about execution, data handling, and integration. It could be better structured (e.g., separated sections), but it's appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema is present, and the description only vaguely mentions 'exports an AP2 artifact with execution_hash' without specifying the validation outcome or result format. The tool's core validation behavior remains opaque, making it hard for an agent to know what it will receive.
Complex tools with many parameters or behaviors need more documentation. 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 description adds meaning by explaining that policy_parameters are inputs to the decision function and how compute modes affect their evaluation, plus references the manifest for field names. This enriches 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 identifies it as a 'Policy Validator' and 'OpenChainGraph compute node' but never states what credentials or policies are validated or what constitutes a valid result. It focuses on compute mechanics rather than the validation domain, making it hard to distinguish from siblings like validate_ap2_mcp_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?
It provides a clear constraint ('Use synthetic or anonymised inputs only') and explains compute mode selection, but it doesn't explicitly state when to choose this tool over sibling validators or when it should be invoked in a pipeline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_ap2_mcp_policyAP2 MCP Policy Validator & BridgeARead-onlyIdempotentInspect
Validate AP2 Policy Mandate JSON payloads against the Unified Build Contract v1.0 schema. Auto-generates MCP tool definitions from the mandate and simulates agent ingestion of agent_instructions. Use when authoring or testing AP2 agentic payment policies. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| valid | No | |
| export_json | No | |
| schema_errors | No | |
| mcp_tool_definition | No | |
| agent_ingestion_simulation | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive. Description adds client-side execution (zero PII, zero network) and notes auto-generation/simulation side effects, adding value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise and front-loaded with the primary purpose. Additional details are provided without excessive verbosity. Could be slightly more structured but 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?
Covers core validation, usage context, and behavior (client-side, no PII). Since output schema exists, it is acceptable not to describe return values. Additional capabilities are 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?
Schema coverage is 100% with a description for the 'inputs' parameter. The description adds that inputs are applied via the AIN Bridge prefill, which provides minor additional 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?
Clearly states it validates AP2 Policy Mandate JSON against a specific schema, and describes additional capabilities (auto-generation, simulation). However, it does not explicitly differentiate from similar sibling tools like validate_ap2_mandate_chain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 use when authoring or testing AP2 agentic payment policies, providing clear context. Does not mention when not to use or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_audit_trail_completenessAudit-Trail Completeness AttestationCRead-onlyIdempotentInspect
Audit-Trail Completeness Attestation: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-517-audit-trail-completeness.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds valuable behavioral context beyond the annotations: it explains compute modes (auto/server/browser), notes that inputs are processed transiently and not stored/logged/retained, and clarifies that the tool exports a chain-provenance artifact. While annotations already indicate read-only and idempotent behavior, the description enriches this with specific execution and privacy details, which is exactly what the annotation bar allows credit for.
Agents need to know what a tool does to the 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 run-on paragraph with redundant phrases: it says 'OpenChainGraph compute node' twice and repeats the compute-mode behavior nearly verbatim from the schema. It is not front-loaded with a crisp one-line purpose, and the URL at the end is distracting. The density is mediocre and could be tightened significantly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema and four parameters including nested objects, the description should explain what the tool returns and what 'audit-trail completeness' means in practice. It only says 'Exports an AP2 artifact with execution_hash,' leaving ambiguity about the actual return value and the validation logic. The compute and privacy details are helpful, but the core domain semantics (what is being attested and how) are missing, making the description incomplete for a tool of this 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 the schema fully describes all four parameters. The description repeats the compute-mode logic already present in the schema but does not add explicit meaning for parent_hashes, parent_tool_ids, or policy_parameters. Since the schema does the heavy lifting, a baseline of 3 is appropriate; the description adds little beyond restating schema content.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with the title and identifies this as an OpenChainGraph compute node for compliance mandates, but it never states with a specific verb what the tool actually does (e.g., 'validates that an audit trail is complete'). It mentions exporting an AP2 artifact, which implies attestation, but the primary function is vague and not distinguished from the many other validate_* 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 is provided on when to use this tool versus alternatives. The only operational instruction is to use synthetic or anonymised inputs, which is about input handling rather than tool selection. There is no mention of alternatives or exclusion criteria, so an agent would not know how to pick this tool over similar validation/attestation tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_c2pa_manifestC2PA Content Credential Manifest ValidatorARead-onlyIdempotentInspect
C2PA Content Credential Manifest Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-124-content-credential-signature-verifier. Open at: https://ainumbers.co/chaingraph/art-123-c2pa-manifest-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses deterministic behavior, transient processing (no storage/logging/retention), compute mode delegation details, and that gpu:true nodes always delegate to browser. These go beyond annotations (readOnlyHint, idempotentHint, destructiveHint) and fully inform the agent of side effects and data 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?
Four sentences covering key aspects: purpose, determinism, compute modes, transient processing and input warnings, output artifact. Could be slightly more concise but as a whole effectively communicates without 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 compute modes, transient nature, input constraints, artifact output, and downstream verifier. Lacks a description of the return value format (e.g., validation result structure), but given no output schema, the description still gives enough context for an 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?
Adds meaning beyond the schema: explains that parent_hashes come from upstream ChainGraph AP2 artifacts, clarifies compute mode enum semantics, and notes policy_parameters are for the decision function with a reference to the manifest schema. Schema coverage is 100%, so the description provides complementary 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 validates C2PA content credential manifests, specifies it's an OpenChainGraph compute node with a compliance mandate, and the name reinforces the purpose. It distinguishes from sibling validators by focusing on C2PA manifests.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute mode selection (auto/server/browser), warns to use synthetic or anonymised inputs only, and links to a downstream verifier. Could be more explicit about when to use this tool versus alternatives, but the context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_canton_dvp_atomicityCanton DvP Atomicity ValidatorARead-onlyIdempotentInspect
Canton DvP Atomicity Validator: OpenChainGraph compute node (settlement_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: 505-tokenized-collateral-eligibility-checker. Open at: https://ainumbers.co/tools/507-canton-dvp-atomicity-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| pacs008 | No | |
| verdict | No | |
| finality_flag | No | |
| herstatt_flag | No | |
| atomicity_flag | No | |
| execution_hash | No | |
| compliance_flags | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by explicitly stating that inputs are 'processed transiently' and 'not stored, logged, or retained', requiring 'synthetic or anonymised inputs only'. It also emphasizes deterministic execution and chain provenance via execution_hash. These details significantly enhance transparency beyond the readOnlyHint and idempotentHint 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 a single paragraph that covers purpose, compute modes, processing behavior, output artifact, and output feed in a concise manner. Every sentence adds value, though the information could be more structured (e.g., bullet points for compute modes).
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 does not need to explain return values. It covers key contextual aspects: compute mode behavior, input safety, output chain provenance, and downstream feed. However, it could elaborate on the specific validation logic (e.g., what atomicity properties are checked) to be 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%, so baseline is 3. The description does not add detailed semantics beyond the schema's parameter descriptions. It mentions compute modes and their effects but does not elaborate on parent_hashes, parent_tool_ids, or policy_parameters 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 identifies the tool as a 'Canton DvP Atomicity Validator' and an 'OpenChainGraph compute node (settlement_mandate)'. It differentiates from siblings by specifying the DvP atomicity focus and mentioning the output feed to '505-tokenized-collateral-eligibility-checker'. However, the exact nature of 'validate' (what atomicity property is checked) is not explicitly stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 detailed guidance on compute modes (auto, server, browser) and when to use each, including conditional delegation logic. However, it does not provide explicit guidance on when to use this tool versus other sibling validation tools, such as validate_canton_party_allowlist or validate_canton_selective_disclosure.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_canton_party_allowlistCanton Party Allowlist ValidatorARead-onlyIdempotentInspect
Canton Party Allowlist Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/tools/509-canton-party-allowlist-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| party_results | No | |
| compliance_flags | No | |
| portfolio_verdict | No | |
| iso20022_party_identification | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint. The description adds significant context: inputs are processed transiently, not stored/logged, and it exports an AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with the core purpose, then compute mode details, privacy note, and output. 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 tool's complexity (4 params, nested object, compute modes), the description covers core behavior, privacy constraints, output artifact, and usage conditions adequately. No output schema is needed per instructions.
Complex tools with many parameters or behaviors need more documentation. 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 4 parameters. The description adds no additional parameter-level 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 it's a validator for a Canton Party Allowlist and mentions it's an OpenChainGraph compute node with compliance mandate. The verb 'validate' plus resource is specific, but among many sibling validation tools, the description does not explicitly differentiate beyond the 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?
Description advises to use synthetic or anonymised inputs only and explains compute modes (auto, server, browser) and when they apply. However, it does not provide when not to use this tool or mention alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_canton_selective_disclosureCanton Selective-Disclosure DvP Reconciliation AttestationARead-onlyIdempotentInspect
Canton Selective-Disclosure DvP Reconciliation Attestation: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: 507-canton-dvp-atomicity-validator. Output feeds: cry-01-zk-compliance-proof-generator. Open at: https://ainumbers.co/chaingraph/art-108-canton-selective-disclosure.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint, idempotentHint, destructiveHint. Description adds that inputs are processed transiently and not stored, compute mode behavior, and that it exports an AP2 artifact with execution_hash. This adds significant context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact yet covers purpose, compute modes, data handling, output format, and pipeline links. Every sentence contributes meaningful 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?
The description covers compute behavior, privacy, artifact export, and pipeline dependencies. It lacks explicit output format but implies via 'exports AP2 artifact'. For a complex tool, this 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% with detailed parameter descriptions. Description adds minor context (e.g., gpu:true behavior for compute, reference to manifest for policy_parameters). Overall, description adds some value but schema already does 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 tool is an 'OpenChainGraph compute node (attestation_mandate)' for 'Canton Selective-Disclosure DvP Reconciliation Attestation'. It uses specific verb+resource and distinguishes from siblings by being a deterministic attestation node in a pipeline.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, server, browser) and when each applies (e.g., gpu:true always delegates). It advises to use synthetic/anonymised inputs. It does not explicitly list alternatives but provides pipeline context (upstream/downstream).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_cat_bond_trigger_termsCat Bond Trigger Terms ValidatorBRead-onlyIdempotentInspect
Cat Bond Trigger Terms Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-251-compute-parametric-trigger-payout. Open at: https://ainumbers.co/chaingraph/art-252-validate-cat-bond-trigger-terms.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds value by detailing compute behavior (auto/server/browser modes), transient processing with no storage, deterministic execution, and export of an AP2 artifact with execution_hash. This goes beyond the annotations and provides meaningful insight into the tool's runtime behavior. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively long and includes detailed technical execution details that may not be essential for understanding the tool's core function. It front-loads the purpose but then dives into compute modes, transient processing, and artifact export. Some sentences could be consolidated. It is structured but 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 has 4 parameters including a nested object, no output schema, and the description does not describe the validation result or output format. While it explains compute contexts and transient processing, it omits what a successful or failed validation looks like, the relationship between policy_parameters and the validation logic, and any error conditions. This leaves significant gaps for an agent to understand the tool's full behavior.
Complex tools with many parameters or behaviors need more documentation. 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 (compute, parent_hashes, parent_tool_ids, policy_parameters) having a description. The tool description adds minimal additional semantics, mostly reiterating the compute mode options. No new meaning is added for policy_parameters or parent_hashes beyond what the schema already explains. 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 title 'Cat Bond Trigger Terms Validator' and the initial phrase clearly identify the tool's domain. However, the description focuses on compute execution details (e.g. Cloudflare Workers, browser delegation) rather than explicitly stating what validation criteria or logic is applied to the trigger terms. The purpose is clear enough to distinguish from siblings like 'compute_parametric_trigger_payout', but lacks specificity on the validation function itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 that it consumes upstream artifacts from 'art-251-compute-parametric-trigger-payout', hinting at a sequential usage pattern. However, it provides no explicit guidance on when to use this tool versus alternatives, no when-not-to-use conditions, and no comparison with sibling validation tools. The only usage instruction is a warning to use synthetic inputs, which is a constraint rather than a guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_cctp_v2_transferArc CCTP v2 Transfer ValidatorCRead-onlyIdempotentInspect
Arc CCTP v2 Transfer Validator: OpenChainGraph compute node (settlement_mandate). Regulatory deadline: 2026-07-31 (CCTP v1 manual relay phase-out begins 31 Jul 2026 (Circle announcement). All v1 integrations must migrate.). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-42-arc-fit-diagnostic. Open at: https://ainumbers.co/chaingraph/art-47-arc-cctp-transfer.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable context: inputs are processed transiently and not stored, logged, or retained; compute mode behaviors (server vs browser); and that it exports an AP2 artifact. This goes beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a dense paragraph with a regulatory deadline, compute details, and a URL tacked at the end. It is not front-loaded with a clear purpose statement and contains extraneous information that could be in separate fields or stripped down.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes and data handling, it fails to explain what 'validation' entails (e.g., what criteria are checked, what success/failure looks like). No output schema exists, and the description does not describe return values. This leaves significant gaps for a validation 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, describing all 4 parameters. The description repeats some of that (compute mode behavior) but does not add significant 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 starts with 'Arc CCTP v2 Transfer Validator: OpenChainGraph compute node (settlement_mandate).' It does not give a direct, explicit statement of what the tool validates. The core purpose is implied rather than clear, and it fails to differentiate from other validation sibling tools like validate_acp_checkout or validate_a2a_trust_chain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 regulatory deadline for CCTP v1 migration, hinting at when to use this tool, but it does not explicitly state when to use it versus alternatives. No when-to-use, when-not-to-use, or comparison with sibling validation tools is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_collateral_swap_eligibilityCollateral Swap Eligibility ValidatorARead-onlyIdempotentInspect
Collateral Swap Eligibility Validator: OpenChainGraph compute node (collateral_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: 505-tokenized-collateral-eligibility-checker, 507-canton-dvp-atomicity-validator. Open at: https://ainumbers.co/tools/515-collateral-swap-eligibility-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as read-only, idempotent, and non-destructive. The description adds significant behavioral detail: it is deterministic, inputs are not stored or logged, it exports an AP2 artifact with execution_hash, and compute modes are fully explained (server-side vs browser delegation). This goes beyond annotations and provides clear safety and execution 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 information-dense and well-structured, starting with purpose, then compute modes, data handling, output artifact, upstream dependencies, and a link. Every sentence adds value without repetition. Given the technical complexity, the length is appropriate and not overly 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?
The description explains compute modes, data handling, and the exported artifact, but it omits explicit details about the validation output format (e.g., boolean, report) and the criteria for eligibility. It relies on upstream artifacts, but the output structure is unclear. No output schema exists to compensate, leaving a gap for an agent invoking the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 for key parameters. It explains the compute modes and conditions for 'auto', 'server', and 'browser'. It clarifies that parent_hashes and parent_tool_ids are for chaining from upstream artifacts. For policy_parameters, it describes its role as the input for the decision function and when it is computed. This enriches 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 title and description clearly state the tool's purpose: validating collateral swap eligibility via an OpenChainGraph compute node. It mentions deterministic computation and consumption of upstream artifacts, which provides some differentiation from siblings like 'check_tokenized_collateral_eligibility' and 'validate_canton_dvp_atomicity'. However, it does not explicitly distinguish when to use this tool versus its siblings, leaving some 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?
The description implies usage after upstream tools (consumes artifacts from specific tools) and instructs to use synthetic or anonymised inputs only. It also explains compute modes and conditions for server vs browser execution. However, it lacks explicit guidance on when to choose this tool over alternatives or prerequisites beyond the upstream artifacts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_commission_hierarchyCommission Hierarchy ValidatorARead-onlyIdempotentInspect
Commission Hierarchy Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-266-reconcile-commission-statement. Open at: https://ainumbers.co/chaingraph/art-264-validate-commission-hierarchy.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it discloses that inputs are 'processed transiently and are not stored, logged, or retained', explains deterministic compute modes, and mentions the exported AP2 artifact. This aligns with and enriches the annotation hints (readOnlyHint, idempotentHint).
Agents need to know what a tool does to the 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 efficient, covering key points in a single paragraph without excess. It is front-loaded with the purpose and compute mode explanation. Could benefit from slight restructuring (e.g., bullet points) but remains 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 complexity (compute node with multiple modes) and lack of output schema, the description covers the essential behavioral and usage aspects, including output artifact mention and a reference link. However, it doesn't describe the response format or error handling, leaving 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 the baseline is 3. The description adds limited value beyond the schema: it clarifies that policy_parameters are computed server-side when appropriate and directs to the manifest for field names. This is helpful but not extensive.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'Commission Hierarchy Validator' and an 'OpenChainGraph compute node (compliance_mandate)', specifying its role in validating commission hierarchies. However, it does not explicitly differentiate this tool from other validation-oriented sibling tools, though the name provides some 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?
The description provides clear guidance on input usage ('Use synthetic or anonymised inputs only') and explains compute mode selection (auto/server/browser) with conditions for server vs browser execution. It does not explicitly state when to use this tool versus alternatives, but the context is helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_content_binding_assertionContent Binding Assertion ValidatorBRead-onlyIdempotentInspect
Content Binding Assertion Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-127-dual-layer-disclosure-verifier. Open at: https://ainumbers.co/chaingraph/art-128-content-binding-assertion-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, non-destructive. The description adds significant context: inputs are transient and not stored, compute modes and delegation to browser are explained, and it mentions the execution environment (Cloudflare Workers). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but contains technical jargon and a URL. It is structured as a few sentences but could be tighter. Every sentence adds value, but some may be overly specific (e.g., the browser delegation behavior).
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, the description explains the output (exports AP2 artifact with execution_hash) and mentions upstream artifact consumption. It also covers compute modes and data handling. Fairly complete for a validation 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 parameters are well-documented in the schema. The description adds minimal extra meaning, mainly reiterating compute mode details already in 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 is a validator for content binding assertions within the OpenChainGraph framework. It also notes it is a deterministic compute node that exports an AP2 artifact with execution_hash. However, it does not explicitly differentiate from sibling tools, which all have distinct names and 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 lacks guidance on when to use this tool versus alternatives. It does mention that synthetic or anonymised inputs should be used, which is a constraint, but there is no comparison to other tools or explicit when-to-use advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_cross_network_settlementCross-Network Atomic Settlement ValidatorBRead-onlyIdempotentInspect
Cross-Network Atomic Settlement Validator: OpenChainGraph compute node (settlement_mandate). Regulatory deadline: 2026-Q3 (ECB Pontes TARGET-link pilot end-Q3 2026; DTCC Collateral AppChain full production Oct 2026. Verify cross-network coordination patterns against current primary sources.). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-56-tokenized-settlement-fit-diagnostic, art-59-settlement-asset-finality-classifier. Output feeds: 507-canton-dvp-atomicity-validator, 511-multi-currency-pvp-validator, cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-58-cross-network-settlement-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, etc., but the description adds valuable context: inputs are transiently processed, not stored, and only synthetic/anonymized inputs should be used. It also explains compute modes and output artifacts. No contradiction with annotations. The description enhances transparency beyond annotations, earning a high score.
Agents need to know what a tool does to the 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 overly verbose, mixing core purpose with regulatory deadlines, links, compute mode details, and data handling policies. It lacks clear structure and front-loading of essential information. Each sentence is not concise, and the description could be significantly shortened without losing 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?
Given the tool's complexity (4 parameters, nested objects, no output schema), the description covers many aspects: purpose, compute modes, data handling, upstream/downstream links. However, it lacks explicit usage guidelines and detailed explanation of the output artifact. It is mostly complete but has gaps, especially in guiding selection among siblings.
Complex tools with many parameters or behaviors need more documentation. 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 does not need to compensate. It adds minor context for parameters (e.g., explaining parent_hashes set chain.parent_hashes, compute mode behavior). However, it does not provide deep parameter-level guidance beyond what the schema already states. 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 validates cross-network atomic settlements and specifies the verb 'verify cross-network coordination patterns'. It also names the tool as a validator, making the purpose apparent. However, the description is cluttered with regulatory deadlines and compute mode details, which slightly dilute the core purpose. It does not explicitly distinguish from sibling tools, but the name and context are specific enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 the many sibling tools. It mentions upstream and downstream dependencies, which imply a workflow, but does not state conditions or exclusions. No 'when-to-use' or 'alternatives' are provided, making it hard for an agent to choose 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.
validate_cyclonedx_sbomCycloneDX SBOM Validator (EU CRA Annex I)ARead-onlyIdempotentInspect
CycloneDX SBOM Validator (EU CRA Annex I): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-136-slsa-provenance-verifier. Open at: https://ainumbers.co/chaingraph/art-135-cyclonedx-sbom-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint true, idempotentHint true, destructiveHint false. The description adds: inputs are transiently processed, not stored/logged/retained, and it exports an AP2 artifact with execution_hash for chain provenance. This provides rich behavioral clarity beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description contains several sentences with technical jargon (e.g., 'OpenChainGraph compute node', 'AP2 artifact'), which could be streamlined. It includes an open URL and is somewhat verbose for the core 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 covers compute modes, data handling, and output artifact, but lacks detail on the validation result format (no output schema). It mentions the compliance mandate but does not specify what the validator checks within the SBOM, leaving some ambiguity.
Complex tools with many parameters or behaviors need more documentation. 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 repeats compute modes but does not explain policy_parameters fields, referring to a manifest instead. No additional meaning beyond schema 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 clearly identifies the tool as a CycloneDX SBOM validator for EU CRA Annex I, specifying the resource (CycloneDX SBOM) and action (validate). It distinguishes from siblings by referencing the specific standard and its role in OpenChainGraph.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, browser, server) and when to use each, along with a note to use synthetic inputs. It mentions the output feeds to another tool, aiding chaining decisions. However, it does not explicitly compare to alternative validators 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.
validate_deposit_token_complianceDeposit-Token Compliance ValidatorBRead-onlyIdempotentInspect
Deposit-Token Compliance Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-56-tokenized-settlement-fit-diagnostic. Output feeds: 510-digital-asset-regulatory-classifier, cry-04-merkle-batch-verifier, art-59-settlement-asset-finality-classifier. Open at: https://ainumbers.co/chaingraph/art-57-deposit-token-compliance-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotent, read-only, non-destructive. Description expands on compute modes (auto/server/browser), transient processing of inputs, no storage, and artifact export. This adds valuable behavioral detail beyond annotations, though some compute details are schema-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 verbose, repeating the title and using redundant phrases (e.g., 'OpenChainGraph compute node' twice). It mixes compute mode details, input handling, and artifact lineage in a dense paragraph. Could be more structured 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?
Covers compute modes, transient processing, and artifact dependencies. However, it does not describe the output artifact's content or structure (no output schema), which is a gap given the tool's validation purpose. The description is competent but not complete for an agent to fully understand return value.
Complex tools with many parameters or behaviors need more documentation. 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 is well-documented in the schema. The description text restates some compute details but does not add significant meaning beyond the schema. 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?
The title and description establish it as a compliance validator for deposit tokens using OpenChainGraph. The purpose is clear but could be more explicitly stated as a validation operation; the jargon ('compute node', 'compliance_mandate') adds specificity but slightly obscures the core 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. It lists upstream and downstream artifacts, which provides context but does not help an agent decide between this and other validation tools (e.g., validate_tempo_token_compliance). Minimal usage framing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_dpp_data_carrierEU ESPR Digital Product Passport Data Carrier ValidatorARead-onlyIdempotentInspect
EU ESPR Digital Product Passport Data Carrier Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-116-product-lineage-builder. Open at: https://ainumbers.co/chaingraph/art-115-dpp-data-carrier-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond annotations: transient processing with no storage/logging, explicit requirement for synthetic/anonymized inputs, deterministic behavior, compute mode delegation rules, and chain provenance. All consistent with idempotentHint and readOnlyHint.
Agents need to know what a tool does to the 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 reasonably concise and front-loaded with the purpose. However, some technical jargon (e.g., 'OpenChainGraph compute node (compliance_mandate)') could be streamlined. Every sentence is relevant but the first few could be more direct.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 params including nested objects and no output schema, the description covers compute modes, transient processing, output artifact type, and links to a webpage. It does not specify the validation outcome format (e.g., boolean, error codes) which is a minor gap given the 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. The description adds context for the 'compute' parameter by explaining default behavior and different modes, and clarifies the transient processing for policy_parameters. However, it does not add detail for parent_hashes or parent_tool_ids 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 title clearly indicate it validates EU ESPR DPP data carriers. However, the description focuses more on the compute node mechanics than explicitly stating the validation function. A clearer verb like 'validates the structure and compliance of DPP data carriers' would improve 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?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or exclusions. The compute mode options are explained but not in the context of usage decisions. 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.
validate_dtcc_ca_iso20022_messageDTC Corporate Actions ISO 20022 Message ValidatorARead-onlyIdempotentInspect
DTC Corporate Actions ISO 20022 Message Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-547-corporate-action-entitlement-recompute. Open at: https://ainumbers.co/chaingraph/art-546-dtcc-ca-iso20022-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond annotations: it specifies deterministic compute, transient input processing with no storage/logging, server/browser delegation behavior, and AP2 artifact export with execution_hash. These details go beyond the readOnlyHint/idempotentHint/destructiveHint 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 verbose and contains redundancy: 'OpenChainGraph compute node' appears twice in the first two sentences. While information-dense, it could be tightened without losing 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?
The description explains compute architecture, data handling, and output artifact, but omits the actual validation logic or what constitutes a valid DTC CA ISO 20022 message. The policy_parameters object is left vague with no field names (relies on an external manifest), and no output schema exists to clarify the response 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?
The schema already covers all four parameters with 100% descriptions, and the description's mention of compute:'auto' largely repeats the compute field's schema description. No additional semantics are provided for parent_hashes, parent_tool_ids, or policy_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 title and opening phrase 'DTC Corporate Actions ISO 20022 Message Validator' clearly identify the tool's domain and resource, distinguishing it from sibling validators. However, the description frames it as an 'OpenChainGraph compute node' without an explicit verb like 'validates', making the exact action somewhat implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes, the synthetic-input-only requirement, and that the output feeds 'art-547-corporate-action-entitlement-recompute', which implies downstream utility. But it does not explicitly state when to use this tool over alternatives or when not to use it, so guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_dtc_tokenized_treasuryDTC-Custodied Tokenized U.S. Treasury Issuance & DvPBRead-onlyIdempotentInspect
DTC-Custodied Tokenized U.S. Treasury Issuance & DvP: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: 510-digital-asset-regulatory-classifier. Output feeds: 507-canton-dvp-atomicity-validator. Open at: https://ainumbers.co/chaingraph/art-109-dtc-tokenized-treasury.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds value beyond annotations: it explicitly states determinism, transient input processing (not stored/logged/retained), and the requirement for synthetic/anonymised inputs. This aligns with readOnlyHint and idempotentHint annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is 5 sentences and includes necessary technical details, but it is dense and could be trimmed. It front-loads the title but mixes compute mode explanations with usage context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 including a nested object, no output schema, the description covers compute modes, transient nature, input restrictions, and provenance chain. However, it does not detail the output shape beyond 'AP2 artifact with execution_hash,' leaving some ambiguity.
Complex tools with many parameters or behaviors need more documentation. 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's own descriptions, e.g., 'Compute mode (v0.4 Compute Binding)' and 'Input parameters for this tool's decision function.' Does not significantly enhance 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 does not state a clear, concise purpose; it focuses on technical compute mode details and transient processing rather than explicitly stating that the tool validates DTC-custodied tokenized U.S. Treasury issuance and DvP. The verb 'validate' is in the name but not elaborated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 sibling tools. While it mentions upstream and downstream artifacts, it doesn't provide explicit conditions or exclusions for usage. Siblings include many validate_* tools, making differentiation necessary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_ebam_acmt_floweBAM Account Message Flow ValidationARead-onlyIdempotentInspect
eBAM Account Message Flow Validation: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-260-allocate-ihb-interest. Open at: https://ainumbers.co/chaingraph/art-262-validate-ebam-acmt-flow.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), the description adds key behaviors: deterministic execution, transient input processing with no storage/logging, synthetic input requirement, AP2 artifact export with execution_hash, and compute mode details. This adds significant value over annotation-only information.
Agents need to know what a tool does to the 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 front-loaded with the purpose and overall functionality. While it contains technical jargon (e.g., 'OpenChainGraph', 'AP2 artifact'), it is reasonably concise and each sentence contributes to understanding the tool's behavior and usage 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?
The tool is complex (4 params, nested objects, no output schema) but the description omits critical details: what validation logic is applied, how to interpret results, and structure of the output artifact. It relies on vague terms like 'compliance_mandate' and a reference to a manifest for policy_parameters, leaving agents 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 has 100% coverage with detailed descriptions for all four parameters, so the description adds no extra parameter semantics. Baseline 3 is appropriate as the schema already 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 tool performs 'eBAM Account Message Flow Validation' as a deterministic compute node. The verb 'Validation' and resource 'eBAM Account Message Flow' are explicit, but it does not differentiate from sibling validation tools like validate_einvoice_format or validate_emir_trade_report, limiting 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?
The description implies usage context by mentioning it exports to 'art-260-allocate-ihb-interest' and is a 'compliance_mandate' node, but it lacks explicit when-to-use or when-not-to-use guidance. No alternatives are discussed, leaving the agent to infer suitability from the title and output feed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_einvoice_batchEN 16931 / Factur-X E-Invoicing Batch ValidatorARead-onlyIdempotentInspect
EN 16931 / Factur-X E-Invoicing Batch Validator: OpenChainGraph compute node (compliance_mandate). Regulatory deadline: 2026-09 (France large/medium mandatory September 2026; EU ViDA). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: rca-03-iso20022-address-migration-verifier, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-08-en16931-einvoice-batch-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description extensively discloses behaviors beyond annotations: deterministic, transient processing with no storage, compute modes (server/browser), delegation to browser for gpu:true nodes, synthetic/anonymised inputs recommended, and AP2 artifact export with execution_hash. Annotations only indicate read-only and idempotent, so the description adds significant 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?
The description is well-structured and front-loaded with the purpose. It is longer than ideal but every sentence adds value, covering compute modes, data handling, output, and links. It could be tightened slightly without losing 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?
Given the complexity (batch validation with chaining and compute modes) and no output schema, the description covers key aspects: purpose, regulatory context, compute behavior, data handling, and output artifact. It lacks explicit detail on what exactly is validated (syntax/semantics) and the response format beyond the AP2 artifact, but 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 description coverage is 100%, so baseline is 3. The description adds meaning for the 'compute' parameter by explaining default behavior and delegation, and introduces the constraint of using synthetic/anonymised inputs, which is not in the schema. It also contextualizes 'parent_hashes' with the AP2 artifact provenance, though it does not detail all parameters deeply.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a batch validator for EN 16931 / Factur-X e-invoicing, with regulatory deadlines. The title includes 'Batch Validator' which distinguishes it from individual invoice validation tools like 'validate_einvoice_format'. The verb+resource is specific and 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 through its title and context (compliance mandate, regulatory deadline), but does not explicitly state when to use this tool versus alternatives or when not to use it. No comparisons to sibling tools are provided, leaving the agent to infer the best use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_einvoice_formatE-Invoice Format ValidatorARead-onlyIdempotentInspect
E-Invoice Format Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-294-einvoice-vat-calc-verifier. Open at: https://ainumbers.co/chaingraph/art-293-einvoice-format-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant behavioral context beyond annotations: deterministic, transient processing, export of AP2 artifact, output feeding, compute mode details. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Packed with useful information, front-loaded with purpose. Slightly dense but 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?
Covers input, behavior, output (AP2 artifact), and limitations despite no output schema. Provides a URL for further 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 coverage is 100%, but description adds meaning by explaining compute mode behavior, parent hashes for chaining, and purpose of policy_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 validates e-invoice format and is a deterministic OpenChainGraph compute node. It specifies the outputs and feeds a downstream tool, but doesn't explicitly distinguish from siblings like validate_einvoice_batch.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some guidance on using synthetic/anonymised inputs and describes compute modes. Lacks explicit when-to-use vs alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_emir_lifecycle_eventEMIR Lifecycle Event ValidatorARead-onlyIdempotentInspect
EMIR Lifecycle Event Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-156-emir-counterparty-pairing-reconciler. Output feeds: art-158-emir-reporting-readiness-diagnostic. Open at: https://ainumbers.co/chaingraph/art-157-emir-lifecycle-event-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds valuable behavioral details: inputs are processed transiently and not stored, logged, or retained; it exports an AP2 artifact with execution_hash for provenance. This goes beyond what annotations provide. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is quite long and contains technical details about compute modes and Cloudflare Workers. It front-loads the purpose but then becomes verbose. Some phrases like 'Deterministic OpenChainGraph compute node' are repeated. While structured, it could be more concise 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?
The description lacks details about the validation output: it only mentions exporting an AP2 artifact with execution_hash but does not specify what the artifact contains (e.g., pass/fail status, error messages). For a validation tool, this is a significant gap. No output schema is provided, so the description should cover return format. Error conditions 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?
Schema coverage is 100%, so baseline is 3. The description adds meaningful context for parameters: explains compute mode options (auto, server, browser) and their implications, and clarifies that parent_hashes and parent_tool_ids are for chaining from upstream artifacts, and policy_parameters are inputs for the decision function. This enhances understanding beyond the schema's 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 is an 'EMIR Lifecycle Event Validator' and an 'OpenChainGraph compute node' with a compliance mandate, indicating the tool validates lifecycle events for EMIR. It distinguishes from sibling tools like validate_emir_trade_report by focusing on lifecycle events and mentioning specific upstream/downstream artifacts. However, the purpose is somewhat buried in technical compute mode 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 provides usage context: it consumes from art-156 and feeds into art-158, and advises 'Use synthetic or anonymised inputs only'. However, it does not explicitly state when to use this tool versus other EMIR validation tools, nor does it provide exclusions or alternative tools. The guidance is implicit through chain context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_emir_trade_reportEMIR Trade Report Field ValidatorBRead-onlyIdempotentInspect
EMIR Trade Report Field Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-154-emir-uti-completeness-checker. Open at: https://ainumbers.co/chaingraph/art-153-emir-trade-report-field-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description adds behavioral context: deterministic processing, transient inputs not stored, synthetic data requirement, export of artifact with execution_hash, and compute mode behavior. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is information-dense but somewhat rambling. It includes the URL at the end, which is of marginal value to an AI agent. Main points are present but could be more tightly organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters and no output schema, the description omits details on what validation is performed (e.g., which fields are checked, expected errors). It does not explain the return format or how to interpret results, leaving a significant gap 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 100%, so baseline is 3. The description reiterates compute modes and parent_hashes purpose but adds no significant meaning beyond the schema. 'policy_parameters' is vaguely described as 'input parameters for decision function', which does not clarify specific fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title 'EMIR Trade Report Field Validator' and description clearly establish the tool as a validator for EMIR trade report fields. It differentiates from siblings like 'validate_emir_upi' by specifying its role as a field validator that feeds into a completeness checker.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 over alternatives. While it mentions compute modes and transient processing, it lacks when-not-to-use scenarios or comparisons with related tools like 'check_emir_uti_completeness'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_emir_upiEMIR UPI ValidatorARead-onlyIdempotentInspect
EMIR UPI Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-154-emir-uti-completeness-checker. Open at: https://ainumbers.co/chaingraph/art-155-emir-upi-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and not destructive. The description adds valuable behavioral context: inputs are processed transiently and not stored, users should use synthetic or anonymised inputs, and it exports an AP2 artifact with execution_hash. This goes beyond annotations to inform the agent about data handling 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 concise for the amount of information conveyed. It leads with the tool's purpose and key characteristics, then details compute modes, data handling, and chain provenance. Every sentence adds value, though it could be slightly more streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 input schema is fully described and annotations cover safety, the description compensates for the lack of output schema by explaining the artifact output (AP2 with execution_hash). It also mentions the upstream dependency. This provides sufficient context for a deterministic validation 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?
With 100% schema description coverage, the schema already documents parameters. The description adds meaning by explaining how compute modes affect execution (server-side vs browser delegation) and that policy_parameters are computed server-side under certain conditions. This provides context beyond the schema's property 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 it's an EMIR UPI validator and a deterministic OpenChainGraph compute node. It names the specific compliance mandate and provides context about being part of a chain. However, it does not explicitly differentiate itself from sibling validation tools like validate_emir_trade_report, relying on the tool name for 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?
The description implies usage context by stating it consumes upstream artifacts from art-154-emir-uti-completeness-checker, suggesting a sequential pipeline. It also explains compute modes. But it lacks explicit guidance on when to use this tool versus alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_eudr_due_diligence_statementEUDR DDS Field ValidatorARead-onlyIdempotentInspect
EUDR DDS Field Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-166-eudr-geolocation-plot-validator. Open at: https://ainumbers.co/chaingraph/art-165-eudr-dds-field-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare safe, idempotent behavior (readOnlyHint, idempotentHint, destructiveHint false). The description adds valuable context: inputs are transiently processed, not stored/logged/retained, and clarifies GPU node behavior. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured well, starting with an overarching statement, then detailing compute modes, data handling, and outputs. It is informative without being verbose, though it could be slightly tightened.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 parameters, nested objects, no output schema), the description covers compute modes, transient processing, output artifact (AP2 with execution_hash), and provides a reference link. It adequately informs the agent about behavior and output 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 baseline is 3. The description reinforces compute mode semantics and mentions 'policy_parameters' as input for the decision function. It adds usage nuance ('Use synthetic or anonymised inputs only') but does not significantly extend 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 tool name and title clearly indicate it validates EUDR DDS fields. The description elaborates on its role as an OpenChainGraph compute node for compliance, making the purpose unambiguous. However, it doesn't explicitly contrast with sibling validation 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 explicit guidance on compute modes (auto, server, browser) and when to use each. It advises using synthetic/anonymized inputs only, which is crucial context. Still, it doesn't specify when to avoid this tool in favor of alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_eudr_geolocationEUDR Geolocation Plot ValidatorARead-onlyIdempotentInspect
EUDR Geolocation Plot Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-165-eudr-dds-field-validator. Output feeds: art-167-eudr-commodity-scope-classifier. Open at: https://ainumbers.co/chaingraph/art-166-eudr-geolocation-plot-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, non-destructive), the description adds that inputs are processed transiently and not stored, logged, or retained. It also describes the export of an AP2 artifact with execution_hash for provenance. This provides useful behavioral context that annotations alone do not cover.
Agents need to know what a tool does to the 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 information-dense but includes many technical details (compute modes, transient processing, artifact chain, URL) that could be streamlined. It front-loads key points but overall could be more 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 4 parameters and no output schema, the description covers compute modes, data handling, provenance (upstream/downstream artifacts), and provides a URL for more info. It is fairly complete for a tool with these parameters, though it lacks specifics on the validation logic and response 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 100%, so baseline is 3. The description adds extra context for the 'compute' parameter by explaining the modes in more detail, and for 'policy_parameters' by noting it's for the decision function. However, it does not significantly enhance understanding of other parameters 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 title and description clearly indicate it is a validator for EUDR geolocation plots, and it specifies it is an OpenChainGraph compute node for compliance mandate. However, the exact nature of the validation is not detailed; the description focuses more on compute modes and data handling than on what validation is performed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes (auto, server, browser) and advises using synthetic/anonymized inputs. It also mentions upstream and downstream artifacts, providing some context on its place in a pipeline. However, it does not compare this tool to sibling tools or give explicit guidance on when to use this tool vs alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_eugb_factsheetEU Green Bond Factsheet & Allocation ValidatorARead-onlyIdempotentInspect
EU Green Bond Factsheet & Allocation Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-68-carbon-compliance-fit-diagnostic, art-73-taxonomy-alignment-scorer. Output feeds: cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-75-eugb-factsheet-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, destructiveHint. The description adds significant behavioral details: deterministic execution, transient input processing (not stored/logged/retained), artifact export with execution_hash, and upstream/downstream artifact connections, going well beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is lengthy and dense, mixing various details (compute modes, input handling, artifact chain, URL) without clear structure or bullet points. It could be more concise and better organized 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?
Despite lacking output schema, the description covers compute modes, input handling, artifact export, chain dependencies, and a reference URL. This provides sufficient context for understanding the tool's role in a pipeline, but could be more explicit about 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 descriptions for all parameters. The description adds little to parameter semantics beyond what the schema already 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?
The title 'EU Green Bond Factsheet & Allocation Validator' and description clearly state the tool validates EU green bond factsheets and allocations. It distinguishes itself from sibling tools by specifying the exact resource (EUGB factsheet) and the compute node nature, but does not explicitly contrast with similar validation 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 advises to use synthetic or anonymised inputs only and explains compute modes (auto, server, browser), providing some usage context. However, it lacks explicit guidance on when to prefer this tool over 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.
validate_fdic370_output_fileFDIC Part 370 Output-File ValidatorBRead-onlyIdempotentInspect
FDIC Part 370 Output-File Validator: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-535-fdic370-output-file-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds valuable context by disclosing that inputs are processed transiently and not stored, logged, or retained, and that the tool is deterministic and exports an AP2 artifact with execution_hash. This goes beyond the annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately sized but includes significant compute-node boilerplate (Cloudflare Workers, gpu:true/false) that is tangential to the validator's core purpose. It is structured in short sentences and front-loads the title, but could be more concise by moving the compute details to an appendix or link.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 no output schema, so the description should explain the expected response or validation result, but it only mentions exporting an AP2 artifact with execution_hash. It does not describe what a successful or failed validation looks like, nor the structure of policy_parameters. The extensive compute-mode detail does not compensate for this missing core 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%, so the baseline is 3. The description adds context for the compute parameter by explaining default vs. browser delegation behavior, but it does not clarify policy_parameters field names or how they influence validation, only deferring to 'the tool's manifest'. Thus it adds marginal value over 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 title and opening phrase clearly identify the tool as a validator for FDIC Part 370 output files, providing a specific verb and resource. However, the description does not elaborate on what validation entails or how it differs from other validate_* siblings beyond the FDIC Part 370 scope, so it is clear but not strongly 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 offers no explicit guidance on when to use this tool versus alternatives. It covers compute mode selection (server/browser) and warns to use synthetic or anonymised inputs, but these are operational constraints rather than usage guidelines for choosing this validator over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_form5500_schedulesERISA Form 5500 Schedule ValidatorBRead-onlyIdempotentInspect
ERISA Form 5500 Schedule Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-401-validate-form5500-schedules.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only, idempotent, non-destructive behavior. The description adds valuable context: it clarifies deterministic execution, transient input processing, compute mode options (auto/server/browser), and the generation of an AP2 artifact with execution_hash for chain provenance. This goes beyond annotations, though error behavior is not discussed.
Agents need to know what a tool does to the 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 reasonably concise but includes repetitive elements (e.g., 'OpenChainGraph compute node' appears twice). It front-loads key details but could be tightened by removing redundancy and focusing on validation specifics.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 parameters, no output schema) and annotations present, the description covers compute modes, privacy (transient inputs), and chain provenance. However, it omits details about the validation logic, output format of the AP2 artifact, and error handling, leaving gaps for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. 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 clear parameter descriptions. The description does not add significant meaning beyond the schema, except for explaining the compute mode and the role of policy_parameters. 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 title and description indicate it is an ERISA Form 5500 Schedule Validator, but they fail to specify what validation is performed or what schedules are supported. The description focuses on compute modes and chain provenance rather than the validation logic, making the core purpose vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 alternative form validators (e.g., other sibling validation tools). There is no mention of prerequisites, context for compliance, or scenarios where this tool is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_fsma204_cteFSMA 204 Critical Tracking Event (CTE) ValidatorARead-onlyIdempotentInspect
FSMA 204 Critical Tracking Event (CTE) Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-119-traceability-lot-code-linker. Open at: https://ainumbers.co/chaingraph/art-118-fsma204-cte-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint, idempotentHint, destructiveHint. The description adds deterministic behavior, transient processing, data retention policy, compute mode details, and warns to use synthetic inputs. This goes well beyond annotations, though it could clarify the validation logic.
Agents need to know what a tool does to the 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 dense but every sentence adds value. It could be slightly better structured (e.g., separate sections for compute modes, data handling, outputs). However, it front-loads the identity and purpose well.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, data handling, and output artifact. However, given no output schema, it does not detail the validation output structure or specific CTE fields validated. The tool's validation logic remains implicit, leaving gaps for agent 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% (baseline 3). The description adds significant context for the 'compute' parameter (default, modes, GPU delegation) and 'policy_parameters' (decision function inputs, manifest reference). Parent parameters are not elaborated beyond 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 validates FSMA 204 Critical Tracking Events, specifies it's an OpenChainGraph compute node, and mentions outputting an AP2 artifact. This distinguishes it from other validate_* tools by naming the specific regulation and resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. It mentions output feeds, but no when-to-use or when-not-to-use criteria. The tool's purpose is implied by its name, but no explicit usage context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_fund_collateralTokenized Fund Collateral ValidatorBRead-onlyIdempotentInspect
Tokenized Fund Collateral Validator: OpenChainGraph compute node (collateral_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: 505-tokenized-collateral-eligibility-checker. Open at: https://ainumbers.co/tools/514-tokenized-fund-collateral-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark it as read-only, idempotent, and non-destructive. The description adds that it is 'Deterministic', inputs are 'processed transiently and not stored', it 'exports an AP2 artifact with execution_hash', and details compute mode behavior (auto/server/browser, GPU delegation). No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is lengthy and includes many technical details (e.g., Cloudflare Workers, browser delegation URL, AP2 artifact, a URL) that could be streamlined. It front-loads the core identity but then expands with execution specifics that may not all be necessary for an 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 4 parameters and no output schema, the description explains inputs and execution modes but does not describe the output artifact's contents or return values. It mentions 'exports an AP2 artifact with execution_hash' but not what data the artifact holds, leaving ambiguity about what the tool actually returns.
Complex tools with many parameters or behaviors need more documentation. 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 'parent_hashes' and 'parent_tool_ids' are for chaining from upstream artifacts (specifically from '505-tokenized-collateral-eligibility-checker'), and that 'policy_parameters' are input to the decision function. This adds some value 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 title and description identify it as a 'Tokenized Fund Collateral Validator' and an 'OpenChainGraph compute node (collateral_mandate)', indicating it validates fund collateral. It references an upstream artifact from '505-tokenized-collateral-eligibility-checker', distinguishing it as a downstream step from an eligibility checker. However, the description focuses on execution mechanics rather than the business logic of 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?
No explicit guidance on when to use this tool versus siblings. The only usage-related note is 'Use synthetic or anonymised inputs only.' There are no exclusions or alternatives mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_ifrs17_csm_rollforwardIFRS 17 CSM Roll-Forward ValidatorARead-onlyIdempotentInspect
IFRS 17 CSM Roll-Forward Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-177-ifrs17-measurement-model-classifier. Output feeds: art-179-ifrs17-risk-adjustment-checker. Open at: https://ainumbers.co/chaingraph/art-178-ifrs17-csm-rollforward-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint=true, idempotentHint=true, destructiveHint=false), the description adds critical behaviors: deterministic compute, transient input processing (not stored/logged), AP2 artifact export with execution_hash, and upstream/downstream artifact dependencies. Compute mode details are fully elaborated.
Agents need to know what a tool does to the 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 well-structured and concise. It front-loads the tool name and domain, then progressively details compute modes, data handling, export, and dependencies. Every sentence adds necessary 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 complexity and lack of output schema, the description covers the tool's purpose, compute behavior, data privacy, chain provenance, and dependencies. It lacks a description of the output artifact structure, and refers to an external manifest for policy_parameters fields, but overall is nearly 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?
With 100% schema coverage, baseline is 3. The description adds value by explaining compute mode options, the role of parent_hashes/parent_tool_ids for chain provenance, and directs to the manifest for policy_parameters field names. This contextualizes parameters 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 is an 'IFRS 17 CSM Roll-Forward Validator' and an 'OpenChainGraph compute node (compliance_mandate)'. This verb+resource combination is specific and distinct from sibling tools like check_ifrs17_risk_adjustment or reconcile_sii_ifrs17.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto/server/browser) and instructs 'Use synthetic or anonymised inputs only', but does not explicitly state when to use this tool versus alternatives. No comparison 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.
validate_input_attestationsValidate ChainGraph input attestationsARead-onlyIdempotentInspect
Verify an artifact's input_attestations[] (ChainGraph Standard §23): per RFC 6901 pointer, checks the attested value resolves inside policy_parameters and its digest binding matches, then verifies each type along its own path -- vc-2.0 via the shipped §16/§13.11 Data Integrity proof, rfc3161-snapshot via the same §20 rfc3161-tst verifier (no second RFC 3161 implementation), c2pa-manifest structurally (hard-binding digest match), zktls structurally-only (reported verifiable:"external" -- OCG never treats it as confirmed). Returns one { pointer, type, structural, verifiable } record per entry. Pure client-safe compute, zero network.
| Name | Required | Description | Default |
|---|---|---|---|
| artifact | No | A full ChainGraph artifact envelope carrying input_attestations[] and policy_parameters. | |
| policy_parameters | No | Artifact policy_parameters (if not passing a full artifact). | |
| input_attestations | No | The input_attestations[] array (if not passing a full artifact). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description aligns with annotations (readOnlyHint, idempotentHint, destructiveHint=false) and adds 'Pure client-safe compute, zero network.' It also discloses limitations, such as OCG never treating zktls as confirmed and that rfc3161-snapshot reuses the same verifier. 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?
Description is a single, dense paragraph with no fluff. It front-loads the main action, then lists verification steps for each attestation type, and ends with return format and safety note. 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 no output schema, the description explains the return record structure ({ pointer, type, structural, verifiable }). It covers all attestation types and verification approaches. Could be slightly more explicit about error states, but overall sufficient for an agent to understand input, behavior, and 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?
Schema coverage is 100% with descriptions for each parameter. The tool description reinforces parameter usage (e.g., artifact, policy_parameters, input_attestations) but does not add significant new parameter-level semantics 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 it verifies an artifact's input_attestations[] per ChainGraph Standard §23, details specific checks for each attestation type, and describes the return format. This distinguishes it from sibling validation tools like validate_c2pa_manifest or validate_private_inputs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 defines its scope by specifying the artifact and attestation context. While it does not explicitly state when to use vs alternatives, the detailed verification logic makes it clear this is the comprehensive validator for ChainGraph input attestations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_mcp_authorization_metadataMCP Authorization Metadata Validator (RFC 9728)BRead-onlyIdempotentInspect
MCP Authorization Metadata Validator (RFC 9728): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-147-mcp-server-identity-attestation-validator. Output feeds: art-149-mcp-registry-entry-conformance. Open at: https://ainumbers.co/chaingraph/art-148-mcp-authorization-metadata-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds valuable behavioral context beyond the annotations. It states that inputs are processed transiently and not stored, logged, or retained, and that the tool is deterministic. This complements the readOnlyHint and idempotentHint annotations. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured with front-loaded purpose and logical flow, but it is verbose. It repeats 'OpenChainGraph compute node' and includes a URL and chain details that could be abbreviated. It is adequate but could be more concise to improve 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 complexity and rich annotations, the description covers compute modes, data handling, and chain provenance (upstream/downstream artifacts). However, it lacks details on the actual validation criteria or what constitutes valid vs invalid authorization metadata. This omission reduces completeness for an agent attempting to understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. 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 a baseline of 3. The description enriches parameter understanding by explaining the compute mode behavior in different scenarios, the role of parent_hashes and parent_tool_ids in chain linking, and that policy_parameters are server-side computable when applicable. This adds 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 identifies the tool as an MCP Authorization Metadata Validator per RFC 9728 and a deterministic OpenChainGraph compute node for compliance. While the purpose is clear, it is expressed with technical jargon that may obscure the core function. A more straightforward statement of 'validates authorization metadata for MCP' would improve 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?
The description does not provide any guidance on when to use this tool versus its many sibling validators. It describes the compute mode options and chain provenance but omits prerequisites, when-not-to-use advice, or alternative tool recommendations. This is a significant 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.
validate_mcp_server_identityMCP Server Identity Attestation ValidatorARead-onlyIdempotentInspect
MCP Server Identity Attestation Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-148-mcp-authorization-metadata-validator. Open at: https://ainumbers.co/chaingraph/art-147-mcp-server-identity-attestation-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint and idempotentHint. The description adds that inputs are transiently processed and not stored, logged, or retained, and explains deterministic behavior and compute delegation. This goes well beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat lengthy and includes technical jargon (OpenChainGraph, AP2, etc.). Each sentence adds necessary information, but could be tightened. Not overly verbose but not minimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 four parameters, rich annotations, and no output schema, the description covers compute modes, data handling, artifact output (execution_hash), and chaining. It also provides a URL for more info. This is fairly complete for a complex 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 descriptions already exist. The description adds context for compute (elaborates modes), parent_hashes (sets chain.parent_hashes), and policy_parameters (references manifest). However, the added value is moderate; 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 validates MCP server identity attestation and produces an AP2 artifact. It distinguishes itself from sibling validation tools by specifying the resource and compute node nature. However, the verb 'validate' is implied but not explicitly stated; the title already clarifies it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute modes (auto, server, browser) and when to use synthetic inputs. It mentions downstream tool 'art-148-mcp-authorization-metadata-validator' but does not explicitly list alternatives or when not to use this tool. Adequate context for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_mcp_server_jsonMCP server.json Validator & Registry-Ready Skeleton GeneratorARead-onlyIdempotentInspect
Validate an MCP server.json against the 2025-12-11 schema and the official registry publishing rules; returns findings, a registry-readiness score, and an optional compliant skeleton. Use when a developer wants to check a server.json before publishing to the MCP Registry. Renders the interactive AINumbers tool as a widget; inputs are applied via the AIN Bridge and the tool runs client-side (zero PII, zero network).
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | No | Map of tool input element IDs to values (see manifest input_schema). Applied via AIN Bridge prefill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| score | No | |
| findings | No | |
| skeleton | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds behavioral context: the tool renders an interactive widget, runs client-side via AIN Bridge, zero PII, zero network. This goes beyond annotations by explaining execution model and privacy characteristics.
Agents need to know what a tool does to the 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: purpose, usage, execution behavior. Each sentence adds value with no redundancy. Front-loaded with primary action and resource, then context, then behavioral detail. Efficient 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 has one parameter, output schema, and annotations, the description covers purpose, usage, execution (widget, client-side, privacy), and output types (findings, score, skeleton). It lacks detail on the compliant skeleton generation but is largely complete for a focused validation 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 one parameter 'inputs' described in the schema as a map of tool input element IDs. The description mentions inputs are applied via AIN Bridge prefill, adding limited context. No detailed semantics about required structure, 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 validates MCP server.json against a specific schema and registry rules, returning findings, score, and optional skeleton. It verb 'validate' and resource 'server.json' are explicit, and the use case (pre-publishing check) distinguishes it from sibling validation tools for other MCP artifacts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 usage context: 'Use when a developer wants to check a server.json before publishing to the MCP Registry.' This provides clear context but does not list exclusions or alternative tools, though the niche is well-defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_mcp_task_lifecycleMCP Task Lifecycle State Machine ValidatorARead-onlyIdempotentInspect
MCP Task Lifecycle State Machine Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-151-agent-obo-mandate-validator. Open at: https://ainumbers.co/chaingraph/art-152-mcp-task-lifecycle-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description discloses that inputs are processed transiently and not stored, logged, or retained, and that it exports an AP2 artifact with execution_hash for chain provenance. This adds meaningful behavioral context not present in the annotations alone.
Agents need to know what a tool does to the 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 front-loaded with the tool's purpose and is efficiently structured. It covers compute modes, transient processing, artifact export, and upstream dependencies in a compact format. A minor reduction in redundancy could be possible, but it remains well-organized and relevant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested object, no output schema), the description adequately covers compute modes, transient processing, and artifact export. However, it lacks details about what the validation actually entails (e.g., the 'decision function' or what constitutes a valid MCP task lifecycle) and does not describe the return value.
Complex tools with many parameters or behaviors need more documentation. 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, so the baseline is 3. The description adds some value by explaining the compute modes in context (e.g., 'gpu:true nodes always delegate to the browser'), but it does not elaborate on the 'policy_parameters' object beyond what the schema says.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 an 'MCP Task Lifecycle State Machine Validator' and identifies it as an 'OpenChainGraph compute node'. It distinguishes itself from sibling tools by focusing specifically on MCP task lifecycle validation, as evidenced by the tool name and the mention of 'compliance_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 explains when to use different compute modes (auto, server, browser) and the default behavior, but it does not provide any guidance on when to choose this tool over its many sibling validation tools (e.g., validate_ap2_mandate_chain, validate_mcp_server_identity). 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.
validate_mletr_recordMLETR / eBL Conformance & Enforceability ValidatorARead-onlyIdempotentInspect
MLETR / eBL Conformance & Enforceability Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-52-digital-trade-fit-diagnostic. Output feeds: 510-digital-asset-regulatory-classifier, cry-04-merkle-batch-verifier, ml-02-credit-default-risk-scorer. Open at: https://ainumbers.co/chaingraph/art-53-mletr-ebl-conformance-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds critical behavioral details: inputs are transient and not stored, compute delegation behavior, and export of AP2 artifact with execution_hash. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with the title, then compute details, transient processing, and chain connections. It contains a URL and lists dependencies, which are useful but slightly verbose. Every sentence serves a purpose, but it could be more concise by avoiding repetition of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description should explain the return format or validation result. It mentions exporting an AP2 artifact with execution_hash but not what the direct response contains (e.g., pass/fail, scores). This gap reduces completeness for an agent understanding the tool's 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?
With 100% schema coverage, baseline is 3. The description adds significant context for 'compute' (explaining auto/server/browser in detail) and 'policy_parameters' (describing server-side computation for registered kernels). It also explains parent_hashes/tool_ids for chaining, going beyond 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 'MLETR / eBL Conformance & Enforceability Validator' and 'Deterministic OpenChainGraph compute node', indicating a specific verb (validate) and resource (MLETR/eBL records). It distinguishes itself from sibling tools by focusing on MLETR/eBL conformance, which is a unique domain among a long list of similar validation 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 explains compute modes (auto/server/browser) and when to use synthetic inputs. It also lists upstream and downstream artifacts, providing context for when this tool fits in a pipeline. However, it does not explicitly state when NOT to use this tool or provide alternatives, though the sibling list implies specialization.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_mt700_lc_fieldsMT700 LC Field ValidatorBRead-onlyIdempotentInspect
MT700 LC Field Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-474-validate-mt700-lc-fields.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate safe (readOnlyHint=true), non-destructive (destructiveHint=false), and idempotent (idempotentHint=true) behavior. The description adds that inputs are processed transiently and not stored, logged, or retained, which is valuable for privacy. It also explains compute modes and browser delegation, providing additional 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 verbose, repeating phrases like 'OpenChainGraph compute node' and including unnecessary details. It could be more concise while retaining 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?
The description does not explain what the tool returns beyond an AP2 artifact with execution_hash. For a validator, the agent needs to know the validation result or output format. Lacks critical behavioral details for a complete 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 the schema already documents all parameters. The description adds minor context about policy_parameters referencing the manifest, but does not provide field names or enrich 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 it validates MT700 LC fields and identifies it as an OpenChainGraph compute node for compliance. However, the primary purpose is somewhat obscured by extensive infrastructure details. It could be more direct about the validation 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 only usage guidance is 'Use synthetic or anonymised inputs only.' There is no comparison to sibling tools or conditions when to use this tool versus alternatives. No explicit exclusions or when-not-to-use information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_nft_metadata_art209NFT Metadata ValidatorBRead-onlyIdempotentInspect
NFT Metadata Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-209-nft-metadata-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds useful context: inputs are transient, not stored, and synthetic/anonymized data is required. It also explains compute modes and artifact export, providing additional behavioral clarity beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise and front-loaded with the tool's identity. It contains technical details that are relevant, though a few sentences could be tightened. No significant 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 4 parameters and no output schema, the description does not explain what the tool returns or what validation checks are performed. It omits the output format and criteria for validity, leaving significant gaps for agent 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%, so the baseline is 3. The description explains the compute parameter's behavior in more detail (gpu:true delegation) and references an external manifest for policy_parameters, but overall adds limited extra 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 title and description clearly indicate this is a tool for validating NFT metadata, specifically as an OpenChainGraph compute node for compliance. The purpose is well-conveyed, though the description focuses more on compute behavior than the validation logic itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 alternative validation tools. It does not mention any selection criteria, prerequisites, or exclusions, leaving the agent without context for tool choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_openids_homeowners_recordopenIDS Homeowners Record ValidatorBRead-onlyIdempotentInspect
openIDS Homeowners Record Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-256-validate-openids-homeowners-record.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description clearly states that inputs are processed transiently and not stored, logged, or retained, and explains compute modes and output artifact details. This adds value beyond the annotations (readOnlyHint, idempotentHint).
Agents need to know what a tool does to the 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 moderately concise but front-loads compute infrastructure details rather than the core validation purpose. The link at the end is not essential.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 it explains compute modes and data handling, it lacks details on what constitutes valid input and the precise output structure (beyond mentioning AP2 artifact). For a tool with no output schema, more completeness is 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 baseline is 3. The description does not add meaning to parameters like parent_hashes or policy_parameters 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 identifies the tool as a 'openIDS Homeowners Record Validator' and mentions it's an OpenChainGraph compute node, but it does not specify what validation criteria are applied. The focus on compute infrastructure obscures the specific validation 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 other validators in the sibling list. The description only mentions using synthetic or anonymized inputs, but lacks 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.
validate_openvex_statementOpenVEX Statement ValidatorCRead-onlyIdempotentInspect
OpenVEX Statement Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-136-slsa-provenance-verifier. Open at: https://ainumbers.co/chaingraph/art-137-openvex-statement-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description discloses transient processing, no storage of inputs, requirement for synthetic/anonymized inputs, and output as an AP2 artifact. This adds significant behavioral context not captured by 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 fairly long and includes repetitive mentions of 'OpenChainGraph compute node'. It front-loads the title but includes extraneous details about execution that could be condensed. Every sentence adds some value, but the overall structure can be tightened.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 no output schema, yet the description only vaguely mentions that it exports an AP2 artifact. Core validation specifics (criteria, expected input format, success/failure indicators) are missing. The description does not adequately cover what the tool does for a validation 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 echoes some parameter info (compute modes, input parameters) but adds minimal new meaning beyond the schema. It does not explain what fields the 'policy_parameters' object expects.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and description clearly state the tool validates OpenVEX statements, but the description focuses heavily on execution environment (compute modes, Cloudflare Workers) rather than what validation entails. It does not differentiate from sibling validation 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 lacks explicit guidance on when to use this tool vs alternatives. It mentions consuming upstream artifacts from a SLSA provenance verifier, hinting at a sequence, but no direct 'use when' or 'do not use when' statements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_pacs008_party_completenesspacs.008 Party Completeness ValidatorBRead-onlyIdempotentInspect
pacs.008 Party Completeness Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-241-cbpr-structured-address-linter. Output feeds: art-246-lei-payment-binding-linter. Open at: https://ainumbers.co/chaingraph/art-242-pacs008-party-completeness-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and non-destructive. The description adds valuable transparency: inputs are not stored/logged/retained, compute modes are explained (server-side vs browser delegation), and it notes deterministic behavior. No contradiction with annotations. This exceeds what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and includes many details about compute modes, data handling, and artifact chaining. It front-loads key identity information but could be more concise. Some information (e.g., full URL, specific artifact IDs) may be more appropriate in documentation. It is 5-6 sentences, adequate but not optimally 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 no output schema, the description provides some context: it exports an AP2 artifact with execution_hash and links to upstream/downstream artifacts. However, it does not describe the validation's return value or output format. The description covers execution mechanics but not fully what the tool produces, leaving some gaps for an agent to understand the 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?
Schema coverage is 100%, so baseline is 3. The description mentions compute modes and policy_parameters as inputs for the decision function, but does not add meaningfully beyond the schema descriptions. No additional details on parameter syntax 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 states the tool validates party completeness for pacs.008, a specific task. It identifies itself as an OpenChainGraph compute node with a compliance mandate. However, it does not differentiate itself from other validation tools among many siblings, and the exact nature of the validation is implicit rather than explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 other validation tools. It mentions upstream and downstream artifacts, which implies a chain context, but lacks explicit when-to-use or when-not-to-use instructions. The only user instruction is to use synthetic or anonymized inputs, which is a data handling requirement rather than usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_private_inputsValidate ChainGraph private-input commitmentsARead-onlyIdempotentInspect
Verify an artifact's private_inputs[] (ChainGraph Standard §25 ocg-private-input@1) WITHOUT ever seeing the plaintext witness: per RFC 6901 pointer, checks the pointed value inside policy_parameters IS the declared sha256-salted@1 commitment (never the plaintext, §25.2), that the commitment scheme is known, and -- when a §18 compute_proof is present -- that its journal commits the same commitment and binds output_payload. Optionally accepts an out-of-band {pointer, salt, input_value} disclosure package (authorized-verifier path) and recomputes sha256(salt || cgCanon(input_value)) to confirm it equals the commitment. Returns one {pointer, verifiable} record per entry: "proof-only" | "disclosed-verified" | "commitment-only" (no proof yet -- structural + plaintext-exclusion only) | "failed". Pure client-safe compute, zero network, never requires the plaintext.
| Name | Required | Description | Default |
|---|---|---|---|
| artifact | No | A full ChainGraph artifact envelope carrying private_inputs[], policy_parameters, and optionally output_payload + audit_signature.compute_proof. | |
| disclosures | No | OPTIONAL authorized-verifier disclosure packages, keyed by pointer, for the disclosed-verified path. | |
| compute_proof | No | audit_signature.compute_proof (if not passing a full artifact). | |
| output_payload | No | Artifact output_payload (if not passing a full artifact). | |
| private_inputs | No | The private_inputs[] array (if not passing a full artifact). | |
| policy_parameters | No | Artifact policy_parameters (if not passing a full artifact). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds valuable behavioral context: 'Pure client-safe compute, zero network, never requires the plaintext.' It explains the verification logic and that no state mutation occurs, going beyond the annotations. No contradiction 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 front-loaded with the core purpose but is long and dense, containing many technical specifics (RFC 6901, sha256-salted, §25.2, etc.). While every sentence contributes to completeness, the length may overwhelm. It could benefit from structuring into bullet points for easier parsing, but it is not excessively 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 (6 parameters, nested objects, no output schema), the description covers the essential aspects: input specification, verification logic, optional disclosure path, and return format. It describes the possible return values (proof-only, disclosed-verified, etc.). There are minor gaps (e.g., error handling), but overall it provides sufficient context for an AI 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 100%, but the description enriches parameter understanding. It explains that 'artifact' is the full ChainGraph envelope and that other parameters (e.g., compute_proof, output_payload) are optional alternatives. It clarifies the 'disclosures' parameter as authorized-verifier packages. This adds meaning beyond the schema's property 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's function: verifying ChainGraph private-input commitments without seeing the plaintext. It specifies the verification logic, optional disclosure path, and return values. This distinguishes it from other 'validate_' sibling tools, which deal with different aspects (e.g., agent cards, mandates). The verb 'validate' is specific to the resource 'private_inputs[]' and the standard (§25 ocg-private-input@1).
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 versus alternative validation tools. While the technical depth implies its domain, there is no 'use this for' or 'avoid when' advice. The sibling list includes many validate tools, but no distinction criteria are offered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_pvp_settlementMulti-Currency PvP ValidatorARead-onlyIdempotentInspect
Multi-Currency PvP Validator: OpenChainGraph compute node (settlement_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: 507-canton-dvp-atomicity-validator, 505-tokenized-collateral-eligibility-checker. Open at: https://ainumbers.co/tools/511-multi-currency-pvp-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and destructiveHint, so the bar is lowered. The description adds value by confirming deterministic behavior, noting inputs are transiently processed and not stored, and detailing the output (AP2 artifact with execution_hash). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph but well-organized: starts with tool identity, then computes modes, privacy, output, dependencies. Each sentence adds value. Could be slightly more structured but is efficient and 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?
For a tool with 4 parameters (including nested objects) and no output schema, the description covers the core functionality, compute modes, privacy, output type, and upstream dependencies. It lacks details on error handling or return values beyond the artifact hash, but annotations and schema compensate. Overall, it provides sufficient context for correct 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%, so baseline is 3. The description adds context by explaining the compute mode options ('gpu:false nodes with registered kernel', 'gpu:true nodes always delegate'), the purpose of parent_hashes and parent_tool_ids (chaining from upstream artifacts), and the role of policy_parameters (decision function input). This adds meaningful 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 the tool's purpose as a 'Multi-Currency PvP Validator: OpenChainGraph compute node (settlement_mandate)'. It specifies the verb 'validate' and the resource 'PvP settlement', and distinguishes it from siblings through unique details like compute modes and AP2 artifact export, making the purpose specific and 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 explicit when-to-use guidance by detailing compute modes ('auto', 'server', 'browser'), explaining when server-side vs. client-side execution occurs, and advising on input privacy ('Use synthetic or anonymised inputs only'). It also lists upstream artifacts, offering context on dependencies.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_qfc_recordkeeping_fileQFC Part 371 Recordkeeping File ValidatorCRead-onlyIdempotentInspect
QFC Part 371 Recordkeeping File Validator: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-537-qfc-recordkeeping-file-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description thoroughly discloses behavioral traits beyond the annotations: deterministic execution, compute mode semantics (server vs browser delegation), transient input processing with no storage/logging/retention, and the export of an AP2 artifact with execution_hash for provenance. This significantly enriches the annotation hints (readOnly, idempotent, non-destructive) and gives the agent a clear picture of runtime 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 information-dense but has redundancy: 'OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node.' repeats the same concept. It is not excessively long, but the structure front-loads platform details rather than the tool's purpose. A slightly tighter opening would improve it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 execution and data-handling aspects thoroughly, but completely omits the core validation function: what constitutes a QFC Part 371 recordkeeping file, what validation checks are performed, and how the AP2 artifact conveys results. With no output schema, the lack of explanation about expected outputs or how to interpret the artifact leaves 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?
The input schema already provides 100% coverage of parameters with descriptions. The description only re-states the compute mode behavior that the schema already documents, adding no additional meaning for the other parameters (parent_hashes, parent_tool_ids, policy_parameters). The 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?
The title indicates a QFC Part 371 Recordkeeping File Validator, but the description body never explicitly states what the tool validates or what 'validate' accomplishes. It immediately pivots to describing the OpenChainGraph compute node mechanics (compute modes, execution location), leaving the core validation purpose vague and unexplained.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 other validators or how it fits into a workflow. It only gives technical constraints (e.g., 'Use synthetic or anonymised inputs only') but does not explain the intended use cases or alternatives. No mentions of sibling tools or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_regf_call_frequencyReg F Call-Frequency Presumption ValidatorBRead-onlyIdempotentInspect
Reg F Call-Frequency Presumption Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-403-check-debt-validation-notice. Open at: https://ainumbers.co/chaingraph/art-402-validate-regf-call-frequency.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (read-only, idempotent, non-destructive), the description adds transparency about transient data processing (not stored, logged, or retained), deterministic execution, and the compute mode behavior. This helps an agent understand resource 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?
The description is moderately concise but includes extraneous details like a URL and output feed name that may not aid selection. The key points are front-loaded, but the mix of technical compute details and usage warnings makes it slightly dense.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema is provided, and the description only mentions exporting an AP2 artifact with execution_hash, not the validation result itself. The nested 'policy_parameters' object is underspecified, making it hard for an agent to know what inputs to provide beyond the schema hints.
Complex tools with many parameters or behaviors need more documentation. 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 only briefly references 'compute' mode, adding no new semantics beyond the schema. The critical 'policy_parameters' object is mentioned but its fields are not described, leaving the agent to infer from the tool's 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 title and first sentence clearly identify it as a validator for Reg F call-frequency presumption, a specific compliance task. However, the description does not explicitly state the business logic or what constitutes a valid presumption, leaving some ambiguity for an agent unfamiliar with Reg F.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 critical guideline to 'Use synthetic or anonymised inputs only' and explains compute modes for different execution contexts. However, it lacks explicit when-to-use vs alternatives guidance, and does not mention 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.
validate_royalty_splitRoyalty Split ValidatorARead-onlyIdempotentInspect
Royalty Split Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-208-royalty-split-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, idempotentHint, and non-destructive behavior. The description adds critical context: inputs are 'transiently' processed and 'not stored, logged, or retained,' and outputs an AP2 artifact with execution_hash. This goes beyond annotations and aligns with them (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?
The description is a single, coherent paragraph. It front-loads the core purpose ('deterministic compute node') and then details compute modes, data retention, input requirements, and output. Every sentence adds necessary information without redundancy, but a bulleted format could improve 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?
Given 4 parameters (one enum), no output schema, and the tool's complexity, the description covers compute modes, data handling, input recommendations, and artifact output. It includes a reference link. However, it omits the return value structure (though the artifact is mentioned), which is slight 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?
With 100% schema description coverage, the baseline is 3. The description adds value by explaining compute mode behavior (e.g., 'gpu:true nodes always delegate') and noting that policy_parameters inputs are detailed in the tool's manifest. This enriches 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 identifies it as a 'deterministic OpenChainGraph compute node' for royalty split validation, with specific details about compute modes and artifact export. The name 'validate_royalty_split' reinforces the purpose. However, it does not contrast with sibling validation tools, which would further clarify its unique 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 explicit guidance on compute modes (auto/server/browser) and when each applies, including the note to 'use synthetic or anonymised inputs only.' However, it does not compare this tool to alternatives among the many sibling tools, missing an opportunity to guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_signature_agent_cardSignature Agent Card ValidatorBRead-onlyIdempotentInspect
Signature Agent Card Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-130-signature-directory-validator. Open at: https://ainumbers.co/chaingraph/art-131-signature-agent-card-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds valuable behavioral context: transient processing of inputs (not stored/logged/retained), deterministic nature, specific compute mode behaviors (server-side vs. browser delegation), and that inputs are computed server-side on Cloudflare Workers for certain nodes. This significantly aids an agent in understanding side effects and execution environment.
Agents need to know what a tool does to the 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 logically structured: tool identifier, then compute mode details, then data handling, usage warning, output, and upstream dependency. Every sentence adds value. However, the first two sentences could be merged to reduce redundancy (both mention 'OpenChainGraph compute node'). Overall, it is concise for the amount of information provided.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 (4 parameters, nested objects, compute modes) and the presence of annotations with 100% schema coverage, the description adequately covers compute behavior, data handling, upstream dependency, and output artifact type. However, the absence of an output schema means the description could better explain the validation result format (e.g., what the AP2 artifact contains, success/failure indicators). The description is moderately complete but leaves some gaps in return value expectations.
Complex tools with many parameters or behaviors need more documentation. 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, providing clear definitions for each parameter. The tool description adds some contextual meaning (e.g., explaining that parent_hashes are execution_hash values from upstream artifacts, and that policy_parameters refer to the decision function with a manifest reference), but does not substantially exceed the schema's own descriptions. The compute parameter's enum values are also explained in both places.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 an OpenChainGraph compute node for validating signature agent cards, with specific details on compute modes and determinism. The title explicitly states 'Signature Agent Card Validator', making the purpose clear. However, it does not explicitly contrast with sibling tools like validate_signature_directory, slightly reducing 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?
The description provides minimal usage guidance. It mentions that inputs should be synthetic or anonymised and that the tool consumes upstream artifacts from art-130, but does not specify when to use this tool versus alternatives like validate_signature_directory. No explicit when-not-to-use or alternative suggestions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_signature_directoryHTTP Signatures Directory ValidatorBRead-onlyIdempotentInspect
HTTP Signatures Directory Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-129-webbotauth-signature-verifier. Output feeds: art-131-signature-agent-card-validator. Open at: https://ainumbers.co/chaingraph/art-130-signature-directory-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint. The description adds valuable transparency: deterministic execution, transient processing with no storage/logging, warning to use synthetic inputs, and compute mode behaviors. 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 dense and technically detailed, front-loading the title but then mixing compute mechanics with chain provenance info. Some elements (e.g., the open URL) may be less relevant. Could be more organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 lacks an explanation of the output structure (AP2 artifact contents) and what validation is performed on the directory. Given the absence of an output schema, these gaps are significant for an AI 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 100% with clear descriptions. The description adds context by explaining when policy_parameters are computed server-side and details on compute modes, enhancing 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 title and description identify it as a validator for HTTP signatures directory, but the description focuses more on compute modes and processing details rather than explicitly stating the validation logic. It does not clearly differentiate from sibling tools like validate_signature_agent_card.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 description mentions upstream/downstream artifacts, implying a workflow, but does not state prerequisites 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.
validate_slate_report_fieldsSLATE Securities-Loan Report Field ValidatorBRead-onlyIdempotentInspect
SLATE Securities-Loan Report Field Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-544-slate-report-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds meaningful behavioral traits: inputs are 'processed transiently... not stored, logged, or retained', a browser delegation URL is returned in browser mode, and an 'AP2 artifact with execution_hash' is exported. These details about data handling and output format go well beyond what annotations provide. Does not contradict any annotation.
Agents need to know what a tool does to the 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 moderately concise but contains redundancy: 'OpenChainGraph compute node' appears twice, and 'Deterministic' is stated without consequence. It front-loads the title but then spends several sentences on execution mechanics and a URL. Each sentence is not maximally informative, but it is not excessively long either.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 good schema coverage and annotations, the description lacks domain context: it never explains what a SLATE Securities-Loan Report is, what fields it validates, or how validation is determined. The only reference to inputs is 'See the tool's manifest for field names', pushing critical information elsewhere. For a specialized validator, this is insufficient 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?
The input schema already describes all four parameters with 100% coverage, so the baseline is 3. The description does not add semantic details for individual parameters beyond what the schema provides; it only mentions compute modes in prose ('compute:"auto"... server-side'), which duplicates schema enum descriptions. The policy_parameters field is left to 'See the tool's manifest', so no additional meaning 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 title and opening phrase 'SLATE Securities-Loan Report Field Validator: OpenChainGraph compute node (compliance_mandate)' clearly identify the tool as a validator for a specific report type. However, the description never explicitly states what validation is performed or what constitutes a valid field, and it does not differentiate this validator from the many other validate_* siblings. The core purpose is evident but not elaborated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explain compute mode selection ('compute:"auto"', 'browser'), which is operational rather than selection-based, and includes a warning to 'Use synthetic or anonymised inputs only', but there is no mention of alternative validators or exclusions. No context for appropriate usage beyond the general domain.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_spdx_sbomSPDX SBOM Validator (EU CRA Annex I)ARead-onlyIdempotentInspect
SPDX SBOM Validator (EU CRA Annex I): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-139-cra-annex1-completeness-checker. Open at: https://ainumbers.co/chaingraph/art-138-spdx-sbom-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint. The description adds significant behavioral context: deterministic compute node, inputs processed transiently without storage, and compute delegation behavior. This goes beyond annotations and provides valuable 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 somewhat lengthy but well-structured and front-loaded with purpose. Each sentence adds value: compute modes, transient processing, output feed, and external link. No redundancy, but minor verbosity in explaining compute delegation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 tool complexity (4 params, no output schema, nested objects), the description covers compute modes, input handling, provenance (execution_hash), and downstream feed. It omits explicit output format or validation result details, but AP2 artifact is referenced, making it fairly complete for agent 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%; each parameter has a description. The description adds context beyond schema, e.g., explaining policy_parameters as decision function input and how compute modes affect server-side vs browser execution. This enhances understanding of 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 tool validates SPDX SBOMs according to EU CRA Annex I. It distinguishes from siblings by specifying its role as a compute node for compliance mandate, with details on compute modes and output feeds. The purpose is specific and 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 explains when to use server vs browser compute based on gpu flag and kernel registration. It advises using synthetic or anonymised inputs only. However, it does not explicitly contrast with sibling tools or state when not to use this validator.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_tempo_token_complianceTempo Stablecoin Issuance ComplianceARead-onlyIdempotentInspect
Tempo Stablecoin Issuance Compliance: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-34-tempo-fit-diagnostic. Output feeds: art-06-genius-act-reserve-attestation, art-10-amla-transaction-typology-risk-scorer, art-38-tempo-onchain-aml. Open at: https://ainumbers.co/chaingraph/art-37-tempo-stablecoin-issuance.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: inputs are processed transiently and not stored, synthetic/anonymised inputs are required, and it exports an AP2 artifact with execution_hash for provenance. This aligns with the idempotentHint and readOnlyHint annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with front-loaded purpose followed by compute mode details, transient data policy, and artifact I/O. It is concise yet informative, though a few sentences could be combined for tighter prose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 output schema, the description covers key aspects: compute modes, transient processing, artifact export, and upstream/downstream links. However, it lacks details on the compliance result format or interpretation, which would 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 adequate descriptions. The description repeats some schema info (compute modes) but adds minimal extra meaning for policy_parameters (referring to tool manifest). Given full schema coverage, baseline 3 is appropriate; no significant param insights 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's purpose: Tempo Stablecoin Issuance Compliance as an OpenChainGraph compute node. It details compute modes and output (AP2 artifact with execution_hash). While not explicitly distinguishing from siblings, the description provides enough context to understand its role in the chain of compliance artifacts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 other validation or compliance tools. It explains compute modes but lacks when-to-use, when-not-to-use, or alternative tool recommendations. This omission makes it harder for an agent to select this tool correctly among many siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_tempo_zone_disclosureTempo Zone Selective-Disclosure AttestationARead-onlyIdempotentInspect
Tempo Zone Selective-Disclosure Attestation: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-38-tempo-onchain-aml. Output feeds: cry-01-zk-compliance-proof-generator. Open at: https://ainumbers.co/chaingraph/art-39-tempo-zone-disclosure.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by disclosing that inputs are processed transiently, not stored/logged/retained, and that computation happens server-side on Cloudflare Workers or via browser delegation. It also confirms idempotency and read-only behavior implicitly with 'Deterministic' and 'transiently processed.' No contradiction with annotations (readOnlyHint, idempotentHint, destructiveHint).
Agents need to know what a tool does to the 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 moderately long but each sentence provides useful information. It is front-loaded with the title and role, then details compute modes, transient processing, input guidelines, and chain integration. It avoids redundancy and is 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 no output schema, the description explains that the tool exports an AP2 artifact with execution_hash for provenance. It covers input constraints (synthetic/anonymous), compute modes, and upstream/downstream chain links. While it lacks details on the exact output structure, the mention of artifact and hash is sufficient given the tool's deterministic and read-only nature.
Complex tools with many parameters or behaviors need more documentation. 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, including detailed explanations for 'compute' and 'policy_parameters'. The description adds value by specifying the exact upstream artifact ID ('art-38-tempo-onchain-aml') for parent_hashes and parent_tool_ids, and the downstream output feed ('cry-01-zk-compliance-proof-generator'), which enhances 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?
The description clearly states it is a 'Tempo Zone Selective-Disclosure Attestation' on an OpenChainGraph compute node. It specifies the verb (validate attestation) and resource (Tempo Zone disclosure). It distinguishes from siblings by detailing its specific role in the chain: consuming upstream artifacts from art-38-tempo-onchain-aml and feeding into cry-01-zk-compliance-proof-generator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 this tool by explaining the compute modes (auto, server, browser) and the transient nature of inputs. It also gives a directive to 'Use synthetic or anonymised inputs only.' However, it does not explicitly mention alternatives or when not to use it, so it lacks exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_tfr_travel_rule_batchTFR Travel-Rule Batch ValidatorARead-onlyIdempotentInspect
TFR Travel-Rule Batch Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-98-mica-casp-fit-diagnostic. Output feeds: cry-04-merkle-batch-verifier. Open at: https://ainumbers.co/chaingraph/art-104-tfr-travel-rule-batch-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint. Description adds richness: deterministic, transient processing, no storage, artifact export, link to manifest. 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?
Overly verbose with URLs, specific artifact IDs, and implementation details that are not essential. Not concise; buries 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?
Covers compute options, transient processing, chain provenance, upstream/downstream artifacts. Missing example usage or parameter specifics, but sufficient for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3. Description restates compute modes but adds no new semantic info beyond schema. Adequate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The purpose is clear: validates TFR travel rule batches as an OpenChainGraph compute node. However, the description includes many implementation details (Cloudflare Workers, browser delegation) that could obscure the core function for an AI 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?
Provides guidance on compute modes (auto, server, browser) and warns to use synthetic inputs. But no differentiation from sibling validator tools; lacks explicit when-to-use vs alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_tip20_memo_commitmentTIP-20 Memo/Commitment ValidatorARead-onlyIdempotentInspect
TIP-20 Memo/Commitment Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-390-tip20-memo-commitment-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, idempotentHint, and destructiveHint. The description adds transient processing, no storage/logging, and AP2 artifact export, providing useful context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph with a clear front-loaded purpose. It is moderately concise, though some redundancy exists (e.g., repeating compute mode 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?
The description explains transient processing and artifact export but lacks details on return value format (e.g., success/failure indication, error handling) and does not cover edge cases like rate limits. 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 100%, so baseline is 3. The description adds context for compute modes but does not significantly elaborate on other parameters beyond the schema. 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 it is a validator for TIP-20 Memo/Commitment and explains its role as an OpenChainGraph compute node. However, it does not explicitly differentiate from many sibling validators, 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 advises using synthetic or anonymized inputs and explains compute mode selection (server vs browser). It lacks explicit 'when not to use' or alternative tool references, which prevents a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_tokenized_security_lifecycleTokenized Security Lifecycle ValidatorARead-onlyIdempotentInspect
Tokenized Security Lifecycle Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: 510-digital-asset-regulatory-classifier. Open at: https://ainumbers.co/tools/512-tokenized-security-lifecycle-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses significant behavioral details beyond annotations: inputs are processed transiently and not stored, logged, or retained; it exports an AP2 artifact with execution_hash; and it describes compute mode behaviors including delegation to browser. This fully aligns with the readOnlyHint and idempotentHint 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 well-structured with logical segments (type, determinism, compute modes, privacy, artifact export, upstream dependency, link). It is somewhat lengthy but each sentence adds value. Minor redundancy in repeating 'OpenChainGraph compute node'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, including a nested object, no output schema), the description covers compute modes, transient processing, artifact export, upstream consumption, and provides a link. However, it does not explicitly state what the tool validates or what its output solely consists of (the AP2 artifact). It is fairly complete but could be more explicit.
Complex tools with many parameters or behaviors need more documentation. 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 baseline 3. The description does not add new meaning to the parameters beyond what the schema already includes. It repeats the compute enum details but does not elaborate on parent_hashes, parent_tool_ids, or policy_parameters 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 identifies the tool as a 'Tokenized Security Lifecycle Validator' and an 'OpenChainGraph compute node', indicating a validation purpose. However, it does not distinguish this from other validate_* sibling tools, and the verb 'validate' is implied rather than explicit in the description text.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some usage guidelines, such as 'Use synthetic or anonymised inputs only' and details about compute modes. However, it does not explicitly state when to use this tool versus alternatives among the many sibling tools, nor does it specify prerequisites or edge cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_vida_einvoice_conformanceViDA EN 16931 E-Invoice Conformance ValidatorARead-onlyIdempotentInspect
ViDA EN 16931 E-Invoice Conformance Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-160-vida-drr-transaction-reporter. Open at: https://ainumbers.co/chaingraph/art-159-vida-einvoice-en16931-conformance-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, idempotentHint, destructiveHint. The description adds key behavioral details: inputs are transient and not stored, synthentic inputs advised, and an artifact is exported. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense with technical details about compute modes and chain provenance, some of which may be extraneous for typical use. Could be streamlined to focus on validation 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?
No output schema exists, and the description mentions an AP2 artifact with execution_hash but does not specify the validation result format or structure. Missing details on what the tool returns.
Complex tools with many parameters or behaviors need more documentation. 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. It restates compute mode options and vaguely describes 'policy_parameters' without clarifying fields. 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 title 'ViDA EN 16931 E-Invoice Conformance Validator' and name clearly indicate validation of e-invoice conformance. The description reinforces this but focuses heavily on compute modes and chain provenance rather than the validation logic itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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: it validates e-invoice conformance. The description advises using synthetic or anonymized inputs but does not explicitly state when to use this tool versus sibling validators like 'validate_einvoice_format'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_w8_series_structuralW-8 Series Structural ValidatorARead-onlyIdempotentInspect
W-8 Series Structural Validator: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-268-compute-cdd-ownership-25pct. Open at: https://ainumbers.co/chaingraph/art-269-validate-w8-series-structural.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description provides significant behavioral context beyond annotations: it confirms inputs are not stored or retained, mentions deterministic execution, idempotency, and artifact export with execution_hash. All annotations (readOnlyHint, idempotentHint, destructiveHint) are consistent and complemented by these 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 well-structured with a clear opening, then sections on compute modes, input handling, artifact export, and a link. It is informative but slightly verbose with repetition of 'OpenChainGraph compute node'. Every sentence adds value, though a bit more conciseness could be achieved.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 4 parameters, a nested object, and no output schema, the description covers input safety (synthetic inputs), compute mode selection, data retention policy, artifact generation, upstream dependencies, and provides a reference link. The return value is implied via artifact export, which is sufficient given the annotations indicating readOnly and idempotent behavior.
Complex tools with many parameters or behaviors need more documentation. 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 parameters. The description adds value by explaining the compute parameter's behavior in different modes and how parent_hashes and parent_tool_ids chain artifacts. For policy_parameters, it defers to the tool's manifest, which is a minor omission but acceptable given the schema completeness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a 'W-8 Series Structural Validator' and an 'OpenChainGraph compute node (compliance_mandate)'. It specifies its role in validating the structure of W-8 series forms and distinguishes itself from other validation tools by focusing on this specific tax form series and mentioning its deterministic compute nature and upstream artifact consumption.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 to 'Use synthetic or anonymised inputs only' and explains compute mode options ('auto', 'server', 'browser') with conditions for each. However, it does not explicitly state when not to use this tool or mention alternative tools for similar tasks, leaving some ambiguity among the extensive sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_x402_deferred_handshakex402 Deferred-Scheme Handshake ValidatorBRead-onlyIdempotentInspect
x402 Deferred-Scheme Handshake Validator: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-393-x402-v2-migration-linter, art-129-webbotauth-signature-verifier. Output feeds: art-61-x402-batch-settlement-reconciler. Open at: https://ainumbers.co/chaingraph/art-394-x402-deferred-handshake-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description reveals that inputs are transiently processed and not stored, logged, or retained, and mandates synthetic/anonymized inputs. It also notes the export of an AP2 artifact, adding valuable 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 well-structured, front-loading the tool's identity, compute modes, data handling, and output. It is appropriately detailed but could be slightly more 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?
The description covers compute modes, data handling, chain provenance, and upstream/downstream artifacts. However, it lacks clarity on the return value or output format beyond mentioning an AP2 artifact, which is a gap given the absence of an 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?
With 100% schema description coverage, the schema already documents all parameters. The description adds minor reiteration about compute modes but does not materially 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 this is a validator for x402 deferred-scheme handshake, functioning as an OpenChainGraph compute node. It explains its role as compliance_control, but does not explicitly differentiate from other validation 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?
The description details compute modes and data handling but provides no explicit guidance on when to use this tool versus alternative validators. There is no mention of prerequisites, exclusions, or comparison to similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vc_issueIssue a signed W3C Verifiable Credential 2.0AInspect
Composes and signs a W3C Verifiable Credential 2.0 with an eddsa-jcs-2022 Data Integrity proof over a fresh ephemeral did:key (generated per call, not reused). Returns the signed credential, an OCG Standard §23 vc-2.0 input-attestation block ready to embed in a ChainGraph chain's policy_parameters at the given pointer, and an OCG receipt of the issuance activity. The signature proves the claims were not altered after signing and that the did:key holder produced it -- it is not, by itself, identity assurance.
| Name | Required | Description | Default |
|---|---|---|---|
| claims | Yes | Claim key-value pairs for credentialSubject (required, at least one entry). | |
| pointer | No | RFC 6901 JSON pointer where the attestation's claims sit in a consuming chain's policy_parameters. Default: "/subject_claims". | |
| subject_id | No | Credential subject id (DID or any identifier string). Default: "did:example:subject". | |
| valid_from | No | ISO 8601 validFrom. Default: now. | |
| valid_until | No | ISO 8601 validUntil. | |
| credential_type | No | Type appended to VerifiableCredential (e.g. "MembershipCredential"). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (which are all false), the description discloses that a fresh ephemeral did:key is generated per call and not reused, and clarifies that the signature is not identity assurance. This provides useful behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the primary action, then listing return values, then clarifying limitations. No 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?
The description covers the tool's purpose, output components, and a key limitation. However, it lacks details on the structure of the returned objects (e.g., signed credential format) and does not provide examples, which could help given the 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 the schema already documents parameters. The description adds minimal extra meaning beyond the schema (e.g., mentioning RFC 6901 for pointer but not detailing format). 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 composes and signs a W3C Verifiable Credential 2.0 with a specific proof type (eddsa-jcs-2022) and key generation method (fresh ephemeral did:key). It distinguishes from siblings like sdjwt_issue by specifying the credential standard and proof 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 embedding in ChainGraph's policy_parameters but does not explicitly state when to use this tool over alternatives (e.g., sdjwt_issue) or when not to use it. No 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.
verify_a2a_agent_cardA2A Agent Card Validator & Extension CheckerARead-onlyIdempotentInspect
A2A Agent Card Validator & Extension Checker: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-22-agentic-payments-protocol-comparator. Output feeds: art-18-mcp-developer-readiness-scorecard, art-26-x402-payload-decoder-flow-simulator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/art-25-a2a-agent-card-validator.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral context beyond the annotations: it states the tool is deterministic, processes inputs transiently with no storage/logging/retention, advises using synthetic data, and explains compute delegation behavior for gpu:true vs. gpu:false nodes. It also discloses artifact export and provenance chaining. No contradiction with readOnlyHint, idempotentHint, or destructiveHint.
Agents need to know what a tool does to the 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 dense and front-loaded with the tool's identity, followed by compute behavior, data handling, and artifact connections. It is longer than average but contains relevant information without obvious fluff. The structure could be improved with clearer separation of concerns, but 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?
There is no output schema, so the description carries the burden of explaining returns. It mentions exporting an AP2 artifact with execution_hash but does not describe the validation result format or how the agent should interpret success/failure. The data-flow context (upstream/downstream artifacts) is helpful, but the return structure is under-specified for a validator 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 schema already provides clear descriptions for each parameter. The description re-states compute modes and adds a note about 'gpu:true nodes always delegate,' which slightly augments the schema. However, it does not add meaningful new semantics for parent_hashes or policy_parameters beyond what the schema 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 clearly identifies the tool as an 'A2A Agent Card Validator & Extension Checker' and an OpenChainGraph compute node. While the title provides the primary verb+resource, the description quickly shifts to compute-mode details rather than explicitly stating 'validates A2A agent cards.' The name and title distinguish it from siblings like validate_a2a_agent_card, but the description 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?
The description provides context about when compute runs server-side vs. browser delegation, which is important usage guidance. However, it does not explicitly state when to use this tool over alternatives, nor does it mention any exclusions. The presence of a sibling named validate_a2a_agent_card makes this lack of differentiation notable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_acdc_delegation_chainACDC Delegation Chain VerifierARead-onlyIdempotentInspect
ACDC Delegation Chain Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-284-did-webvh-log-verifier. Open at: https://ainumbers.co/chaingraph/art-285-acdc-delegation-chain-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds significant context: deterministic behavior, compute modes (auto/server/browser), transient processing (no storage), export of AP2 artifact with execution_hash, and upstream dependency. 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 concise, packing key information (purpose, compute modes, privacy, output, dependencies) into two sentences. It is front-loaded with the purpose. Minor improvement could be more structured bullet points, 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 tool's complexity (4 params, no output schema), the description covers main aspects: what it does, compute modes, transient processing, privacy warning, output artifact, upstream dependency. The URL provides additional detail. Missing explicit return value description, but 'exports an AP2 artifact' hints at 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?
Schema coverage is 100% (all parameters described), so baseline is 3. The description adds meaning beyond schema by explaining compute modes in context, the purpose of parent_hashes and parent_tool_ids for chaining, and that policy_parameters are for the decision function.
Input schemas describe structure but not intent. Descriptions should explain non-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 identify the tool as an ACDC delegation chain verifier. It specifies it is an OpenChainGraph compute node and distinguishes from siblings like verify_did_webvh_log (upstream) and validate_ap2_mandate_chain (different 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 advises to use synthetic or anonymised inputs only and explains transient processing. It mentions consuming upstream artifacts from a specific tool, implying a prerequisite. However, it does not explicitly state when not to use this tool or compare with alternatives like validate_ap2_mandate_chain.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_address_migration_batchISO 20022 Structured-Address Migration Batch VerifierARead-onlyIdempotentInspect
ISO 20022 Structured-Address Migration Batch Verifier: OpenChainGraph compute node (compliance_mandate). Regulatory deadline: 2026-11-01 (SWIFT CBPR+ structured-address mandate — November 2026 (~5 months). Hardest deadline tool in suite by proximity.). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-11-vop-batch-match-rate-analyser, art-08-en16931-einvoice-batch-validator, ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/rca-03-iso20022-address-migration-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint), the description adds critical behavioral details: inputs are processed transiently and not stored, it is deterministic, and it explains where computation occurs (server-side vs browser delegation). This provides a comprehensive understanding of the tool's operation and data 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?
The description is well-structured with front-loaded key information. It is slightly verbose with phrases like 'Hardest deadline tool in suite by proximity' but overall efficient, packing multiple details without unnecessary repetition. Could be trimmed slightly, but remains 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 mentions it exports an AP2 artifact with execution_hash and lists output feeds, but does not describe the direct response format (e.g., success/failure indicators, detailed results). With no output schema, this omission leaves some ambiguity about what the tool returns. Context is good 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% with clear descriptions for each parameter. The tool description adds minimal extra meaning, primarily reiterating the compute mode behavior and advising anonymized inputs. Since the schema already documents parameters, the description's marginal contribution is limited, justifying 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 tool name and description explicitly state it is an 'ISO 20022 Structured-Address Migration Batch Verifier'. The description further clarifies it is a compliance mandate compute node with a regulatory deadline, distinguishing it from sibling tools by highlighting it as the 'hardest deadline tool in suite by proximity'. Purpose is concrete and 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 advises to 'use synthetic or anonymised inputs only' and explains compute modes (auto, server, browser) with conditions for each. While it does not directly list alternative tools, the context of being a batch verifier for a specific mandate implies when to use it. However, it lacks explicit 'when not to use' or comparison to related siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_anchored_extractAnchored Extract VerifierBRead-onlyIdempotentInspect
Anchored Extract Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-286-anchored-extract-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral detail beyond the annotations: compute modes (auto, server, browser), execution location (Cloudflare Workers vs browser delegation), transient input processing, non-retention policy, and output artifact type. Annotations already indicate readOnly, idempotent, and non-destructive, which align with and are enriched by 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 reasonably concise with five sentences, and it front-loads the tool identity and compute mode explanation. The inclusion of a link is helpful. However, some technical detail about nodes and kernels could be streamlined without losing 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?
For a tool with 4 parameters and no output schema, the description covers the output artifact type but lacks details on what the verification artifact contains (e.g., proof, signature) and any constraints beyond input sensitivity. The tool's exact role in the ChainGraph ecosystem is explained only superficially, leaving gaps for an agent to fully understand its 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%, so baseline is 3. The description adds context about the 'compute' parameter (e.g., Cloudflare Workers, browser delegation) which is not in the schema description. However, for the other three parameters, the description offers no additional meaning beyond the schema. Overall, minimal 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 states it is an 'Anchored Extract Verifier' and a 'Deterministic OpenChainGraph compute node', but it does not clearly explain what 'verification' means in this context. The focus is on compute modes and output artifact, not on the core verification logic, making it somewhat vague compared to sibling verify 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. It warns to use synthetic inputs but does not explain prerequisites, context, or when not to use it. With a large sibling list, this omission is significant.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_ap2_payment_receiptAP2 PaymentReceipt Verifier & HNP GuardrailARead-onlyIdempotentInspect
AP2 PaymentReceipt Verifier & HNP Guardrail: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-60-agent-economy-runtime-fit-diagnostic. Output feeds: art-01-ap2-mandate-chain-validator, cry-05-agent-action-audit-trail-aggregator. Open at: https://ainumbers.co/chaingraph/art-62-ap2-payment-receipt-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, destructiveHint, idempotentHint. The description adds that inputs are processed transiently, not stored or logged, and that compute modes affect execution location. This context is valuable beyond the annotations and does not contradict them.
Agents need to know what a tool does to the 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 somewhat lengthy (4-5 lines) and includes redundant mentions of compute modes (also described in schema). It front-loads the title but then meanders into technical details. Some sentences could be combined or removed for 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 no output schema, the description explains that the tool exports an artifact with execution_hash and lists specific upstream and downstream artifacts. It also covers compute modes, input privacy, and an external link. This is sufficient for chaining context, though domain logic is minimal.
Complex tools with many parameters or behaviors need more documentation. 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 meaning by connecting parent_hashes to 'execution_hash values from upstream artifacts' and clarifying that policy_parameters are for the decision function. It does not repeat schema descriptions but provides relational 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 identifies the tool as an 'AP2 PaymentReceipt Verifier & HNP Guardrail' and a compute node that exports an artifact with execution_hash. However, it focuses heavily on technical mechanics (compute modes, server/browser) rather than clearly stating what verification entails or the domain purpose. The verb 'verify' is implied but not explicitly defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 when to use different compute modes (auto, server, browser) and advises to use synthetic inputs. However, it lacks any comparative guidance against sibling tools, which are numerous. There is no explanation of when to use this tool versus other verification or AP2 tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_content_credential_signatureContent Credential Signature VerifierARead-onlyIdempotentInspect
Content Credential Signature Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-123-c2pa-manifest-validator. Output feeds: art-125-provenance-ingredient-tree-resolver. Open at: https://ainumbers.co/chaingraph/art-124-content-credential-signature-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Exceeds annotations by disclosing transient input processing, non-retention, and compute delegation logic. Describes deterministic and idempotent nature. Does not contradict annotations. Lacks details on output format or failure modes, but the provided behavioral context is substantial.
Agents need to know what a tool does to the 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 of ~150 words, front-loading the tool identity. Efficient but could benefit from structuring (e.g., bullet points for compute modes). No wasted sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, data handling, chain provenance (upstream/downstream artifact IDs), and a link. Lacks explanation of the verification logic, output format (no schema), and error handling. For a verification tool, the core verification semantics are under-specified.
Complex tools with many parameters or behaviors need more documentation. 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, so baseline is 3. The description adds minor context like execution_hash for parent_hashes and references the tool manifest for policy_parameters, but does not significantly extend 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?
The description clearly states the tool verifies content credential signatures within an OpenChainGraph compute node, distinguishing it from siblings through its compute architecture and chain provenance context. However, it emphasizes the compute node mechanics over the core verification action, which slightly dilutes 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?
Provides compute mode guidance and input privacy warnings ('use synthetic or anonymised inputs only'), but fails to explicitly state when to use this tool over sibling verification tools. The upstream/downstream artifact chain hints at workflow but does not offer concrete selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_conversion_receiptConversion Receipt VerifierARead-onlyIdempotentInspect
Conversion Receipt Verifier: OpenChainGraph compute node (cryptographic_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-191-conversion-receipt-builder. Open at: https://ainumbers.co/chaingraph/art-192-conversion-receipt-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), the description adds significant behavioral context: deterministic execution, transient processing without retention, privacy warning ('use synthetic or anonymised inputs only'), compute mode delegation logic, and output artifact with execution_hash. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that efficiently covers multiple aspects (compute modes, privacy, output, upstream dependency, URL). It front-loads the tool type and name. Minor redundancy ('Deterministic OpenChainGraph compute node' repeats the prior phrase) but overall concise with 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 covers compute modes, transient processing, privacy, and output artifact, but lacks explanation of what the verification result contains (no output schema). It does not clarify the verification semantics or how the tool relates to its builder sibling, leaving gaps in understanding the tool's complete role.
Complex tools with many parameters or behaviors need more documentation. 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 a baseline of 3. The description adds meaning by explaining the purpose of parent_hashes (execution_hash values from upstream artifacts) and parent_tool_ids (matching tool_ids), and details when policy_parameters are computed server-side. This extra context improves understanding 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 identifies the tool as a 'Conversion Receipt Verifier' and mentions it exports an AP2 artifact, but it does not explicitly state what verification entails. The focus on compute modes and transient processing obscures the core verification function, leaving the agent to infer the purpose from the name and sibling context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute mode choices and notes the upstream dependency (art-191-conversion-receipt-builder), implicitly indicating this tool is used after that builder. However, it lacks explicit guidance on when to use this tool versus alternatives (e.g., build_conversion_receipt) and provides no exclusions or when-not-to-use scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_did_webvh_logdid:webvh DID Log VerifierBRead-onlyIdempotentInspect
did:webvh DID Log Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-04-agent-identity-attestation-checker. Output feeds: art-285-acdc-delegation-chain-verifier. Open at: https://ainumbers.co/chaingraph/art-284-did-webvh-log-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide read-only, idempotent, non-destructive hints. The description adds relevant behavioral traits: deterministic execution, transient processing with no storage or logging, and a warning to use synthetic/anonymised inputs. This goes beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is overly verbose with 9 sentences, including jargon like 'compliance_mandate', 'AP2 artifact', and specific artifact IDs. Key information (verify log, compute modes, transient processing) could be conveyed in 3-4 sentences. The URL and artifact details add clutter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute execution modes and transient processing well, but lacks explanation of output semantics (e.g., what the tool returns, how to interpret results). Without an output schema, the description should clarify the verification outcome. Upstream/downstream references give some chain context but not 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 coverage is 100%, so the baseline is 3. The description adds context for the compute parameter's behavior in different modes and explains policy_parameters in relation to server-side computation. This adds some value but does not significantly improve 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 identifies the tool as a verifier for did:webvh logs and explains its role as an OpenChainGraph compute node. However, it does not explicitly state what verification entails, relying on the title for clarity. It distinguishes from siblings by detailing compute modes and chain provenance, which is helpful.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute parameter modes (auto, server, browser) and when browser delegation is used. However, it lacks explicit direction on when to choose this tool over the many sibling verification tools, such as verify_acdc_delegation_chain. The upstream/downstream context implies a specific pipeline role.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_disclosure_inclusionVerify Merkle inclusion in a disclosure manifestARead-onlyIdempotentInspect
Proves (or refutes) that a {path,digest} pair was in a disclosure manifest's room (DATAROOM-1-BUILD-SPEC.md §DR-4) -- worker-side mirror of tools/547-disclosure-manifest-verifier.html's single-file inclusion check. Recomputes the manifest's Merkle root over its entries[], builds the inclusion proof path for the target entry, and reapplies it to confirm it reduces to the claimed merkle_root. Absence is only provable against the exact manifest version passed in.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Path of the entry to prove. | |
| digest | Yes | sha256:-prefixed digest of the file to prove. | |
| manifest | Yes | The disclosure manifest to check against (needs entries[] + merkle_root). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the internal process: recomputing the Merkle root, building the inclusion proof path, and reapplying it. This adds behavioral context beyond the annotations (readOnlyHint, idempotentHint, destructiveHint). However, it does not mention potential side effects or resource usage, though annotations already indicate safety.
Agents need to know what a tool does to the 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: stating the core function, explaining the computational process, and providing a caveat. It is efficient with no fluff, though it could be slightly more 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 description does not specify the tool's return value or output format. For a verification tool, the agent needs to know whether the result is a boolean, a proof object, or something else. This missing information reduces completeness, especially given no output schema is provided.
Complex tools with many parameters or behaviors need more documentation. 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 is already described inline. The description adds minimal extra meaning (e.g., 'sha256:-prefixed digest' matches schema, 'needs entries[] + merkle_root' is repeated). The process description provides indirect context 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?
The description clearly states the tool's purpose: 'Proves (or refutes) that a {path,digest} pair was in a disclosure manifest's room.' It references a specific specification section (DATAROOM-1-BUILD-SPEC.md §DR-4) and distinguishes itself as a worker-side mirror of a specific HTML tool, leaving no ambiguity about what it 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 implies the tool is for single-file inclusion checks against a disclosure manifest, but it does not explicitly state when to use this tool over alternatives like verify_merkle_batch. The caveat about absence being provable only against the exact manifest version is helpful but does not constitute clear usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_dscsa_transaction_statementDSCSA Transaction Statement (T3) VerifierBRead-onlyIdempotentInspect
DSCSA Transaction Statement (T3) Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-113-saleable-returns-verifier. Open at: https://ainumbers.co/chaingraph/art-112-dscsa-transaction-statement-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds meaningful context: inputs are processed transiently and not stored/logged/retained, determinism, and export of execution_hash for chain provenance. It also explains compute delegation behavior. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but contains redundancy (e.g., 'OpenChainGraph compute node' mentioned twice). It is front-loaded with the title and then dives into technical compute details. The inclusion of a URL is helpful but adds length. Could be streamlined by merging repeated 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 output schema and 4 parameters (one nested object), the description explains input processing (transient, compute modes) and output artifact (AP2 with execution_hash). It also mentions the output feed for provenance. However, it lacks specifics on the verification logic (what fields are checked, against what rules), leaving gaps in understanding the tool's core function. 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% with descriptions for all 4 parameters. The description repeats compute mode details already in the schema but does not add new semantics for parent_hashes, parent_tool_ids, or policy_parameters. The policy_parameters description in schema is vague ('See the tool's manifest'), and the description does not supplement it. Baseline 3 due to 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 states the tool verifies DSCSA transaction statements (T3) using OpenChainGraph, specifying it is a deterministic compute node. It mentions the output feed to a related tool (art-113-saleable-returns-verifier), which helps distinguish it from other verifiers. However, it does not explicitly differentiate from similar sibling tools like verify_saleable_return, and the purpose is somewhat obscured by technical compute mode 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 includes a safety guideline to use synthetic or anonymised inputs only, and explains compute mode options. However, it provides no guidance on when to use this tool versus alternatives among the many sibling tools, nor does it mention prerequisites or when not to use it. Usage context is present but insufficient for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_dual_layer_disclosureDual-Layer Disclosure VerifierARead-onlyIdempotentInspect
Dual-Layer Disclosure Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-126-ai-act-art50-marking-checker. Output feeds: art-128-content-binding-assertion-validator. Open at: https://ainumbers.co/chaingraph/art-127-dual-layer-disclosure-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnly and idempotent, and the description adds critical transparency: inputs are processed transiently and not stored or retained; use synthetic or anonymised inputs only. It also explains the export of an AP2 artifact with execution_hash for provenance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but well-structured, front-loading the purpose and then detailing compute modes, data privacy, and artifact chaining. Each sentence adds value, though it could be slightly more concise by omitting the URL and full artifact IDs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, data privacy, and chaining, but lacks explanation of what 'dual-layer disclosure' means or what the verification entails. Given the complexity and absence of output schema, the agent might not fully understand the verification logic or expected 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?
Schema coverage is 100%, and the description enriches meaning, especially for the 'compute' parameter by explaining the behavior of each mode (auto, server, browser) and gpu:true nodes. It also clarifies the role of 'parent_hashes' and 'parent_tool_ids' in chaining. The description adds moderate value over 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 it is a 'Dual-Layer Disclosure Verifier' and an 'OpenChainGraph compute node' with a specific compliance mandate. It distinguishes itself from sibling tools by specifying its role in verifying dual-layer disclosure and its place in the chain (consumes from art-126, feeds into art-128).
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 through mentioning compute modes and data handling but does not explicitly state when to use this tool versus other verify tools (e.g., verify_content_binding_assertion). No clear 'use this when' or 'use this instead of' guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_einvoice_vat_calcE-Invoice VAT Calculation VerifierARead-onlyIdempotentInspect
E-Invoice VAT Calculation Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-293-einvoice-format-validator. Output feeds: art-295-einvoice-jurisdiction-mandate-router. Open at: https://ainumbers.co/chaingraph/art-294-einvoice-vat-calc-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, etc.), the description adds critical behavioral details: inputs are transiently processed and not stored/logged/retained, deterministic execution, server vs browser delegation, and export of AP2 artifact with execution_hash for provenance. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense with information but well-structured: purpose, compute modes, privacy note, chain artifacts, and links. Could be slightly more concise by trimming redundant phrasing like 'OpenChainGraph compute node' repeated twice. 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?
Covers compute modes, data handling, and chain integration well, but lacks explanation of the core VAT verification logic (what does it verify? How does it work?). No output schema means the description should give some sense of return values, but it only mentions AP2 artifact export. The chain context is good, but essential functional details are missing for an agent to fully understand tool behavior.
Complex tools with many parameters or behaviors need more documentation. 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 for the 'compute' parameter by explaining its behavior in detail, but for other parameters (parent_hashes, parent_tool_ids, policy_parameters) it provides minimal extra meaning beyond the schema. The note 'See the tool's manifest for field names' is vague.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Title and description clearly identify it as a VAT calculation verifier for e-invoices within a compute chain. However, the core verification logic is not explained (e.g., what exactly it verifies). It does distinguish itself by naming specific upstream and downstream artifacts, providing good context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guideline to use synthetic or anonymised inputs only. Explanation of compute modes (auto/server/browser) gives usage context but lacks guidance on when to prefer this tool over siblings like validate_einvoice_format or other chain nodes. No when-not-to-use or alternative suggestions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_etf_pcf_basketETF PCF Create/Redeem Basket VerificationARead-onlyIdempotentInspect
ETF PCF Create/Redeem Basket Verification: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-578-etf-pcf-basket-verification.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
While annotations already declare readOnlyHint and idempotentHint, the description adds significant behavioral details: deterministic execution, transient input processing with no storage/logging/retention, server/browser execution modes, and AP2 artifact export with execution_hash. It also cautions to use synthetic/anonymised inputs, which is beyond the annotations. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact given the technical complexity, and each sentence adds useful context (compute modes, data handling, artifact export, URL). It could be tightened by removing the initial title repetition and the URL, but it remains readable and information-dense.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 execution modes, data privacy, and artifact export, but it does not explain what the verification result looks like (e.g., a pass/fail response, validated payload structure) in the absence of an output schema. It also defers policy_parameters to a manifest, leaving some ambiguity for a workflow agent. Overall it is adequate but incomplete for fully autonomous 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?
All 4 parameters have complete descriptions in the input schema, so the description does not need to add much. It does elaborate on compute mode behavior in prose, but this basically repeats the schema's enum description. No additional meaning is provided for parent_hashes, parent_tool_ids, or policy_parameters 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 title and description identify this as an ETF PCF create/redeem basket verification tool, and it is framed as an OpenChainGraph compute node for compliance_control. It does not explicitly state what aspect of the basket is verified, but the name and domain make the purpose reasonably clear and distinguish it from sibling tools. It could be stronger with a direct statement of the verification semantics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and instructs to use synthetic or anonymised inputs only, which helps with operational usage. It does not explain when to choose this tool over other verify_* siblings or provide alternative tool references. The guidance is implied by the tool name rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_eth_state_proofState-Proof VerifierARead-onlyIdempotentInspect
State-Proof Verifier: OpenChainGraph compute node (cryptographic_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-279-state-proof-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and idempotentHint=true. The description adds valuable behavioral context: 'deterministic', 'inputs are processed transiently and not stored, logged, or retained', and 'use synthetic or anonymised inputs only'. These details go beyond the annotations, enhancing transparency without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured, starting with a one-line summary, then addressing compute modes and data handling. It is concise enough but could be slightly tighter. Every sentence adds information, with no obvious 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 tool has 4 parameters, no output schema. The description covers compute modes, transient processing, and export of an AP2 artifact, but it does not describe the return value (e.g., whether it returns a boolean or artifact details). For a verification tool, output semantics are critical and are missing, indicating incomplete 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 baseline is 3. The description adds context for the 'compute' parameter and mentions 'policy_parameters' but refers to 'See the tool's manifest' for field names, which is not detailed. No additional semantics are provided for 'parent_hashes' or 'parent_tool_ids'. The added value is marginal.
Input schemas describe structure but not intent. Descriptions should explain non-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 'verify_eth_state_proof' and the description 'State-Proof Verifier: OpenChainGraph compute node (cryptographic_mandate)' clearly indicate the tool verifies Ethereum state proofs. The verb 'verify' and the specific resource 'eth_state_proof' make the purpose unambiguous, and the description differentiates it from sibling verification tools by focusing on state proofs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes and advises using synthetic or anonymized inputs, but it does not explicitly state when to use this tool versus alternatives (e.g., other verification tools like verify_acdc_delegation_chain). The context is implied but lacks direct comparative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_execution_hashVerify a ChainGraph execution hashARead-onlyIdempotentInspect
Independently verify a ChainGraph artifact (ChainGraph Standard v0.1 §6). Recomputes SHA-256 over the canonical (sorted-key, whitespace-stripped) JSON of policy_parameters + output_payload and compares it to the claimed execution_hash. A match proves the artifact's stated inputs deterministically produce its stated outputs. Pass either a full artifact object, or policy_parameters + output_payload + claimed_hash. Pure client-safe compute -- no data is stored. Use this to verify artifacts from any vendor that conforms to the ChainGraph Standard.
| Name | Required | Description | Default |
|---|---|---|---|
| artifact | No | A full ChainGraph artifact envelope (must contain policy_parameters, output_payload, and execution_hash). | |
| claimed_hash | No | The execution_hash to check against (if not passing a full artifact). | |
| output_payload | No | Artifact output_payload (if not passing a full artifact). | |
| policy_parameters | No | Artifact policy_parameters (if not passing a full artifact). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds 'Pure client-safe compute -- no data is stored' and explains the deterministic algorithm, providing context beyond annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at 4 sentences, well-structured, and front-loaded with the primary purpose. Every sentence adds essential information (standard reference, algorithm, calling patterns, purity claim). 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 covers the tool's behavior, calling patterns, and safety, but it does not explicitly describe the output (e.g., boolean match result). Given no output schema, this is a minor gap; however, the intent is clear for a verification 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?
Although schema coverage is 100%, the description adds value by explaining the two calling modes ('full artifact object' vs. individual fields). It clarifies the grouping of policy_parameters, output_payload, and claimed_hash as an alternative to artifact, which is not explicit 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's purpose: 'Independently verify a ChainGraph artifact' by recomputing SHA-256 over canonical JSON and comparing to claimed hash. It explicitly references the ChainGraph Standard v0.1 §6, distinguishing it from sibling 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 provides clear usage guidance: 'Pass either a full artifact object, or policy_parameters + output_payload + claimed_hash.' It also notes the tool is applicable to artifacts from any conforming vendor. However, it does not explicitly state when not to use it or mention alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_ipe_integrityIPE Integrity VerifierARead-onlyIdempotentInspect
IPE Integrity Verifier: OpenChainGraph compute node (compliance_control). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-460-ipe-integrity-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only, idempotent, non-destructive. The description adds behavioral details: deterministic execution, transient processing (no storage/logging), compute mode delegation, and artifact export. No contradictions; value is added beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core identity and functionality, then details compute modes, data handling, and output. It is somewhat long but efficient, with each sentence serving a purpose. The URL at the end is useful but could be integrated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 full schema coverage and annotations, the description adds context on compute modes, data transient behavior, and artifact export. No output schema exists, but the description mentions the AP2 artifact with execution_hash, partially compensating. Additional details on return format 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% and adequately explains each parameter. The description does not add new semantics beyond the schema, merely reiterating compute modes. Baseline 3 is appropriate as the description adds minimal parameter insights.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 'IPE Integrity Verifier: OpenChainGraph compute node (compliance_control)' and explains its deterministic nature, transient processing, and AP2 artifact export. It distinguishes itself from other verify_* sibling tools by focusing on IPE integrity and specifying the OpenChainGraph context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute modes ('auto', 'server', 'browser') and when each is appropriate, including a warning to use synthetic/anonymised inputs only. However, it does not explicitly list alternative tools 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.
verify_kya_x402_scopeKYA Credential x x402 Payload Scope VerifierCRead-onlyIdempotentInspect
KYA Credential x x402 Payload Scope Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-565-kya-x402-scope-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive behavior. The description adds valuable context: inputs are processed transiently and not stored/logged/retained, browser delegation behavior for gpu:true nodes, and export of an AP2 artifact with execution_hash. This goes beyond the annotations and is transparent about privacy and compute delegation, though it doesn't detail the exact return format beyond artifact mention.
Agents need to know what a tool does to the 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 dense paragraph with useful details but contains redundancy, repeating "OpenChainGraph compute node" twice. It front-loads the tool name but doesn't provide a crisp purpose statement. At ~100 words it's not overly long, but it would benefit from restructuring to separate purpose from compute 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?
Despite having 4 params, rich annotations, and no output schema, the description omits the core verification logic: what "payload scope" means, what constitutes a successful verification, and what the actual decision output is. The compute-mode and privacy details are present, but an agent cannot understand the tool's primary function or expected result, making it incomplete for reliable 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 descriptions for all parameters. The description further explains the compute parameter semantics (server-side on Cloudflare Workers, browser delegation URL, gpu:true behavior), adding meaning beyond the enum values. However, it does not clarify policy_parameters field names or parent_hashes/parent_tool_ids relationships 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 identifies the tool as a "KYA Credential x x402 Payload Scope Verifier" and an "OpenChainGraph compute node", but never states what verification is performed or what outcome it produces. It focuses on compute mechanics rather than the tool's core function, making it vague and indistinguishable from other verify_* siblings without external context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 some guidance on compute modes (auto/browser) and input safety ("Use synthetic or anonymised inputs only"), but does not say when to use this tool versus alternative verifiers. No exclusion criteria or alternative tools are mentioned, so the agent lacks decision guidance for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_license_electionLicense Election VerifierBRead-onlyIdempotentInspect
License Election Verifier: OpenChainGraph compute node (cryptographic_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-199-license-election-certifier. Open at: https://ainumbers.co/chaingraph/art-200-license-election-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds significant behavioral details: inputs are processed transiently and not stored/logged/retained, computation can occur server-side or client-side depending on compute mode and gpu flags, and outputs an AP2 artifact with execution_hash. These details provide transparency beyond the annotations, though they are consistent with them. 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 verbose and contains redundancy (e.g., 'Deterministic OpenChainGraph compute node' appears twice). It front-loads the identity but then dives into compute mode details before stating the core function. While all information is relevant, some condensation and restructuring would improve readability and 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 description covers purpose, compute modes, data handling, artifact output, and upstream dependencies. However, it lacks a description of the verification logic or the output format (since no output schema). For a tool with nested parameters and no output schema, more context on the return value and decision function would be beneficial. The link to a visualization partially compensates, but 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?
Schema coverage is 100%, providing baseline 3. The description adds context for the 'compute' parameter by explaining the modes and delegation behavior, and for 'policy_parameters' by stating they are inputs to the decision function. However, it does not enhance understanding of 'parent_hashes' or 'parent_tool_ids' beyond the schema descriptions. Overall moderate 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 identifies the tool as a 'License Election Verifier' and a deterministic OpenChainGraph compute node. The purpose is implied by the name and by referencing consumption of upstream artifacts from 'art-199-license-election-certifier', but the description does not explicitly state what verification entails beyond computation. It distinguishes itself from siblings like 'certify_license_election' through the artifact chain mention, though a more direct statement would improve 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 is provided on when to use this tool versus alternatives like 'certify_license_election' or other verification tools. The description mentions using synthetic inputs only, which is a usage constraint, but lacks context on appropriate scenarios, prerequisites, or exclusions. The sibling list includes many tools, but no comparisons are made.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_merkle_batchMerkle Batch VerifierARead-onlyIdempotentInspect
Merkle Batch Verifier: OpenChainGraph compute node (cryptographic_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: rca-02-mica-reserve-stress, pnr-01-dora-ict-cascade-simulator. Output feeds: ptg-01-ap2-prompt-template-generator. Open at: https://ainumbers.co/chaingraph/cry-04-merkle-batch-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, non-destructive), the description adds crucial behavioral details: determinism, transient processing with no storage or retention of inputs, requirement to use synthetic/anonymized inputs only, and export of an AP2 artifact with execution_hash for chain provenance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph covering multiple aspects (purpose, compute modes, data handling, artifacts, links). It front-loads the tool's role but could be more structured with distinct sections or bullet points. Length is moderate but could be trimmed without losing 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 (4 parameters, nested objects, no output schema) and the rich sibling context, the description covers compute behavior, data privacy, artifact export, and chain integration. Missing explicit return value format, but mentions artifact export which implies the output. 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?
With 100% schema description coverage, the schema already documents all four parameters adequately. The description does not add significant new meaning beyond the schema, but does mention upstream artifact consumption and output feed, providing context rationale. 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 identifies the tool as a Merkle batch verifier within the OpenChainGraph compute node system, with a specific verb 'verify_merkle_batch' and resource. It distinguishes from siblings by its unique compute mode options and cryptographic mandate, though the purpose could be more explicitly stated as verifying a Merkle batch against a chain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes ('auto', 'server', 'browser') based on GPU availability and kernel registration. It provides clear context for execution options but does not explicitly state when not to use this tool or directly compare to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_migration_completenessPayment Data Migration CompletenessCRead-onlyIdempotentInspect
Payment Data Migration Completeness: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-519-payment-data-migration-completeness.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses valuable behavioral traits beyond the provided annotations: deterministic execution, transient input processing (not stored/logged/retained), compute mode behavior (server vs browser delegation), and AP2 artifact export with execution_hash. These details align with and enrich the readOnlyHint and idempotentHint annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but contains redundancy: 'Payment Data Migration Completeness: OpenChainGraph compute node (attestation_mandate). Deterministic OpenChainGraph compute node.' repeats the compute node concept. The rest is information-dense, but the opening could be tightened.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 omits core contextual information: what exactly is being verified, what a successful verification looks like, what output fields or artifact structure are returned, and how the verification result is interpreted. Given the tool has no output schema and sits among many verify_* siblings, this lack of completeness 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?
The schema covers all parameters with descriptions (100% coverage), so the description does not need to repeat them. However, it does not add much parameter-specific meaning beyond referencing compute modes and pointing to a manifest for policy_parameters details, which the schema already mentions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description repeats the title 'Payment Data Migration Completeness' and describes an 'OpenChainGraph compute node' but never states what the tool actually verifies or what 'migration completeness' means. It lacks a specific verb like 'checks' or 'validates' that would clarify the tool's core 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 includes an instruction to use synthetic or anonymised inputs only, but it does not specify when to use this tool versus alternatives. There is no mention of prerequisite conditions, intended scenarios, or exclusions, leaving the selection guidance vague.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_product_authenticityLuxury Goods Product Authenticity VerifierARead-onlyIdempotentInspect
Luxury Goods Product Authenticity Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-116-product-lineage-builder. Open at: https://ainumbers.co/chaingraph/art-117-product-authenticity-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds valuable behavioral details: deterministic execution, transient input processing (not stored/logged), output of an AP2 artifact with execution_hash, and compute mode delegation. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is information-dense yet well-structured: title, technical identity, compute modes, data handling, output, upstream dependencies, URL. Every sentence adds unique value with no redundancy. Front-loaded with the key 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?
Despite 4 parameters and no output schema, the description adequately explains compute modes, data handling, and provenance chain. However, it does not describe the return value or decision function (e.g., what constitutes a verified product), leaving a gap in understanding for the agent. The lack of output schema is not fully compensated.
Complex tools with many parameters or behaviors need more documentation. 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 meaning for the compute parameter by explaining modes and browser delegation, and for parent_hashes and parent_tool_ids by linking to upstream artifact consumption. The policy_parameters parameter is not elaborated beyond the schema, but overall the description adds sufficient extra 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 title and description clearly identify the tool as a luxury goods authenticity verifier. However, the description focuses on technical implementation (compute modes, chain provenance) rather than explicitly stating what inputs it requires and what verification result it produces. It does not distinguish from sibling 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 mentions using synthetic or anonymised inputs only and that it consumes upstream artifacts from art-116-product-lineage-builder, suggesting a workflow order. However, it lacks explicit guidance on when to choose this tool over alternatives, no when-not-to-use conditions, and no prerequisites beyond the upstream artifact.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_proof_of_reserves_consistencyProof-of-Reserves VerifierBRead-onlyIdempotentInspect
Proof-of-Reserves Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-584-proof-of-reserves-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | |
| not_proven | No | |
| coverage_ratio_pct | No | |
| determination_note | No | |
| regulatory_framework | No | |
| computed_reserve_root | No | |
| declared_reserve_root | No | |
| overall_determination | No | |
| computed_liability_root | No | |
| declared_liability_root | No | |
| reserve_figure_cross_check | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive. The description adds valuable context: transient processing with no storage/logging, deterministic behavior, execution location options, and export of an AP2 artifact with execution_hash. This exceeds the annotation baseline.
Agents need to know what a tool does to the 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 wordy with repetition ('OpenChainGraph compute node' twice) and spends most of its length on compute modes rather than core purpose. It could be tightened without losing 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 a full output schema and annotations, the infrastructure side is covered. However, the actual verification semantics (what proof-of-reserves consistency means, what inputs are needed, what the AP2 artifact contains) are under-specified. For a compliance tool, this leaves 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% and the schema already details the compute enum semantics. The description mostly restates the compute behavior already in the schema, so it adds little beyond the structured field 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 title and opening line identify it as a proof-of-reserves verifier, but the description focuses on compute node mechanics rather than the verification function. It doesn't explicitly state what 'consistency' means or what distinguishes it from the many other verify_* 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 only usage guidance is the instruction to use synthetic or anonymised inputs, plus compute mode explanations. No exclusions or comparisons to alternative verification tools are given. It doesn't state when to prefer 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.
verify_reserve_proofReserve Proof VerifierARead-onlyIdempotentInspect
Reserve Proof Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-280-reserve-proof-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description confirms determinism, transient input processing (no storage/logging), and the creation of an AP2 artifact with execution_hash. Annotations already indicate read-only, idempotent, non-destructive behavior; the description adds value by detailing compute locations and data retention policies without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise given the tool's complexity, covering multiple compute modes, data handling, and output in a few sentences. It front-loads the core identity ('Reserve Proof Verifier: OpenChainGraph compute node'). Some redundancy exists with schema descriptions, but overall it's well-structured 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 tool with 4 parameters, nested objects, and no output schema, the description explains compute modes, data retention, and the nature of the output artifact. It lacks explanation of what 'AP2 artifact' means or what the response format looks like, but nonetheless covers the essential 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?
The schema covers 100% of parameters with descriptions. The description reiterates compute mode behavior and mentions policy_parameters briefly, but does not add substantial new meaning beyond what the schema already provides. Thus 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 title 'Reserve Proof Verifier' and the description clearly state the tool's function: an OpenChainGraph compute node for verifying reserve proofs. The specific verb 'verify' and resource 'reserve proof' make the purpose unambiguous. While not explicitly differentiating from siblings, the unique combination of 'reserve proof' and 'compliance_mandate' distinguishes it sufficiently.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 different compute modes ('auto', 'server', 'browser', and gpu:true behavior), and advises using synthetic or anonymised inputs only. It provides context for chaining artifacts, but does not explicitly state when not to use this tool or list alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_revocation_statusRevocation-Status VerifierBRead-onlyIdempotentInspect
Revocation-Status Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-287-revocation-status-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds value by disclosing that inputs are processed transiently and not stored, logged, or retained, and it explains the delegation behavior for GPU modes. This extra context justifies a score above the baseline.
Agents need to know what a tool does to the 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 moderately concise but includes detailed technical information about Cloudflare Workers and GPU delegation that could be separated or abbreviated. It front-loads the tool identity and includes a URL, but the structure could be 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?
The description explains processing behavior and compute modes, but lacks details on the expected input fields (e.g., policy_parameters structure) and the output format beyond an AP2 artifact with execution_hash. With no output schema, the agent may need more guidance on what revocation status information is 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?
Schema coverage is 100%, so the input schema already describes all four parameters. The description repeats compute mode details already present in the schema (e.g., 'auto' vs 'server' vs 'browser') but adds no new semantics beyond clarifying the compute mode behavior for gpu:true nodes.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies itself as a 'Revocation-Status Verifier' and an OpenChainGraph compute node, but it does not explicitly state what is being verified (e.g., credentials, certificates). The focus is on compute modes rather than the core purpose. Among many sibling verification tools, it lacks a clear distinguishing purpose statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 using synthetic or anonymized inputs and explains compute modes ('auto', 'server', 'browser'), but it does not provide guidance on when to choose this tool over sibling verification tools. No explicit when-not-to-use or alternative suggestions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_saleable_returnDSCSA Saleable Returns VerifierARead-onlyIdempotentInspect
DSCSA Saleable Returns Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-112-dscsa-transaction-statement-verifier. Output feeds: art-114-suspect-product-quarantine. Open at: https://ainumbers.co/chaingraph/art-113-saleable-returns-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations (readOnlyHint, idempotentHint, destructiveHint) by explaining transient processing (no storage), compute delegation behaviors (browser vs server), and deterministic nature. It adds value by disclosing the lack of persistence and the requirement for synthetic inputs. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise given the complexity of compute modes and chain context. It front-loads the purpose and provides a structured overview. Some details (like the URL) may be extraneous for an AI agent, but overall it is efficient and well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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, compute modes, transient processing, and chain dependencies. However, it lacks details about the output response structure (no output schema) and policy_parameters format (defers to manifest). Given the complexity and absence of output schema, this gap 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?
Input schema coverage is 100% with descriptions for all four parameters. The tool description does not add meaningful parameter details beyond the schema; it mentions synthetic inputs but no new info for parent_hashes, parent_tool_ids, or policy_parameters (which defers to manifest). 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 identifies the tool as a DSCSA Saleable Returns Verifier within a compliance mandate chain. It specifies the role as an OpenChainGraph compute node that consumes from art-112 and feeds art-114, which distinguishes it from sibling tools like verify_dscsa_transaction_statement. However, the exact verification logic (e.g., what criteria are checked) is not described, slightly reducing 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?
The description provides context such as the requirement to use synthetic/anonymised inputs, the chain dependencies, and compute mode options. It does not explicitly guide when to choose this tool over alternatives, but the chain context implies its position. There is no direct comparison to sibling tools or clear when/not-to-use advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_settlement_asset_backingSettlement-Asset Backing InvariantBRead-onlyIdempotentInspect
Settlement-Asset Backing Invariant: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-521-settlement-asset-backing-invariant.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (read-only, idempotent, non-destructive), the description adds substantial behavioral detail: inputs are transient and not stored/logged/retained, computation occurs on Cloudflare Workers for gpu:false nodes, browser delegation returns a URL, and the tool exports an AP2 artifact with execution_hash. This goes far beyond annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is information-dense with useful operational details, but it repeats 'OpenChainGraph compute node' twice in the first two sentences, creating minor redundancy. Overall it is still relatively compact and front-loads the most important context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 compute modes, privacy, and artifact export, but it leaves the core functional purpose vague and does not describe what the output actually represents beyond an AP2 artifact with execution_hash. While the operational context is rich, the missing functional definition prevents it from being 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?
All four parameters have full descriptions in the schema (100% coverage), including the compute enum semantics. The description largely repeats what the schema already states about compute behavior and adds only a generic privacy caution about inputs, so it contributes minimal extra 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 never explicitly states what the tool does—it calls it a 'Deterministic OpenChainGraph compute node' and references 'Settlement-Asset Backing Invariant' but does not say whether it verifies, computes, or validates the invariant. This is little more than a restatement of the title with a vague 'compute node' label, and it does not distinguish it from sibling verification tools like verify_reserve_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 actionable guidance about compute modes ('auto', 'browser', gpu:true delegation) and strongly advises 'Use synthetic or anonymised inputs only.' However, it never mentions when to choose this tool over alternatives or what specific compliance scenarios call for it, leaving usage context mostly implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_slsa_provenanceSLSA Provenance VerifierARead-onlyIdempotentInspect
SLSA Provenance Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-135-cyclonedx-sbom-validator. Output feeds: art-137-openvex-statement-validator. Open at: https://ainumbers.co/chaingraph/art-136-slsa-provenance-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses deterministic behavior, transient input processing, no storage/logging/retention, and compute-mode delegation. This adds significant context beyond annotations (readOnlyHint, idempotentHint, destructiveHint) without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the main purpose and key behavioral traits. The four sentences are informative but slightly dense, with minor repetition (e.g., 'Deterministic OpenChainGraph compute node'). Could be more 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?
Covers compute modes, transient processing, synthetic input requirement, upstream/downstream artifact links, and output type (AP2 artifact with execution_hash). Lacks explicit detail on what 'verification' entails (e.g., signature checks), but sufficient for a chain graph compute node in 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?
With 100% schema coverage, the schema already describes each parameter. The description enriches the 'compute' parameter with detailed behavior for each enum value, adding value beyond the schema. Other parameters are adequately described.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 an SLSA Provenance Verifier as an OpenChainGraph compute node with a compliance mandate. It describes processing inputs transiently and exporting AP2 artifacts, but does not explicitly differentiate from sibling verify_* tools like verify_a2a_agent_card or verify_acdc_delegation_chain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 guidance on compute modes ('auto', 'server', 'browser') and when GPU nodes delegate. Advises using synthetic or anonymized inputs. However, no mention of when to use this tool versus alternative verification tools, or prerequisites for using it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_timestamp_attestationTimestamp Attestation VerifierARead-onlyIdempotentInspect
Timestamp Attestation Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-121-document-integrity-anchor. Open at: https://ainumbers.co/chaingraph/art-122-timestamp-attestation-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds substantial behavioral details beyond annotations: transient processing, non-retention of inputs, export of AP2 artifact with execution_hash, and specific compute mode delegation logic. Annotations already indicate read-only, idempotent, non-destructive behavior, which are consistent.
Agents need to know what a tool does to the 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 well-structured and front-loaded with the main purpose. Every sentence adds value, though it could be slightly trimmed (e.g., the URL may be considered supplementary). 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?
Covers key aspects: purpose, compute modes, transient processing, provenance export, and upstream artifact. However, lacks details on the exact verification logic, error handling, and output format beyond execution_hash. For a tool with no output schema, more clarity on output would help.
Complex tools with many parameters or behaviors need more documentation. 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 coverage, description adds context for each parameter: explains compute modes in detail, notes parent_hashes as execution_hash from upstream artifacts, and describes policy_parameters as decision function inputs. This adds useful semantic 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?
Description clearly states the tool is a Timestamp Attestation Verifier within OpenChainGraph, detailing its deterministic nature and compute modes. It mentions exporting AP2 artifact with execution_hash for chain provenance, but does not explicitly differentiate from other verify_* sibling tools beyond the unique compute mode 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?
Description provides context on compute modes and advises using synthetic or anonymised inputs, but does not explicitly state when to use this tool versus other verify tools (e.g., verify_anchored_extract). No alternative tools are listed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_trade_document_setTrade Document Provenance & Consistency VerifierARead-onlyIdempotentInspect
Trade Document Provenance & Consistency Verifier: OpenChainGraph compute node (cryptographic_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-52-digital-trade-fit-diagnostic, art-54-digital-trade-rules-checker. Output feeds: cry-04-merkle-batch-verifier, art-10-amla-transaction-typology-risk-scorer, ml-03-timeseries-anomaly-detector. Open at: https://ainumbers.co/chaingraph/art-55-trade-document-provenance-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant behavioral context beyond annotations: determinism, transient input processing (no storage), export of AP2 artifact with execution_hash, and compute mode delegation logic. No contradictions with annotations (readOnlyHint, idempotentHint, destructiveHint).
Agents need to know what a tool does to the 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 verbose and includes some redundancy (e.g., 'OpenChainGraph compute node' repeated). However, it is well-structured with front-loaded purpose and logical flow. Could be more 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?
Covers compute modes, data handling constraints, artifact export, and dependency chain. Missing details on expected output structure, but no output schema exists. For a verification tool with moderate complexity, it 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%, so baseline is 3. Description adds value for the 'compute' parameter by explaining default behavior and GPU interaction. Other parameters (parent_hashes, parent_tool_ids, policy_parameters) are not further elaborated in description, but schema already provides adequate 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 is a 'Trade Document Provenance & Consistency Verifier' and a 'Deterministic OpenChainGraph compute node'. This specific verb-resource combination distinguishes it from sibling tools like verify_acdc_delegation_chain or verify_execution_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?
Provides clear guidelines on compute modes (auto, server, browser) and when each is used, including GPU considerations. Also advises using synthetic inputs only. However, it does not explicitly contrast this tool with alternatives 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.
verify_trid_apr_accuracyTRID APR Accuracy VerifierARead-onlyIdempotentInspect
TRID APR Accuracy Verifier: OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Consumes upstream artifacts from: art-215-reg-z-appendix-j-apr. Open at: https://ainumbers.co/chaingraph/art-217-trid-apr-accuracy.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only, idempotent, and non-destructive behavior. The description enriches this by detailing that inputs are transient and not stored/logged/retained, outputs an AP2 artifact with execution_hash, and clarifies compute modes. This provides substantial behavioral context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise, front-loading the core purpose and then explaining compute modes, data handling, and output. Every sentence adds value, though slightly longer than necessary for a simple 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 description explains inputs, compute modes, transient processing, and output artifact, but lacks details on the exact format or fields of the output. For a tool with no output schema, more clarity on what the AP2 artifact contains (beyond execution_hash) would be beneficial.
Complex tools with many parameters or behaviors need more documentation. 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 provides detailed descriptions for all 4 parameters. The tool description adds minimal extra meaning beyond repeating compute mode nuances already covered in the schema, so it meets the baseline without exceeding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 is a 'TRID APR Accuracy Verifier' and an 'OpenChainGraph compute node (compliance_mandate)', clearly identifying its verb (verify) and resource (TRID APR accuracy). It distinguishes from siblings by specifying upstream artifact consumption (art-215-reg-z-appendix-j-apr) and deterministic nature, making it unique among many verify 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 advises to 'use synthetic or anonymised inputs only' and mentions consuming upstream artifacts, implying a specific context. However, it does not explicitly contrast with sibling verify tools or state when not to use it, leaving usage boundaries somewhat implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_webbotauth_signatureWeb Bot Auth Signature Verifier (RFC 9421)ARead-onlyIdempotentInspect
Web Bot Auth Signature Verifier (RFC 9421): OpenChainGraph compute node (compliance_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Output feeds: art-130-signature-directory-validator. Open at: https://ainumbers.co/chaingraph/art-129-webbotauth-signature-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description richly discloses behavioral traits beyond annotations: it states determinism (consistent with idempotentHint), transient processing with no storage or logging, and detailed compute mode behaviors (server-side vs client-side, gpu conditions). This adds significant value beyond the readOnly and idempotent hints, covering data handling and execution 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 front-loaded with the purpose and immediately provides critical behavioral details. While it is longer than minimal, every sentence adds value (e.g., compute modes, transient processing, output feeds). It is well-structured and avoids redundancy, though it could be slightly more 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?
The description covers compute behavior and safety but lacks explicit details on what constitutes the actual verification input (signature, key, etc.). The policy_parameters object is described generically. With no output schema, the output structure is only hinted via 'output feeds'. The provided URL may help, but the description alone could be more self-contained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Since schema description coverage is 100%, the baseline is 3. The tool description does not add new parameter semantics beyond the schema it provides. It mentions compute modes and chain provenance but these are already detailed in the schema. No additional meaning or usage context for parameters like policy_parameters 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 explicitly states the tool's purpose as a 'Web Bot Auth Signature Verifier (RFC 9421)', clearly identifying its function. The verb 'Verifier' is specific, and referencing RFC 9421 provides a standard context. It is well-distinguished from sibling verification tools (e.g., verify_a2a_agent_card) by its unique focus on web bot auth signatures.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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. It lacks statements about preferred use cases, prerequisites, or comparisons with other verification tools. The only constraint given is 'Use synthetic or anonymised inputs only', which is a safety note rather than usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_witness_cosignaturesWitness Cosignature VerifierARead-onlyIdempotentInspect
Witness Cosignature Verifier: OpenChainGraph compute node (cryptographic_mandate). Deterministic OpenChainGraph compute node. By default (compute:"auto") inputs are computed server-side on Cloudflare Workers for gpu:false nodes with a registered kernel; compute:"browser" forces client-side execution and returns a browser delegation URL instead. gpu:true nodes always delegate to the browser. Inputs are processed transiently to compute the response and are not stored, logged, or retained. Use synthetic or anonymised inputs only. Exports an AP2 artifact with execution_hash for chain provenance. Open at: https://ainumbers.co/chaingraph/art-424-witness-cosignature-verifier.html
| Name | Required | Description | Default |
|---|---|---|---|
| compute | No | Compute mode (v0.4 Compute Binding). "auto" (default) = server for gpu:false nodes with registered kernels; "server" = force server-side; "browser" = always return browser delegation URL. gpu:true nodes always delegate. | |
| parent_hashes | No | execution_hash values from upstream ChainGraph AP2 artifacts to chain from (sets chain.parent_hashes in the export). | |
| parent_tool_ids | No | tool_id values matching parent_hashes, in the same order. | |
| policy_parameters | No | Input parameters for this tool's decision function. For gpu:false nodes with a registered kernel, these are computed server-side when compute is "auto" or "server". See the tool's manifest for field names. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by detailing transient input processing, no storage or retention, and export of an AP2 artifact for chain provenance. It also explains compute mode behavior (server-side vs browser delegation) and gpu handling, providing rich behavioral context consistent with readOnlyHint, idempotentHint, and destructiveHint.
Agents need to know what a tool does to the 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 somewhat long but front-loads the core purpose and then proceeds logically through compute modes, data handling, and output. Every sentence contributes relevant information, though the technical density may slightly reduce 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 tool's complexity (4 params, no output schema), the description explains compute modes and output artifact but lacks explicit detail on what the tool actually verifies (witness cosignature semantics) and what the return value contains. The companion URL helps but is not part of the description itself.
Complex tools with many parameters or behaviors need more documentation. 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 coverage, the baseline is 3. The description adds value by explaining the 'auto' compute mode's server-side behavior and the distinction between 'browser' and 'server' modes, clarifying the policy_parameters role. However, it does not elaborate on parent_hashes or parent_tool_ids 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 tool as a 'Witness Cosignature Verifier' and an 'OpenChainGraph compute node (cryptographic_mandate)', specifying its purpose of verifying witness cosignatures and exporting an AP2 artifact. This effectively distinguishes it from sibling verification tools by highlighting its role as a deterministic compute node on ChainGraph.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 compute modes (auto, server, browser) and advises using synthetic or anonymized inputs, but it does not clarify when to use this tool versus sibling verification tools (e.g., verify_a2a_agent_card, verify_acdc_delegation_chain). No explicit alternatives or 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.
workbook_csv_parseParse strict RFC 4180 CSV into workbook cellsARead-onlyIdempotentInspect
Parses CSV text with the SAME strict RFC 4180 parser as the tools/554 browser workbook -- quoted fields, embedded quotes/commas/newlines, CRLF -- and REJECTS malformed input rather than repairing it (deterministic beats forgiving for hash-stable digests). Numeric-looking and TRUE/FALSE cells are type-coerced; everything else stays a string. Returns the resulting A1-style cells (raw + evaluated value) plus the sheet's row/column extent, ready for workbook_evaluate or workbook_range_digest -- unless as_artifact is true, in which case it returns a full OCG v0.4 artifact instead (see as_artifact).
| Name | Required | Description | Default |
|---|---|---|---|
| csv | Yes | CSV text to parse. | |
| provenance | No | Optional provenance metadata, only used when as_artifact is true. Never affects execution_hash. | |
| as_artifact | No | When true, returns a full OpenChainGraph v0.4 artifact (policy_parameters/output_payload/execution_hash/provenance) via the same exportArtifact() path as the tools/554 browser workbook's "Export as OCG Artifact" button, instead of this tool's normal bare payload. Default false. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations, including the strict RFC 4180 parsing, rejection of malformed input, type coercion of numeric/boolean values, output format (A1-style cells with raw+evaluated value and sheet extent), and the as_artifact behavior. It also explains the rationale for determinism. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately long but well-structured, front-loading the main purpose and then detailing key behaviors. Every sentence contributes useful information without being verbose. Could be slightly more terse, but it's 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 complexity (3 params, no output schema, nested objects), the description provides sufficient context about parsing behavior, output content (A1-style cells with raw and evaluated values, sheet extent), and the as_artifact variant. It also relates to sibling tools (workbook_evaluate/digest). It covers the essential aspects without needing an 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?
With 100% schema coverage, the baseline is 3. The description adds value by clarifying that provenance only affects as_artifact mode and never the execution_hash, and that as_artifact changes the output format entirely. This goes beyond the schema's simple 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 parses CSV text using a strict RFC 4180 parser, distinguishing it from other parse tools by emphasizing the strictness and deterministic behavior for hash-stable digests. It also mentions type coercion and output format, making the purpose specific and 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?
The description explains when to use this tool (when strict parsing and deterministic results are needed) and how the output can be used with workbook_evaluate or workbook_range_digest. It also notes the as_artifact option. However, it does not explicitly state when not to use it or contrast with alternative parsing strategies beyond the mention of 'forgiving' parsers.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
workbook_evaluateEvaluate workbook cells (formulas + literals) and return computed valuesARead-onlyIdempotentInspect
Feeds a set of A1-style cells (formulas and/or literals) through the SAME headless evaluator the tools/554 browser workbook uses -- topo-sorted dependency graph, ~20 functions (SUM AVG MIN MAX COUNT COUNTIF IF AND OR NOT ROUND ABS CONCAT LEN LEFT RIGHT TRIM UPPER LOWER SUMIF), cycles resolve to "#CYCLE!" and any non-finite result to "#NUM!" rather than propagating. Returns the computed value of every supplied cell -- pure, no digest, no receipt -- unless as_artifact is true, in which case it returns a full OCG v0.4 artifact instead (see as_artifact).
| Name | Required | Description | Default |
|---|---|---|---|
| cells | Yes | Map of A1-style cell ref (e.g. "B2") to raw value -- a formula string starts with "=" (e.g. "=SUM(A1:A3)"), anything else is a literal. | |
| provenance | No | Optional provenance metadata, only used when as_artifact is true. Never affects execution_hash. | |
| as_artifact | No | When true, returns a full OpenChainGraph v0.4 artifact (policy_parameters/output_payload/execution_hash/provenance) via the same exportArtifact() path as the tools/554 browser workbook's "Export as OCG Artifact" button, instead of this tool's normal bare payload. Default false. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds significant behavioral details: topo-sorted dependency graph, specific functions list, cycles resolve to '#CYCLE!', non-finite results to '#NUM!', no digest/receipt unless as_artifact=true. This provides a clear understanding of how the tool operates beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and front-loaded with the main purpose. It is structured into two sentences: one for behavior and one for output. While every sentence provides value, it could be slightly more concise by trimming less critical details (e.g., 'pure, no digest, no receipt'). 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 complexity (formula evaluation, dependency graph, error handling, artifact mode), the description covers most aspects: functions, errors, output modes, and optional provenance. However, it lacks details on performance limits (e.g., maximum cells) and the exact structure of the artifact (briefly referenced). No output schema exists, so the description carries the burden, which it mostly satisfies.
Complex tools with many parameters or behaviors need more documentation. 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 essential context: for 'cells', it explains that formulas start with '=', and literals are anything else. For 'as_artifact', it specifies the return type (OCG v0.4 artifact) and export artifact path. For 'provenance', it clarifies it only matters when as_artifact is true and never affects execution_hash. This adds meaning 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 clearly states the tool evaluates workbook cells (formulas and literals) and returns computed values. It specifies the evaluator (same as tools/554 browser workbook), mentions topological sorting, ~20 functions, and error handling (#CYCLE!, #NUM!). This distinguishes it from sibling tools like workbook_range_digest and workbook_csv_parse.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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: it uses a headless evaluator for A1-style cells. It describes the functions and error handling. However, it does not explicitly state when to use this tool vs alternatives or when not to use it. Sibling tools exist for related tasks, but no exclusion criteria are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
workbook_range_digestDigest a workbook range into a Spreadsheet Input Manifest range fragmentARead-onlyIdempotentInspect
Evaluates the supplied cells (same evaluator as workbook_evaluate) and computes a canonical values_digest over one A1-style range (e.g. "B2:D9") -- the exact executionHash(values, {}) path the rest of OCG uses, per chaingraph/workbook/INPUT-MANIFEST.md (WB-2). Returns one ranges[] fragment of the Spreadsheet Input Manifest schema; assemble the full manifest (source.csv_digest, produced_by/produced_at) around it. Same range digested from the same cells in the tools/554 browser workbook always produces the same values_digest -- unless as_artifact is true, in which case it returns a full OCG v0.4 artifact over the WHOLE sheet instead of a single-range fragment (see as_artifact).
| Name | Required | Description | Default |
|---|---|---|---|
| cells | Yes | Map of A1-style cell ref (e.g. "B2") to raw value -- a formula string starts with "=" (e.g. "=SUM(A1:A3)"), anything else is a literal. | |
| range | Yes | A1-style cell or range reference to digest, e.g. "B2" or "B2:D9". | |
| semantics | No | Free-text pointer describing what this range means to the consuming policy_parameters. | |
| provenance | No | Optional provenance metadata, only used when as_artifact is true. Never affects execution_hash. | |
| as_artifact | No | When true, returns a full OpenChainGraph v0.4 artifact (policy_parameters/output_payload/execution_hash/provenance) via the same exportArtifact() path as the tools/554 browser workbook's "Export as OCG Artifact" button, instead of this tool's normal bare payload. Default false. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotation contradictions. The description adds key behavioral context: it uses the same executionHash path as OCG, is deterministic (same input always produces same digest unless as_artifact), and clarifies the as_artifact 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 a single paragraph of three sentences, front-loaded with the main purpose. It includes necessary details without being overly verbose, though it could be slightly more 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 absence of an output schema, the description adequately covers the return value (a range fragment) and special behavior. It references related tools and manifest assembly, providing sufficient context 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 description coverage is 100%, but the description adds value by explaining that cells are input map, range is A1-style, and as_artifact changes output format. 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 that the tool digsests a workbook range into a Spreadsheet Input Manifest range fragment by computing a canonical values_digest. It explicitly references the same evaluator as workbook_evaluate, distinguishing it from that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 that the tool returns a range fragment for assembly into a full manifest, and mentions the as_artifact parameter changes behavior. It implicitly guides when to use this tool vs. assembling the full manifest separately, but does not explicitly 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.
workbook_roundtrip_verifyVerify a pasted-back Excel round-trip against a Spreadsheet Input ManifestARead-onlyIdempotentInspect
Compares a WB-2 Spreadsheet Input Manifest (expected digests) against pasted-back CSV/TSV text per manifest range (observed, e.g. after a recompute in Excel) and returns an XLR-1 round-trip receipt -- result: "match"|"mismatch" plus a mismatches[] cell list when expected_by_ref text is also supplied. SAME comparator module as the tools/ round-trip page (XLR-2/XLR-3) -- byte-identical receipt for the same inputs. Paste-intake is untrusted: finite-gate (#NUM! for NaN/Infinity) and CSV-injection sanitization apply identically to WB-1's CSV import. Verify-only -- never operates Excel, never ingests .xlsx.
| Name | Required | Description | Default |
|---|---|---|---|
| manifest | Yes | WB-2 Spreadsheet Input Manifest object (input-manifest.schema.json) -- the expected side. | |
| produced_at | Yes | ISO-8601 timestamp -- required, no default (pure: no wall-clock read). | |
| produced_by | Yes | Identity slot for who/what produced this receipt -- required, no default (pure: no identity read). | |
| expected_by_ref | No | OPTIONAL map of manifest range ref -> the actual expected CSV/TSV text (e.g. the pq-export the manifest was built from). Supplying it resolves a digest mismatch to per-cell mismatches[] entries instead of a single range-level entry. | |
| observed_by_ref | Yes | Map of manifest range ref -> pasted-back CSV/TSV text for that range (e.g. { "B2:C3": "10,widget\r\n20,gadget\r\n" }). One entry required per manifest.ranges[].ref. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, openWorldHint=false, so the safety profile is already established. The description adds meaningful behavioral context: it states this is verify-only, never operates Excel, never ingests .xlsx, and explains that paste-intake is untrusted with finite-gate (#NUM! for NaN/Infinity) and CSV-injection sanitization applied identically to WB-1's CSV import. It also discloses that mismatches[] only appear when expected_by_ref is supplied, and that the receipt is byte-identical to the round-trip page comparator. This is rich behavioral disclosure complementing the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a dense two-sentence block covering purpose, comparator equivalence, security model, and conditionality of output. It is reasonably compact given the technical specificity required, and the most important facts (compare manifest vs pasted text, returns match/mismatch) 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 tool is moderately complex with 5 parameters (4 required), a nested manifest object, and no output schema. The description compensates well: it explains the receipt format (result + mismatches[]), the conditional resolution behavior of expected_by_ref, the security sanitization, and the verification-only scope. It also clarifies it never touches Excel/.xlsx, which is important given the workbook_* sibling context. The only minor gap is no explicit statement about what a successful match receipt looks like beyond the result field, but the schema params are all fully described at 100% coverage.
Complex tools with many parameters or behaviors need more documentation. 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 doesn't need to carry the param-documentation burden. The description does add value beyond the schema: it explains that expected_by_ref resolves digest mismatches to per-cell mismatches[] entries rather than a single range-level entry, and that observed_by_ref requires one entry per manifest.ranges[].ref. These are causal/behavioral nuances the schema alone doesn't state. However, the description doesn't walk through each parameter, and the schema already documents all five thoroughly, so this sits at the baseline-plus level.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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+object ('Compares a WB-2 Spreadsheet Input Manifest against pasted-back CSV/TSV text') and states the exact output (XLR-1 round-trip receipt with result field). It clearly distinguishes from siblings by referencing the tools/ round-trip page (XLR-2/XLR-3) comparator and explicitly scoping to never operating Excel. The name and title already communicate the intent well, and the description reinforces it 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?
The description states when this is used: 'against pasted-back CSV/TSV text per manifest range (observed, e.g. after a recompute in Excel)'. It distinguishes itself from WB-1's CSV import ('SAME comparator module as the tools/ round-trip page'). It clearly delineates verify-only from other workbook operations (workbook_csv_parse, workbook_evaluate, workbook_range_digest siblings). However, it does not explicitly list exclusions or name an alternative tool to use instead in other scenarios (e.g., when verifying digests rather than pasted text, or when .xlsx ingestion is needed), relying instead on negative scoping ('never operates Excel'). This leaves some ambiguity about when NOT to use it beyond the Excel .xlsx boundary.
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!
Related MCP Servers
- Alicense-qualityBmaintenance53 regulatory compliance evidence tools across 3 MCP servers for AI agents. MiCA authorization status, DORA evidence packs, stablecoin risk scoring (105+ tokens), macro intelligence (86 FRED series). Every response ECDSA-signed (ES256K), blockchain-anchored, audit-ready. Free tier, OAuth 2.0.Last updatedMIT
- Alicense-qualityDmaintenance498 MCP tools across 12 industry verticals. Marketplace, escrow, DeFi, legal, healthcare, insurance, construction, and trades. USDC payments on Base L2.Last updated7MIT
- Flicense-qualityFmaintenanceProvides 667 specialized tools for financial and operational tasks, including fund accounting, compliance, DeFi, and tax management. It enables users to integrate extensive financial intelligence and automated workflows into any MCP-compatible client.Last updated1
- AlicenseAqualityBmaintenanceProvides cryptographically verifiable RWA trust attestations and multi-chain DeFi data (TVL, top protocols, positioning scorecards) via MCP tools for AI assistants.Last updated111MIT
Your Connectors
Sign in to create a connector for this server.