Skip to main content
Glama

Server Details

Vealth work board: find real work, claim free with your wallet, prove it. Free onchain anchoring.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
99.7% over 37 days
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL

TDQS

A3.6/5.0

Scored across 90 tools

Disambiguation3/5

Most tools have thorough descriptions that clarify their purpose, and the prepare_/submit_ pairs are clearly linked. However, the sheer number of overlapping domains—multiple work-packet viewers (find_work, get_work_packet, work_status, my_work, hour_card), several quote tools (funding_quote, credential_quote, payment_options), and many Regen/Hydrex read-only tools—creates real boundary confusion for an agent.

Naming Consistency2/5

The prepare_/submit_ pair pattern is strong and consistent, and snake_case is used throughout, but the prefix placement varies wildly: domain prefixes come before verbs in gmx_get_orders and hydrex_position, while get_work_packet and board_stats place the domain elsewhere or omit a verb entirely. This mixed convention makes the surface harder to scan predictably.

Tool Count1/5

90 tools is far beyond a coherent, focused server surface. While individual features may justify themselves, the set bundles labor-board management, Regen ecosystem monitoring, GMX trading, Hydrex analytics, anchoring, subscriptions, and payment rails into one server, making it an extreme mismatch between count and navigability.

Completeness3/5

The core labor-board lifecycle is impressively covered: post, claim, prove, accept, fund, back, settle, vote, and withdraw. But the peripheral domains are incomplete (e.g., GMX has open-order preparation but no close-position tool), and the broad scope makes it impossible for any single domain to feel fully fleshed out.

Available Tools

90 tools
account_statementWhat this wallet has already paid, itemizedA
Read-onlyIdempotent
Inspect

One wallet's complete payment history with this server: every settled call, what it cost, which door it bought, and the on-chain hash that proves it — plus totals and a per-door breakdown. Use it when someone asks what they have spent here, whether a call was charged twice, or for an expense record. Each line settled from the caller's own wallet on a public chain, so every hash is independently verifiable without trusting this server. Free, keyless, read-only, and it stores nothing about anyone.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoOptional cap on payments returned (newest first).
walletYesThe 0x… address that paid. The ADDRESS only, never a private key.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnly/openWorld/idempotent annotations, it discloses keyless access, that it stores nothing, that payments settle on a public chain, and that hashes are independently verifiable without trusting the server. This adds materially useful trust and privacy context for a financial-history tool.

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

Conciseness5/5

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

Four sentences, front-loaded with the core result, followed by usage triggers and trust/privacy context. There is no filler or repetition; every sentence contributes a distinct fact an agent needs.

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

Completeness5/5

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

The description is self-sufficient: it states the data returned, use cases, verification model, and access characteristics, while the output schema and 100% parameter coverage supply the remaining structure. There is no missing invocation-critical information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description reinforces the 'wallet' parameter by explaining the result is per-wallet payment history, but it adds no parameter-level detail beyond the schema, and 'limit' behavior is already documented in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific and complete statement: 'One wallet's complete payment history with this server', and enumerates exact contents (settled calls, cost, door, on-chain hash, totals, per-door breakdown). This sharply distinguishes it from the many payment and submission siblings in the tool list.

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

Usage Guidelines4/5

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

It gives explicit triggers: 'Use it when someone asks what they have spent here, whether a call was charged twice, or for an expense record.' It does not name exclusion cases or sibling alternatives, but the context is clear enough that an agent can select this over future-facing or action-oriented payment tools.

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

anchor_proofTimestamp a file onchain so you can prove you had it firstAInspect

Anchor the SHA-256 of any file onchain, free. Use it the moment you produce something whose PRIORITY matters: a security finding before you disclose it, research before you share it, a draft before you send it out. You send only the hash, never the file, so nothing you make is disclosed to anyone. It lands in the next weekly Base batch and the Ethereum root, and from then on anyone can prove those exact bytes existed by that time. Free to submit, free to verify, no account, no wallet, no payment.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelNoOptional short public label for your own reference. Never include anything secret.
sha256YesSHA-256 of your file, 64 lowercase hex characters. Get it with: shasum -a 256 <file>

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false. The description adds valuable behavioral context beyond these: the onchain batching delay ('next weekly Base batch'), the privacy guarantee (only hash sent), and the zero-cost aspect. It does not contradict any annotation and provides useful operational detail for the agent.

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

Conciseness5/5

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

A single well-organized paragraph that front-loads the core action and immediately explains why and when to use it. Every sentence earns its place: purpose, usage contexts, privacy, mechanics, and cost. No filler or redundancy.

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

Completeness5/5

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

Given the tool's complexity (write, non-idempotent, delayed onchain effect), the description covers all critical aspects: what happens (lands in batch and Ethereum root), cost (free), prerequisites (none), and the long-term verification capability. An output schema exists, so return values are covered elsewhere. An agent has enough to decide and safely call this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: both 'label' and 'sha256' have descriptive text including the shasum command and security warning. The description reinforces the hash-only policy but adds no new parameter-level semantics beyond the schema. Baseline of 3 is appropriate since the schema already carries the full parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Anchor the SHA-256 of any file onchain') with a specific resource (file hash) and outcome (proving existence by a time). It clearly distinguishes from siblings like verify_anchor and other submit_* tools by focusing on the anchoring action and its priority-preservation purpose.

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

Usage Guidelines5/5

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

The description explicitly says 'Use it the moment you produce something whose PRIORITY matters' and provides concrete examples (security finding, research, draft). It also clarifies what the tool does NOT do ('You send only the hash, never the file') and implies a contrast with verification tools. This is more than sufficient for an agent to decide when to invoke it.

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

board_statsLive board statisticsA
Read-onlyIdempotent
Inspect

Live counts from the Vealth work board, read at this moment — total and open work, claims, settlements, proposed value, and the sector breakdown. Pass a location to also count work nearby. Never cached; the public mirror is https://vealth.net/labor/stats. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
latitudeNoOptional: also count open work near this point.
radiusKmNoNearby radius in km. Default 50.
longitudeNoOptional: also count open work near this point.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds valuable behavioral context beyond annotations: 'Never cached' indicates real-time data, and 'keyless' clarifies access requirements. This enriches transparency 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.

Conciseness5/5

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

The description is two sentences, front-loaded with the core purpose and metrics, then adds usage context (location) and operational details (never cached, public mirror, free, keyless). Every sentence contributes meaningful information with no redundancy or fluff.

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

Completeness5/5

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

With an output schema present, the description need not detail return formats; it appropriately lists the main returned metrics (total/open work, claims, settlements, proposed value, sector breakdown). Optional location behavior is explained, and annotations cover the read-only, idempotent nature. Nothing essential is missing for an agent to invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter (latitude, radiusKm, longitude) having a clear description. The tool description adds a high-level concept of 'location' and 'nearby' but does not provide additional syntax or format details beyond what the schema already offers. 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.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Live counts from the Vealth work board' with specific metrics (total/open work, claims, settlements, proposed value, sector breakdown). It uses a specific verb ('read', 'count') and resource, and the unique functionality of optional location-based nearby counting distinguishes it from siblings like find_work.

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

Usage Guidelines3/5

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

The description provides some usage guidance: 'Pass a location to also count work nearby' and notes that it is free and read-only, but it does not explicitly mention when to use this tool versus alternatives or when not to use it. The context is clear enough to infer appropriate use, but lacks explicit routing or exclusions.

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

bridge_statusFollow a REGEN bridge transaction (keyless)A
Read-onlyIdempotent
Inspect

Where a REGEN bridge transaction stands, from the hash the caller broadcast after prepare_bridge. Keyless, no wallet, nothing signed: this tool registers the hash with Skip Go's tracker (a status read before that registration is blank forever) and reads Skip's state, and for a transaction leaving Base or Arbitrum it also reads Axelar's own record, so a transfer waiting on Base finality shows as sent rather than as nothing. Returns landed true or false, the source states verbatim, one plain sentence saying what is happening, the measured landing time for that direction (regen→osmosis under a minute, regen→base about 66 seconds, base→regen about 30 minutes, all measured 2026-09-08 with one key) and how long to wait before asking again. Landed is only ever true when Skip reports STATE_COMPLETED_SUCCESS or Axelar reports the call executed; this tool never infers a landing from time passed.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainYesThe chain the transaction was broadcast on (the from_chain given to prepare_bridge).
tx_hashYesThe broadcast transaction hash: 0x plus 64 hex characters on base and arbitrum, 64 hex characters on regen and osmosis.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A3.7/5.0
Behavior1/5

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

The description is unusually transparent about mechanics: it registers the hash with Skip Go's tracker, reads Skip state, may also read Axelar, and never infers landing from elapsed time. However, the description directly contradicts the readOnlyHint annotation by saying the tool 'registers the hash' with a tracker, which is a state-changing action. Per the rubric, this contradiction forces a score of 1.

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

Conciseness5/5

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

The description is long but every sentence carries operational value: prerequisite, side effect, source-chain differences, return semantics, landing criteria, measured times, and wait interval. It is front-loaded with the core purpose before detailed behavior, and there is no filler.

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

Completeness5/5

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

For an agent to call and poll this tool correctly, the description covers the prerequisite, the one-time registration effect, cross-chain behavior, what landed means, and how long to wait between calls. An output schema exists for return fields, so the description does not need to restate them. The only serious flaw is the annotation contradiction, not a completeness gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already fully documents chain and tx_hash. The description adds contextual behavior such as Base/Arbitrum additionally reading Axelar, but it does not add standalone parameter-level meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear, specific operation: determining where a REGEN bridge transaction stands using the hash the caller broadcast after prepare_bridge. It distinguishes itself from siblings by scoping to REGEN bridge transactions, naming its dependency on prepare_bridge, and explaining its keyless nature.

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

Usage Guidelines4/5

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

The description explicitly says to call it after prepare_bridge and warns that a status read before registration is blank forever. It also gives polling guidance by saying how long to wait before asking again. It does not explicitly say when not to use it or name alternative status tools, so it stops 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.

compare_titlesLay a wallet's titles beside a job's requirements, six words, human decidesA
Read-onlyIdempotent
Inspect

Machine comparison, human decision. Give a wallet and the requirements of a job or project; each requirement comes back as exactly one of six words: verified_match (declared, current, and on-chain-confirmed board work in scope), verified_mismatch (the record contradicts the requirement), supported (declared, nothing contradicts it, no board work yet), unknown (the record does not say), expired (declared expiry passed), human_judgment_required (a human reads it: years of experience, free text). The reply never says qualified and never decides; it carries a receipt hash the decider can anchor for free. Public mirror: https://vealth.net/labor/worker//compare?require=CHST,STS. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
walletYesThe worker's wallet address (0x…).
requireYesRequirements: a comma list of titles (comma = each required, | = any of, e.g. "CHST,STS|STSC"), or a JSON array of {kind:"title",anyOf:[…],issuer?,mustBeCurrent?} / {kind:"years_experience",years,area?} / {kind:"text",text}.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the annotations (read-only, open-world, idempotent), the description adds substantial behavioral detail: every requirement maps to exactly one of six semantic categories, the reply never decides or says 'qualified,' and it includes a receipt hash for anchoring. This is rich context that helps an agent correctly interpret results.

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

Conciseness4/5

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

The description is dense and front-loaded, with the core 'machine comparison, human decision' sentence first and the six output words defined compactly. It loses a point for the redundant 'read-only' closing (already in annotations) and the public mirror URL, which add marginal value for an agent selecting or invoking the tool.

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

Completeness5/5

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

Given the six-way classification semantics and the receipt-hash behavior, the description is nearly complete on its own. The output schema exists, so return-field details need not be explained in prose. An agent knows enough to invoke it correctly and interpret all possible outcomes.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100 percent, with detailed schema descriptions for both wallet and require. The tool description reinforces the job-vs-requirements framing but does not add syntax or semantics beyond what the input schema already provides, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description and title clearly identify a comparison tool: a wallet's titles are placed beside a job's requirements, and each requirement resolves to one of six enumerated words. This is distinct from sibling tools like worker_titles (which likely lists titles) and verify_work (which likely verifies a single fact).

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

Usage Guidelines4/5

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

The description states the stated usage context: give a wallet and the requirements of a job or project. It does not explicitly name alternatives or state when not to use it, but the comparison purpose is clear enough that an agent can infer when this tool is relevant.

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

credential_quoteWhat a credential certificate would contain right now, and what it costsA
Read-onlyIdempotent
Inspect

Price and preview a Vealth credential certificate BEFORE paying for one. Give a wallet for a work-record certificate (its settled packets, accepted proofs and banked credit) or a place for a standing certificate under The Vealth Standard. Returns the live price, exactly what the document would contain right now, and whether issuance would be REFUSED and why — a wallet with no settled work and no banked credit is refused for free, before any payment, because an empty certificate is unsellable. Payment buys the sealed, anchored artifact, never the achievement: every fact inside is already public and free to read at its own endpoint. Issuing is HTTP (POST /certificate/worker/ or POST /certificate/place); reading and verifying an issued certificate are free forever. This tool is free, keyless, read-only, and moves no money.

ParametersJSON Schema
NameRequiredDescriptionDefault
placeNoA city, address fragment, or venue name, for a place standing certificate.
walletNo0x wallet address, for a work-record certificate.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and destructiveHint=false, so the safety profile is known. The description adds concrete behavioral details beyond that: it is free, keyless, moves no money, returns a refusal reason when a wallet has no settled work/no banked credit, and notes that facts are public and readable at their own endpoint. It also mentions the HTTP endpoints for issuance, which adds transparency about the workflow. 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.

Conciseness3/5

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

The description is lengthy (about 180 words) and packs in extra details like the HTTP issuing endpoints and the statement about facts being public. While it is front-loaded with the core purpose, some sentences (e.g., the issuing endpoint specifics) could be trimmed without losing essential meaning. It is not verbose enough to be a serious problem, but 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.

Completeness4/5

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

For a two-parameter optional tool with an output schema, the description covers the essentials: what it returns (price, content, refusal reason), how to choose the input, refusals, costs, and read-only safety. The output schema presumably details return fields, so the description doesn't need to. It could explicitly state whether exactly one parameter is required, but the 'or' phrasing implies that. Overall, it is complete enough for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters have meaningful descriptions. The description adds further nuance: it explains that a wallet for a work-record certificate includes settled packets, accepted proofs, and banked credit, and that a place is for a standing certificate under The Vealth Standard. It also clarifies the refusal condition involving the wallet parameters, which enriches parameter understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: to price and preview a Vealth credential certificate before payment. It names the resource (credential certificate) and the action (price and preview), and distinguishes between two certificate types (work-record and place). The title reinforces this, and no sibling tool overlaps with this exact pre-purchase preview behavior.

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

Usage Guidelines4/5

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

The description explains when to use the tool (before paying, for pricing/preview) and provides guidance on selecting the parameter type (wallet for work-record, place for standing certificate). It implies it is not for actual issuance since it says 'BEFORE paying' and notes that payment buys the artifact. It doesn't explicitly name alternative tools, but the context makes usage boundaries clear.

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

crypto_lanesWhich money rails are runningA
Read-onlyIdempotent
Inspect

Whether each recurring-spend lane is running or stopped, and why, read from the file the code itself obeys. A lane marked stopped is stopped by decision, not broken. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.7/5.0
Behavior5/5

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 context beyond those: it discloses the data source ('the file the code itself obeys') and clarifies that a stopped lane is stopped by decision, not broken – an important interpretive nuance that prevents misinterpretation. 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.

Conciseness5/5

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

Two concise sentences. The first states purpose and data source in a front-loaded manner; the second adds a meaningful clarification about stopped lanes. The phrase 'Free, keyless, read-only' is a short, useful note about access, adding no unnecessary length. Every word earns its place.

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

Completeness5/5

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

With no parameters and an output schema available (indicated by 'has output schema: true'), the description covers purpose, data source, and interpretation of results ('and why', 'stopped by decision'). It is complete for an agent to decide when to invoke it and to correctly interpret the response. No essential information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema coverage is trivially 100%. The description appropriately omits parameter details, meeting the baseline for zero-parameter tools. No additional parameter explanation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool reports whether each recurring-spend lane is running or stopped, and why, sourced from the configuration file the code obeys. It distinguishes itself from all siblings by focusing on 'recurring-spend lanes', a concept not covered by any other tool. 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.

Usage Guidelines4/5

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

The description implies usage by specifying the authoritative data source ('read from the file the code itself obeys'), making it clear this is the canonical source for lane status. While it does not explicitly name alternatives or exclusion conditions, the 'recurring-spend lane' concept is unique among siblings, so an agent would correctly select this tool for such queries. Missing explicit 'when not to use' guidance is a minor gap.

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

crypto_lp_positionsOur liquidity positionsA
Read-onlyIdempotent
Inspect

Every pool we provide liquidity to, with reserves and our share read live from chain. Also carries the pool-pricing trap: raw balance ratios give spot price only for constant-product pools, never for concentrated-liquidity pools. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare read-only and non-destructive behavior; the description adds meaningful context: data is read live from chain, the operation is keyless and free, and it discloses a real analytical pitfall about spot pricing. 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.

Conciseness5/5

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

Every sentence earns its place: scope, live data source, the pricing limitation, and access characteristics are all covered in a compact three-sentence description. Information is front-loaded and there is no repetition of schema or annotation content.

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

Completeness5/5

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

Given zero parameters, rich annotations, and the presence of an output schema, the description fully covers what an agent needs: the resource scope, freshness of data, access requirements, and a caution about interpretation. Nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so there is nothing for the description to clarify. The schema is already complete, and the description's live-chain note adds relevant context even though no parameter semantics are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it lists every pool the user provides liquidity to, with reserves and share read live from chain. It is clearly distinguishable from siblings like gmx_get_positions by specifying LP positions generally rather than a particular protocol.

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

Usage Guidelines4/5

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

The description implies when to use the tool: when you need our LP positions and live reserves. It also provides an exclusion by warning against using raw balance ratios for pricing in concentrated-liquidity pools, though it does not explicitly name an alternative tool.

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

crypto_route_setThe permitted conversion routesA
Read-onlyIdempotent
Inspect

The only asset conversions our rails may perform, plus the standing laws that govern them (gas pricing, the per-transaction fee cap, EARTH's one-way token physics). An edge not listed here is absent on purpose. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, and non-destructive behavior. The description adds valuable context beyond that: the call is free and keyless, the route list is intentionally closed, and the governing rules include gas pricing, a per-transaction fee cap, and EARTH's one-way token physics. This gives the agent useful expectations about cost, authentication, and domain constraints.

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

Conciseness5/5

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

Three short sentences, each earning its place: the first defines scope and content, the second clarifies intentional absence, and the third states access cost, authentication, and safety. The most important scoping information is front-loaded.

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

Completeness5/5

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

For a read-only, zero-parameter reference tool with an output schema, this description is complete. It names the exact content area, the laws covered, the closed-set behavior, and the lack of authentication requirements. An agent can decide whether to call this tool and what to expect from it without further ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema covers 100% of them, so the description carries no parameter-documentation burden. It appropriately focuses on what the resource contains rather than repeating empty schema fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool exposes the authoritative, restricted set of asset conversions the system may perform, along with the rules governing them. It goes beyond the title by emphasizing that unlisted edges are intentionally absent, which gives the tool a well-defined scope. It does not explicitly name a sibling tool to differentiate from, but the phrase 'the only asset conversions our rails may perform' 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.

Usage Guidelines3/5

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

The description implies that this tool should be used to determine which conversion routes are permitted and that anything not listed is intentionally unsupported. However, it never explicitly states when to prefer this tool over alternatives like crypto_lanes, prepare_bridge, or payment_options. The usage context is inferable 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.

crypto_tokensCanonical token registryA
Read-onlyIdempotent
Inspect

The canonical on-chain address for every token we operate, read from the registry the rails themselves use. Ask this BEFORE using any token address. ECOWEALTH (the token) and EWP (the work protocol) are different things on different chains and confusing them has already broken a live session. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolNoOptional: return just this symbol, e.g. ECOWEALTH.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.3/5.0
Behavior4/5

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

While the readOnlyHint annotation already indicates safety, the description adds meaningful behavioral context: the tool is the canonical source used by the rails themselves, requires no key or payment, and the ECOWEALTH/EWP confusion has previously broken a live session. 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.

Conciseness5/5

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

The description is compact and front-loaded with purpose, followed by critical usage guidance and a real-world warning. Every sentence earns its place, and there is no filler or repetition of schema details.

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

Completeness5/5

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

For a single-optional-parameter, read-only registry lookup with an output schema, the description is complete. It tells the agent why the tool exists, when to call it, what danger to avoid, and that no authentication is needed. Nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already fully documents the only parameter, `symbol`, with an example. The description does not introduce new parameter-level details beyond the schema, so it earns the baseline 3. It does reinforce the example symbol but does not explain edge cases like omitting the parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: it returns the canonical on-chain address for every token the system operates on, sourced from the registry that the rails themselves use. It distinguishes itself as the authoritative token-address reference, especially with the explicit warning about ECOWEALTH versus EWP, which sets it apart from sibling token tools.

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

Usage Guidelines4/5

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

The description gives explicit timing guidance: 'Ask this BEFORE using any token address.' It clearly explains the critical context for safe use, though it does not explicitly list when-not-to-use or alternative sibling tools, which would be needed for a 5.

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

crypto_walletsOur wallets and their live balancesA
Read-onlyIdempotent
Inspect

The three wallets we operate, each with its role and its live Base balances read at this moment. Use this instead of assuming which wallet does what, and never quote a balance from a document. Read-only: this tool cannot sign, send, or move anything.

ParametersJSON Schema
NameRequiredDescriptionDefault
includeBalancesNoSet false to skip live chain reads and return roles only. Default true.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the read-only nature is covered. The description adds the live-read aspect ('read at this moment') and the warning against quoting from documents, providing context beyond the annotations. No contradiction.

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

Conciseness5/5

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

The description is two concise sentences. The core purpose is front-loaded in the first sentence, with usage and safety notes in the second. Every sentence earns its place with no redundancy.

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

Completeness5/5

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

For a simple read-only tool with one optional parameter and an output schema, the description covers purpose, usage, and behavioral characteristics (live read, read-only). It is complete enough for an agent to call it correctly without missing critical information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter includeBalances is fully described in the schema (100% coverage), including its effect and default. The tool description does not add additional meaning beyond what the schema already provides, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns the three wallets, their roles, and live Base balances. It uses specific verbs and a resource, and distinguishes itself from sibling tools like crypto_tokens or crypto_lp_positions by focusing on wallet identity and balances.

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

Usage Guidelines5/5

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

The description explicitly instructs to use this tool instead of assuming wallet roles or quoting balances from documents, giving clear when-to-use and when-not-to-use guidance. It also implies the alternative (assumptions/documents) without naming a specific sibling, which is sufficient.

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

estimate_footprintTurn this AI session into real provisioned ecological workA
Read-onlyIdempotent
Inspect

The anchor tool. Give a rough token or call count for your AI session and get an order-of-magnitude CO2e estimate PLUS the real, verifiable ecological work you can provision to answer it on Vealth. Vealth does NOT sell paper offsets — it provisions maintenance of the commons: you fund a bounded work packet keyless from your own wallet; when the retirement lane is running an approved proof queues a carbon retirement with an on-chain retirement certificate (that lane is paused by operator order since 2026-08-04). Call find_work next to pick the work. The estimate is orientation only, never a precise carbon claim, and this server never takes payment or holds a wallet.

ParametersJSON Schema
NameRequiredDescriptionDefault
callsNoOr approx number of model calls, if you have no token count.
tokensNoApprox total tokens this session (input + output).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already indicate read-only, idempotent, non-destructive behavior, and the description adds substantial behavioral context beyond that: 'Vealth does NOT sell paper offsets,' the retirement lane 'is paused by operator order since 2026-08-04,' and 'this server never takes payment or holds a wallet.' This critically prevents the agent from assuming the tool can execute transactions or quote accurate carbon claims.

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

Conciseness4/5

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

The description is dense and front-loaded with the core purpose ('anchor tool' + estimate + work), but it includes a lengthy digression about Vealth's business model and the paused retirement lane. That context is valuable but not strictly necessary to invoke the tool correctly, so it is slightly less concise than an ideal definition.

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

Completeness5/5

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

Given the tool has no required parameters, a full output schema, and strong annotations, the description covers everything needed: what the estimate means, what it does not mean, what to do next, and the tool's non-transactional nature. An agent has enough context to call it correctly and interpret the result appropriately.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% — both 'calls' and 'tokens' are fully described with approximate semantics. The description only reiterates that the values are 'rough' and that either can be used, without adding units, ranges, or parameter relationships. Baseline 3 is appropriate because the schema already handles the semantic load.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action: take a rough token or call count and produce an order-of-magnitude CO2e estimate plus provisioning options. It distinguishes itself from siblings by calling itself 'the anchor tool' and explicitly directing the user to 'Call find_work next,' preventing confusion with actual provisioning tools like provision_work or funding_quote.

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

Usage Guidelines4/5

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

The description gives clear context on when to use the tool: when you want an orientation-level estimate for an AI session. It also provides a direct next-step routing instruction ('Call find_work next to pick the work') and warns that the estimate is 'orientation only, never a precise carbon claim.' It does not explicitly enumerate when not to use it, but the guidance is sufficient for this simple estimation tool.

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

find_workFind real work nearbyA
Read-onlyIdempotent
Inspect

Search Vealth's public board of real ecological and community work packets. Each result includes the pay, the skill level, the exact proof that gets it approved, and a page URL. Free, no account, no wallet. Use this when someone asks for work, a job, a task, or something to do near a place.

ParametersJSON Schema
NameRequiredDescriptionDefault
nearNoA place in plain words: a city, neighborhood, address, or ZIP, e.g. 'Los Angeles, CA' or '90036'. Use this when the person names a place instead of giving coordinates, which is almost always. Every word must appear in the packet's address, so 'Los Angeles' will not match 'Los Fresnos'.
pageNoPage number, starting at 1. The reply says when more pages exist.
limitNoMax results per page, 1-25. Default 10.
queryNoFree text, e.g. 'storm drain' or 'tree planting'. Typo-tolerant.
fundedNotrue = only packets a verified payment already backs (money truth; a funded packet can still be earned_credit and never promise cash — read payModel); false = only unfunded packets, where approved proof records earned credit rather than cash unless later funded. Omit for both.
remoteNotrue = only work doable from anywhere (digital/self-verifying — what an agent with no field presence can complete); false = only placed field work. Omit for both.
latitudeNoCenter of the search. Only if you already have real coordinates.
radiusKmNoSearch radius in km, used with latitude/longitude. Default 50.
longitudeNoCenter of the search. Only if you already have real coordinates.
skillLevelNoUse 'entry' for someone starting today.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already cover read-only, open-world, idempotent, and non-destructive behavior, so the bar is lower. The description adds genuine value beyond them: 'Free, no account, no wallet' and 'public board' tell the agent no credentials or wallet setup are needed. No rate-limit or pagination behavior is disclosed, but the schema's page parameter partly covers that.

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

Conciseness5/5

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

Three sentences with zero waste: purpose first, then result contents and access requirements, then the usage trigger. Every sentence earns its place and adds selection-relevant information.

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

Completeness4/5

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

With an output schema present, four rich annotations, and 100% parameter coverage, the description only needs to enable correct selection, which it does. The only gap is not explicitly disambiguating from related siblings like get_work_packet when the user already knows a specific packet, but the 'public board' framing largely covers this.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description's 'near a place' phrasing aligns with the near parameter but adds no semantics beyond what the schema already provides, which includes rich detail like the exact-word-matching caveat and the remote filter's agent relevance.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource: 'Search Vealth's public board of real ecological and community work packets.' The 'public board' qualifier clearly distinguishes it from siblings like get_work_packet, my_work, and verify_work, and listing result contents (pay, skill level, proof, URL) sharpens what the tool returns.

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

Usage Guidelines4/5

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

The description gives an explicit trigger: 'Use this when someone asks for work, a job, a task, or something to do near a place.' This is clear context for when to invoke, though it does not name sibling alternatives or state when-not-to-use cases (e.g., when the user references a specific packet ID via get_work_packet).

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

funding_quoteCan this packet be funded, and what would it costA
Read-onlyIdempotent
Inspect

For a BUYER, not a worker: ask whether one board packet can be funded right now, and what funding it costs NOW. The quote is the packet's OUTSTANDING obligation — the board's posted wage minus verified contributions already recorded — read from the board, never from anything you send, so no caller can fund a $700 packet for $1 and no caller is quoted a stale full wage after others chipped in. Partial funding: when the host has chip-ins armed, any open packet also takes contributions from $0.01 up to what it still needs (contributeUsd on prepare_funding); an EXPLICIT amount above the remaining is recorded as a premium reserved for the worker — no default or omitted amount ever creates a premium. A refusal comes back in the board's own words (already funded, fully covered, claimed, settled, expired, no wage). Read-only: this quotes, it charges nothing and marks nothing funded. Call prepare_funding next to actually pay.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdNoOptional packet id. Omit to quote the first open packet that still needs funding.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.6/5.0
Behavior5/5

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

The description goes well beyond the annotations by explaining that the quote is read from the board, never from caller input, that it reflects the outstanding obligation, and that a refusal comes in the board's own words. It also explicitly states 'this quotes, it charges nothing and marks nothing funded,' which aligns with and reinforces the readOnlyHint/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.

Conciseness4/5

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

The description is front-loaded with the core purpose and audience, then adds necessary behavioral caveats and a next-step pointer. It is somewhat long, but nearly every sentence adds important context about quote accuracy, partial funding, refusals, and read-only behavior, so the length is justified.

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

Completeness5/5

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

Given that this tool has one optional parameter, a rich output schema, and strong annotations, the description is amply complete. It covers edge cases like partially funded packets, explicit premiums, stale wage quotes, refusal wording, and the distinction between quoting and funding, leaving no important ambiguity for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents the single optional workId parameter and the omission behavior. The description reinforces the semantics but adds little beyond the schema for this tool; the partial-funding and premium details mostly apply to prepare_funding rather than funding_quote's own parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('quote'), a specific resource ('board packet'), and an explicit audience ('BUYER, not a worker'), immediately distinguishing this from worker-side tools. It also clarifies that this tool only asks about funding and cost, not performs funding, which separates it clearly from prepare_funding.

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

Usage Guidelines5/5

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

The description explicitly states when this tool is appropriate: a buyer wanting to know whether a packet can be funded and at what current cost. It directly names the next action ('Call prepare_funding next to actually pay') and excludes workers from its intended audience, giving clear routing guidance.

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

get_work_packetGet one work packetA
Read-onlyIdempotent
Inspect

Full detail for a single packet by its id, including the full description and proof requirement.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYese.g. WORK_1784530149768_4z4r6jz

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds useful context about the return content (full description and proof requirement) but does not disclose error behavior or edge cases. Given annotations, this is adequate but not rich.

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

Conciseness5/5

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

A single, front-loaded sentence that states the core purpose and content without any filler. Every word earns its place.

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

Completeness4/5

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

The tool is simple with one parameter and has an output schema, so the description need not detail return structure. It covers what the tool does and what is included. It does not explicitly mention missing-id behavior, but that is likely covered by the output schema or expected error handling. Adequate 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.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the workId parameter is fully documented with an example. The description only repeats 'by its id', adding no extra semantic value beyond the schema. Baseline of 3 applies given high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb 'get' with a specific resource 'single work packet' and clearly scopes it by 'its id'. It also lists key content ('full description and proof requirement'), which distinguishes it from siblings like 'my_work' (likely a list) and 'work_status' (likely status only). No ambiguity remains.

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

Usage Guidelines4/5

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

The description clearly implies when to use it: when you have a workId and need full detail. It provides clear context but does not explicitly name alternatives or when not to use this tool. That is a minor gap given the obvious distinguishing purpose among siblings.

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

gmx_get_ordersList open GMX pending ordersA
Read-onlyIdempotent
Inspect

Read all pending orders (limit, stop-loss, etc.) for a wallet on GMX v2 (Arbitrum). Read-only, no signing needed, free.

ParametersJSON Schema
NameRequiredDescriptionDefault
walletYes0x… Arbitrum wallet address to check.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already provide readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds 'no signing needed' and 'free', plus specifies the network (Arbitrum) and protocol version (GMX v2). It does not disclose return format or pagination behavior, so it adds limited context beyond what annotations already carry.

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

Conciseness5/5

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

A single, efficient sentence that front-loads the action and resource, then adds necessary usage constraints (read-only, no signing, free). No unnecessary words or repetition.

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

Completeness5/5

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

Given the single parameter is fully documented in the schema, an output schema exists, and annotations cover safety, the description is complete for an agent to invoke it correctly. It states the resource, network, and read-only nature, leaving nothing critical missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema describes the only parameter, wallet, as '0x… Arbitrum wallet address to check' with 100% coverage. The description does not add any additional parameter semantics, so the baseline of 3 is appropriate since the schema fully documents the parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Read', the resource 'all pending orders', and the scope 'for a wallet on GMX v2 (Arbitrum)'. It also lists example order types (limit, stop-loss) which distinguishes it from sibling tools like gmx_get_positions (positions) and gmx_get_prices (prices).

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

Usage Guidelines4/5

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

The context is clear: this is a read-only tool for fetching pending orders, and the description explicitly says 'Read-only, no signing needed'. This implies when to use it (to check orders) and distinguishes from submission tools like submit_gmx_order, without explicitly naming alternatives or exclusions.

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

gmx_get_positionsList open GMX perpetual positionsA
Read-onlyIdempotent
Inspect

Read all open perpetual positions for a wallet on GMX v2 (Arbitrum). Read-only, no signing needed, free.

ParametersJSON Schema
NameRequiredDescriptionDefault
walletYes0x… Arbitrum wallet address to check.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description's 'Read-only' is redundant. However, it adds valuable context that annotations do not cover: 'no signing needed' and 'free', which are operational constraints an agent must know. This extra information 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.

Conciseness5/5

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

The description is a single sentence of 20 words that front-loads the core action and scope. Every element (read, all open perpetual positions, wallet, GMX v2, Arbitrum) is necessary; there is no filler or redundancy.

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

Completeness5/5

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

For a simple read-only tool with one parameter, 100% schema coverage, and a provided output schema, the description is complete. It specifies the network and protocol, which are critical for correct invocation, and the annotations cover safety and idempotency. No missing information would prevent an agent from calling it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents the 'wallet' parameter as a '0x… Arbitrum wallet address to check'. The description merely repeats 'wallet' without adding syntax, format, or behavior details beyond the schema. Since the schema does the heavy lifting, a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('read'), a precise resource ('all open perpetual positions'), and scopes it to 'a wallet on GMX v2 (Arbitrum)'. This clearly differentiates from sibling tools like gmx_get_orders or gmx_get_prices, which handle different aspects of the protocol.

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

Usage Guidelines4/5

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

The description provides clear context by specifying that this tool reads perpetual positions, which implies its appropriate use case. However, it does not explicitly compare to alternatives (e.g., 'use gmx_get_orders for orders') or state when not to use it, leaving some inference to the agent.

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

gmx_get_pricesGet current GMX market pricesA
Read-onlyIdempotent
Inspect

Fetch current mark prices for all tradeable assets on GMX v2 (Arbitrum). Read-only, no signing needed, free.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior4/5

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

The annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior, but the description adds useful beyond-annotation context: 'no signing needed, free.' It also specifies the network (Arbitrum) and that it covers 'all tradeable assets,' which helps set expectations 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.

Conciseness5/5

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

The entire description is a single, front-loaded sentence that communicates the action, scope, network, and safety profile. There is no filler or repetition of the title. Every clause adds information an agent needs.

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

Completeness5/5

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

Given zero parameters, a present output schema, and comprehensive annotations, the description fully covers what an agent needs to know: what to expect, the network, the asset scope, and the read-only nature. No critical operational context is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are zero parameters, so the schema carries no parameter details. The description clarifies that the tool fetches all tradeable assets with no filtering, which explains why no parameters are required. This matches the baseline for parameterless tools.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Fetch current mark prices for all tradeable assets on GMX v2 (Arbitrum).' This clearly distinguishes it from trading tools like submit_gmx_order and account-oriented tools like crypto_wallets. The scope is precise and immediately actionable.

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

Usage Guidelines4/5

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

The description makes the context clear: this is for retrieving current mark prices on GMX v2. It implicitly signals use for read-only price queries before an order, but it does not explicitly name alternatives or state when not to use it. Since the tool is simple and zero-parameter, 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.

hour_cardThe hour card for a packetA
Read-onlyIdempotent
Inspect

The ONE document to read to a person before they start: what the place is and the circle every GPS fix must land inside, what to bring and what the safety notes say, the method steps in order, the proof to hand in as a checklist, what the land gets, what the worker gets and whether the pay is funded or only proposed, exactly what the record will hold about them, and the tool calls in order. Free, keyless, no wallet needed. The packet's own words are carried verbatim and never shortened. Read it to them in order rather than summarising it: the order is the order the hour runs in. Optionally in Swahili (lang: "sw"): the board's own sentences translate from a fixed dictionary, and the packet's own words translate only where a translation exists for that packet, tagged "(Kiingereza)" and counted in coverage where it does not; a safety-critical line always carries its English source on its own line too.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoOptional, defaults to "en". "sw" reads the card in Swahili.
workIdYesThe packet id, from find_work or place_status.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.2/5.0
Behavior5/5

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

Annotations already supply readOnly, idempotent, and non-destructive hints, and the description adds genuinely valuable behavior: the tool is free and keyless, packet words are carried verbatim and never shortened, and the Swahili translation behavior is carefully explained including coverage counting and the safety-line English source. 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.

Conciseness3/5

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

The text is front-loaded with the purpose and a content list, and every sentence carries relevant information. However, it is a long, dense single block that would be easier to navigate if broken into paragraphs or bullets, making it heavier than strictly necessary for a two-parameter tool.

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

Completeness5/5

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

With only two params, a rich output schema, and annotations already covering safety and idempotency, the description covers almost everything an agent needs: content, ordering, language mode, constraints, and usage instructions. Minor edge cases like invalid workId are not addressed, but the output schema and low parameter complexity make the description complete enough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the base baseline is 3, but the description goes further by spelling out what lang='sw' actually changes: translation from a fixed dictionary, conditional translation of packet words, coverage counting, and safety-line handling. This enriches the lang parameter beyond the schema's simple enum.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the hour card as a document to read to a person before they start, and enumerates its contents in detail, which differentiates it from packet retrieval and status tools. It lacks an explicit operation verb like 'returns' and does not name sibling alternatives, 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.

Usage Guidelines4/5

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

The description gives concrete usage context: read it before starting, read it in order rather than summarising, and optionally in Swahili. It does not explicitly state when not to use this tool or mention which sibling tool should be chosen instead.

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

how_to_claimHow to claim a packet and get paidA
Read-onlyIdempotent
Inspect

Explains exactly how to claim work and what happens after. Claiming is free. Returns instructions, never performs the claim, because claiming requires the worker's own wallet signature.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds value by explicitly stating 'Returns instructions, never performs the claim' and explains why (wallet signature required), plus the cost note 'Claiming is free.' This goes beyond the annotations by clarifying the exact behavior and rationale, though it doesn't detail the output structure or any edge cases.

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

Conciseness5/5

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

The description is two concise sentences that front-load the core purpose ('Explains exactly how to claim work and what happens after') and then add essential context (free, no action, reason). Every sentence earns its place with no filler or repetition.

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

Completeness5/5

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

For a parameterless, read-only informational tool, the description is complete. It tells the agent what the tool does, what it does not do, and why. Combined with the rich annotations and presence of an output schema, an agent has everything needed to correctly invoke this tool without further investigation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, so the schema is trivially covered at 100%. The description correctly adds no parameter information because none is needed. This meets the baseline of 4 for a parameterless tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Explains exactly how to claim work and what happens after.' It uses a specific verb (explains) and resource (claim work), and explicitly distinguishes itself from action tools like 'prepare_claim' and 'submit_claim' by noting it 'never performs the claim.' This makes it easy for an agent to know this is an informational tool, not an action.

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

Usage Guidelines4/5

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

The description implies when to use it: when you need instructions on claiming. It clarifies it does not perform the claim, which directs agents toward other tools for actual claiming, but it does not name those alternatives explicitly. The context 'claims requires the worker's own wallet signature' provides rationale, but a direct reference to sibling tools would make it a 5.

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

hydrex_claimableWhat a Hydrex voter can claim right now, and from which contractA
Read-onlyIdempotent
Inspect

The money answer: for every gauge a wallet votes for, the fee contract and the bribe contract, every reward token each one tracks, and exactly how much is claimable per veNFT — all resolved from chain, so a zero here is a real zero rather than a degraded API. Returns the claim calldata SHAPES for a caller to build their own transaction; it builds and signs nothing itself. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressNoOptional: the voting wallet. Omit to follow our own position.
tokenIdsNoOptional: veHYDX token IDs to check earnings for. Rewards are tracked per NFT.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already cover read-only, open-world, idempotent, and non-destructive behavior. The description adds valuable context beyond these: data is resolved directly from chain ('a zero here is a real zero rather than a degraded API'), it is free and keyless, and it returns only calldata shapes without executing or signing anything. 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.

Conciseness4/5

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

The description is a compact three-sentence paragraph that front-loads the core purpose and includes useful behavioral details. Minor stylistic flourishes such as 'The money answer' and 'rather than a degraded API' add character but are not strictly necessary, preventing a perfect score.

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

Completeness5/5

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

The description covers data source, scope, per-NFT granularity, non-execution behavior, cost, and auth requirements, while the existing output schema handles return-value details. Nothing critical is missing for an agent to decide when to invoke this tool and what to expect from it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds meaning by linking the address parameter to the voting wallet and explaining that rewards are tracked per veNFT (matching tokenIds). It also clarifies the computational scope (gauges, fee contracts, bribe contracts, reward tokens), which helps an agent understand how the parameters influence the result.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description specifies a concrete function: compute exact claimable amounts per veNFT across fee and bribe contracts for every gauge a wallet votes for, then return calldata shapes. It also explicitly distinguishes itself from execution tools by stating it 'builds and signs nothing itself', which separates it from siblings like prepare_claim and submit_claim.

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

Usage Guidelines4/5

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

The description clearly states the context: use when you need to know claimable rewards and obtain calldata shapes for building a transaction, not for executing claims. It implies the boundary with 'builds and signs nothing itself', but it does not explicitly name alternative tools or give a precise when-not-to-use condition, so it stops 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.

hydrex_positionA Hydrex veHYDX position: locks, voting power, and who owns it right nowA
Read-onlyIdempotent
Inspect

Everything about a veHYDX voting-escrow position on Base, read live: each NFT's current owner (resolved with ownerOf at call time, never assumed), its voting power, its locked HYDX, and whether it can ever be unlocked. Also reports oHYDX, the separate OPTION token, with its live exercise economics — oHYDX and veHYDX are different things and this tool keeps them apart on purpose. Works for any Hydrex holder: pass an address, or omit it to read the position this server operates. Free, keyless, read-only — it cannot sign or move anything.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressNoOptional: a wallet to inspect. Omit to read our own position, whose owner is resolved live rather than hardcoded.
tokenIdsNoOptional: specific veHYDX token IDs. Omit to discover them, or to use our known IDs.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, idempotent, and destructiveHint false. The description adds meaningful behavioral context: it reads live via ownerOf at call time, never assumes ownership, is free/keyless, and explicitly cannot sign or move anything. It also clarifies the deliberate separation of oHYDX and veHYDX, which goes beyond the annotation surface.

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

Conciseness4/5

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

The description is a single, information-dense paragraph that front-loads the core purpose ('Everything about a veHYDX... read live') and packs details efficiently. Every sentence adds useful information without redundancy, though it could be slightly more structured for scanning.

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

Completeness5/5

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

Given the presence of an output schema, the description doesn't need to explain return values. It covers the tool's scope (veHYDX and oHYDX), ownership resolution, unlockability, and usage scenarios, making it complete enough for an agent to decide when to call it and what to expect.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with both parameters documented. The description adds value by explaining the address parameter is optional and that omitting it reads the server's own position, which clarifies the default behavior. It does not elaborate on tokenIds, but since the schema already describes it, a 4 is justified (baseline 3 plus a slight boost).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool reads a veHYDX position with specific attributes (owner, voting power, locked HYDX, unlockability) and also handles oHYDX separately. It uses specific verbs and resources, and explicitly distinguishes oHYDX from veHYDX, making its purpose unambiguous even among many siblings.

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

Usage Guidelines4/5

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

The description provides clear usage context: pass an address or omit it to read the server's own position, with owner resolved live. It does not name alternative tools like hydrex_votes or hydrex_claimable, but the guidance on how to invoke and what to expect is clear, which meets the 'clear context, no exclusions' bar.

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

hydrex_realityHydrex measured income versus advertised projection, side by sideA
Read-onlyIdempotent
Inspect

Call this before repeating any Hydrex APR or yield projection. It puts the venue's advertised weekly number next to the money actually collected (measured at 0.089% of the projection), and computes live from the venue's own per-gauge data why the ceiling is structural: total fees and bribes the whole venue distributes, against the fraction of system votes a position actually holds. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so safety is covered. The description adds behavioral context: it computes live from the venue's per-gauge data, uses a specific measurement ratio, and compares advertised vs actual. This goes beyond the annotations and helps an agent anticipate the tool's computational nature. 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.

Conciseness4/5

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

The description packs a lot of information into two sentences with no filler. The purpose is front-loaded ('Call this before repeating...'), followed by a detailed explanation of the computation. The structure is efficient, though the long second sentence could be slightly more readable, but it earns its length.

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

Completeness4/5

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

For a tool with no parameters and an output schema present, the description adequately explains what it does and why. It contextualizes the output (comparison, structural ceiling explanation) without needing to describe the return format, which is left to the output schema. The only minor gap is that it doesn't explicitly state the output is a report, but that is inferable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema is trivially 100% covered. The description explains what data the tool uses internally (venue's per-gauge data, fees, bribes, vote fraction) without needing to document input parameters. This is appropriate for a no-arg tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool's function: comparing Hydrex's advertised weekly projection against actual collected income, and explaining the structural ceiling via per-gauge data. It uses a specific verb ('Call'), resource ('Hydrex'), and includes a distinguishing detail ('measured at 0.089% of the projection'). This sets it apart from sibling tools like hydrex_position or hydrex_vault that likely report raw position data.

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

Usage Guidelines5/5

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

Explicitly instructs when to use: 'Call this before repeating any Hydrex APR or yield projection.' This is a direct usage condition. It also highlights that it is free, keyless, and read-only, which encourages adoption and clarifies no setup is needed. Does not need to mention alternatives since it is clearly the go-to for verification.

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

hydrex_vaultA Hydrex ICHI vault position, including whether it is actually earningA
Read-onlyIdempotent
Inspect

An ICHI single-sided vault position on Hydrex: shares held, share of the vault, the token composition of that slice, and — the part that matters — whether those shares are STAKED in the emissions gauge. Depositing and staking are two separate steps, and unstaked shares earn none of the advertised farming APR. Advertised APRs are returned but labelled display-only. Defaults to the kVCM/USDC vault. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
vaultNoOptional: an ICHI vault address. Defaults to the kVCM/USDC single-sided vault.
addressNoOptional: the holder to inspect. Omit to follow our own position.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the annotations (readOnly, openWorld, etc.), the description adds crucial behavioral context: that advertised APRs are display-only and not guaranteed earnings, and that depositing and staking are separate steps. This gives the agent a realistic expectation of what the tool returns and its limitations.

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

Conciseness4/5

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

The description is well-structured and front-loaded with the most important aspect (staking status). Each sentence adds distinct information (position contents, staking significance, APR labeling, default, and access). It is slightly verbose but not wasteful; a minor trimming could improve conciseness without losing substance.

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

Completeness5/5

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

With an output schema present, the return format is already defined. The description covers inputs (optional vault and address), the key output dimensions (shares, share, composition, staking), and an important caveat about APR display. It also notes keyless read-only access. Nothing essential for a read-only inspection tool is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already fully documents both optional parameters with defaults and descriptions (100% coverage). The description repeats the default vault name but adds no new parameter-level detail, such as format constraints or usage notes, so it adds minimal semantic value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: to report an ICHI single-sided vault position on Hydrex, including shares held, share of the vault, token composition, and crucially whether shares are staked. It distinguishes itself from sibling tools like hydrex_position by highlighting the staking status as the key output, which is likely unique to this tool.

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

Usage Guidelines4/5

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

It implies when to use the tool (when you need to know if shares are actually earning, i.e., staked) by emphasizing that unstaked shares earn no APR. It also mentions the default vault. However, it does not explicitly name alternatives or state when NOT to use it, such as pointing to hydrex_position for non-staking vault details.

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

hydrex_votesWhat a Hydrex position is voting for, and the honest denominator to judge it byA
Read-onlyIdempotent
Inspect

A wallet's current gauge-vote allocation read from VoterV5 on chain, plus where the weekly epoch stands and the live emission rate. Carries the two traps that make naive readings wrong by orders of magnitude: the live system weight is a mid-epoch partial that inflates any share-% computed from it, and a gauge's live weight can read exactly zero while a full vote sits on chain. Share percentages here use the last COMPLETED epoch. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressNoOptional: the voting wallet. Omit to follow our own position to whichever wallet currently holds it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.4/5.0
Behavior5/5

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

The description goes well beyond the readOnly/idempotent annotations by exposing two non-obvious failure modes: mid-epoch partial system weight inflating share percentages, and a live gauge weight of zero despite a full vote on chain. It also states that percentages use the last completed epoch, which is critical for correct interpretation.

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

Conciseness5/5

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

The description front-loads the core return value, then packs the caveats into a dense but purposeful warning, and ends with a concise access note. Every sentence contributes either to scope or to safe interpretation, with no filler or repetition beyond what annotations already provide.

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

Completeness4/5

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

For a one-parameter, read-only tool with no output schema, the description explains what is returned (allocation, epoch standing, emission rate), the denominator used, and the two traps that could mislead an agent. It does not enumerate concrete output field names, but the semantic contract is sufficient for invocation and interpretation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, address, is already well documented in the input schema, including the default behavior when omitted. The description adds no extra parameter-level detail beyond identifying the wallet as the subject, so the high schema coverage carries the burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's subject and action: reading a wallet's current gauge-vote allocation from VoterV5 on chain, plus epoch standing and live emission rate. The title's 'honest denominator' framing and the traps it names distinguish this tool from vote-submission, claim, or position tools without requiring schema inspection.

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

Usage Guidelines4/5

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

The description gives clear context for when the tool is appropriate: when you need a wallet's current gauge-vote allocation with an honest share denominator and epoch context. It does not explicitly name alternatives or say when not to use it, but the read-only, wallet-specific scope is clear enough for an agent to route correctly.

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

labor_unitWhat one hour of human work is worth, in dollarsA
Read-onlyIdempotent
Inspect

THE LABOR UNIT: one number, in US dollars per hour, for what an hour of ordinary human work is worth on this planet, and the yardstick every job on this board is priced against. It is derived from published global earnings aggregates (ILOSTAT mean monthly earnings of employees in US dollars, weighted by each country's employee count, divided by world average weekly hours actually worked), and every input comes back with its publisher, its source URL and its date so you can redo the arithmetic yourself rather than trust this server. Use it to judge whether a packet's pay is fair before claiming it, or to price work you are about to post. Dollars are the measure. REGEN is only the settlement asset: REGEN per accepted hour is the dollar figure divided by the live REGEN price, and it can never exceed the rate Regen governance proposal 77 states, because the proposal's own text binds the payout. When a figure is not published it comes back null and renders as a dash; nothing is ever guessed in its place. Free, keyless, read-only, moves no money.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.8/5.0
Behavior5/5

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

The annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive behavior, so the added value comes from the description's detail. It discloses the derivation methodology (ILOSTAT earnings weighted by employee count), provenance behavior (publisher, URL, date returned), null handling ('nothing is ever guessed'), and REGEN payout constraints from governance proposal 77. This is rich behavioral transparency beyond the structured annotations, 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.

Conciseness4/5

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

The description is front-loaded with the core concept and each subsequent sentence adds useful context: derivation, provenance, use cases, REGEN conversion, null behavior, and safety. It is somewhat long for a zero-parameter lookup tool, but the density is justified because labor_unit is a central pricing concept and the extra detail prevents misinterpretation.

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

Completeness5/5

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

Given zero parameters, a rich output schema, and strong annotations, the description is complete. It explains the return value's meaning, how it is derived, where the data comes from, how missing values behave, how REGEN conversion works, and when to use the tool. There are no significant gaps an agent would need to guess about.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so there is no parameter semantics for the description to clarify. The rubric baseline for zero-parameter tools is 4, and the description appropriately focuses on output semantics and units instead. It adds meaningful context about what the returned number represents and how it is computed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource: one number representing the dollar-per-hour value of ordinary human work, and explains that it is the pricing yardstick for the board. It clearly distinguishes itself from sibling transaction/quote tools by framing labor_unit as a reference value for judging fairness and pricing work, not moving money.

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

Usage Guidelines5/5

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

The description explicitly tells the agent when to use it: 'Use it to judge whether a packet's pay is fair before claiming it, or to price work you are about to post.' It also clarifies a key boundary—dollars are the measure, REGEN is only the settlement asset—so the agent will not misuse the value as a REGEN price quote. This is strong usage guidance even without naming an alternative sibling.

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

my_hoursA person's balance in hoursA
Read-onlyIdempotent
Inspect

The time-bank statement for one wallet: hours claimed, hours a human accepted, hours that reached a settlement, VSH credit that reached them as payment for their own work, VSH credit they spent through the credit door to pay somebody else's work, and what this board's record says they hold. Free, keyless, no wallet connection needed, just the address. IT IS A BOARD-SIDE STATEMENT, NOT A CHAIN BALANCE: every figure comes from this board's own settlement records, and the reply says so. A credit sent outside a settlement door, a credit the holder retired, or a credit spent somewhere that is not us will not appear. Read Regen Ledger for the real balance. Use this whenever the person asks how they are doing, what they have earned, or what they can spend.

ParametersJSON Schema
NameRequiredDescriptionDefault
workerWalletYesThe 0x… address to read. Address only, never a private key.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already mark this read-only, open-world, idempotent, and non-destructive, but the description adds meaningfully beyond that: it is a board-side statement, not a chain balance; every figure comes from this board's settlement records; the reply itself says so; and credits outside settlement doors, retired credits, or credits spent elsewhere will not appear. This is exactly the kind of limitation context that 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.

Conciseness4/5

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

The description is front-loaded with the core noun phrase and then delivers the enumeration before the caveats. It is longer than minimal, but each clause earns its place by clarifying scope, exclusions, or usage, and the structured sequence makes it easy to process.

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

Completeness5/5

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

Given the single parameter, full schema coverage, existing output schema, and rich annotations, the description covers all essential context: what the statement contains, that it is board-side rather than chain-side, what is excluded, the alternative for real balances, and the exact user questions it answers. Nothing needed for correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already fully documents workerWallet as a 0x address and warns 'Address only, never a private key.' The description adds complementary semantic value—'Free, keyless, no wallet connection needed, just the address'—which clarifies that no authentication or wallet session is required beyond the address itself.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a precise resource—'The time-bank statement for one wallet'—and enumerates its exact contents: hours claimed, accepted, settled, VSH credit received and spent, and the board's recorded holding. It also distinguishes itself from a chain balance by explicitly saying 'IT IS A BOARD-SIDE STATEMENT, NOT A CHAIN BALANCE,' which separates it from balance-related tools.

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

Usage Guidelines5/5

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

The description gives explicit when-to-use guidance: 'Use this whenever the person asks how they are doing, what they have earned, or what they can spend.' It also names the alternative for real balances ('Read Regen Ledger for the real balance') and clarifies what will not appear, so an agent can avoid misusing it for chain-level balance checks.

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

my_moneyA person's whole money picture, in one readA
Read-onlyIdempotent
Inspect

Everything one wallet was paid, is owed as a receipt, is only offered, and can do next, in a single free keyless read: dollars that settled, every OTHER token that settled and in what amount, open work receipts, token offers still standing on packets they took (each with the token's own risk label), their hours, what the Regen #77 payout ledger recorded for them, and exactly three doors. IT IS A BOARD-SIDE RECORD, NOT A CHAIN BALANCE: every figure is what this board itself recorded, no chain is read here, and a wallet's real holdings are whatever the chain says. A CREDIT IS NEVER MONEY: it is a receipt for work, not a token, not spendable, and nothing can be bought with it. The board prices no token, so a token amount carries no dollar value. There is no cash-out: what was paid sits in the person's own wallet, and turning it into money they can spend where they live happens on a rail they choose, which this board never names. Use this whenever the person asks what they have, what they are owed, or what to do next with it.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoThe language of the FRAME: the block labels, the door sentences and the honesty lines. Numbers, wallets, token symbols and packet ids never change. 'sw' is authored Kiswahili. Default 'en'.
workerWalletYesThe 0x… address to read. Address only, never a private key.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already assure read-only/idempotent behavior; the description goes further by stating it is a free keyless read, that no chain is read, that credits are not money, that the board prices no token, and that there is no cash-out. This prevents an agent from presenting board figures as spendable balance or chain truth.

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

Conciseness4/5

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

The overview list is front-loaded and the usage rule appears last, so an agent can quickly get the gist. It is wordy with repeated warnings ('never money', 'not spendable', 'nothing can be bought', 'no cash-out') that overlap, but for a financial overview these cautions are defensible.

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

Completeness5/5

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

Combined with the output schema and annotations, the description is complete: it says what data is included, what it is not, what will never be returned (cash-out rails, chain truth, dollar values), and when to call it. Nothing important for correct selection or expectation-setting is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents both parameters completely (100% coverage), so the baseline is 3. The description adds no operation-level meaning for `lang` or `workerWallet` beyond the generic 'one wallet' phrasing; it neither clarifies nor obstructs the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the concrete resource ('a person's whole money picture' / 'everything one wallet...') and a specific verb ('read'), then enumerates the exact data groups it returns. The 'BOARD-SIDE RECORD, NOT A CHAIN BALANCE' clause distinguishes it from chain-looking tools even though no sibling tool name is cited.

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

Usage Guidelines4/5

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

It gives an explicit trigger: 'Use this whenever the person asks what they have, what they are owed, or what to do next with it.' It also sets a negative boundary by saying it is not a chain balance and that cash-out rails are never named. It does not name alternative sibling tools for those non-chain cases, so it falls just short of full routing guidance.

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

my_votesWhat one wallet has voted on and backedA
Read-onlyIdempotent
Inspect

One wallet's whole demand history: every packet it voted for or against, and every packet it pledged to back — both free, signed acts that move no money. Use this when someone asks what they voted for, whether their vote is still active, or what they have pledged. A pledge here is a signed statement of intent only: pledged is not funded, nothing moves and nothing is held until a real payment settles through the separate funding door (prepare_funding). Free, keyless, read-only, and it records nothing about the caller.

ParametersJSON Schema
NameRequiredDescriptionDefault
walletYesThe 0x… address that voted or pledged. The ADDRESS only, never a private key.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.7/5.0
Behavior5/5

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

The description goes well beyond the annotations by explaining that voting and pledging 'move no money,' that a pledge is only a signed intent, that nothing is held until payment settles, and that the tool is 'free, keyless, read-only' and 'records nothing about the caller.' This is rich, non-obvious 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.

Conciseness5/5

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

The description is front-loaded with the core purpose and each sentence adds meaningful information: scope, use cases, the pledge-vs-funding distinction, and safety/read-only transparency. It is somewhat longer than average but every sentence earns its place given the subtle semantics around pledges.

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

Completeness5/5

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

Given the tool's simple single-parameter input, strong annotations, and presence of an output schema, the description fully covers what the tool does, when to use it, the meaning of pledge, and the fact that it is read-only and records nothing. No important context appears missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the wallet parameter is already well described as 'The 0x… address that voted or pledged. The ADDRESS only, never a private key.' The description reinforces the wallet-centric scope but does not add additional parameter-level meaning beyond the schema, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific, concrete language: 'One wallet's whole demand history' and 'every packet it voted for or against, and every packet it pledged to back.' This clearly identifies the resource (a wallet's voting/backing history), the action (viewing), and the scope, distinguishing it from voting/backing submission tools like submit_vote and submit_backing.

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

Usage Guidelines5/5

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

The description explicitly states when to use the tool: 'Use this when someone asks what they voted for, whether their vote is still active, or what they have pledged.' It also clarifies that a pledge is not funded and points to prepare_funding as the separate path for actual payments, providing clear routing guidance.

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

my_workWhat happened with my workA
Read-onlyIdempotent
Inspect

One question, the whole picture for ONE wallet: every packet it claimed and where each one stands, what is waiting on the person (proof not handed in, proof rejected and the reason given), what settled and its public receipt, and what is newly open nearby that fits the kind of work they have already done. Use this whenever someone asks how their work is going, whether they got paid, whether anyone reviewed their proof, or what to pick up next. Vealth sends no email and no notifications, so this tool is how a person stays with the process. Free, keyless, read-only, and it records nothing about the person: it cannot know when they last looked, so pass since if you know.

ParametersJSON Schema
NameRequiredDescriptionDefault
nearNoOptional place in plain words for the what-to-pick-up-next list, e.g. 'Los Angeles, CA'.
sinceNoOptional ISO timestamp of when this person last checked, e.g. '2026-08-01T00:00:00Z'. Used only to mark what changed since then. Nothing about anyone is stored here, so without it everything is listed.
walletYesThe 0x… address that claimed the work. The ADDRESS only, never a private key.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.3/5.0
Behavior5/5

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

Beyond the annotations (readOnly, idempotent, non-destructive), it discloses that Vealth sends no email or notifications, that the tool is free and keyless, that it records nothing about the person, and that `since` must be passed because no prior state is stored. This adds meaningful behavioral context the annotations do not express, 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.

Conciseness4/5

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

The description is front-loaded with the overall scope and then gives trigger phrases and important context about privacy and statelessness. Each sentence serves a purpose, though the rhetorical framing 'One question, the whole picture' is slightly wordy and could be tightened.

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

Completeness5/5

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

With an output schema present and full schema parameter coverage, the description supplies the remaining essentials: what the tool covers, when to use it, how it behaves without stored state, and why `since` is needed. Nothing critical appears missing for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so every parameter already has a description. The description adds value by explaining why `since` matters—'it cannot know when they last looked, so pass `since` if you know'—and by reinforcing that wallet is an address only. This is above baseline but not extensively loaded with new semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies a specific verb, resource, and scope: 'One question, the whole picture for ONE wallet' and enumerates what it returns. It distinguishes itself by emphasizing the wallet-specific, all-in-one nature, but it does not explicitly name or contrast sibling tools like work_status or get_work_packet, so differentiation relies on context.

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

Usage Guidelines4/5

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

It gives explicit trigger scenarios: 'Use this whenever someone asks how their work is going, whether they got paid, whether anyone reviewed their proof, or what to pick up next.' This is clear when-to-use guidance, but it does not state exclusions or alternatives for related tools, leaving some routing judgment to the agent.

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

net_subscription_quoteSovereign net worth as a service — your user's own token programA
Read-onlyIdempotent
Inspect

The token program we proved on NET, run for your user: $1/month mints their OWN 1,000-fixed-supply asset (~999 to their wallet, no owner functions), creates a real burned-LP market for it, and standing-buys it monthly while they hold ~99% of the supply; $2/month adds a dollar for the service. This tool returns the tiers, the doors, whether sales are open, how to pay (standard x402 from their own wallet — we never take custody of their supply), and the honesty block: the market is thin, its price is their own buying, never external demand, and no profit is promised. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, but the description adds meaningful behavioral context beyond those: the tool is keyless, requires no custody of the user's supply, and discloses the market thinness and absence of profit promise. This honesty block is valuable qualitative info not conveyed by annotations. Not 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.

Conciseness4/5

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

The description is a single, dense sentence that packs a lot of meaningful details. It could be slightly unwieldy, but it is well-structured with a clear flow: what it does, what it returns, and a prominent honesty note. All sentences earn their place, though a line break or two would improve readability.

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

Completeness5/5

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

For a zero-parameter, read-only tool with a rich output schema and strong annotations, the description covers everything an agent needs to decide and call correctly: what it does, who it's for, pricing, payment method, custody details, and risk caveats. No missing critical context is apparent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so the description doesn't need to compensate for parameter documentation. The description instead explains what the output covers (tiers, doors, sales status, payment method, honesty block), which is arguably more useful for an agent deciding to call it than a parameter list would be.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The title and description clearly state the resource ('Sovereign net worth as a service — your user's own token program') and the actionable verb 'returns' with specifics: tiers, doors, sales open status, payment method, and the honesty block. It distinguishes itself from siblings like net_subscription_status and funding_quote by focusing on a user-specific token program quote.

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

Usage Guidelines4/5

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

The description explains the offering, payment method (standard x402 from their own wallet), and explicitly notes it is free, keyless, and read-only. While it doesn't name alternatives explicitly, the context signals and sibling list make the tool's niche clear; a straightforward quote/read tool versus actionable funding or preparation tools. It lacks an explicit 'when not to use' statement but provides enough context.

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

net_subscription_statusA wallet's program subscription: months paid and program stateA
Read-onlyIdempotent
Inspect

Given a subscriber wallet, returns its paid months, each window's program budget, the asset naming on record, and fulfillment state. Everything the program does for the wallet — the mint, the burned market seed, every standing buy — is independently checkable on Base. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
walletYesThe subscriber wallet (0x…), the same wallet that paid.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false. The description adds useful context beyond those annotations: it is free, keyless, and independently checkable on Base, which informs cost, authentication, and verifiability expectations. No contradiction with annotations exists.

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

Conciseness5/5

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

The description is compact and front-loaded, starting with what the tool returns before adding verifiability and access qualifiers. Every sentence earns its place—'Free, keyless, read-only' is high-value decision information, and the Base verifiability sentence adds trust context without bloating the text.

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

Completeness4/5

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

For a simple single-parameter read-only tool with a rich output schema and strong annotations, the description is nearly complete. It conveys the input precondition, the kind of data returned, and the trust/cost profile; the only notable gap is not routing agents away from sibling tools like net_subscription_quote.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is only one parameter and schema description coverage is 100%, so the schema already explains that wallet is the subscriber wallet (0x…) that paid. The tool description repeats this notion but adds no genuinely new detail about the parameter format or edge cases.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('returns') and names concrete resources: paid months, program budget, asset naming, and fulfillment state. It clearly identifies the tool as a subscription-status lookup, though it does not explicitly distinguish it from the similarly named net_subscription_quote.

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

Usage Guidelines4/5

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

The phrase 'Given a subscriber wallet' establishes a clear precondition and usage context, and the enumerated return values make it obvious when this tool is appropriate. It does not name alternatives such as net_subscription_quote or specify when not to use it, so it misses the top score.

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

operator_decisionsThe operator decision ledger — standing law, with its enforcementA
Read-onlyIdempotent
Inspect

Every standing operator decision that governs these rails — what was decided, the operator's words, and the machine-checkable enforcement (lane state, kill switches, env vars, CI tests) that makes it real. Ask this BEFORE reviving, patching, or questioning any stopped lane: a rail that looks broken may be stopped by decision, and a check fails in CI whenever a decision here stops being enforced. Free, keyless, read-only, no chain reads.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoOptional: return just this decision id, e.g. no-sell-walls.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations, the description discloses that the tool is free, keyless, read-only, and makes no chain reads. It also reveals the CI enforcement relationship, adding valuable behavioral context that is 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.

Conciseness5/5

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

Three sentences: the first defines the tool's content, the second gives actionable usage guidance, and the third summarizes cost, access, and read-only behavior. No wasted words, and the most important scoping information is front-loaded.

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

Completeness5/5

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

The description provides the conceptual model, the when-to-use scenario, the enforcement mechanism, and the cost/access profile. With an output schema present and annotations covering safety, this is complete 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.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the single optional id parameter already includes a description with an example. The tool description does not add parameter-specific detail, but the schema carries the burden, 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.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states what the tool provides: a ledger of standing operator decisions, including the decision content, the operator's words, and machine-checkable enforcement. It distinguishes itself from sibling tools by focusing on governance decisions and their role in stopped lanes.

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

Usage Guidelines5/5

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

Explicitly instructs when to use: 'Ask this BEFORE reviving, patching, or questioning any stopped lane.' It also explains why (a rail may be stopped by decision) and notes the CI enforcement consequence, giving clear context 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.

payment_optionsWhat everything here costs, before you pay for anythingA
Read-onlyIdempotent
Inspect

The whole price list for this server's paid doors, in dollars, cheapest first. Use it to budget BEFORE committing to a call — without it the only way to learn a price is to call a door and read the 402 it answers with. Prices are read from the live door manifest, never a hand-kept table, so a door that changes price cannot leave a stale number quoted here; the door's own 402 challenge remains the final price truth. Free, keyless, read-only. There is no balance to top up: you pay each call from your own wallet at the moment you call.

ParametersJSON Schema
NameRequiredDescriptionDefault
maxUsdNoOptional ceiling — show only doors costing this much or less.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already mark readOnly/openWorld/idempotent, but the description adds genuinely useful behavior: prices are read live from the door manifest rather than a stale table, the door's own 402 challenge is the final price truth, and each call is paid from the caller's own wallet at call time. This goes well beyond the 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.

Conciseness4/5

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

Four sentences, all substantive, with the main purpose front-loaded. It is slightly longer than strictly necessary—'Free, keyless, read-only' partially repeats annotations—but every sentence earns its place by clarifying cost semantics, freshness, or workflow.

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

Completeness5/5

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

Given the output schema exists, one optional parameter, and read-only annotations, the description is complete enough for an agent to decide when to call it and what to expect: full price list, sorted cheapest first, live source, no wallet balance interaction, and final authority delegated to the door's 402 response.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the single optional maxUsd parameter is already documented. The description adds useful context like 'cheapest first' but does not discuss the ceiling filter; the schema carries that weight, 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.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the resource: 'the whole price list for this server's paid doors, in dollars, cheapest first.' It is phrased as a noun phrase rather than an explicit imperative verb, and it does not call out a sibling by name, but the function is unmistakable and the 'budget BEFORE committing' framing distinguishes it from payment execution tools.

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

Usage Guidelines5/5

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

Explicitly instructs when to use it: 'Use it to budget BEFORE committing to a call.' It also names the alternative behavior—without it, the only way to learn a price is to call a door and read the 402—and clarifies that there is no balance to top up, so agents know not to treat this as a wallet or prepayment tool.

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

payment_preflightCan this wallet afford this call right nowA
Read-onlyIdempotent
Inspect

Reads a wallet's live USDC balance on Base and answers whether it covers one named door (or a given amount), with the exact shortfall if not and how many calls at that price the balance covers. Use it before a paid call so an agent never burns a turn discovering it is short. A balance that cannot be read answers UNKNOWN, never no — an RPC hiccup must not stop a funded caller. Read-only: it checks a public balance, holds nothing, and charges nothing.

ParametersJSON Schema
NameRequiredDescriptionDefault
walletYesThe 0x… address that would pay. The ADDRESS only, never a private key.
endpointNoA door name from payment_options, e.g. 'work-packet'. Prices the check from the live list.
amountUsdNoCheck against a plain dollar amount instead of a named door.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so safety is covered. The description adds beyond annotations: it specifies that the check 'holds nothing, and charges nothing' and, critically, that an unreadable balance returns UNKNOWN rather than no, preventing false negatives from RPC issues. This is substantial behavioral 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.

Conciseness5/5

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

The description is two sentences, front-loaded with the tool's purpose and result, then the usage guidance and a critical edge-case. Zero filler; every clause earns its place. The UNKNOWN behavior and no-charge note are wrapped into the final sentence without bloat.

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

Completeness5/5

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

Given that the tool has an output schema (so return format is covered elsewhere), three parameters (fully described in schema), and annotations providing the safety profile, the description covers the essential context: what it does, when to use it, the alternative mode, and a critical failure behavior that could otherwise cause wrong agent decisions. No missing information prevents correct calling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all three parameters (wallet, endpoint, amountUsd) are documented in the schema itself. The description adds only marginal semantic value: it clarifies that endpoint is a 'door name' and amountUsd is an alternative ('instead of'), but the schema already states 'A door name from payment_options' and 'Check against a plain dollar amount'. The description does not introduce new details about parameter formats or interactions beyond the schema, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a precise verb-resource pair: 'Reads a wallet's live USDC balance on Base' and states the core answer it provides (covers a door/amount, exact shortfall, count of calls). It clearly distinguishes itself from payment_submit or prepare tools by being a pre-flight check, and the sibling list contains no other similar preflight tool.

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

Usage Guidelines4/5

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

It explicitly instructs to use it 'before a paid call so an agent never burns a turn discovering it is short', giving a strong when-to-use instruction. It does not name specific alternative tools or explicitly say when not to use it, but the 'before a paid call' framing implies the workflow position. The mention of 'or a given amount' also clarifies a second usage mode.

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

place_standingA place's Standing under the Vealth StandardA
Read-onlyIdempotent
Inspect

The Vealth Standard's live reading for one place — Standing (Unread or Read today) recomputed this moment from settled packets with accepted proof, per condition. Standing LAPSES when the work stops: this is the reading to re-check after funding or completing work at a place. Unread is an honest beginning, not a failure. Public mirror: https://vealth.net/labor/standing?place=… Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
placeYesThe place to read, e.g. a city, address fragment, or venue name.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.1/5.0
Behavior5/5

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

Annotations already declare readOnly, openWorld, idempotent, and non-destructive behavior. The description adds substantial behavioral context beyond these: the reading is 'recomputed this moment from settled packets with accepted proof', it 'LAPSES when the work stops', and 'Unread is an honest beginning, not a failure'. It also notes the tool is 'free, keyless, read-only', adding access details. No contradiction with annotations exists.

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

Conciseness5/5

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

The description is compact: four sentences that define the tool, state when to use it, clarify acceptable semantics of 'Unread', and provide access details. Every sentence contributes meaningful information, and the core definition is front-loaded. There is no redundancy or filler.

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

Completeness4/5

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

With one parameter, rich annotations, and an output schema, the description covers the tool's core behavior, use case, and access model. The only notable gap is that domain terms like 'settled packets' and 'per condition' are not expanded, which could leave an agent uncertain about the exact computation semantics. Still, it gives enough context for a confident call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single 'place' parameter, and the schema already explains it as 'a city, address fragment, or venue name'. The description's mention of 'one place' and the public URL '?place=…' adds only marginal context and no new semantics or examples beyond what the schema provides. Therefore, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('live reading') and resource ('one place'), with a clear scope of output: 'Standing (Unread or Read today)'. The title reinforces the purpose, and the focus on a single place differentiates it from broader tools like work_status or board_stats. However, it relies heavily on domain-specific jargon ('settled packets with accepted proof') and does not explicitly name any sibling tool it should not be confused with.

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

Usage Guidelines4/5

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

The description gives a concrete usage context: 'the reading to re-check after funding or completing work at a place', and explains that Standing 'LAPSES when the work stops'. This helps an agent decide when to call it. It does not explicitly state when not to use it or mention alternative tools, so it lacks the exclusionary guidance of the highest-scoring examples.

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

place_statusWhere your place standsA
Read-onlyIdempotent
Inspect

Read an intake you handed over: pending, posted, or rejected with the reason. Free, keyless, no wallet needed. Pass intakeId for one, or wallet to list every place that wallet handed over. While it says pending there is nothing to claim yet and no packet exists; when it says posted it names the workId of the packet at your place, and that packet is claimable like any other. Vealth sends no email, so this call is how the person stays with their own place.

ParametersJSON Schema
NameRequiredDescriptionDefault
walletNoOptional instead of intakeId: the 0x… address that handed places over.
intakeIdNoThe intake id submit_place returned.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the readOnly/idempotent annotations, the description discloses key behavioral details: no email is sent, no wallet is needed, a pending place has no packet, and a posted place names a workId that is claimable. This meaningfully explains what happens and what does not happen during the call.

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

Conciseness5/5

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

The description is front-loaded with the core purpose, then gives query modes, state meanings, and the no-email justification. Every sentence earns its place and there is no filler or repetition of obvious schema information.

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

Completeness5/5

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

For a simple two-optional-parameter read tool with rich annotations and an output schema, this description is complete. It explains both query modes, the possible statuses, the meaning of pending versus posted, and why this endpoint exists, so an agent can confidently select and invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already covers both parameters at 100%, so the baseline is 3. The description adds value by clarifying the wallet parameter means listing every place that wallet handed over, and by explaining how the returned workId relates to the posted status. This goes slightly beyond the schema without being redundant.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb and resource: 'Read an intake you handed over: pending, posted, or rejected with the reason.' It conveys exactly what the tool returns and covers both lookup modes. However, it does not explicitly distinguish itself from the similarly named sibling place_standing, so it lacks direct sibling differentiation.

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

Usage Guidelines4/5

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

The description gives clear usage context: pass intakeId for one intake, or wallet to list every place that wallet handed over. It also explains when the results are meaningful, such as pending meaning nothing to claim yet and posted naming the claimable workId. It does not explicitly name alternatives or exclusions, but the intended use is well implied.

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

prepare_accept_hoursAccept the hours somebody worked (step 1 of 2)A
Read-onlyIdempotent
Inspect

You were named on a work packet as the person who accepts its hours: this is how you do that. FREE and KEYLESS, a signed judgment, no fee, no gas. NOBODY PAYS ANYBODY HERE: accepting hours releases no wage, records no settlement and mints nothing, it writes onto the record that those hours were worked and stops. THE HOUSE CANNOT ACCEPT ITS OWN HOURS, which is the whole reason this door exists: a house wallet is refused here, and so is the packet's own worker, because nobody grades their own exam. The signature is YOUR OWN, from the wallet the packet named, and nobody else's signature will open it. The worker states the hours; you decide the accepted figure, and a figure above their own claim needs allowAboveClaim. Read the proof first with get_work_packet. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with that wallet's personal_sign, then call submit_accept_hours within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
noteNoOptional, up to 300 characters: one plain sentence saying what you checked.
workIdYesThe packet id whose hours you are accepting.
acceptorYesYour 0x address, the one this packet named as its acceptor. Address only, never a private key.
hoursAcceptedYesThe hours you actually stand behind, greater than zero and at most 168. Not the hours claimed unless you agree with them.
allowAboveClaimNoOnly when you mean to credit MORE hours than the worker asked for. Default false, and a higher figure is refused without it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.7/5.0
Behavior4/5

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

Discloses a rich set of behavioral facts beyond the annotations: no fee/gas, no wage release, no settlement, no minting, and the refusal of house/worker wallets. The phrase 'writes onto the record' describes the overall acceptance outcome rather than this prepare step, so it does not contradict the readOnlyHint. A small ambiguity remains, but the disclosure 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.

Conciseness4/5

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

The description is dense and front-loads the core purpose, then uses capitalized emphasis for critical constraints. All sentences add useful information, though it is long and could be tightened; minor redundancy exists between 'no fee, no gas' and 'releases no wage... mints nothing.'

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

Completeness5/5

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

Contains everything an agent needs to invoke the tool correctly: prerequisites, role restrictions, parameter conditions, signature requirements, expiry, return values, and the exact next step. The output schema also exists, but the description compensates for any missing schema detail and leaves no major gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Though schema coverage is 100%, the description meaningfully extends parameter meaning: hoursAccepted is 'the hours you actually stand behind... not the hours claimed unless you agree,' and allowAboveClaim is explicitly conditioned on crediting more than the worker asked for. It also ties acceptor to the specifically named wallet, adding real decision value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a clear action ('accept the hours somebody worked') as step 1 of a 2-step flow, explicitly names the follow-up sibling submit_accept_hours, and explains who is eligible ('named on a work packet'). This distinguishes it from other prepare_* and submit_* siblings without ambiguity.

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

Usage Guidelines5/5

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

Gives explicit when-to-use context: use it only if the packet named you as acceptor, and not if you are the house wallet or the worker. It also tells the agent what to do first ('Read the proof first with get_work_packet') and what to do next ('sign with that wallet's personal_sign, then call submit_accept_hours within 5 minutes').

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

prepare_backingPledge to back a packet — free, no payment (step 1 of 2)A
Read-onlyIdempotent
Inspect

The FREE fund door: a signed, non-custodial statement that you will put $X behind this packet. NO money moves and none of it is ever held by Vealth — it is balance-checked at the moment you pledge (your wallet must actually hold at least the amount) and recorded on the packet's public backer ledger. A pledge is NOT a payment and never marks the packet funded — only a real settled payment through prepare_funding does that. Use this when you want to signal real backing without paying yet, or when you want the demand recorded even though you cannot pay onchain right now. A pledge cannot exceed the packet's own posted wage. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with the backer wallet's personal_sign (a plain signed message, NOT a transaction — no gas, no fee), then call submit_backing within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoOptional, up to 280 characters, shown on the public backer ledger.
workIdYesThe packet id, from find_work.
amountUsdYesHow much you pledge to back this packet with, in USD. Cannot exceed the packet's posted wage.
backerKindNoSelf-declared attribution, same as voterKind. Defaults to human if omitted.
backerWalletYesThe 0x… address that will sign and own this pledge. Must hold at least amountUsd for it to verify.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.1/5.0
Behavior1/5

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

The description states that a pledge is 'recorded on the packet's public backer ledger,' which is a persistent state change, yet the annotations set readOnlyHint=true. This directly contradicts the annotation's implication that no state is mutated. The description even says 'NO money moves' and 'none of it is ever held by Vealth,' which might be read as no financial state change, but the public ledger entry is still a write. Per the rule, any contradiction with annotations results in a score of 1, regardless of the otherwise rich behavioral detail.

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

Conciseness5/5

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

The description is a single dense paragraph, but every sentence serves a purpose: definition, non-custodial nature, balance-check behavior, distinction from payment, when to use, constraint, return values, signing method, and expiration. The most critical distinction (not a payment) is front-loaded. There is no filler or redundancy; the length is justified by the 2-step ceremony and signing requirements.

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

Completeness5/5

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

For a tool in a large family of prepare_* and submit_* siblings, this description is exceptionally complete. It explains the return values (MESSAGE_TO_SIGN and BODY_JSON), the exact signing method (personal_sign, not a transaction – no gas), the 5-minute window, and the follow-up tool (submit_backing). The output schema covers the raw structure, so the description need not repeat that. The only missing piece might be what BODY_JSON contains, but that is presumably in the output schema. This is a model of contextual completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds extra meaning beyond the schema: it clarifies that amountUsd 'cannot exceed the packet's posted wage,' that backerWallet 'must hold at least amountUsd for it to verify,' and that the backer wallet signs with personal_sign (a plain message, not a transaction). It also mentions the optional reason is shown on the public ledger. This added context compensates beyond the schema, earning a 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Pledge to back a packet') and resource, then goes further to differentiate itself from prepare_funding by explaining that a pledge is NOT a payment and never marks the packet funded. It clearly separates the two-step flow (prepare_backing → submit_backing) and names sibling prepare_funding as the alternative for real payments. This gives an agent a precise understanding of what this tool does and what it does not do.

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

Usage Guidelines5/5

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

Explicitly identifies when to use this tool: 'Use this when you want to signal real backing without paying yet, or when you want the demand recorded even though you cannot pay onchain right now.' It also contrasts with prepare_funding ('only a real settled payment through prepare_funding does that') and provides the next step (submit_backing within 5 minutes). This is textbook usage guidance with clear alternatives and conditions.

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

prepare_backing_withdrawWithdraw your pledge (step 1 of 2)A
Read-onlyIdempotent
Inspect

Take back a pledge you made — the row becomes WITHDRAWN in the packet's public pledge ledger (withdrawing is not erasing) and its amount leaves the pledged total. Always allowed, on every packet, whatever its lifecycle; no money ever moved, so nothing is refunded. Free, same signature-is-the-gate rule as pledging. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with the SAME wallet that pledged, then call submit_backing_withdraw within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
backerWalletYesThe same 0x… address that pledged.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already carry readOnlyHint, idempotentHint, and destructiveHint, so the bar is lower. The description still adds meaningful context: the pledge row becomes WITHDRAWN rather than erased, the pledged total decreases, no money is refunded, the operation is free, and the same signature-gated authentication as pledging applies. It also clarifies the two-step flow with a time limit, which readOnlyHint alone wouldn't convey.

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

Conciseness5/5

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

Three dense sentences cover the action, ledger effect, availability, cost, refund semantics, authentication, return payload, signer requirement, and next step. The most important information is front-loaded, and every clause adds value with no filler.

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

Completeness5/5

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

For a two-parameter prepare tool with a rich description and an existing output schema, nothing critical is missing. The agent knows which parameters to provide, what response to expect, how to sign it, which wallet to use, what to call next, and the time limit for completion.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The schema already documents workId as 'The packet id' and backerWallet as the same 0x address that pledged. The description reinforces the same-wallet requirement but does not add new parameter-specific constraints, formats, or discovery guidance beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Take back a pledge') and resource ('pledge'), and the title adds 'step 1 of 2'. It clearly distinguishes itself from the submit step by saying it returns MESSAGE_TO_SIGN and BODY_JSON, which the agent must then sign and pass to submit_backing_withdraw.

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

Usage Guidelines4/5

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

It provides clear usage context: always allowed on every packet, regardless of lifecycle, and only valid if the caller actually pledged. It names the follow-up tool submit_backing_withdraw and the 5-minute signing window, but it never explicitly contrasts with the pledging tool prepare_backing or states 'when not to use' beyond implicit prerequisites.

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

prepare_bidOffer your own price on a work packet (step 1 of 2)A
Read-onlyIdempotent
Inspect

Name your price instead of claiming at the posted pay. FREE — a signed offer, no fee, no gas. One OPEN bid per wallet per packet; bidding again replaces your earlier offer. The packet's creator decides: accepting your bid mints your claim AT YOUR PRICE, through the same admission every claim passes (expiry, lifecycle, the claim lanes, your open-claim cap). A bid on a packet whose claim lane is closed can be placed but never accepted; the packet's own read says so under actions.bid.note. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with the bidder wallet's personal_sign, then call submit_bid within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id, from find_work.
amountUsdYesYour price in USD, greater than zero.
bidderKindNoSelf-declared attribution. Defaults to agent if omitted.
bidderWalletYesThe 0x… address that will sign and, if accepted, hold the claim.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.7/5.0
Behavior5/5

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

With strong annotations already present, the description adds meaningful context beyond them: no fee/no gas, one open bid per wallet per packet with replacement semantics, acceptance mints the claim at the bidder's price through the standard admission checks, and closed-lane behavior. Nothing here contradicts the readOnlyHint or idempotentHint because the tool only prepares a signed offer; execution happens in submit_bid.

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

Conciseness5/5

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

Every sentence in the description carries essential information: purpose, cost, bid replacement semantics, downstream consequences, edge case, and immediate next steps. It is front-loaded with the core purpose and remains dense without fluff.

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

Completeness5/5

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

For a two-step prepare/submit tool, the description covers purpose, cost, nonce/replacement semantics, acceptance path, closed-lane caveat, return format, signing requirement, and the 5-minute validity window. With an output schema available, no critical detail needed to call this tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description reinforces the role of bidderWallet in signing and the bidder's price concept, but it does not add substantial parameter-level detail beyond the schema, which already documents workId, amountUsd, bidderWallet, and bidderKind.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Name your price instead of claiming at the posted pay' on a work packet, and the title clarifies this is 'step 1 of 2'. It clearly differentiates from claiming at posted pay and from the sibling submit_bid, which executes the signed offer.

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

Usage Guidelines5/5

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

The description gives explicit workflow guidance: sign the returned MESSAGE_TO_SIGN with the bidder wallet's personal_sign, then call submit_bid within 5 minutes. It also tells the agent when not to expect a bid to be accepted (closed claim lane) and where to verify that ('actions.bid.note'), plus contrasts with claiming at posted pay.

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

prepare_bridgePrepare a REGEN bridge transaction (non-custodial)A
Read-onlyIdempotent
Inspect

Move REGEN between the Regen chain, Osmosis, Arbitrum and Base in ONE transaction the caller signs with their own wallet. Returns a live quote and the exact unsigned transaction; Skip Go's relayers carry every hop after the broadcast: no confirm step, nothing held by this server, free. Five routes: regen→arbitrum, regen→base and base→regen (axlREGEN through Axelar), plus regen→osmosis and osmosis→regen (a plain ICS-20 transfer over regen-1 channel-1 and osmosis-1 channel-8). This tool prepares that ICS-20 leg itself: zero toll, amount out equals amount in, one signed message, timeouts derived live by Skip, and no minimum send; on those two legs destination may be omitted, and the sender's own account re-encoded under the destination prefix is used (same key, same 20 bytes, no new wallet). Skip does now return a one-transaction route from Osmosis to Base, but it is a CosmWasm contract call rather than a plain ICS-20 transfer, and this tool prepares only ICS-20 transfers and Axelar sends, so it is not offered here; from Osmosis, route home first (osmosis→regen), then regen→base or regen→arbitrum from the regen1 address. Base USDC to REGEN and the reverse take two signed transactions and are not offered here either. Outbound sends from the Regen chain to Arbitrum or Base pay Axelar's flat per-transfer toll, which Axelar prices in dollars (about $0.19 to $0.23 measured across 2026-09-05 to 2026-09-08) and so floats in REGEN terms: measured between 94 and 175 REGEN across those days, on a transfer of any size, moving with both the REGEN price and the shape of the route Skip picks. It is quoted LIVE at call time and returned as quote.toll_regen. The response is authoritative; the figures in this text are approximate and there is no stable number to publish. On those Axelar routes send at least twelve times the live toll in one transfer (returned as quote.min_send_regen, which is null on the Osmosis legs because they have no minimum) and batch rather than dribble; a smaller send is refused with the live toll named. base→regen carries no REGEN toll: the prepared EVM transaction carries a small native ETH value instead, Axelar's fee as Skip quotes it (about $0.11 measured 2026-09-08, returned as sign_this.value and refused above $0.50), after one exact ERC-20 approval. Measured landing times with one key, every landing read from the destination chain on 2026-09-08: regen→osmosis under a minute, regen→base about 66 seconds, base→regen about 30 minutes because Axelar waits on Base finality before it approves an EVM to Cosmos call. After the broadcast, call bridge_status with the source chain and the transaction hash to follow it; a round trip through Base and back loses money at every size this tool prepares (the flat toll never crosses the small price spread), so move REGEN to where it is needed, never to trade the gap.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesAmount in whole REGEN (e.g. "5000"). Same 6-decimal unit on every chain.
senderYesThe caller's OWN address on from_chain (regen1… for regen, osmo1… for osmosis, 0x… for base and arbitrum): the wallet that will sign.
to_chainYesChain the REGEN should end up on.
from_chainYesChain the REGEN is on now.
destinationNoThe caller's OWN address on to_chain that receives the funds. Required on the Arbitrum and Base routes, where no address can be derived from the sender's. Optional on regen→osmosis and osmosis→regen: when omitted, the sender's own account re-encoded under the destination prefix is used (same key, same 20 bytes, no new wallet).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.7/5.0
Behavior5/5

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

Even though annotations already signal readOnly, idempotent, and non-destructive behavior, the description goes far beyond them: it discloses live quoting, relayers carrying every hop, no confirm step, no server custody, free service, fee ranges in REGEN and ETH, refusal thresholds, landing times, and the warning that round trips through Base lose money. Nothing contradicts 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.

Conciseness3/5

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

The description is thorough and front-loaded with the core operation, but it is an extremely dense single block of prose with time-stamped measurements ('about $0.19 to $0.23 measured across 2026-09-05 to 2026-09-08') and many multi-clause sentences. Every fact is purposeful, but the density and lack of structural separation prevent it from being truly concise.

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

Completeness5/5

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

For a complex financial tool, the description is complete: it covers all five routes, fees, minimums, timing, exclusions, follow-up via bridge_status, and even names relevant output fields like quote.toll_regen and sign_this.value. Since an output schema exists, the description does not need to list return values, and nothing needed for correct invocation appears missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already has 100% parameter coverage, so the baseline is 3. The description adds route-specific meaning beyond the schema: destination can be omitted on Osmosis legs and the sender's address is re-encoded under the destination prefix (same key, same 20 bytes), minimum-send constraints affect the amount parameter, and the live toll determines whether a transfer is refused. This is meaningful added semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource: 'Move REGEN between the Regen chain, Osmosis, Arbitrum and Base in ONE transaction the caller signs with their own wallet. Returns a live quote and the exact unsigned transaction.' This establishes the non-custodial, prepare-only nature and clearly differentiates the tool from bridge_status and submit_* siblings.

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

Usage Guidelines5/5

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

It explicitly states when to use the tool, when not to use it (Osmosis→Base CosmWasm route and Base USDC routes are not offered), gives an alternative path ('route home first (osmosis→regen), then regen→base or regen→arbitrum'), and tells the agent to call bridge_status after broadcast. It also provides minimum-send and batching guidance.

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

prepare_claimPrepare a free signed claim (step 1 of 2)A
Read-onlyIdempotent
Inspect

Start claiming a packet for a wallet you control. Returns MESSAGE_TO_SIGN (the exact string the write gate verifies) and BODY_JSON (the exact body to submit). Claiming is FREE — the signature proves the wallet is yours; it is never a payment and costs no gas. Sign MESSAGE_TO_SIGN with the wallet's personal_sign (any wallet tool works; never share a private key with anyone, including this server), then call submit_claim within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id, from find_work.
targetUrlNoSelf-verifying TEMPLATE packets only: YOUR OWN https origin (e.g. https://example.com). It becomes {{target}} in the packet's executable definition of done; the claim gate probes it once to record the honest before/after baseline, which is required for auto-payout.
workerWalletYesThe 0x… address that will sign and own this claim.
attestAtLeast18NoPhysical claims only. Set true ONLY after the human caller explicitly affirms: I am at least 18 years old. prepare_claim will refuse to create a signable claim when this statement is required and has not been affirmed.
attestSafetyReadNoHazard-bearing physical claims only. Set true ONLY after the human caller has actually read and affirms the exact packet safety / stop-work text that prepare_claim surfaces. Never infer or auto-fill this affirmation.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, lowering the bar. The description adds valuable context: claiming is free (no payment, no gas), the signature proves wallet ownership, and the 5-minute expiry. It also advises never sharing private keys. It doesn't contradict annotations and goes beyond them, though it omits refusal conditions for attestations, which are covered in the schema.

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

Conciseness5/5

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

The description is concise yet information-dense: it states purpose, returns, cost, signing instructions, security warning, and expiry in a few sentences. It is front-loaded with the action and returns, and every sentence adds value without redundancy.

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

Completeness4/5

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

Given the tool's moderate complexity, the output schema, and rich parameter descriptions, the description covers the essential workflow: signing, expiry, and next step. It does not mention refusal conditions or attestation handling in the main text, but those are detailed in the schema and the output schema likely reflects them. The only minor gap is not explicitly stating prerequisites for packet types beyond targetUrl, but this is handled by the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with each parameter having detailed descriptions. The main description adds little about parameters beyond mentioning 'wallet you control' (workerWallet) and the general claim flow. It does not explain workId, targetUrl, or the attestation flags beyond what the schema already provides. This meets the baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action: 'Start claiming a packet for a wallet you control.' It specifies the exact return values (MESSAGE_TO_SIGN and BODY_JSON) and frames this as step 1 of 2, distinguishing it from sibling submit_claim and other prepare_* tools. The purpose is unambiguous.

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

Usage Guidelines5/5

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

It explicitly directs the agent to sign MESSAGE_TO_SIGN and call submit_claim within 5 minutes, establishing a clear workflow. It also notes when targetUrl is needed (self-verifying TEMPLATE packets) and clarifies the signing method. While it doesn't enumerate alternatives, the 'step 1 of 2' and reference to submit_claim make the usage context obvious.

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

prepare_credit_offerOffer to pay a packet in a VSH ecocredit on Regen (step 1 of 2)A
Read-onlyIdempotent
Inspect

Before the work: offer to pay this packet in verified stewardship hour (VSH) ecocredits from a named batch on Regen Ledger (chain regen-1). FREE, a signed offer, no fee, no gas, NO credit moves and none is held. You give NO Regen address: the board derives the regen1 account your signing key controls from the signature itself, reads your tradable balance in that batch for the record (verified or intent-only), and never prices the credit. amount is in the credit's own units with at most 6 decimal places, so 1.5 means one and a half verified hours. One offer per wallet per packet; offering again replaces it. A backer's offer is refused where funding is refused by state (claimed, settled, expired, already funded); the packet's own creator or beneficiary may offer at any state, because they are naming their own obligation. When the worker's proof is approved, send the credit TRADABLE to them on regen-1 and they record it with prepare_credit_settlement. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with the backer wallet's personal_sign, then call submit_credit_offer within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesPositive decimal in the credit's own units, at most 6 decimal places, e.g. "1.5".
reasonNoOptional, up to 280 characters: why this packet.
workIdYesThe packet id, from find_work.
backerKindNoSelf-declared attribution. Defaults to agent if omitted.
batchDenomYesThe Regen credit batch denom you will pay from, e.g. VSH01-001-20260907-20270907-001.
backerWalletYesThe 0x… address that will sign and later pay. Address only, never a key.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.8/5.0
Behavior5/5

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

The description goes well beyond the annotations (readOnlyHint, destructiveHint false) by disclosing that the operation is free, involves no fee or gas, moves no credits, requires no Regen address (derived from signature), reads tradable balance, never prices the credit, enforces one offer per wallet per packet, and replaces previous offers. It also specifies the 5-minute expiry and the signing method, adding rich behavioral context 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.

Conciseness4/5

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

The description is long but densely informative; it is front-loaded with the main purpose and then systematically covers constraints, state conditions, and next steps. Every sentence contributes necessary information, so the length is justified rather than verbose. It could be slightly tightened, but overall structure and priority are excellent.

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

Completeness5/5

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

Given the tool's complexity (6 params, output schema exists), the description is remarkably complete. It covers prerequisites, constraints, state-dependent behavior, the signing flow, and the follow-up tool. It even mentions the returned MESSAGE_TO_SIGN and BODY_JSON, which complements the output schema. Nothing an agent needs to invoke it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameters are already described. The description adds meaning by explaining amount units and decimal-place limits, giving a batchDenom example, clarifying backerWallet must be an address only (never a key), and referencing workId from find_work. It also notes that the board derives the account from the signature, adding context for backerWallet. This is more than a baseline, though not exhaustive per-parameter detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('offer to pay') and a concrete resource ('this packet in verified stewardship hour (VSH) ecocredits from a named batch on Regen Ledger (chain regen-1)'). It clearly positions itself as step 1 of 2 and distinguishes from siblings like submit_credit_offer and prepare_credit_settlement, so an agent can tell exactly what it does and what it is not.

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

Usage Guidelines5/5

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

The description gives explicit timing ('Before the work'), explains when a backer's offer is refused (claimed, settled, expired, already funded), and notes that the packet's own creator or beneficiary may offer at any state. It also directs the agent to call prepare_credit_settlement after approval and submit_credit_offer within 5 minutes, providing clear routing to alternatives.

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

prepare_credit_settlementRecord that you were paid in a VSH ecocredit (step 1 of 2)A
Read-onlyIdempotent
Inspect

After your proof is approved and someone sent you VSH ecocredits on Regen Ledger: name the batch denom and the regen-1 transaction hash, and the board reads the transfer that reached the regen1 account YOUR signing key controls, then writes the same settlement record a dollar payout writes. Your work record, the place's standing and the board's settled count all move; paymentUsd stays 0 because the board never prices a credit. Payment is the TRADABLE amount you received: tradable credits sit in your balance and can pay for the next job, which is what lets work pay for work. Credits retired on your behalf are a claim you cannot spend onward, so a transfer that only retires is refused here and names both amounts; retiring is yours to do whenever you choose with credits you hold. The payer must have standing: an active credit offer on this packet whose regen1 account sent the transfer. FREE, no gas. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with the worker wallet's personal_sign, then call submit_credit_settlement within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
txHashYesThe 64-character hex hash of the regen-1 transaction that paid you (no 0x prefix).
workIdYesThe packet you proved.
batchDenomYesThe Regen credit batch denom you were paid in, e.g. VSH01-001-20260907-20270907-001.
workerWalletYesThe 0x… address on the approved proof, the wallet that was paid and will sign.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the read-only and idempotent annotations, the description discloses that the operation is free, returns a message to sign and body JSON, requires personal_sign, and must be followed by submit_credit_settlement within 5 minutes. It also clarifies the tradable-vs-retired distinction and the standing requirement.

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

Conciseness4/5

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

The description is front-loaded with the purpose and then provides necessary operational details, but the first sentence is somewhat convoluted and the explanation of tradable vs. retired credits could be tightened. Overall it is dense but mostly earns its length.

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

Completeness5/5

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

Given the tool's complexity and the rich annotations/schema, the description covers all essential context: when to use it, what inputs matter, what conditions must hold, what it returns, how to sign, the next step, and the timeout. No critical usage information appears missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already provides solid descriptions for all four parameters, and the description adds meaningful context about tradable payments, the worker wallet that signs, and the type of transaction hash expected. This goes beyond the schema, though some added text is more about general settlement rules than individual parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The title and description clearly state that this tool prepares a credit settlement after proof approval and receipt of a VSH ecocredit payment. It also identifies the two-step flow by explicitly mentioning submit_credit_settlement as the follow-up, so an agent can understand the tool's role.

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

Usage Guidelines5/5

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

The description gives concrete conditions for use: proof approved, payment received as tradable credits, payer must have standing, and retired-only transfers are refused. It also explains the next action and the 5-minute validity window, leaving little ambiguity about when and how to invoke it.

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

prepare_evidence_surfaceReserve a board-hosted evidence surface — free (step 1 of 2)A
Read-onlyIdempotent
Inspect

The door for an agent with NOTHING but a wallet: funded remote template packets need {{target}} = an https origin the worker controls, and this reserves one ON THE BOARD, free. You get a targetUrl (https://vealth.net/labor/evidence/) that belongs to your wallet by signature. Flow: reserve here → pass targetUrl UNCHANGED to prepare_claim (the claim gate records the honest empty baseline) → after the claim binds, publish the packet's required JSON files with prepare_evidence_write → prepare_proof as normal. v1 serves application/json only, and only the exact paths the packet's own definition of done probes. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with the worker wallet's personal_sign, then call submit_evidence_surface within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe funded remote template packet id, from find_work.
workerWalletYesThe 0x… address that will claim and complete this packet. Never a private key.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the annotations, the description discloses the return payload (MESSAGE_TO_SIGN and BODY_JSON), the signing requirement, the time limit, content-type restrictions, and the exact paths the surface serves. The reserve/submit split is consistent 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.

Conciseness4/5

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

The description is dense and front-loaded, with the core purpose in the first line and the flow laid out compactly. Minor flourishes like 'The door for an agent with NOTHING but a wallet' and the repeated 'free' cost a little, but the overall structure is efficient.

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

Completeness5/5

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

Given the output schema exists, return-value details are already covered, yet the description still names the key outputs and signing step. It also provides the surrounding flow, constraints, and sibling-step routing, so an agent has enough context to use this tool correctly without extra lookups.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents both parameters at 100% coverage. The description adds operational value by linking workId to find_work and tying workerWallet to the wallet that must personal_sign the returned message, which helps the agent call it correctly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The title and description state a specific action — reserve a board-hosted evidence surface — and explain what the agent gets (a targetUrl). The description also names the exact lifecycle steps and distinguishes this from prepare_claim, prepare_evidence_write, and submit_evidence_surface.

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

Usage Guidelines5/5

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

The description explicitly says when this tool is needed: funded remote template packets need a worker-controlled https origin, and this reserves that origin. It gives a precise flow — reserve → prepare_claim → publish with prepare_evidence_write → prepare_proof — and adds the 5-minute submission window.

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

prepare_evidence_writePublish the packet's files to your evidence surface — free (step 1 of 2)A
Read-onlyIdempotent
Inspect

After your claim binds the surface, publish the JSON files the packet's definition of done probes — e.g. its /.well-known/… path. Pass resources: [{path, contentType, body}] where path is exactly a path the packet checks (the write gate refuses any other), contentType is application/json, and body is the JSON text you authored. Atomic: readers see the old set or the new set, never half. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with the SAME wallet that claimed, then call submit_evidence_write within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
claimIdYesYour claim id, from submit_claim.
recordIdYesThe 24-hex record id, from submit_evidence_surface.
resourcesYes1-8 files: {path: "/.well-known/…", contentType: "application/json", body: "<json text>"}. Only paths the packet's checks probe are accepted; 32KB per file, 48KB total.
workerWalletYesThe 0x… wallet that claimed.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A3.8/5.0
Behavior1/5

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

Annotation Contradiction: annotations declare readOnlyHint=true, but the description describes publishing files, a 'write gate', atomic replacement of the visible set, and a follow-up submit_evidence_write call. This is a serious inconsistency that could cause an agent to treat a write operation as read-only.

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

Conciseness5/5

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

The description is compact and front-loaded: it opens with the precondition and core action, then covers constraints, atomicity, and the follow-up step. Every sentence earns its place and there is no filler.

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

Completeness4/5

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

The description covers the full workflow context: prerequisite, exact resource constraints, atomic visibility, returned values, wallet requirement, and 5-minute expiry. It would be complete if not for the contradictory readOnlyHint annotation, which undermines the overall guidance an agent receives.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds meaningful detail beyond the schema: resources must contain exactly paths the packet checks, contentType must be application/json, body is the authored JSON text, and signing must use the same wallet that claimed. This raises the score above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action ('publish the JSON files ... to your evidence surface') against a specific resource, and frames it as step 1 of a 2-step flow ending in submit_evidence_write. This clearly distinguishes it from prepare_evidence_surface and submit_evidence_write despite 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.

Usage Guidelines4/5

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

It gives an explicit precondition ('After your claim binds the surface'), describes exactly what to pass, and specifies the immediate next action ('call submit_evidence_write within 5 minutes'). It does not explicitly discuss when not to use this tool or compare alternatives, but the step sequencing is clear enough.

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

prepare_fundingGet everything needed to actually pay for a packetA
Read-onlyIdempotent
Inspect

Step 2 for a buyer: returns the live payment requirements for funding a packet — the onchain door's own x402 challenge (accepts[], exact amount, asset, chain, pay-to address) read from that door at this moment, and, when a card rail is mounted on this host, its hosted checkout URL. To chip in a slice instead of the whole remaining amount, pass the typed contributeUsd input and it is forwarded to the real door verbatim; omit it to pay everything the packet still needs (the canonical remaining amount, never a stale posted wage, and never an implicit premium). The door remains the authority on floors, ceilings and the exact challenge — this tool never calculates a charge itself. You pay from YOUR own wallet or card; this server holds no funds and no keys, takes no payment, and marks nothing funded. A packet becomes funded only when a payment actually settles and is verified. Not ready to pay, or want to signal backing without money moving yet? prepare_backing is the FREE sibling door — a signed pledge, no payment required.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id, from find_work.
funderWalletNoThe 0x… address that will pay onchain. Needed for the onchain door's live challenge; the card path does not use it.
contributeUsdNoOptional EXPLICIT contribution in USD. Omit to fund the canonical remaining amount. Forwarded to the live door verbatim; the door enforces its own floor, ceiling and remaining-amount truth. An explicit amount above the remaining is a deliberate worker premium.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A5/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint, openWorldHint, idempotentHint, destructiveHint false), the description reveals critical behavior: it never calculates a charge itself, holds no funds or keys, takes no payment, and marks nothing funded. This fully discloses side effects and safety boundaries, going well beyond what annotations convey.

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

Conciseness5/5

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

The description is dense but each sentence earns its place. It opens with the tool's role, then covers parameters, behavior, limitations, and a sibling alternative without redundancy. It is well-structured and front-loaded.

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

Completeness5/5

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

Given an output schema exists and annotations cover safety, the description provides complete context: when to use, what to expect, parameter semantics, payment handling, and the difference from prepare_backing. No critical gap remains for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, yet the description adds meaning: workId is tied to find_work, funderWallet is needed for onchain but not card, and contributeUsd is explained as an explicit contribution forwarded verbatim with floor/ceiling and premium implications. This is genuinely additive to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: it returns live payment requirements for funding a packet, including the onchain door's x402 challenge and optionally a hosted checkout URL. It also explicitly distinguishes itself from the sibling prepare_backing, which is for free pledges, so an agent can select correctly.

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

Usage Guidelines5/5

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

The description is explicit about when to use this tool: 'Step 2 for a buyer' and when to use the alternative: 'Not ready to pay...? prepare_backing is the FREE sibling door.' It also gives decision guidance for the optional contributeUsd parameter, explaining when to pass it versus omit it.

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

prepare_gmx_orderPrepare a GMX market-order transaction (non-custodial)A
Read-onlyIdempotent
Inspect

Build an unsigned on-chain transaction to open a new perpetual position on GMX v2 (Arbitrum). Returns transaction fields ready for the caller to sign with their own wallet. This is NOT a message to sign — it is a full Ethereum transaction. Requires the caller to have approved the GMX Router for USDC collateral spending (a separate one-time approve() call).

ParametersJSON Schema
NameRequiredDescriptionDefault
sideYesPosition direction.
assetYesAsset symbol (e.g. 'WIF', 'ETH', 'BTC', 'SOL').
walletYes0x… Arbitrum wallet address (the order receiver — your wallet).
leverageYesLeverage multiplier (1x to 10x).
workPacketIdNoOptional. A vealth.net EWP work packet id (from find_work) to pledge this trade's UI fee toward. Moves no money now — records intent only. Funding still requires a separate, later, confirmed payment, exactly like any other funder.
collateralUsdYesCollateral amount in USD (must be > 0 and ≤ $5).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior5/5

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

This tool's description goes well beyond the annotations. It discloses that the output is an unsigned Ethereum transaction, not a message, and it flags the approval requirement. These are critical behavioral traits not captured by readOnlyHint, openWorldHint, or idempotentHint, making the description the primary source for 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.

Conciseness5/5

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

The description is compact and front-loaded: the first sentence conveys the core function, the second clarifies the output type, and the third adds the critical prerequisite. There is no filler or repetition.

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

Completeness5/5

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

Given the presence of an output schema, the description does not need to explain return values. It covers the key aspects: what it does, the output nature, the prerequisite, and the network (Arbitrum). Nothing an agent needs to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already explains every parameter (side, asset, wallet, leverage, collateralUsd, workPacketId). The description adds marginal context by noting the approval requirement relevant to collateralUsd, but it does not clarify individual parameter formats or constraints beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Build an unsigned on-chain transaction to open a new perpetual position on GMX v2 (Arbitrum).' It clearly distinguishes itself from the sibling submit_gmx_order by the explicit 'prepare' vs. 'submit' pairing, and it enumerates the exact output ('transaction fields ready for the caller to sign').

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

Usage Guidelines4/5

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

The description provides a clear context: it prepares a transaction for the caller to sign, and it explicitly notes the required approval prerequisite. It does not explicitly name the alternative (submit_gmx_order), but the 'prepare' nomenclature and the statement 'ready for the caller to sign' imply when to use this versus a submitting tool.

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

prepare_physical_proofRecord the physical proof for review (step 1 of 2)A
Read-onlyIdempotent
Inspect

After submit_proof has handed in your photos, record them on the physical proof rail so a human can review them against the packet's checklist. Pass workId, claimId and your wallet. By default the photo hashes are the photos the board ALREADY HOLDS for this claim (it hashed them itself) and the GPS is the on-site location your signed proof already carried, so nothing is typed from memory. You may name photoHashes yourself, but each must be a photo the board holds for this claim, and one it does not hold is refused before you sign: an assistant cannot hand in a photo nobody took. Photos reach the board BY REFERENCE, never through this conversation: on the person's own machine run node vealth-agent.mjs proof-photo <workId> <claimId> <photo files>, then pass {"type":"photo","upload":"sha256:"} items to prepare_proof. FREE when signed. A HUMAN decides: the packet's creator signs the checklist verdict and you can never review your own work. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with the claiming wallet, then call submit_physical_proof within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
gpsNoOptional {lat, lng} captured ON SITE. Defaults to the on-site GPS your signed proof already carried.
workIdYesThe packet id.
claimIdYesYour claim on it, from submit_claim or my_work.
capturedAtNoOptional ISO time the photos were taken. Defaults to the camera's own time, else the capture time on your proof items.
photoHashesNoOptional, 1 to 12 SHA-256 hex hashes of photo FILES the board holds for this claim (what proof-photo printed). Leave it out to use every photo the board holds for this claim.
workerWalletYesThe same 0x address that claimed. Address only, never a private key.
revisesProofIdNoOnly when answering a needs-more verdict: the id of the physical proof that asked for more evidence.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A5/5.0
Behavior5/5

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

Even with annotations covering readOnly/openWorld/idempotent safety, the description adds substantial behavioral context: photos reach the board 'BY REFERENCE, never through this conversation', invalid hashes are 'refused before you sign', there's a 5-minute expiry, and 'you can never review your own work'. These details beyond annotations give an agent clear expectations.

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

Conciseness5/5

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

The description is dense but every sentence adds value, from the front-loaded purpose to the workflow, validation rule, CLI command, and next-step instruction. There is no redundancy or fluff; the structure flows logically from purpose to constraints to follow-up actions.

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

Completeness5/5

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

For a complex tool with 7 parameters, nested objects, and a multi-step signing flow, the description covers prerequisites, defaults, special cases, security boundaries, return values, and the required subsequent call. The output schema likely carries return structure details, so nothing essential for correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 100% schema coverage, the description adds meaningful semantics: photoHashes default to all board-held photos and must be board-held or rejected, gps and capturedAt default to existing proof data, revisesProofId applies only to needs-more verdicts, and workerWallet must be 'Address only, never a private key'. This enriches every parameter with usage context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the verb and resource: 'record them on the physical proof rail' for human review, and the title frames it as 'step 1 of 2'. It clearly distinguishes itself from siblings like submit_physical_proof by positioning this as the preparation step.

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

Usage Guidelines5/5

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

The description provides explicit ordering: 'After submit_proof has handed in your photos' establishes the prerequisite, and 'then call submit_physical_proof within 5 minutes' names the successor tool and time constraint. It also explains the surrounding workflow with the proof-photo CLI and the human review step.

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

prepare_placeHand the board your own place (step 1 of 2)A
Read-onlyIdempotent
Inspect

Your place is not on the board yet: this is how it gets there. FREE, a signed statement, no fee, no gas, no money moves and nothing is held. You give the pin where you are standing, the radius of the place, plain words for its name, the name of the local person who will acknowledge the handover, the SHA-256 hash of one photo you took at the spot, and a short list of what you can DO there, which is the half that makes a match possible. SEND THE HASH, NEVER THE PHOTO: this board takes a hash and never a file. You give NO Regen address either, because the board derives the Regen account your signing key controls from the signature itself. What happens next is NOT automatic: the house reads the intake and decides whether to post hours-counting work at your place, because the flag that makes a packet count hours is server-owned and a stranger's own post can never carry it. Nothing here is a job, a claim or a promise of pay. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with that wallet's personal_sign, then call submit_place within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
latYesLatitude of the exact spot, as your phone reads it. Not a city centre.
lngYesLongitude of the exact spot, as your phone reads it.
noteNoOptional, up to 300 characters: anything the house should know about the place.
offersNoOptional, and the half that makes a match possible: 1 to 5 short plain-word lines saying what you can DO at this place, at most 80 characters each, e.g. ["trail clearing, hand tools", "can bring two people"]. A human reads them beside the work the house is about to post. Descriptive only: they gate nothing and price nothing.
radiusKmYesHow far the place reaches, in km, from 0.1 to 3. A place someone can walk, not a region.
placeNameYesPlain words a person would recognise, e.g. 'the north boundary of the community forest'. Up to 120 characters.
stewardNameYesThe local person who will acknowledge that the work was handed back. A NAME ONLY: this record is public, so never a phone number, an address or an email. Up to 80 characters.
workerWalletYesThe 0x… address that signs. Address only, never a private key.
sitePhotoSha256YesThe 64-character hex SHA-256 of one photo taken at the spot. The hash only. Keep the photo yourself; it is what proves the hash later.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the annotations (readOnly, openWorld, idempotent, non-destructive), the description adds rich behavioral context: no fee/gas/money moves, nothing is held, the server owns the hours-counting flag, the flow is not automatic, and the signed message expires. 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.

Conciseness4/5

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

The description is longer than typical, but nearly every sentence carries behavioral or workflow information. It is front-loaded with the core purpose and ends with the critical next step, though some stylistic redundancy could be trimmed.

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

Completeness5/5

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

Given the complexity of a two-step signing flow and the presence of an output schema, the description is complete: it covers preconditions, security constraints, what to send, what not to send, how the next step works, and the expiry/next action. Nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all parameters with detailed descriptions, so the baseline is 3. The description largely restates parameter guidance (hash not photo, plain-word name, local person, offers list) rather than adding new semantic constraints beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: preparing a place for the board in step 1 of a 2-step process. It names the exact resource ('place'), the action ('prepare'), and the follow-up tool ('submit_place'), distinguishing itself from the sibling submission tool.

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

Usage Guidelines5/5

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

It explicitly frames the precondition ('Your place is not on the board yet'), explains the non-automatic next step, and instructs the agent to sign with the wallet's personal_sign and call submit_place within 5 minutes. This is direct, actionable usage guidance.

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

prepare_post_workPost your own work packet (step 1 of 2)A
Read-onlyIdempotent
Inspect

Put work YOU define on the public board — your place, your problem, your terms. Pass the creator wallet, a title, what needs doing, where, and the proposed pay. Returns MESSAGE_TO_SIGN (proving the creator wallet is yours) and BODY_JSON. Posting is a board WRITE: it costs $0.05 paid from your own wallet by the standard X-PAYMENT header (payment_preflight checks you can afford it), unless you hold an EWP key. The pay you propose stays PROPOSED until someone funds it — approved proof on an unfunded packet earns provable credit rather than cash, and the packet says which before anyone claims. Sign MESSAGE_TO_SIGN with the creator wallet's personal_sign, then call submit_post_work within 5 minutes. The board carries only work with a home in the Vealth Standard and a documented method: a post that names neither is refused before any charge, and the refusal lists the nearest documented standards; pass one back as standard.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesShort honest title, e.g. 'Monthly care and growth check, planted neem tree'.
locationYesWhere the work is: address or place name. Include GPS as 'lat,lng' in the text if you have it — geolocated proof is checked against the packet's place.
standardNoOptional. The documented standard this work serves (a snake_case id such as 'tree_planting_establishment'); when a refusal lists suggestedStandards, pass one of them here. Omit it and the board lands the title on a documented standard itself when the title is that work's name.
workTypeNo0 = water, 1 = soil/land/planting, 2 = building/structure. Trees are 1.
proofRuleNoWhat proof completes the work, e.g. 'GPS pin + photo of the tree next to a measuring stick + watering confirmation'.
descriptionYesWhat needs doing, concretely — a stranger (or the poster themselves) should be able to do it from this text alone.
creatorWalletYesThe 0x… address posting this work. It signs, and it owns the posting.
expiresInDaysNoDays the packet stays open. Default 30.
workTypeLabelNoOptional. A documented work type (snake_case) when you know the board's own name for the work.
proposedPayUsdYesProposed pay in USD. Proposed, not promised: unfunded packets settle as provable credit.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.2/5.0
Behavior4/5

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

The description discloses signing, expiry, cost/payment-check behavior, and the refusal-before-charge rule for invalid standards. It does not contradict the readOnly annotation because it frames submission as a separate follow-up call, though the opening 'put work on the board' wording is slightly ambiguous about whether this step itself writes.

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

Conciseness3/5

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

The description is clearly structured but somewhat overwrought, with rhetorical flourishes like 'your place, your problem, your terms' and repeated PROPOSED/credit phrasing. It is not bloated, but not every sentence earns its place.

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

Completeness4/5

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

For a two-step protocol, the description gives the essential context: what to pass, what comes back, how to sign, the follow-up call, expiry, payment, and refusal handling. It does not spell out the output schema, but the return artifacts are named and the annotations cover safety.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents all 10 parameters, and the description adds useful semantic detail beyond the schema: GPS-in-location guidance, workType example for trees, standard fallback behavior, and the proposed-pay caveat. It does not elaborate on every optional field, but the schema descriptions fill those gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the precise action (prepare a user-defined work packet), the key inputs, and the return artifacts (MESSAGE_TO_SIGN, BODY_JSON). It clearly distinguishes this first step from the follow-up submit_post_work and from other prepare_* siblings.

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

Usage Guidelines4/5

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

It explains when to use the tool—when the user is posting their own work—and the required handoff to submit_post_work within five minutes. It also references payment_preflight and the optional standard field on refusal, though it does not explicitly compare against provision_work or other alternatives.

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

prepare_proofPrepare signed proof of finished work (step 1 of 2)A
Read-onlyIdempotent
Inspect

You did the work — start handing in proof. Pass the packet's workId, your claimId (from submit_claim), your wallet, and proof items matching the packet's own proof line (photos with GPS for field work; documents/text for digital work). On an hours-eligible job, state the hours you actually worked as hoursClaimed, and whatever the job asks to be counted as counts: you state them, and the human who accepts decides the accepted figure. Returns MESSAGE_TO_SIGN and BODY_JSON. Submitting proof is FREE when signed — a worker is never charged at the moment they have earned the right to be asked for nothing. Sign, then call submit_proof within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
gpsNoFor geolocated field work: {lat, lng} captured ON SITE — the gate refuses geolocated proof without it.
countsNoOptional: what the job asked to be counted, in the packet's own units, as plain numbers — {"metres_cleared": 120, "blockages_removed": 4, "check_dams_built": 3}. Lower_snake_case names, at most 40 of them. Recorded with the proof; it decides nothing on its own.
proofsYes1-20 proof items. A photo goes in BY REFERENCE: {"type":"photo","upload":"sha256:<hex>","step":1,"capturedAt":"<ISO>"}, where the reference is what `node vealth-agent.mjs proof-photo <workId> <claimId> <photo files>` printed on the person's own machine; the photo bytes never pass through this conversation. A small file may still go inline as {"type":"photo","data":"<base64>"}. Text notes are {"type":"text","data":"…"}. The packet's proof line (get_work_packet) says exactly what it needs.
workIdYesThe packet id.
claimIdYesReturned by submit_claim.
hoursClaimedNoOn an hours-eligible job, the hours you ACTUALLY worked, breaks out — a positive number, at most 168, to 6 decimal places. You state it; the human who accepts decides the accepted figure. Required on such a packet (the completion gate refuses a proof without it), optional everywhere else.
workerWalletYesThe same 0x… address that claimed.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, establishing safety. The description adds critical behavioral context beyond annotations: 'Submitting proof is FREE when signed', the 5-minute signing window, and the gate refusing geolocated proof without GPS. It also explains the photo reference mechanism (bytes never pass through the conversation). These details materially inform the agent's behavior and are not redundant 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.

Conciseness4/5

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

The description is long but densely packed with essential information. It is front-loaded with the purpose ('You did the work — start handing in proof.') and logically progresses through inputs, special cases, and the next step. While it could be trimmed slightly (e.g., the free-submission note is tangential), every sentence contributes to correct usage. The structure is clear and efficient for the complexity involved.

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

Completeness5/5

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

Given the tool's complexity (7 parameters, nested objects, conditional requirements, and a two-step workflow), the description is remarkably complete. It covers all required inputs, the proof item formats, the gate's refusal conditions, the hours-eligibility logic, the output, and the subsequent action (submit_proof within 5 minutes). An agent has everything needed to call the tool correctly without further research.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although schema coverage is 100%, the description adds substantial meaning beyond the schema. It explains the proof item structure (photo by reference vs inline, text notes), the conditional requirement of gps for geolocated work, the meaning of counts (in packet's units, decided by human), and the hoursClaimed semantics (you state, human decides). This enriches the parameter semantics far beyond the schema's field descriptions, clarifying complex nested structures and conditional requirements.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Prepare signed proof of finished work (step 1 of 2)'. It specifies the exact inputs (workId, claimId, wallet, proofs) and the output (MESSAGE_TO_SIGN and BODY_JSON), and distinguishes it from the sibling submit_proof by explicitly noting it is step 1 of 2. This leaves no ambiguity about what the tool does or how it differs from its counterpart.

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

Usage Guidelines5/5

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

The description provides explicit usage guidance: it says to call this after claiming ('your claimId (from submit_claim)') and before submitting ('Sign, then call submit_proof within 5 minutes'). It also specifies conditional usage for hours-eligible jobs and geolocated work, and notes that the completion gate refuses proofs without required fields. This clearly indicates when to use the tool versus alternatives like submit_proof.

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

prepare_token_offerOffer to pay a packet in ANY token (step 1 of 2)A
Read-onlyIdempotent
Inspect

Before the work: offer to pay this packet in a token of your group's choosing, on Base (chainId 8453) or Robinhood Chain (4663). FREE — a signed offer, no fee, no gas, NO money moves and none is held. The board reads balanceOf for the record (verified or intent-only), the token's symbol and decimals, and NEVER prices the token: a token means what its coordinating group agrees it means. amount is in the token's smallest unit (atomic). One offer per wallet per packet; offering again replaces it. Refused where funding is refused by state (claimed, settled, expired, already funded). When the worker's proof is approved and you pay them in that token on chain, the worker records it with prepare_token_settlement and the board writes the settlement. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with the backer wallet's personal_sign, then call submit_token_offer within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenYesThe 0x… ERC-20 contract address of the token you will pay in.
amountYesPositive integer in the token's smallest unit (atomic). For an 18-decimal token, 5 tokens = 5000000000000000000.
reasonNoOptional, up to 280 characters: why this packet.
workIdYesThe packet id, from find_work.
chainIdYes8453 = Base, 4663 = Robinhood Chain.
backerKindNoSelf-declared attribution. Defaults to agent if omitted.
backerWalletYesThe 0x… address that will sign and later pay. Address only, never a key.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.6/5.0
Behavior5/5

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

The description goes far beyond the annotations: no fee, no gas, no money moves, the board reads balanceOf but never prices the token, one offer per wallet per packet with replacement semantics, and the 5-minute signing window. This is rich behavioral context with no contradiction to 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.

Conciseness4/5

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

Every major claim earns its place and the critical workflow facts are front-loaded, but the paragraph is long and has mild redundancy ('FREE', 'no fee, no gas', 'NO money moves'). Still, the density is justified for a multi-step financial tool.

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

Completeness5/5

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

The description covers return values (MESSAGE_TO_SIGN and BODY_JSON), signing method, the 5-minute expiry, replacement behavior, refusal conditions, and the next tool to call. Given the tool's complexity and the presence of an output schema, nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema already explains the parameters well, including atomic amounts, chainId names, and the address-only wallet rule. The description mostly restates these, adding only conceptual color like 'NEVER prices the token' rather than new parameter-level details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('offer to pay this packet in a token'), the resource (a work packet), and the allowed chains. It also identifies itself as step 1 of a 2-step flow, distinguishing it from prepare_token_settlement and submit_token_offer.

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

Usage Guidelines5/5

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

It explicitly says 'Before the work', names the follow-up step (submit_token_offer within 5 minutes), and the downstream settlement tool. It also lists refusal conditions (claimed, settled, expired, already funded), giving clear 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.

prepare_token_settlementRecord that you were paid in a token (step 1 of 2)A
Read-onlyIdempotent
Inspect

After your proof is approved and someone paid you in a token on chain: name the chain (8453 Base or 4663 Robinhood Chain) and the transaction hash, and the board reads the transfer to YOUR wallet and writes the same settlement record a dollar payout writes — your work record, the place's standing and the board's settled count all move; paymentUsd stays 0 because the board never prices a group's token. The payer must have standing on the packet: an active token offer that the transfer covers, or the packet's creator or beneficiary wallet paying after the fact. A stranger's junk transfer settles nothing. Base USDC is refused here (that is the priced rail: /labor/settle). Your signature is your consent to the token as payment. FREE, no gas. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with the worker wallet's personal_sign, then call submit_token_settlement within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
txHashYesThe 0x… hash of the transaction that paid you.
workIdYesThe packet you proved.
chainIdYes8453 = Base, 4663 = Robinhood Chain.
workerWalletYesThe 0x… address on the approved proof — the wallet that was paid and will sign.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.6/5.0
Behavior4/5

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

The description adds substantial behavior beyond the annotations: no gas cost, 5-minute expiry, paymentUsd stays 0, signature-as-consent, and payer standing requirements. The word 'writes' could initially suggest this call mutates state, but the closing sentence clarifies it only returns a signing payload; readOnlyHint is not directly contradicted, though the wording could be slightly clearer.

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

Conciseness4/5

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

The description is dense and front-loaded with the principal precondition, but it is written as long multi-clause sentences that are harder to parse than bullet points or short directives. Still, every sentence conveys necessary information; nothing is filler.

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

Completeness5/5

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

Given the output schema, fully documented parameters, and annotations, the description completes the picture: preconditions, allowed chains, payer standing, next step, timeout, gas, and semantic side effects. An agent has everything needed to select and invoke this tool correctly and hand off to submit_token_settlement.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description enriches the schema by tying each parameter to its semantic role in the flow: workerWallet is the paid wallet that must sign, txHash is the specific payment transfer, workId is the proved packet, and chainId names the two enums. It also adds the critical exclusion that Base USDC is not accepted here.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description goes far beyond the tool name, stating the precise condition (approved proof + token payment), the required inputs (chainId and txHash), and the concrete output (MESSAGE_TO_SIGN and BODY_JSON for a two-step flow). It also distinguishes itself from submit_token_settlement and /labor/settle, making the tool's role unambiguous.

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

Usage Guidelines5/5

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

The description explicitly states when to use this tool: after proof approval and an on-chain token payment, naming the allowed chains and then calling submit_token_settlement within 5 minutes. It also gives clear exclusions: Base USDC belongs on /labor/settle, and a stranger's junk transfer settles nothing. This is strong when/when-not guidance with named alternatives.

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

prepare_voteVote for or against a work packet (step 1 of 2)A
Read-onlyIdempotent
Inspect

Say a job should matter more or less. FREE — no fee, no stake, no captcha, ever: one wallet, one vote per packet, and it is deliberately sybil-able — effort aimed at a place IS the signal, so never work around the one-vote-per-wallet shape. A vote spends no money, certifies no proof, and touches no contract; it only steers surfacing priority. Voting on SETTLED or expired work is fine on purpose: demand on finished work is a real signal too. Returns MESSAGE_TO_SIGN and BODY_JSON. Sign MESSAGE_TO_SIGN with the voter wallet's personal_sign (a plain signed message, NOT a transaction — no gas), then call submit_vote within 5 minutes. Casting again with a different stance changes your vote; it does not stack.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNoOptional, up to 280 characters, shown on the public tally.
stanceYesYour position on this packet.
workIdYesThe packet id, from find_work.
voterKindNoSelf-declared attribution so agent demand is never shown as human community consensus. Defaults to human if omitted.
voterWalletYesThe 0x… address that will sign and own this vote.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the readOnly/openWorld/idempotent hints, the description discloses the exact behavioral profile: no fee, no stake, no contract interaction, no proof certification, non-stacking repeated votes, and deliberate sybil-ability. This is valuable context that annotations alone cannot express, and it does not contradict 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.

Conciseness4/5

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

The description is long but intentionally dense; key facts like the 5-minute expiry, free sign flow, and non-stacking behavior each carry operational weight. It is front-loaded with the core purpose, though a few phrases ('FREE — no fee, no stake, no captcha, ever') are slightly redundant with the next sentence.

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

Completeness5/5

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

For a two-step signing tool, this description covers what an agent needs: prerequisites, security model, signing method, next step, expiry, and edge cases. An output schema exists for the return shape, so the description's mention of MESSAGE_TO_SIGN and BODY_JSON is enough to orient the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds workflow-level meaning: MESSAGE_TO_SIGN must be signed with the voterWallet via personal_sign (not a transaction), and changing 'stance' changes the vote rather than stacking. This connects the parameters to the protocol without repeating the schema's field descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Say a job should matter more or less' and the title adds 'Vote for or against a work packet (step 1 of 2)', naming the exact verb, resource, and workflow stage. It also distinguishes itself from submit_vote by saying 'then call submit_vote within 5 minutes'.

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

Usage Guidelines5/5

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

The description explicitly states when this step is appropriate: prepare_vote produces the signing payload, submit_vote consumes it, and the prepared message expires in 5 minutes. It also gives exclusion-like guidance ('never work around the one-vote-per-wallet shape') and clarifies that voting on settled/expired work is allowed, so an agent knows edge-case timing is not an error.

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

prepare_vote_withdrawWithdraw your vote (step 1 of 2)A
Read-onlyIdempotent
Inspect

Take back a vote you cast — the position leaves the active tally, but the event stays in the packet's public history (withdrawing is not erasing). Free, same signature-is-the-gate rule as casting. Returns MESSAGE_TO_SIGN and BODY_JSON; sign with the SAME wallet that cast the vote, then call submit_vote_withdraw within 5 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
voterWalletYesThe same 0x… address that cast the vote.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already mark it read-only, idempotent, and non-destructive, and the description adds valuable behavior: the vote leaves the active tally but remains in public history, withdrawal is not erasure, the signing rule matches casting, and the returned message expires within 5 minutes. No contradiction with annotations.

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

Conciseness5/5

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

Three dense, purposeful sentences pack the key facts: what happens, what is returned, who must sign, and the timeout. No filler or repetition of schema content.

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

Completeness5/5

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

Given only two fully documented parameters, an output schema, and annotations covering safety, the description is complete. It covers the follow-up action, the 5-minute validity window, and the critical same-wallet constraint, leaving no important gap for an agent to resolve.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and both parameters are described in the schema. The description reinforces that voterWallet must be the same wallet that cast the vote, but it does not add meaning beyond the schema's existing parameter descriptions. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Take back a vote you cast') and identifies the exact resource and effect. It also clearly frames the tool as step 1 of a two-step process and names the follow-up tool, distinguishing it from prepare_vote and submit_vote_withdraw.

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

Usage Guidelines4/5

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

The description gives clear context: use this when withdrawing a previously cast vote, sign with the same wallet, and then call submit_vote_withdraw within 5 minutes. It does not explicitly state when not to use it or name alternatives, but the step sequence and prerequisites are sufficiently clear.

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

provision_planPlan the governed work that answers an objectiveA
Read-onlyIdempotent
Inspect

VEALTH PROVISION: send an objective in plain words (any spelling; English, Spanish or Swahili) and get back a PLAN: a verdict (plan, authority_required, clarify, no_home, or entry_work when the objective only offers help, such as 'I want to help', and names no work), ONE exact next call, the governed work units that answer it (method, safety stops, the authority each needs, whether it is executable) and any live board packets near the place you name with their posted price and what a stranger may do now. Regulated work (lead paint, gas, asbestos, electrical, needles and similar) is never presented as freely doable: the plan names whose authority it needs. Nothing in a plan has happened; no place or price is invented; corpus units have no price until posted. The same plan GET /labor/provision returns. Free, keyless, read-only, moves no money. Not provision_work, which builds a funding path for one packet.

ParametersJSON Schema
NameRequiredDescriptionDefault
placeNoOptional place name, e.g. 'Kibera' or 'Los Angeles'. Used as an address filter, never scored as work.
latitudeNoOptional, with longitude: the place's coordinates, for live packets nearby.
radiusKmNoSearch radius for live packets in km. Default 25, at most 200.
longitudeNoOptional, with latitude.
objectiveYesThe useful work you want done, 5 to 300 characters, e.g. 'clear the storm drain on my street before the rain'.
entryLevelOnlyNoOnly work the corpus holds as entry level; the reply also carries entry_set, the posted work a stranger can take today.
excludeAuthorityNoDrop any unit that names an authority it requires.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4/5.0
Behavior4/5

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

The description adds meaningful behavioral context beyond the annotations: it states 'Free, keyless, read-only, moves no money' and 'Nothing in a plan has happened; no place or price is invented.' It also mentions language support (English, Spanish, Swahili) and regulated-work handling. These details complement the readOnlyHint and idempotentHint annotations without contradicting them. It could mention rate limits or error handling, but the added context is valuable.

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

Conciseness2/5

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

The description is a single, dense, run-on sentence with many clauses and lists. It is not front-loaded or easily scannable; the core purpose is buried after a long preamble. While it is informative, it lacks conciseness and structural clarity, making it harder for an agent to quickly grasp the essential action.

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

Completeness5/5

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

Given the tool's complexity (7 parameters, output schema present), the description is comprehensive. It explains the plan structure, the verdict types, the nature of governed work units, and the handling of live board packets. It also covers constraints like regulated work and no invented prices. Since an output schema exists, the description does not need to enumerate return fields, but it provides enough context for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 baseline is 3. The description does not add per-parameter detail beyond what the schema provides; it only references 'place' as an address filter and mentions 'live board packets near the place you name,' which aligns with the schema. No new semantic value is added for individual parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: it takes an objective in plain words and returns a plan with a verdict, a next call, governed work units, and live board packets. It distinguishes itself from provision_work by explicitly stating that provision_work builds a funding path instead. The verb 'send' and resource 'objective' are specific, and the tool's role is unambiguous.

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

Usage Guidelines4/5

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

The description explicitly names the alternative tool 'provision_work' and clarifies the difference: 'Not provision_work, which builds a funding path for one packet.' This provides a clear exclusion. However, it does not state when to use this tool over other siblings like find_work or get_work_packet, though the core purpose is evident. The guidance is adequate but not exhaustive.

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

provision_workProvision a bounded packet of real ecological workA
Read-onlyIdempotent
Inspect

Turn a place + problem (or a board packet id) into provisioned work: a bounded packet with scope, standards-registered method, proof requirement, tCO2e estimate, and the keyless funding path YOU pay from your own wallet. This tool returns the packet and the path; it never spends, never holds funds, never signs. When the retirement lane is running, approved proof queues a carbon retirement and an on-chain certificate — provision, not offset; that lane is paused by operator order since 2026-08-04.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoOr free text for the problem, e.g. 'storm drain' or 'tree planting'.
workIdNoProvision a specific open board packet by id (from find_work).
latitudeNoCenter of the search, with query.
radiusKmNoSearch radius in km. Default 50.
longitudeNoCenter of the search, with query.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the annotations, the description adds rich operational context: the keyless funding model ('YOU pay from your own wallet'), explicit non-actions (never spends/holds/signs), the retirement-lane queueing behavior, the semantic distinction 'provision, not offset,' and a dated operator pause ('paused by operator order since 2026-08-04'). This is exactly the kind of context annotations alone cannot convey.

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

Conciseness5/5

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

Three sentences, each carrying distinct weight: purpose and deliverable, behavioral boundaries, and operational status of the retirement lane. The most decision-critical information is front-loaded in the first sentence, and the dated pause note is a compact, high-value operational detail. No filler.

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

Completeness4/5

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

With 100% parameter coverage, an output schema, and annotations covering safety and idempotency, the description only needs to cover purpose, input modes, and operational caveats — and it does all three. Minor residual ambiguity: all parameters are optional, so behavior with no inputs is unclear, and the exact impact of the paused lane on the returned packet is not spelled out. These are small gaps given the richness of surrounding structured data.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the 3 baseline applies. The description adds structural meaning the flat schema lacks by grouping parameters into two call modes: 'place + problem' (latitude, longitude, query) versus 'board packet id' (workId). The schema hints at this through 'with query' and 'Or free text,' but the description makes the input-mode structure explicit.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('provision') and exact inputs ('place + problem (or a board packet id)') and enumerates the concrete deliverable: 'a bounded packet with scope, standards-registered method, proof requirement, tCO2e estimate, and the keyless funding path.' This clearly differentiates it from siblings like find_work (searching), get_work_packet (retrieving), and prepare_funding (executing payments).

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

Usage Guidelines4/5

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

The opening clause makes the trigger condition explicit — use this when you have a place + problem or a board packet id and want to produce provisioned work. The exclusions ('never spends, never holds funds, never signs') tell the agent what this tool will not do, implying that execution belongs elsewhere, though it stops short of naming a specific alternative sibling for that case.

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

regen_address_lookupWhat a Regen address holds right nowA
Read-onlyIdempotent
Inspect

Live balance, bonded stake, unclaimed staking rewards, and REGEN locked in open governance deposits for any regen1… address — read directly from Regen's own public LCD API (the same one Vealth's browser explorer hits; no Vealth backend caches or alters it). Any figure that cannot be read answers so honestly rather than defaulting to zero, and the total is withheld until every figure is known. Free, keyless, read-only — this never asks for a private key, only the address.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesA regen1… bech32 address (not a 0x… Base address — Regen is a separate Cosmos chain).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.3/5.0
Behavior5/5

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

Annotations already cover readOnly/idempotent/non-destructive, and the description adds substantial behavior beyond them: the data is read directly from Regen's public LCD API with no Vealth backend caching, any unreadable figure reports honestly instead of defaulting to zero, and the total is withheld until every figure is known. The keyless/no-private-key guarantee also reinforces the read-only annotation with a concrete security promise.

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

Conciseness5/5

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

Three sentences, each with a distinct job: what is returned and from where, failure/aggregation semantics, and security posture. The core purpose is front-loaded, and even the provenance parenthetical (same LCD API as Vealth's explorer, no caching) earns its place by establishing trust in the data.

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

Completeness5/5

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

With a single fully documented parameter, an output schema present, and annotations covering the safety profile, the description adds every remaining operational detail an agent needs: live data source, no-cache provenance, honest partial-failure behavior, total aggregation rule, and keylessness. Nothing required for a correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the input schema already documents the regen1… bech32 format plus the 0x… exclusion. The description only echoes 'regen1… address' and 'only the address' without adding new parameter-level meaning, so the baseline of 3 for high schema coverage applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource (any regen1… address) and enumerates exactly what is returned: live balance, bonded stake, unclaimed staking rewards, and REGEN locked in governance deposits. This content-level specificity clearly distinguishes it from siblings like regen_burn_tracker, regen_token_volume, and regen_governance_status without needing to open their schemas.

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

Usage Guidelines3/5

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

The description makes the tool's context clear — it returns a live holdings snapshot for any regen1… address — so an agent can infer when to use it. However, it never names sibling tools or states when-not-to-use conditions (e.g., when historical volume or burn stats are needed instead), leaving alternative routing purely to inference.

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

regen_burn_trackerRegen Compute's real on-chain REGEN burn, verifiedA
Read-onlyIdempotent
Inspect

Regen Compute (compute.regen.network, run by Regen Network Development PBC — unaffiliated with Vealth) burns 5% of net subscriber revenue as REGEN via MsgBurnRegen. This tool returns every burn transaction found on-chain by querying the public Regen LCD network-wide (no sender filter, so the single-wallet claim is itself verified, not assumed), the running total, cadence, and a reconciliation against the $REGEN Tokenomics DAO's own claimed weekly range. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax recent burns to list, newest first. Default 10.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A3.9/5.0
Behavior4/5

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

The description adds behavioral context beyond annotations by stating the network-wide query (no sender filter) and the reconciliation against the DAO's claimed weekly range. It also confirms keyless, read-only access, which aligns with 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.

Conciseness4/5

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

The description is two sentences, but the first sentence includes a long parenthetical about the organization and disclaimer. While it is informative, it could be more concise. The key information about what the tool returns is front-loaded, and the structure is logical, so a 4 is appropriate.

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

Completeness4/5

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

Given the tool's complexity and the presence of an output schema, the description covers the query method, scope, verification rationale, and the output types (transactions, total, cadence, reconciliation). It lacks nothing essential for an agent to invoke the tool correctly, and the output schema handles return details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% coverage for the single 'limit' parameter, and the description does not add additional details about it. Since the schema already documents the default and ordering, the description adds no extra parameter semantics, matching the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns on-chain REGEN burn transactions, running total, cadence, and reconciliation against the DAO's claimed range. It identifies the specific resource (Regen Compute) and the burn mechanism (MsgBurnRegen), making the purpose unambiguous and distinct from any sibling tool.

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

Usage Guidelines3/5

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

The description explains what the tool does and its verification approach but does not explicitly state when to use it over alternatives or when not to use it. It implies usage for burn tracking but provides no exclusions or comparisons with sibling tools like regen_token_volume or regen_address_lookup.

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

regen_forum_feedWhat's new on Vealth's Regen governance forumA
Read-onlyIdempotent
Inspect

Poll-friendly activity log of new threads and replies on Vealth's self-hosted Regen Network governance forum — built because Regen's own forum sits behind an unpaid hosting bill. Each event carries the author's regen1 address and the bonded REGEN stake behind it, captured at post time, so an argument about a vote sits next to its weight. Pass the returned next_cursor back as since to page forward without re-listing what you already read. Free, keyless, read-only — posting needs a Regen wallet signature this tool never asks for; get the exact recipe from GET /regen/forum/signing-spec.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax events, 1-200. Default 50.
sinceNoOptional: a cursor a PRIOR call to this tool returned (next_cursor). Not a timestamp — pass it back verbatim to page forward.
authorNoOptional: only events from this regen1… address.
proposalIdNoOptional: only events tied to this Regen governance proposal number, e.g. '71'.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the bar is lower. The description adds that the service is free and keyless, and explains the origin story (self-hosted forum behind an unpaid bill), which helps set expectations about availability. It also clarifies the auth model — no signature needed — going beyond the annotations' read-only flag.

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

Conciseness4/5

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

The description is two sentences that front-load the purpose, then spiral into context, auth, and pagination. Every clause earns its place — no filler. It's slightly long but reads naturally and is well-structured, so a 4 rather than a 5.

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

Completeness5/5

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

Given the output schema exists (not shown but signaled), the description explains the data payload (author address and stake), the pagination mechanism, and the authentication model. Nothing an agent needs to call this correctly is missing — it even points to the signing spec for the posting alternative. Complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema describes all four parameters with types and descriptions. The description reinforces the cursor semantics for `since` ('pass it back verbatim') but this is already stated in the schema. No additional parameter meaning is added, so a baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb-object phrase — 'Poll-friendly activity log of new threads and replies on Vealth's self-hosted Regen Network governance forum' — that names both the resource and the action. It explains why this tool exists (unpaid hosting bill) and what each event carries (author address and stake), distinguishing it from every sibling. No other tool in the list serves this role, so the purpose is unambiguous.

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

Usage Guidelines5/5

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

It explicitly instructs how to paginate by passing next_cursor back as `since`, and clarifies the tool is read-only and keyless, directing anyone who needs posting to GET /regen/forum/signing-spec. That effectively states when to use it (reads) and when not (posting), and provides the alternative recipe. This is exemplary guidance.

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

regen_governance_statusRegen Network governance: what's open, and how one proposal standsA
Read-onlyIdempotent
Inspect

Live-mirrored Regen Network (regen-1) governance: bonded stake, active validator count, and every proposal — decoded, with phase (deposit/voting/resolved) and tally. Omit proposalId for an overview of what is open right now; pass one to get that proposal's full deposit/voting/tally detail. Read from a periodically regenerated mirror straight off the public ledger and registry, not asserted on Vealth's own authority — the response states exactly when it was generated. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
proposalIdNoOptional: one proposal number, e.g. '71'. Omit for the overview of everything open.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.4/5.0
Behavior5/5

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

Discloses beyond the read-only annotation: data comes from a periodically regenerated mirror of the public ledger and registry, is not asserted on Vealth's authority, and the response reports its generation time. This adds freshness and trust context that annotations don't convey.

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

Conciseness5/5

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

Three dense sentences, each with a distinct job: scope/output, usage modes, and source/authority/access. No filler or repetition of schema fields.

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

Completeness5/5

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

With an optional single parameter, 100% schema coverage, and an output schema present, the description covers both invocation modes, data provenance, freshness, and keyless access. Nothing needed for correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema already documents proposalId at 100% coverage; the description reinforces it and adds that passing a proposalId returns 'full deposit/voting/tally detail,' which goes beyond the schema's 'overview of everything open' phrasing. This enriches the meaning of the parameter without redundancy.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly identifies the domain (Regen Network governance) and output (bonded stake, validator count, proposals with phase and tally). The resource and scope are unambiguous, and the tool is distinguishable from Regen siblings by its governance-specific focus. However, the description lacks an explicit action verb like 'Returns' or 'Lists,' so it stops just short of a perfect score.

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

Usage Guidelines4/5

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

Provides explicit invocation guidance: omit proposalId for a governance overview, pass one for a specific proposal's detail. This tells the agent exactly how to request either mode. It doesn't explicitly contrast with sibling tools, but the governance scope plus mode instructions give clear context.

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

regen_provisioning_subscription_quoteFund work at a place you name: the plan, and why it is not live yetA
Read-onlyIdempotent
Inspect

The regenerative provisioning subscription, BUILT AND OFF. Someone picks an amount from $1 to $1,000 and a period (day or month) and names a place; this tool returns the plan: exactly which OPEN, unfunded, claimable packets at that place the money would back, in the board's own order, at the board's own prices, never over the amount, with the remainder carried, plus the place's Standing link and every reason it is not live. Call it with no arguments for the product and the ladder. NOTHING CHARGES: there is no payment path on any of these routes, no store and no scheduler, and the lane refuses on its own kill file and its own lane state. Free, keyless, read-only. This funds work at a place you name. It buys no token. It promises no return. Standing is earned by the work, never by the payment. Cancel any time; what was funded stays funded.

ParametersJSON Schema
NameRequiredDescriptionDefault
placeNoA place label string, or an object { lat, lng, radiusKm } naming a coordinate cluster.
amountNoWhole dollars, 1 to 1000. Omit for the product and the ladder only.
periodNo"day" or "month".
walletNoThe subscriber's OWN 0x address, used for receipts and for reading Standing. Never custody.
holdEcowealthOptInNoRecord that the subscriber wants to hold ECOWEALTH in their own wallet. A preference only: we never hold, price, or issue a token.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare readOnly, openWorld, idempotent, and non-destructive behavior. The description goes well beyond this by stating there is no payment path, no store, no scheduler, no custody, and that the lane refuses based on its own kill file and lane state, plus the cancellation behavior.

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

Conciseness5/5

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

Although the description is long, every sentence earns its place by adding a distinct behavioral or usage fact. The core function is front-loaded, and the additional assurances about no charge, no token, no return, and no custody are directly relevant to correct invocation and expectation-setting.

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

Completeness5/5

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

The description is complete given the rich schema, output schema, and annotations. It covers argument combinations, no-argument behavior, the absence of payment paths, Standing semantics, and cancellation outcomes, leaving an agent with everything needed to call the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds meaningful semantics beyond the schema: amount range and whole-dollar constraint, period choices, place-as-coordinate-cluster, wallet being the subscriber's own address used for receipts and Standing, and the opt-in being preference-only with no token custody.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: it returns a plan showing exactly which open, unfunded packets at a named place a subscription amount would back, in the board's order and at the board's prices. It also explicitly distinguishes this from a live charge or status tool by emphasizing that nothing charges and it is read-only.

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

Usage Guidelines4/5

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

The description gives clear context on when to call the tool and even notes the no-argument call for the product and ladder. It does not explicitly name sibling tools or state when not to use them, but the usage scope is well-defined and easy to apply.

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

regen_provisioning_subscription_statusA wallet's provisioning subscription: there is none, and whyA
Read-onlyIdempotent
Inspect

Given a wallet, returns its regenerative provisioning subscription state. There is no subscription store and nothing has ever been charged, so this answers "no subscription" honestly rather than inventing an empty record, and it names every reason the lane is not live. Standing belongs to a PLACE and is read free at GET /labor/standing?place=. Free, keyless, read-only. This funds work at a place you name. It buys no token. It promises no return. Standing is earned by the work, never by the payment. Cancel any time; what was funded stays funded.

ParametersJSON Schema
NameRequiredDescriptionDefault
walletYesThe wallet to look up (0x…). The read is public and proves nothing about who you are.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A3.8/5.0
Behavior5/5

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

Beyond the readOnly/idempotent annotations, it discloses the absence of a subscription store, explains why the answer is 'no subscription' rather than a fabricated empty record, and names the reasons the lane is not live. This is substantial added behavioral context that helps an agent trust and interpret the result.

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

Conciseness3/5

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

It is front-loaded with the core purpose, but the latter half contains expansive philosophical/economic phrasing ('It buys no token. It promises no return...') that is arguably more than a tool description needs. Acceptable but not tight.

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

Completeness4/5

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

Given a single well-documented parameter, rich annotations, and an output schema, the description supplies the important non-obvious context: the honest no-subscription answer, the place-owned nature of standing, and the absence of payment expectations. Nothing critical for invoking the tool appears missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already covers the only parameter (wallet, with format 0x... and public-read caveat), so the description carries no additional parameter detail. Baseline 3 applies due to high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the operation: given a wallet, return its regenerative provisioning subscription state, with the key twist that the state is honestly reported as absent ('no subscription'). It does not explicitly compare itself to sibling tools like regen_provisioning_subscription_quote or place_standing, so it stops short of 5 on the rubric's sibling-differentiation requirement.

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

Usage Guidelines3/5

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

It gives useful context around expectations (free, keyless, buys no token, promises no return) and points to GET /labor/standing?place= for place standing, but it never says concretely when to prefer this tool over its siblings or under what conditions to use an alternative. 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.

regen_token_volumeREGEN token trading volume, across every exchange it trades onA
Read-onlyIdempotent
Inspect

How much of the $REGEN token itself changes hands — NOT Regen ecocredit retirement volume, a completely different market (use regen_burn_tracker or the commons page for that). Returns live price, 24h volume, market cap, a 7-day trend read off real daily history, a per-exchange/DEX breakdown of where that volume actually happens, and the peak/most-recent complete month from a year of monthly history (the human page at /regen/volume.html has a full daily/monthly chart toggle). Sourced from CoinGecko's own aggregation. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds value by disclosing the data source (CoinGecko), the keyless/free nature, and the specific data points returned (live price, 24h volume, market cap, 7-day trend,-exchange breakdown, monthly history). No contradiction with annotations.

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

Conciseness5/5

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

The description is front-loaded with the core purpose and disambiguation, followed by a compact list of return values and source. Every sentence earns its place—no fluff or redundant filler. The structure is efficient and scannable.

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

Completeness5/5

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

Given a parameterless tool with an output schema and annotations covering safety, the description is fully complete: it states the data source, the exclusion of ecocredit volume, the exact data returned, and points to a human-readable page for deeper history. Nothing critical is missing for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema is trivially covered and the description correctly skips parameter details. Baseline 4 applies for 0-param tools; the description focuses on what the tool does rather than input, which is appropriate given the parameterless context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('changes hands') on a specific resource (the $REGEN token), making the purpose unambiguous. It explicitly contrasts with Regen ecocredit retirement volume and names the sibling tools (regen_burn_tracker) to avoid confusion.

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

Usage Guidelines5/5

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

The explicitly tells the agent when NOT to use it ('NOT Regen ecocredit retirement volume') and directs it to the correct alternative tools ('use regen_b_tracker or the commons page for that'). This gives clear selection criteria relative to siblings.

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

retire_and_certifyRetire carbon on-chain and get the certificateA
Read-onlyIdempotent
Inspect

How to retire a given tCO2e amount for real, on-chain, via the Klima rail — paid keyless from the caller's own wallet, returning a confirmed retire transaction as the certificate. Returns instructions and the exact door; this server never performs the retirement and never holds a wallet. The retirement is real; any footprint number behind it stays orientation, never a precise carbon claim.

ParametersJSON Schema
NameRequiredDescriptionDefault
amount_tco2eYesTonnes of CO2e to retire, e.g. 0.005.
beneficiary_nameNoOptional name to record on the retirement.
retirement_messageNoOptional message to record on the retirement.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description aligns by stating 'this server never performs the retirement and never holds a wallet.' It adds valuable context about keyless payment from the caller's wallet and the orientation of footprint numbers, going beyond the annotation hints to clarify behavioral boundaries.

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

Conciseness3/5

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

The description is somewhat verbose, with extra philosophical commentary about the validity of carbon claims. While the main purpose is front-loaded, the sentence about footprint orientation feels tangential and could be trimmed. It is not as tight as it could be, but it is not excessively long.

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

Completeness4/5

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

The tool is moderately complex with an output schema and multiple parameters. The description explains the operational model (keyless, caller wallet, certificate), distinguishes it from actual retirement execution, and provides enough context for the agent to understand the tool's role. The output schema covers return details, so no major gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides 100% coverage for all three parameters, so the baseline is 3. The description mentions amount_tco2e only indirectly ('a given tCO2e amount') and does not add syntax or usage details beyond the schema. It does not compensate for any gaps, but since coverage is complete, no further compensation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('retire a given tCO2e amount') and clarifies it returns a confirmed retire transaction as the certificate, distinguishing it from other tools that perform actions directly. It explicitly notes the server does not perform the retirement itself, which differentiates it from submit-class siblings.

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

Usage Guidelines3/5

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

The description explains what the tool does and implies it is used when the caller wants to retire carbon and receive a certificate, but it does not explicitly state when not to use it or name alternative tools. The phrase 'this server never performs the retirement' gives a hint about its non-execution nature, but there is no explicit comparison to siblings like submit_claim or prepare_claim.

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

start_hereStart here — how an agent with no wallet and no money starts doing real workA
Read-onlyIdempotent
Inspect

The door for an agent arriving with nothing. Leads with the front-door set: the few posted packets of physical work an ordinary person can take today (no licence, no special equipment, no supervisor), checked against the live board. Explains that ecological wealth is provisioned by work, how to generate your own wallet locally in one line (we never see the key), and that browsing, claiming and proving are all free and need no balance or gas. Read-only, free, keyless — it performs nothing and asks for nothing.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations (readOnly, openWorld, idempotent), the description adds concrete behavioral details: it is 'read-only, free, keyless', 'performs nothing and asks for nothing', requires no balance or gas, and never sees the key during local wallet generation. These details meaningfully inform an agent's expectations about side effects and prerequisites.

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

Conciseness4/5

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

The description is front-loaded with the core purpose and each sentence adds useful context. It is slightly verbose with conceptual phrases like 'ecological wealth is provisioned by work', but overall it is efficiently structured for an onboarding tool.

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

Completeness5/5

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

Given the tool has no parameters, an output schema, and rich annotations, the description covers everything needed: what the tool surfaces, what it explains, that it requires no wallet/balance/gas, and that it has no side effects. Nothing essential is missing for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With zero parameters and 100% schema coverage, the baseline is high, but the description still reinforces the no-input nature by stating it is keyless and 'asks for nothing'. This is valuable for an agent deciding whether any setup or arguments are needed before invoking the tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific, vivid framing—'the door for an agent arriving with nothing'—and clearly states the resource: the front-door set of physical work packets plus explanation of wallet generation. It distinguishes itself from the many operational siblings by explicitly saying it 'performs nothing and asks for nothing', making it unmistakably an onboarding/overview tool rather than a work or transaction tool.

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

Usage Guidelines4/5

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

The description gives clear context: use this when you have no wallet and no money, and it talks about ordinary work with no licence, equipment, or supervisor. It does not explicitly name alternatives or say when not to use it, but the title 'start here' and 'front-door' phrasing make the intended entry-point usage evident.

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

submit_accept_hoursSubmit the signed acceptance (step 2 of 2)AInspect

Complete the acceptance: pass the BODY_JSON from prepare_accept_hours UNCHANGED and the signature your wallet produced over MESSAGE_TO_SIGN. Relays to the same public door any HTTP client uses (POST /labor/work/:workId/accept-hours); this server holds no keys and no funds. FREE and KEYLESS with a valid signature, and the signature is YOUR OWN, from the wallet the packet named. NOBODY IS PAID by this call: no wage is released, no settlement is recorded and nothing is minted. Returns the hours the worker claimed, the hours you accepted, and who the record now says accepted them. THE HOUSE CANNOT ACCEPT ITS OWN HOURS, so the house cannot make this call for you.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id, the same one prepare_accept_hours was given.
bodyJsonYesThe exact BODY_JSON string from prepare_accept_hours, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations (readOnlyHint=false, destructiveHint=false) by disclosing the auth model ('FREE and KEYLESS with a valid signature'), the server architecture ('this server holds no keys and no funds'), the precise non-effects ('no wage is released, no settlement is recorded and nothing is minted'), and the return-value shape. 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.

Conciseness4/5

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

Front-loaded with the core action, and each sentence carries distinct information (transport, auth, effects, returns, exclusion). Slightly over-styled with pervasive ALL-CAPS emphasis and minor redundancy (wallet provenance stated twice), but dense, well-ordered, and free of filler.

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

Completeness5/5

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

For a 3-param tool with full schema coverage, an output schema, and annotations, the description is remarkably complete: it covers the prerequisite step, transport, auth model, non-effects, access restriction, and returns. Only duplicate-submission behavior is left unstated, which idempotentHint=false already signals.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with already-precise parameter descriptions, so the baseline is 3. The description adds provenance constraints beyond the schema: the signature must be 'YOUR OWN, from the wallet the packet named' and bodyJson must be passed 'UNCHANGED' — both semantically meaningful for correct invocation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action ('Complete the acceptance') against a named resource (POST /labor/work/:workId/accept-hours) and positions itself as step 2 of 2 following prepare_accept_hours. The effects disclosure ('NOBODY IS PAID') and the house-exclusion rule clearly differentiate it from the many sibling submit_* tools.

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

Usage Guidelines4/5

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

Explicitly frames the call as the second step of a two-step flow, requiring the BODY_JSON and signature produced by prepare_accept_hours — a clear when-to-use. Also gives an explicit exclusion: 'THE HOUSE CANNOT ACCEPT ITS OWN HOURS, so the house cannot make this call for you.' It doesn't enumerate alternatives beyond the prepare step, but for a two-step flow that is sufficient.

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

submit_backingSubmit the signed pledge (step 2 of 2)AInspect

Complete the pledge: pass workId, the BODY_JSON from prepare_backing UNCHANGED, and the signature your wallet produced over MESSAGE_TO_SIGN. This server relays the signed request to the same public pledge gate any HTTP client uses — it holds no keys and no funds, and without your signature it can do nothing. Free, always: no fee is ever charged for a validly signed pledge. Returns whether your wallet's balance verified against the pledged amount, and the packet's current backer ledger.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
bodyJsonYesThe exact BODY_JSON string from prepare_backing, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.6/5.0
Behavior5/5

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

The description goes beyond the readOnly=false/openWorld/idempotent annotations by explaining the server relays the signed request, holds no keys or funds, cannot act without a signature, never charges a fee, and reports balance verification. This is substantial behavioral transparency for a submission tool.

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

Conciseness4/5

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

The description is front-loaded with the actionable instruction and each subsequent sentence carries relevant safety, fee, and return context. It is slightly wordier than strictly necessary, but nothing is filler.

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

Completeness5/5

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

Every input is given a provenance, the action's trust model is explained, fee behavior is disclosed, and the return outcome is summarized. The output schema and annotations fill in the rest, so no significant decision-relevant information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Because the schema already covers all three parameters, the description's extra value is tying them into the prepare_backing workflow and emphasizing that bodyJson must be passed unchanged and signature is produced by the wallet over MESSAGE_TO_SIGN. That is useful but not a large leap beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Complete the pledge'), the resource, and the exact inputs, and the title marks it as step 2 of 2. This unambiguously distinguishes submit_backing from prepare_backing and from the other submit_* siblings.

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

Usage Guidelines4/5

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

It clearly establishes the prerequisite workflow by requiring the unchanged BODY_JSON from prepare_backing and the signature over MESSAGE_TO_SIGN. It doesn't explicitly say when to avoid this tool or compare it to other pledge-related tools, but the step 2-of-2 framing provides enough context.

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

submit_backing_withdrawSubmit the signed pledge withdrawal (step 2 of 2)AInspect

Complete the withdrawal: pass workId, the BODY_JSON from prepare_backing_withdraw UNCHANGED, and the signature over MESSAGE_TO_SIGN. Free, always, and relays to the same public gate any HTTP client uses.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
bodyJsonYesThe exact BODY_JSON string from prepare_backing_withdraw, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations provide the mutation/open-world profile, and the description adds useful access-level context: free, always available, and relayed through the same public gate as any HTTP client. This goes beyond the schema and annotations without contradicting them.

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

Conciseness5/5

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

Two tight sentences front-load the core instruction and required data flow, with no filler. Every phrase contributes either to the call sequence or to behavioral expectations.

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

Completeness5/5

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

With an output schema present, full parameter documentation, and annotations covering mutation/openness/idempotency, the description adds the remaining operational context (free, public, sequential dependency on prepare_backing_withdraw). Nothing needed to invoke the tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and already documents each parameter accurately. The description reinforces that bodyJson must be unchanged and that signature signs MESSAGE_TO_SIGN, but it adds little beyond the schema's existing clarity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Complete the withdrawal') and identifies it as step 2 of 2, referencing prepare_backing_withdraw directly. This distinguishes it from sibling submit_* tools by pinning the exact workflow stage and resource.

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

Usage Guidelines4/5

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

The description conveys when to use the tool: after prepare_backing_withdraw, since the bodyJson must come from that call unchanged. It does not explicitly list exclusions or name alternative tools, but the sequencing is unmistakable and sufficient for correct selection.

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

submit_bidSubmit the signed offer (step 2 of 2)AInspect

Complete the bid: pass workId, the BODY_JSON from prepare_bid UNCHANGED, and the signature your wallet produced over MESSAGE_TO_SIGN. Relays to the same public bid gate any HTTP client uses; this server holds no keys and no funds. Free with a valid signature. Returns your recorded offer; the creator accepts or declines it later — work_status and my_work show what happened.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
bodyJsonYesThe exact BODY_JSON string from prepare_bid, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already mark this as a mutating, non-idempotent operation, and the description adds meaningful context: it relays to the public bid gate, the server holds no keys/funds, it is free with a valid signature, and the outcome is later visible through work_status/my_work. This goes well beyond what the annotations state.

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

Conciseness5/5

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

Four sentences are compact and each earns its place: how to complete the call, operational context, cost, and how to observe the result. The key instructions are front-loaded before the contextual details.

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

Completeness5/5

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

With a present output schema and detailed parameter descriptions, the description provides everything else an agent needs: the prerequisite prepare_bid step, binding requirements for bodyJson/signature, the non-custodial nature, and pointers to work_status/my_work for the eventual outcome.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents all three parameters at 100% coverage, so the description need not compensate. It reinforces the critical 'BODY_JSON unchanged' and 'personal_sign over MESSAGE_TO_SIGN' constraints but adds little semantic value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Complete the bid') and resource, and clearly positions it as the signed-offer submission step after prepare_bid. The title 'Submit the signed offer (step 2 of 2)' plus mention of returning the recorded offer distinguish it from the many sibling submit_* tools.

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

Usage Guidelines4/5

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

It explicitly names prepare_bid as the source of bodyJson and MESSAGE_TO_SIGN, giving the required sequence without relying on inference. It does not explicitly say when not to use it or name alternatives, but the step-2 framing and references to work_status/my_work provide clear context.

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

submit_claimSubmit the signed claim (step 2 of 2)AInspect

Complete the claim: pass the BODY_JSON string from prepare_claim UNCHANGED plus the signature your wallet produced over MESSAGE_TO_SIGN. This server relays the signed request to the same public claim gate any HTTP client uses — it holds no keys and no funds, and without your signature it can do nothing. Success returns your claimId; keep it, proof submission needs it.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyJsonYesThe exact BODY_JSON string from prepare_claim, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, idempotentHint=false, so the agent knows this is a mutating, non-idempotent operation. The description adds valuable behavioral context: the server relays the signed request to a public claim gate, holds no keys or funds, and requires the signature to act. This goes beyond annotations and clarifies the security model and statelessness. It doesn't 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.

Conciseness5/5

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

Two sentences with zero fluff. The critical instruction (pass BODY_JSON unchanged plus signature) is front-loaded immediately, followed by concise context about the server's role and what to do with the return value. Every sentence serves a purpose.

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

Completeness4/5

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

Given an output schema exists (so return values are covered), the description provides all needed usage context: the prerequisite (prepare_claim output), the signature requirement, the security model, and the instruction to keep claimId for proof submission. It's comprehensive for a two-parameter submit action, though it could optionally mention any error conditions, but that's beyond the typical burden.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds key semantic value by stressing 'UNCHANGED' for bodyJson and specifying the signature as the 0x… personal_sign output over MESSAGE_TO_SIGN. This explains the relationship between the parameters and the prepare_claim step, which is not in the schema. It reinforces exact usage and the provenance of the signature.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Complete the claim') and identifies the exact resource and action, distinguishing it clearly as the submission step following prepare_claim. It explicitly names the two required inputs and the context of being step 2 of 2. This makes it unmistakably different from sibling tools like prepare_claim or other submit_* tools.

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

Usage Guidelines4/5

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

The description gives explicit preconditions: pass the BODY_JSON string from prepare_claim unchanged and the signature from the wallet. It also implies the timing (after prepare_claim) and explains that without the signature nothing happens. It doesn't explicitly say 'use after prepare_claim, not before', but the sequencing is evident and the critical requirement of passing the unchanged body is highlighted.

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

submit_credit_offerSubmit the signed credit offer (step 2 of 2)AInspect

Complete the offer: pass workId, the BODY_JSON from prepare_credit_offer UNCHANGED, and the signature your wallet produced over MESSAGE_TO_SIGN. Relays to the same public door any HTTP client uses (POST /labor/work/:workId/back/credit); this server holds no keys, no funds and no credits. Free with a valid signature. Returns the recorded offer, including the regen1 account the board derived for you.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
bodyJsonYesThe exact BODY_JSON string from prepare_credit_offer, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.2/5.0
Behavior4/5

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

The description discloses meaningful behavior beyond annotations: it relays the request to a public HTTP endpoint, states the server holds no keys/funds/credits, notes it is free with a valid signature, and says it returns the recorded offer with the derived regen1 account. No contradiction with the annotations exists.

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

Conciseness3/5

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

The description is reasonably concise but includes somewhat vague filler such as 'Relays to the same public door any HTTP client uses' and repeated assurances about holding no keys/funds/credits. These do not strongly help an agent decide to call the tool and could be simplified.

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

Completeness4/5

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

Given the tool's complexity and the existence of an output schema, the description provides enough context for invocation: required inputs, their sources, the endpoint, cost, and return information. It could have explicitly stated 'call prepare_credit_offer first,' but the step-2 framing makes that clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the descriptions add important constraints: bodyJson must be the exact unchanged string from prepare_credit_offer, and signature must be the 0x personal_sign output over MESSAGE_TO_SIGN. workId is less detailed ('packet id') but sufficient in context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The title and description clearly state the action: submitting the signed credit offer, explicitly labeled as step 2 of 2. It identifies the resource (credit offer) and the verb (submit/complete), and is distinct from sibling tools like prepare_credit_offer and submit_credit_settlement.

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

Usage Guidelines4/5

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

The description clearly ties usage to prepare_credit_offer by requiring its BODY_JSON and MESSAGE_TO_SIGN, and the title marks it as step 2. It does not explicitly list when not to use it, but the sequencing and required inputs provide strong practical guidance.

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

submit_credit_settlementSubmit the signed credit settlement (step 2 of 2)AInspect

Complete the record: pass workId, the BODY_JSON from prepare_credit_settlement UNCHANGED, and the signature your wallet produced over MESSAGE_TO_SIGN. Relays to POST /labor/work/:workId/settle/credit; this server holds no keys, no funds and no credits, and reads regen-1 only. Free with a valid signature. Returns the settlement with settledIn naming the ledger, the batch, the tradable amount and the paying account.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
bodyJsonYesThe exact BODY_JSON string from prepare_credit_settlement, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations indicate readOnly=false, destructive=false, etc., and the description adds useful context such as 'this server holds no keys, no funds and no credits' and 'free with a valid signature,' which clarifies side effects and requirements. No contradictions with annotations, so a strong score.

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

Conciseness4/5

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

The description is reasonably concise and well-structured, front-loading the action and then providing necessary details about the endpoint and return value. No redundant fluff, though slightly longer than strictly necessary.

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

Completeness4/5

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

The description provides enough context about the tool's role in the settlement flow, including the return value and server constraints. An explicit output schema is not provided, but the return description is sufficient, and sibling tools give broader context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already covers all parameters with descriptions (100% coverage), but the description adds significant meaning by specifying that bodyJson must come unchanged from prepare_credit_settlement and that signature is over MESSAGE_TO_SIGN, enhancing the schema info.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool completes a credit settlement record by passing workId, bodyJson, and signature, and relays to a specific POST endpoint. It also explicitly distinguishes from the prepare step and other submit tools, making it unambiguous what this tool does.

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

Usage Guidelines4/5

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

The description implicitly but clearly indicates that this is the second step after prepare_credit_settlement by referencing 'BODY_JSON from prepare_credit_settlement UNCHANGED' and the signature over MESSAGE_TO_SIGN. It also notes the server has no keys/funds/credits, but does not explicitly list alternatives or when-not-to-use scenarios, so it falls slightly short of a perfect score.

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

submit_evidence_surfaceSubmit the signed reservation (step 2 of 2)AInspect

Complete the reservation: pass the BODY_JSON from prepare_evidence_surface UNCHANGED and the signature your wallet produced over MESSAGE_TO_SIGN. Free, always. Returns the targetUrl to pass to prepare_claim. Re-submitting for the same packet returns the surface you already hold.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyJsonYesThe exact BODY_JSON string from prepare_evidence_surface, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A3.8/5.0
Behavior1/5

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

The description states that re-submitting for the same packet returns the surface already held, which is a claim of idempotent behavior. However, idempotentHint is false, creating an annotation contradiction. The added 'Free, always' and targetUrl handoff are useful, but the contradiction is serious.

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

Conciseness5/5

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

Four short sentences with the action and prerequisites front-loaded. Every sentence adds behavioral or pipeline information; 'Free, always' is brief and relevant. No filler or redundancy.

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

Completeness4/5

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

For a 2-parameter tool with an output schema, the description covers prerequisites, signature expectations, resubmission behavior, and downstream routing via targetUrl. It omits explicit failure conditions, but those are not essential for this narrowly scoped step; the idempotency conflict is penalized under behavioral transparency rather than here.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds crucial provenance semantics: bodyJson must be passed UNCHANGED from prepare_evidence_surface, and signature is the wallet's personal_sign output over MESSAGE_TO_SIGN. This meaningfully extends what the schema fields alone communicate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Complete the reservation' and the title says 'step 2 of 2', tying it unambiguously to prepare_evidence_surface. It clearly states the verb, resource, and pipeline phase, and distinguishes it from sibling submit_evidence_write by referencing its specific prepare counterpart.

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

Usage Guidelines4/5

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

It gives clear usage context: pass the exact BODY_JSON from prepare_evidence_surface and the signed MESSAGE_TO_SIGN, then use the returned targetUrl with prepare_claim. It also covers resubmission behavior. It does not explicitly name sibling alternatives or state when not to use it, so it stops 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.

submit_evidence_writeSubmit the signed publish (step 2 of 2)AInspect

Complete the publish: pass the BODY_JSON from prepare_evidence_write UNCHANGED and the signature over MESSAGE_TO_SIGN. Free when signed. On success the files are live at your targetUrl and the next step is prepare_proof — the verifier probes them passively like any public machine surface.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyJsonYesThe exact BODY_JSON string from prepare_evidence_write, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.3/5.0
Behavior4/5

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

The description goes beyond the annotations by disclosing that successful submission makes files live at the target URL and that the verifier probes them passively. It also notes the operation is free when signed. This adds real postcondition context without contradicting readOnlyHint=false or openWorldHint=true.

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

Conciseness5/5

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

The description is compact and well-structured: action, required input handling, cost condition, and success outcome in three sentences. No filler or redundant restating beyond the necessary emphasis on passing the body unchanged.

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

Completeness5/5

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

Given only two fully documented parameters, an output schema, and clear annotations, the description covers the prerequisite, the exact inputs, the postcondition, and the next workflow step. An agent has enough context to invoke this tool at the right time.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the schema already documents bodyJson as the exact unchanged BODY_JSON string and signature as the personal_sign output over MESSAGE_TO_SIGN. The description repeats this guidance rather than adding new parameter-level meaning, so it stays at the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses a specific verb ('Complete the publish'), identifies the exact inputs (BODY_JSON from prepare_evidence_write and signature), and states the success outcome. The title 'step 2 of 2' and reference to prepare_evidence_write clearly distinguish it from the preparation step and from later steps like prepare_proof.

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

Usage Guidelines4/5

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

The workflow is explicit: take the output of prepare_evidence_write, submit with a signature, then continue to prepare_proof. This gives clear temporal context. However, it does not mention alternatives or when not to use it, such as distinguishing from submit_evidence_surface.

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

submit_gmx_orderSubmit a signed GMX order transactionA
Destructive
Inspect

Relay a signed Ethereum transaction to the Arbitrum network. The transaction must have been pre-signed by the caller using prepare_gmx_order output. This endpoint does NOT sign — it only broadcasts an already-signed transaction.

ParametersJSON Schema
NameRequiredDescriptionDefault
signedRawTransactionYes0x-prefixed raw signed transaction hex (e.g., from ethers.Wallet.signTransaction() or ethers.Signer.sendTransaction().wait()).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already convey mutation, non-idempotency, and destructive potential, so the description only needs to add behavioral nuance. It adds a key fact beyond annotations: the tool does not sign locally and only broadcasts a pre-signed payload, meaning signing responsibility rests entirely with the caller. It also names the target network (Arbitrum), consistent with the openWorldHint; no contradiction exists.

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

Conciseness5/5

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

Three short sentences, each earning its place: the core action is stated first, the prerequisite second, and the negative clarification last. The 'does NOT sign' sentence is not redundant because it prevents the common mistake of expecting the tool to handle signing.

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

Completeness5/5

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

For a one-parameter tool with annotations and an output schema, the description is complete: it explains what the tool does, the required prior step, the target network, and the non-signing boundary. There is no missing information an agent needs to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents signedRawTransaction thoroughly with hex format and examples, so the baseline is 3. The description adds a critical semantic constraint not present in the schema: the transaction must come from prepare_gmx_order output and must have been signed by the caller. This meaningfully clarifies what value to pass.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verbs 'Relay/broadcast' and a specific resource: a signed Ethereum transaction to the Arbitrum network. It clearly distinguishes the tool from signing-related siblings by stating it only broadcasts an already-signed transaction. The prerequisite link to prepare_gmx_order output removes ambiguity about what this tool is for.

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

Usage Guidelines5/5

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

The description explicitly states the transaction must have been pre-signed by the caller using prepare_gmx_order output, creating a clear before-condition. It also tells agents when not to use this tool: 'This endpoint does NOT sign.' This leaves little to inference about the boundary between submit_gmx_order and prepare_gmx_order.

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

submit_physical_proofSubmit the signed physical proof (step 2 of 2)AInspect

Relay the signed physical proof to the same public door any HTTP client uses (POST /labor/work/:workId/physical-proof): pass workId, the BODY_JSON from prepare_physical_proof UNCHANGED, and the signature over MESSAGE_TO_SIGN. FREE with a valid signature from the claiming wallet. It records the photo hashes and the on-site GPS against the packet's 350 m place; a far GPS is flagged for the human, never auto-rejected. NOBODY IS PAID by this call and nothing is accepted: the packet's creator signs the verdict, never the worker.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id, the same one prepare_physical_proof was given.
bodyJsonYesThe exact BODY_JSON string from prepare_physical_proof, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false), the description adds critical behavioral details: it records photo hashes and GPS, flags far GPS for human review without auto-rejection, and clarifies that nobody is paid and nothing is accepted. This fully explains the side effects and non-effects, which is especially important given the sparse annotations.

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

Conciseness5/5

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

The description is concise and efficiently structured. It front-loads the core action and endpoint, then covers the required inputs, the free nature, the GPS behavior, and the payment/acceptance caveats—all in a few sentences with no filler. Every sentence adds critical information.

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

Completeness5/5

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

Given the tool's complexity (a two-step submission with signature and GPS checks), the description is complete. It explains the endpoint, the required inputs, the free nature, the GPS flagging behavior, and the payment/acceptance caveats. An output schema exists, so return values need not be described. An agent can confidently invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, meaning each parameter has a descriptive string. The description echoes the schema ('UNCHANGED', 'over MESSAGE_TO_SIGN') without adding substantial new meaning. It reinforces the need to pass bodyJson unchanged, but that is already in the schema. The description adds no new parameter-specific semantics beyond the schema, 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.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action: relaying the signed physical proof via a specific HTTP endpoint (POST /labor/work/:workId/physical-proof). It distinguishes from siblings by referencing prepare_physical_proof (step 2 of 2) and explicitly stating that nothing is paid or accepted, which differentiates it from other submit_* tools that handle payments or acceptances.

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

Usage Guidelines4/5

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

The description provides strong usage context: it is step 2 of a two-step process, and it explicitly says to pass the BODY_JSON from prepare_physical_proof unchanged. It also clarifies that the call is free and does not pay or accept the work. However, it does not explicitly name alternative tools or state when not to use it, only implying that it follows prepare_physical_proof.

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

submit_placeSubmit the signed place intake (step 2 of 2)AInspect

Complete the handover: pass the BODY_JSON from prepare_place UNCHANGED and the signature your wallet produced over MESSAGE_TO_SIGN. Relays to the same public door any HTTP client uses (POST /labor/place/intake); this server holds no keys and no funds. Free with a valid signature. Returns the recorded intake with its id and the Regen account the board derived for you. It is recorded, not accepted: watch it with place_status.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyJsonYesThe exact BODY_JSON string from prepare_place, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations, it discloses the server holds no keys and no funds, the call is free, and the response returns the recorded intake id and derived Regen account. The caveat 'It is recorded, not accepted' clarifies the postcondition and distinguishes acceptance from recording, which annotations don't convey.

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

Conciseness5/5

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

Four sentences front-load the essential instruction (pass unchanged body and signature) before giving endpoint/trust, return value, and the follow-up caveat. Every sentence contributes either an action, a prerequisite, or a behavioral postcondition.

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

Completeness5/5

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

With only two fully documented parameters, an output schema, and safety annotations, the description covers the full sequence: source (prepare_place), signing prerequisite, HTTP endpoint, server trust, returned data, and post-submission monitoring via place_status. No critical gap for invoking the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and both parameter descriptions already specify 'exact BODY_JSON from prepare_place, unchanged' and the 0x personal_sign output over MESSAGE_TO_SIGN. The prose adds workflow framing but no substantive parameter details beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource: complete the signed place intake by passing BODY_JSON and signature to POST /labor/place/intake. It explicitly positions itself as 'step 2 of 2' relative to prepare_place and is distinguished from the sibling place_status by saying the intake is recorded, not accepted.

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

Usage Guidelines4/5

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

It says to use this only after prepare_place has produced BODY_JSON and MESSAGE_TO_SIGN, and after the wallet signs MESSAGE_TO_SIGN. It directs the agent to monitor the result with place_status, implicitly separating submission from acceptance. It does not, however, spell out an explicit 'do not use before signing' exclusion.

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

submit_post_workSubmit the signed posting (step 2 of 2)AInspect

Complete the posting: pass BODY_JSON from prepare_post_work UNCHANGED, the creator wallet's signature over MESSAGE_TO_SIGN, and (unless you hold an EWP key) xPayment — the standard X-PAYMENT header value your own wallet produced for the $0.05 write fee. If you send no payment, the answer is the live 402 challenge with exact price and pay-to; pay it from your own wallet and retry with a fresh prepare. This server relays to the same public gate any HTTP client uses — it holds no keys and no funds. Success returns your packet's id and public page; claiming it (even yourself) is free.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyJsonYesThe exact BODY_JSON string from prepare_post_work, unchanged.
xPaymentNoOptional: the X-PAYMENT header value (EIP-3009 USDC on Base, from YOUR wallet) settling the $0.05 write fee. Omit if you hold an EWP key.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN, from the creator wallet.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint false), the description discloses important behavioral traits: that omitting payment yields a live 402 challenge with exact price/pay-to, that the server relays to the same public gate as any HTTP client and holds no keys or funds, and that success returns the packet's id and public page. It even notes claiming is free. This goes well beyond what annotations convey.

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

Conciseness4/5

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

The description is dense but every sentence serves a purpose: it states the main action, the payment requirement, the fallback behavior, the server's trust properties, and the result. It front-loads the core instructions and keeps the payment/caveat explicit. No filler or repetition.

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

Completeness5/5

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

For a two-step write operation, this description is complete. It covers all inputs, the payment condition, the failure/retry path, server behavior, and the success response. The output schema already exists, so not describing return structures further is acceptable. An agent has everything needed to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although the schema already describes each parameter (100% coverage), the description adds crucial context: bodyJson must be passed EXACTLY as from prepare_post_work, signature is the personal_sign output over MESSAGE_TO_SIGN, and xPayment is the EIP-3009 header value. It clarifies the provenance and required format beyond the generic schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Complete the posting' and details the exact inputs (BODY_JSON, signature, payment), making the tool's function unmistakable. It also ties directly to its sibling prepare_post_work, explicitly identifying this as step 2 of 2, so an agent can differentiate at a glance.

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

Usage Guidelines4/5

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

The description clearly implies the prerequisite (must have called prepare_post_work to get BODY_JSON and MESSAGE_TO_SIGN) and recounts the conditional payment requirement with the 402 retry path. It does not explicitly name alternative tools or state when NOT to use this tool, but the sequencing and the 402 fallback give strong usage context.

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

submit_proofSubmit the signed proof (step 2 of 2)AInspect

Relay the signed proof to the public completion gate: pass workId, the BODY_JSON from prepare_proof UNCHANGED, and the signature over MESSAGE_TO_SIGN. Approval follows (the creator, or self-verification where the packet supports it); on a funded packet, approval releases the wage into settlement; on an unfunded packet, approval RECORDS earned credit — never a settlement by itself. work_status shows where it stands.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
bodyJsonYesThe exact BODY_JSON string from prepare_proof, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior5/5

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

The description adds meaningful behavioral context beyond the annotations: approval can come from the creator or self-verification, funded packets release wages into settlement, unfunded packets only record earned credit, and work_status reflects the current state. This is non-obvious side-effect information that the annotations do not carry, and it does not contradict readOnlyHint=false or 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.

Conciseness5/5

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

Three sentences carry the full message with no filler. The critical invocation directive ('pass workId, the BODY_JSON from prepare_proof UNCHANGED, and the signature') is front-loaded, and the funded/unfunded nuance is compressed into a clear contrast.

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

Completeness5/5

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

The description covers the invocation contract, the approval mechanism, settlement vs credit outcomes, and points to work_status for state tracking. With an output schema present, return values do not need to be described, and the prerequisite relationship to prepare_proof is implied by both the title and the bodyJson requirement.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description reiterates that bodyJson must be the unchanged BODY_JSON from prepare_proof and that signature is the signature over MESSAGE_TO_SIGN, but these details are already present in the schema property descriptions, so the description adds little new parameter-level meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific action ('Relay the signed proof') and a clear resource ('public completion gate'), and the title marks it as 'step 2 of 2'. It distinguishes itself from prepare_proof by name and by the requirement to pass the unchanged BODY_JSON from that previous step.

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

Usage Guidelines4/5

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

The step-2-of-2 framing and the reference to prepare_proof make the intended usage context clear, and the funded vs unfunded packet outcomes provide practical guidance about what to expect. However, it does not explicitly name alternative tools or state when not to use it, so it stops short of a full when/when-not statement.

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

submit_token_offerSubmit the signed token offer (step 2 of 2)AInspect

Complete the offer: pass workId, the BODY_JSON from prepare_token_offer UNCHANGED, and the signature your wallet produced over MESSAGE_TO_SIGN. Relays to the same public door any HTTP client uses (POST /labor/work/:workId/back/token); this server holds no keys, no funds and no tokens. Free with a valid signature. Returns the recorded offer and the packet's token terms.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
bodyJsonYesThe exact BODY_JSON string from prepare_token_offer, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover readOnly=false, non-idempotent, and non-destructive. The description adds non-obvious behavioral context: 'this server holds no keys, no funds and no tokens', 'Free with a valid signature', and that it returns the recorded offer and token terms. This goes beyond 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.

Conciseness5/5

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

Three focused sentences: the first gives the exact action and inputs, the second explains the relay endpoint and custody model, and the third states cost and return value. No filler or repetition of schema fields.

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

Completeness5/5

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

Given an output schema exists and all parameters are documented, the description supplies all necessary calling context: prerequisite step, exact parameter sourcing, endpoint, cost, custody implications, and return summary. An agent has enough to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents all three parameters at 100% coverage. The description adds crucial semantic guidance by emphasizing that bodyJson must be passed UNCHANGED from prepare_token_offer and by specifying that signature is the 0x… personal_sign output over MESSAGE_TO_SIGN, which adds value beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb and resource: 'Complete the offer' by passing workId, bodyJson, and signature. It identifies this as 'step 2 of 2' and references the prerequisite prepare_token_offer, distinguishing it from sibling submit_* tools.

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

Usage Guidelines4/5

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

The description gives clear usage context: use after prepare_token_offer, passing its BODY_JSON unchanged and the wallet signature over MESSAGE_TO_SIGN. It does not explicitly state when not to use it relative to other submit_* siblings, but the step-2 framing makes the workflow position obvious.

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

submit_token_settlementSubmit the signed token settlement (step 2 of 2)AInspect

Complete the record: pass workId, the BODY_JSON from prepare_token_settlement UNCHANGED, and the signature your wallet produced over MESSAGE_TO_SIGN. Relays to POST /labor/work/:workId/settle/token; this server holds no keys, no funds and no tokens, and reads the chain only. Free with a valid signature. Returns the settlement with settledIn naming the chain, token, atomic amount and payer.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
bodyJsonYesThe exact BODY_JSON string from prepare_token_settlement, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior5/5

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

Annotations declare this is a non-read, non-idempotent, non-destructive operation, and the description adds meaningful context beyond that: the server is non-custodial ('holds no keys, no funds and no tokens'), the action is free with a valid signature, and it describes the response's key fields (settledIn, chain, token, atomic amount, payer).

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

Conciseness5/5

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

Three sentences with no wasted words. The first sentence front-loads the exact required inputs and their provenance, the second gives endpoint and trust context, and the third covers cost and return value. Every sentence earns its place.

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

Completeness5/5

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

The description is complete for a submission tool: it explains the prerequisite, the required inputs, the endpoint, the cost model, the server's non-custodial nature, and the response content. With an output schema present and all parameters documented, nothing essential is missing for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters adequately. The description reinforces the critical requirement that bodyJson must be passed UNCHANGED and that signature comes from the wallet over MESSAGE_TO_SIGN, but adds little beyond what the schema properties already state.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific action ('Complete the record'), names the resource (token settlement), and identifies the exact endpoint POST /labor/work/:workId/settle/token. It clearly differentiates from prepare_token_settlement by being 'step 2 of 2' and by requiring the previously prepared body unchanged.

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

Usage Guidelines4/5

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

The description gives clear workflow context: it is the follow-up to prepare_token_settlement, requiring the BODY_JSON produced there and a wallet signature over MESSAGE_TO_SIGN. It does not explicitly state when not to use it or name alternatives, but the step pairing makes the usage context obvious.

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

submit_voteSubmit the signed vote (step 2 of 2)AInspect

Complete the vote: pass workId, the BODY_JSON from prepare_vote UNCHANGED, and the signature your wallet produced over MESSAGE_TO_SIGN. This server relays the signed request to the same public vote gate any HTTP client uses — it holds no keys and no funds, and without your signature it can do nothing. Free, always: no fee is ever charged for a validly signed vote. Returns the live tally for this packet.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
bodyJsonYesThe exact BODY_JSON string from prepare_vote, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.3/5.0
Behavior5/5

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

The description goes well beyond the annotations by disclosing that the server holds no keys or funds, relays to the same public vote gate, requires a signature to do anything, never charges fees, and returns the live tally. This adds meaningful behavioral context about safety, cost, and effect.

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

Conciseness4/5

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

The description is front-loaded with the actionable instruction and is reasonably concise. The trust/fee details are somewhat extra for invocation purposes but still relevant to behavioral expectations, so each sentence mostly earns its place.

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

Completeness4/5

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

Given the rich schema, annotations, and output schema, the description covers the key prerequisites (prepare_vote output), the execution model, and the return value. It does not spell out failure modes or repeated-call consequences, but the idempotentHint=false annotation and the overall context make this sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all three parameters with 100% coverage, so the baseline is 3. The description reinforces the critical constraint that BODY_JSON must be unchanged and that the signature comes from the wallet's personal_sign output, but it does not add fundamentally new parameter information beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Complete the vote') and precisely identifies the resource and required inputs (workId, BODY_JSON from prepare_vote, signature). It distinguishes itself from siblings by anchoring to the prepare_vote flow and noting this is step 2 of 2, making it unmistakable among submit_* tools.

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

Usage Guidelines4/5

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

The description makes the usage context clear: this is the second step after prepare_vote, and it requires the exact BODY_JSON and wallet signature. It does not explicitly name alternatives or state when not to use it, but the step-2 framing and prepare_vote dependency provide strong guidance.

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

submit_vote_withdrawSubmit the signed withdrawal (step 2 of 2)AInspect

Complete the withdrawal: pass workId, the BODY_JSON from prepare_vote_withdraw UNCHANGED, and the signature over MESSAGE_TO_SIGN. Free, always, and relays to the same public gate any HTTP client uses.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.
bodyJsonYesThe exact BODY_JSON string from prepare_vote_withdraw, unchanged.
signatureYesThe 0x… personal_sign output over MESSAGE_TO_SIGN.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly=false and openWorldHint=true, and the description adds useful behavioral context: it is 'Free, always, and relays to the same public gate any HTTP client uses.' This tells the agent that calling the tool has no cost, is always available, and is a transparent public relay, beyond what annotations capture.

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

Conciseness5/5

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

Two tightly written sentences convey the core action, the required parameters, and the key behavioral characteristics (free, always, public). The essential information is front-loaded and there is no redundant or filler content.

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

Completeness5/5

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

For a three-parameter tool with an output schema, the description covers the essential context: how to construct the call, the relationship to prepare_vote_withdraw, cost, availability, and access model. No critical information an agent needs to invoke it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all three parameters with 100% coverage. The description reiterates the same constraints (e.g., bodyJson must be unchanged from prepare_vote_withdraw) but does not add new meaning beyond what the schema provides, so it meets the baseline but no more.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the specific action 'Complete the withdrawal' and explicitly references the prerequisite prepare_vote_withdraw, distinguishing it from other submit_* siblings. The title reinforces the step sequence ('step 2 of 2'), so an agent can identify the tool's role immediately.

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

Usage Guidelines4/5

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

The description clearly establishes the required context: it must receive workId, the exact BODY_JSON from prepare_vote_withdraw, and a signature over MESSAGE_TO_SIGN. This implies the tool is only used after prepare_vote_withdraw, but it does not explicitly name 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.

verify_anchorCheck whether a file was anchored, and whenA
Read-onlyIdempotent
Inspect

Given the SHA-256 of a file, say whether it is anchored, when, and return the merkle proof plus the transaction so the caller can check it independently without trusting Vealth. Use it to confirm someone held a document when they claim they did, or to confirm your own submission landed. Free and keyless.

ParametersJSON Schema
NameRequiredDescriptionDefault
sha256YesSHA-256 of the file, 64 lowercase hex characters.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.5/5.0
Behavior5/5

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

While annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive behavior, the description adds valuable behavioral context: it returns a merkle proof and transaction for independent verification (trustlessness), and explicitly states it is 'free and keyless,' covering auth needs. This goes beyond the annotations and fully discloses 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.

Conciseness5/5

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

The description is two sentences, front-loading the core functionality, then adding use cases and cost/auth note. Every sentence contributes value; no superfluous words.

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

Completeness5/5

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

With output schema present and one parameter fully described, the description covers purpose, usage, and behavioral trust aspects. It is complete for an agent to invoke correctly without additional information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% coverage with a single parameter sha256, described as 'SHA-256 of the file, 64 lowercase hex characters.' The description merely restates 'Given the SHA-256 of a file' without adding new meaning, so it meets the baseline for schema-backed tools but adds no extra semantic value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('verify') and resource ('file anchoring'), and specifies exactly what it returns: whether anchored, when, the merkle proof, and the transaction. It also names typical use cases, distinguishing it from sibling tools like anchor_proof and prepare_proof.

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

Usage Guidelines4/5

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

The description gives explicit when-to-use scenarios: 'confirm someone held a document when they claim they did, or to confirm your own submission landed.' It also notes it's free and keyless, implying no auth requirements. However, it does not explicitly compare against alternatives like anchor_proof, so it loses a point for lack of exclusions or alternative routing.

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

verify_workVerify a work claim into a signed certificateA
Read-onlyIdempotent
Inspect

Check a proof URI is safely machine-checkable, then get the exact path to Vealth's paid verification door: a SIGNED, re-checkable certificate anyone can reproduce — no oracle, no judge. Digital claims only; physical proof (photo + GPS + signature) is honestly routed to human review, never faked. This tool validates and instructs; the caller pays the door from their own wallet.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdNoOptional board packet id, to check its specific proof requirement.
proofUriYeshttps URL of the LIVE proof to verify. No auth, no query parameters.
standardNoOptional standard key the claim is made against.
definitionIdNoOptional self-verifying definition id, if known.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A3.8/5.0
Behavior4/5

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 value by disclosing it never fakes proofs, routes physical proofs honestly, and does not handle payment. These are meaningful behavioral guarantees that go beyond the annotations and build trust in the tool's operation.

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

Conciseness3/5

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

The description is three sentences with some promotional phrases like 'no oracle, no judge' that add little value. It is front-loaded with the primary action, but the second and third sentences contain extra context that could be more succinct. The structure is adequate but not tight.

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

Completeness4/5

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

With a full output schema and complete parameter descriptions, the description's job is to provide the high-level context. It covers the tool's purpose, scope (digital vs physical), and the payment model. An agent can correctly invoke it without missing critical information, though error handling is left to the output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% parameter description coverage, so the baseline is 3. The description highlights the proofUri parameter by discussing machine-checkability but does not add further meaning to workId, standard, or definitionId. It provides context but no new parameter-level detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool verifies that a proof URI is machine-checkable and provides the path to obtaining a signed certificate. It differentiates from physical proof handling and clarifies it does not execute payment, making the purpose concrete. Slight ambiguity remains in whether it returns a certificate or instructions, but 'validates and instructs' resolves this.

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

Usage Guidelines4/5

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

The description explicitly states 'Digital claims only' and notes physical proof is routed to human review, establishing when not to use it. It also clarifies the tool is for validation/instruction and that the caller pays, implying this is a pre-payment step. While it does not name sibling tools, the division of labor is clear.

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

worker_titlesThe titles and credentials one wallet declares, with status and evidenceA
Read-onlyIdempotent
Inspect

The Vealth titles register for one wallet: every title the worker declared on their own signature (CHST, OSHA 30, CPR, a guard card, anything), each with a status derived from the worker's OWN declared dates (current, expired, unknown_expiry), a verify pointer to the ISSUER'S record (we carry the link, we never fetch it), board evidence in that title's scope (on-chain-confirmed settlements and reviews the wallet accepted), and the declaration's anchor hash. Self-declared and shown as such; nothing here gates a claim. Public mirror: https://vealth.net/labor/worker//titles. Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
walletYesThe worker's wallet address (0x…).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.1/5.0
Behavior5/5

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

Beyond the readOnlyHint annotations, the description discloses that it never fetches the issuer's record ('we carry the link, we never fetch it'), that statuses are derived from the worker's own declared dates, and that declarations are self-declared and non-gating. This is substantial behavioral context not conveyed 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.

Conciseness4/5

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

The description is dense and front-loads the resource and scope, with a useful list of contents. It's slightly redundant ('Self-declared' appears twice, and 'read-only' mirrors the readOnlyHint annotation), but each clause carries meaningful information.

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

Completeness5/5

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

With a single well-documented parameter, an output schema, and annotations covering safety, the description covers all needed selection and invocation context: data scope, provenance, link behavior, access (free, keyless), and public mirror. Nothing material is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%: the sole 'wallet' parameter is already described as the worker's wallet address. The description adds no new semantics for the parameter, so it sits at the baseline for fully covered schemas.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly defines the tool as the Vealth titles register for one wallet, enumerating exactly what it contains (declared titles, status, verify pointer, board evidence, anchor hash). It makes the resource and scope clear, but it lacks an explicit verb like 'list' or 'get' and 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.

Usage Guidelines4/5

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

The description gives clear context: this is for a single wallet's self-declared titles, status is derived from the worker's own declared dates, and it explicitly states 'nothing here gates a claim,' which is a when-not-to-use signal. It doesn't name alternatives or provide an explicit 'use this when...' rule.

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

work_statusWhere a packet stands right nowA
Read-onlyIdempotent
Inspect

Live lifecycle state of one packet — OPEN, CLAIMED, PROOF_SUBMITTED, APPROVED, PROOF_REJECTED, SETTLED or EXPIRED — plus its honest pay status (funded vs proposed). Free, keyless, read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesThe packet id.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
toolNo
fundedNo
payUsdNo
workIdNo
claimIdNo
claimableNo
next_callNo
proofRuleNo
fulfillableByNo
definitionOfDoneNo
needs_from_callerNo
notClaimableReasonNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description's 'read-only' adds little. However, it contributes valuable extras: 'free, keyless' reveals access requirements, and 'honest pay status (funded vs proposed)' discloses a nuance not present in annotations. This goes beyond structured data.

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

Conciseness5/5

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

The description is a single, information-dense sentence. It front-loads the core purpose, then lists the states, then adds distinctive details. Every clause earns its place with no filler.

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

Completeness5/5

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

For a one-parameter status-lookup tool with an output schema and rich annotations, the description fully covers the needed context: what the statuses are, what extra pay information is included, and access requirements. Nothing an agent needs to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% coverage for the single parameter 'workId' with the description 'The packet id.' The tool description does not add further meaning to the parameter, so a baseline score of 3 is appropriate since the schema handles the semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb-resource pair: 'Live lifecycle state of one packet' and enumerates the exact possible states (OPEN, CLAIMED, etc.), which leaves no ambiguity about what the tool returns. It also adds 'honest pay status' to differentiate its scope. Sibling tools like get_work_packet or verify_work are clearly distinct because this focuses on lifecycle status flow.

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

Usage Guidelines4/5

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

The description clearly implies when to use the tool: when you need the current lifecycle state and pay status of a single packet. It provides context but does not explicitly name alternatives or state exclusions, so it falls short of the highest bar.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • Addedprepare_physical_proof
    • Changedprepare_proof1 field changed
      • changedInput schema / properties / proofs / description
        Previous value: -"1-20 proof items, e.g. {\"type\":\"photo\",\"uri\":\"https://…\",\"capturedAt\":\"<ISO>\",\"lat\":…,\"lng\":…}. The packet's proof line (get_work_packet) says exactly what it needs."New value: +"1-20 proof items. A photo goes in BY REFERENCE: {\"type\":\"photo\",\"upload\":\"sha256:<hex>\",\"step\":1,\"capturedAt\":\"<ISO>\"}, where the reference is what `node vealth-agent.mjs proof-photo <workId> <claimId> <photo files>` printed on the person's own machine; the photo bytes never pass through this conversation. A small file may still go inline as {\"type\":\"photo\",\"data\":\"<base64>\"}. Text notes are {\"type\":\"text\",\"data\":\"…\"}. The packet's proof line (get_work_packet) says exactly what it needs."
    • Changedprovision_plan1 field changed
      • changedInput schema / properties / entryLevelOnly / description
        Previous value: -"Only work the corpus holds as entry level."New value: +"Only work the corpus holds as entry level; the reply also carries entry_set, the posted work a stranger can take today."
    • Addedsubmit_physical_proof
  2. 1 tool update
    • Addedprovision_plan
  3. 1 tool update
    • Changedprepare_claim2 fields changed
      • addedInput schema / properties / attestAtLeast18
        Added value: +{
        +  "description": "Physical claims only. Set true ONLY after the human caller explicitly affirms: I am at least 18 years old. prepare_claim will refuse to create a signable claim when this statement is required and has not been affirmed.",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / attestSafetyRead
        Added value: +{
        +  "description": "Hazard-bearing physical claims only. Set true ONLY after the human caller has actually read and affirms the exact packet safety / stop-work text that prepare_claim surfaces. Never infer or auto-fill this affirmation.",
        +  "type": "boolean"
        +}
  4. 2 tool updates
    • Changedhour_card1 field changed
      • addedInput schema / properties / lang
        Added value: +{
        +  "description": "Optional, defaults to \"en\". \"sw\" reads the card in Swahili.",
        +  "enum": [
        +    "en",
        +    "sw"
        +  ],
        +  "type": "string"
        +}
    • Addedmy_money
  5. 2 tool updates
    • Addedregen_provisioning_subscription_quote
    • Addedregen_provisioning_subscription_status
  6. 2 tool updates
    • Addedprepare_accept_hours
    • Addedsubmit_accept_hours
  7. 1 tool update
    • Addedbridge_status
  8. 6 tool updates
    • Addedhour_card
    • Addedlabor_unit
    • Addedmy_hours
    • Addedplace_status
    • Addedprepare_place
    • Addedsubmit_place
  9. 1 tool update
    • Changedprepare_proof2 fields changed
      • addedInput schema / properties / counts
        Added value: +{
        +  "description": "Optional: what the job asked to be counted, in the packet's own units, as plain numbers — {\"metres_cleared\": 120, \"blockages_removed\": 4, \"check_dams_built\": 3}. Lower_snake_case names, at most 40 of them. Recorded with the proof; it decides nothing on its own.",
        +  "type": "object"
        +}
      • addedInput schema / properties / hoursClaimed
        Added value: +{
        +  "description": "On an hours-eligible job, the hours you ACTUALLY worked, breaks out — a positive number, at most 168, to 6 decimal places. You state it; the human who accepts decides the accepted figure. Required on such a packet (the completion gate refuses a proof without it), optional everywhere else.",
        +  "type": "number"
        +}
  10. 5 tool updates
    • Addedprepare_credit_offer
    • Addedprepare_credit_settlement
    • Changedprepare_post_work2 fields changed
      • addedInput schema / properties / standard
        Added value: +{
        +  "description": "Optional. The documented standard this work serves (a snake_case id such as 'tree_planting_establishment'); when a refusal lists suggestedStandards, pass one of them here. Omit it and the board lands the title on a documented standard itself when the title is that work's name.",
        +  "type": "string"
        +}
      • addedInput schema / properties / workTypeLabel
        Added value: +{
        +  "description": "Optional. A documented work type (snake_case) when you know the board's own name for the work.",
        +  "type": "string"
        +}
    • Addedsubmit_credit_offer
    • Addedsubmit_credit_settlement
  11. 1 tool update
    • Changedprepare_bridge5 fields changed
      • changedInput schema / properties / destination / description
        Previous value: -"The caller's OWN address on to_chain that receives the funds."New value: +"The caller's OWN address on to_chain that receives the funds. Required on the Arbitrum and Base routes, where no address can be derived from the sender's. Optional on regen→osmosis and osmosis→regen: when omitted, the sender's own account re-encoded under the destination prefix is used (same key, same 20 bytes, no new wallet)."
      • changedInput schema / properties / from_chain / enum
        Previous value: -[
        -  "regen",
        -  "base",
        -  "arbitrum"
        -]New value: +[
        +  "regen",
        +  "base",
        +  "arbitrum",
        +  "osmosis"
        +]
      • changedInput schema / properties / sender / description
        Previous value: -"The caller's OWN address on from_chain (regen1… for regen, 0x… for base) — the wallet that will sign."New value: +"The caller's OWN address on from_chain (regen1… for regen, osmo1… for osmosis, 0x… for base and arbitrum): the wallet that will sign."
      • changedInput schema / properties / to_chain / enum
        Previous value: -[
        -  "regen",
        -  "base",
        -  "arbitrum"
        -]New value: +[
        +  "regen",
        +  "base",
        +  "arbitrum",
        +  "osmosis"
        +]
      • changedInput schema / required
        Previous value: -[
        -  "from_chain",
        -  "to_chain",
        -  "amount",
        -  "sender",
        -  "destination"
        -]New value: +[
        +  "from_chain",
        +  "to_chain",
        +  "amount",
        +  "sender"
        +]
  12. 4 tool updates
    • Addedprepare_token_offer
    • Addedprepare_token_settlement
    • Addedsubmit_token_offer
    • Addedsubmit_token_settlement
  13. 4 tool updates
    • Addedprepare_backing_withdraw
    • Addedprepare_bid
    • Addedsubmit_backing_withdraw
    • Addedsubmit_bid
  14. 2 tool updates
    • Addedcompare_titles
    • Addedworker_titles
  15. 2 tool updates
    • Changedfind_work1 field changed
      • changedInput schema / properties / funded / description
        Previous value: -"true = only packets a verified payment already backs (cash on approved proof); false = only unfunded (credit-or-mint) packets. Omit for both."New value: +"true = only packets a verified payment already backs (money truth; a funded packet can still be earned_credit and never promise cash — read payModel); false = only unfunded packets, where approved proof records earned credit rather than cash unless later funded. Omit for both."
    • Changedprepare_funding1 field changed
      • addedInput schema / properties / contributeUsd
        Added value: +{
        +  "description": "Optional EXPLICIT contribution in USD. Omit to fund the canonical remaining amount. Forwarded to the live door verbatim; the door enforces its own floor, ceiling and remaining-amount truth. An explicit amount above the remaining is a deliberate worker premium.",
        +  "type": "number"
        +}
  16. 4 tool updates
    • Addedprepare_evidence_surface
    • Addedprepare_evidence_write
    • Addedsubmit_evidence_surface
    • Addedsubmit_evidence_write
  17. 57 tool updates
    • Changedaccount_statement2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedanchor_proof2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedboard_stats2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedcredential_quote2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedcrypto_lanes2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedcrypto_lp_positions2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedcrypto_route_set2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedcrypto_tokens2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedcrypto_wallets2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedestimate_footprint2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedfind_work2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedfunding_quote2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedget_work_packet2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedgmx_get_orders2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedgmx_get_positions2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedgmx_get_prices2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedhow_to_claim2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedhydrex_claimable2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedhydrex_position2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedhydrex_reality2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedhydrex_vault2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedhydrex_votes2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedmy_votes2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedmy_work2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changednet_subscription_quote2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changednet_subscription_status2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedoperator_decisions2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedpayment_options2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedpayment_preflight2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedplace_standing2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedprepare_backing2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedprepare_bridge2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedprepare_claim2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedprepare_funding2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedprepare_gmx_order2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedprepare_post_work2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedprepare_proof2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedprepare_vote2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedprepare_vote_withdraw2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedprovision_work2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedregen_address_lookup2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedregen_burn_tracker2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedregen_forum_feed2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedregen_governance_status2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedregen_token_volume2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedretire_and_certify2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedstart_here2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedsubmit_backing2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedsubmit_claim2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedsubmit_gmx_order2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedsubmit_post_work2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedsubmit_proof2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedsubmit_vote2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedsubmit_vote_withdraw2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedverify_anchor2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedverify_work2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
    • Changedwork_status2 fields changed
      • addedOutput schema / properties / claimable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / notClaimableReason
        Added value: +{
        +  "type": "string"
        +}
  18. 3 tool updates
    • Addednet_subscription_quote
    • Addednet_subscription_status
    • Addedstart_here
  19. 1 tool update
    • Addedoperator_decisions

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    A
    maintenance
    Agentic job board for too hard basket items, with independently verifiable participant reputation status that is earned via participant activity
    -
  • F
    license
    A
    quality
    B
    maintenance
    Universal work attestation for autonomous agents. Register any AI agent or machine with persistent cryptographic identity, attest completed work with tamper-evident on-chain records, and query trust scores. The reputation layer for the agent economy. 3 MCP tools over SSE. Settled on Solana.
    11
    2
    -
  • F
    license
    C
    quality
    B
    maintenance
    MCP services for agent security preflight, source scanning, injection screening, proof-of-work policy rehearsal, carbon accounting, climate disclosure and regulatory monitoring. Use each hosted endpoint in the README. Inspect a free quote before buyer-authorized x402/USDC payment. Includes free trust and settlement tools. Maxwell rehearsal does not activate runtime protection.
    220
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources