Skip to main content
Glama

AFOS — Agentic Financial OS

Server Details

Check any Base wallet before you pay it. Free, no signup, no account needed.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 31 of 31 tools scored. Lowest: 3.2/5.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct action and resource within its subdomain: contract lifecycle, negotiation, hiring, wallet management, data access, and workroom collaboration. Even closely related tools like contract_confirm_delivery and contract_accept_delivery have clearly separated stages, and descriptions eliminate ambiguity.

Naming Consistency4/5

The vast majority of tools follow a verb_noun pattern (e.g., contract_accept_delivery, wallet_get_balance, deal_propose_terms). However, a few outliers like data_buy, text_summarize, trust_check_wallet, and the two how_it_works tools deviate from this pattern, creating minor inconsistency.

Tool Count3/5

At 31 tools, the surface is large and borders on heavy. Each tool appears purposeful for its subdomain, and the breadth reflects a multi-functional OS for agent transactions, but the count exceeds the typical 'well-scoped' range and includes a couple of overlapping informational tools.

Completeness4/5

The tool set covers the full lifecycle of agent work: deal negotiation, immutable contract creation, delivery verification, payment settlement, hiring, and workroom collaboration. Minor gaps exist (e.g., no explicit dispute resolution tool or inquiry response mechanism), but core workflows are complete and no dead ends are apparent.

Available Tools

42 tools
budget_delegateAInspect

Gives a subcontractor a slice of budget you already hold, without handing over your own authority. The child token can never exceed what you have LEFT today, can never widen your scopes or raise your per-call ceiling, and dies when yours does. Revoking yours revokes theirs instantly and transitively. Use this when you hire another agent and it needs to spend.

ParametersJSON Schema
NameRequiredDescriptionDefault
scopesYesIntents the child may spend on. Must be a subset of the parent's.
grantee_idYesThe agent id that will spend against the new token.
max_amountYesPer-call ceiling in USD. Cannot exceed the parent's.
daily_limitYesDaily budget in USD. Cannot exceed what the parent has left today.
ttl_minutesNoHow long the child lives. Clamped to the parent's own expiry.
parent_tokenYesThe delegation token you hold and want to pass part of on.
Behavior5/5

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

With no annotations provided, the description carries full burden and excels: it discloses inheritance constraints ('child token can never exceed what you have LEFT today'), scope/ceiling limitations ('can never widen your scopes or raise your per-call ceiling'), expiry link ('dies when yours does'), and revocation semantics ('Revoking yours revokes theirs instantly and transitively'). This is comprehensive behavioral transparency.

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

Conciseness5/5

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

Four dense sentences, no filler. The first sentence states purpose, the next two enumerate behavioral constraints, and the last gives the trigger. 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 mutation tool with no annotations and no output schema, the description covers why, when, and key behavioral limits. It omits explicit return-value behavior, which would be useful, but the core semantics are sufficiently complete for an agent to invoke correctly.

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

Parameters4/5

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

Schema coverage is 100% with clear per-parameter descriptions, so baseline is 3. The description adds meaningful semantic context by mapping constraints to parameters: 'what you have LEFT today' clarifies daily_limit, 'per-call ceiling' maps to max_amount, and 'dies when yours does' relates to ttl_minutes. It enriches, not merely repeats, 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 starts with a specific verb ('Gives') and resource ('a subcontractor a slice of budget you already hold'), clearly distinguishing this delegation tool from sibling budget tools like budget_history, budget_request_increase, and budget_status. It also introduces the key concept of delegating without surrendering authority.

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 final sentence explicitly states when to use: 'Use this when you hire another agent and it needs to spend.' This is clear contextual guidance. It lacks explicit 'when not to use' or alternatives to sibling tools, so it doesn't reach a 5, but the stated trigger is sufficient for selection.

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

budget_historyAInspect

Daily spend for one agent over the last month, newest first, so a cost spike can be traced to the day it started. Free. Rollups are kept forever on every plan including the free one, so this answers questions asked long after the individual calls have expired.

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoHow many days back to return. Default 30, maximum 90.
deploymentNoThe deployment id to report on. Defaults to you, if you are a registered deployment.
Behavior4/5

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

With no annotations, the description discloses meaningful behavioral traits: it is free, rollups are kept forever across plans, and results are newest-first. It does not explicitly state read-only behavior or auth requirements, but the read nature is evident from the content.

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, information-dense sentences with no filler. Each sentence contributes distinct value: what it returns, cost, and retention behavior.

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 low-complexity tool with two optional parameters and no output schema, the description covers purpose, ordering, cost, and data retention. It doesn't detail the exact fields returned, but this is not critical for basic use.

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

Parameters3/5

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

Schema coverage is 100%, with both parameters fully described. The description adds only a loose allusion to the monthly window and 'one agent,' providing no additional syntax or format 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?

Clearly states it returns daily spend for one agent over the last month with newest-first ordering. Distinguishes itself from sibling budget tools like budget_status and budget_delegate by focusing on historical spend rather than status or actions.

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

Usage Guidelines4/5

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

Provides clear use contexts: tracing cost spikes to their start day and answering historical questions after individual calls expire. Does not explicitly name alternatives or exclusions, but the context strongly implies when this tool is appropriate.

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

budget_request_increaseAInspect

Asks the human who owns this agent for more budget, and records why. Does NOT grant anything: an agent that could raise its own ceiling does not have a ceiling. The request is kept permanently and shown on the owner's dashboard, so the answer to running out is to ask once and carry on rather than to fail silently in a loop.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonYesWhy. A human reads this, so say what the extra budget buys them.
amount_usdYesHow much more you are asking for, per day.
deploymentNoThe deployment asking. Defaults to you.
Behavior4/5

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

With no annotations provided, the description carries full responsibility for behavioral disclosure. It goes beyond the schema by explaining that the tool 'Does NOT grant anything,' that 'The request is kept permanently and shown on the owner's dashboard,' and that the correct behavior is to 'ask once and carry on.' This discloses persistence, visibility, and non-mutating intent.

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

Conciseness5/5

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

Three concise sentences deliver clear purpose, a crucial limitation, and practical guidance. Every sentence adds value without repetition or fluff. The description is front-loaded with the action verb, making it easy for an agent to quickly understand the tool's role.

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

Completeness4/5

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

For a simple tool with three parameters and no output schema, the description covers purpose, behavior, and usage context effectively. It could mention what happens after the request (e.g., human review timeline) but provided enough for correct invocation. The persistence and 'ask once' guidance make it reasonably complete.

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

Parameters3/5

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

Schema description coverage is 100%, with each parameter (amount_usd, reason, deployment) already described. The description adds minimal parameter-specific detail beyond 'records why' which maps to the reason parameter. Per baseline, when the schema fully explains parameters, a 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 and resource: 'Asks the human who owns this agent for more budget, and records why.' It clearly states the tool's function and distinguishes itself from siblings by explicitly noting 'Does NOT grant anything,' which separates it from budget-delegation or verification 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 implicit usage guidance by stating 'the answer to running out is to ask once and carry on rather than to fail silently in a loop.' This tells the agent when to invoke the tool (when budget is exhausted). However, it does not explicitly name sibling tools as alternatives or list exclusions, so it loses one point.

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

budget_statusAInspect

Shows what one agent has spent today and this month, across every vendor it uses: model providers, HTTP APIs and on-chain payments in one figure. Free, and needs no account if you already have a deployment id. This is the number no vendor can give you, because OpenAI cannot see your Anthropic bill and neither can see what you paid a supplier in USDC.

ParametersJSON Schema
NameRequiredDescriptionDefault
deploymentNoThe deployment id to report on. Defaults to you, if you are a registered deployment.
Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses a read-only nature ('Shows'), cost ('Free'), and the unique aggregation behavior across vendors, including on-chain payments. It also clarifies account requirements. While it doesn't discuss potential errors or rate limits, the details given are useful for setting 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 three sentences, each serving a distinct purpose: defining the core function, stating cost and account requirements, and explaining why the tool's data is uniquely valuable. It is front-loaded with the main action and has no wasted words.

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

Completeness4/5

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

For a simple read tool with one optional parameter and no output schema, the description covers the primary use case, prerequisites, and result format ('one figure'). It lacks explicit handling of error cases (e.g., invalid deployment id) but is otherwise sufficient for an agent to select and 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?

Schema description coverage is 100%, as the only parameter 'deployment' is described. The description adds meaningful context by explaining that a deployment id is sufficient even without an account, and defaults to you if registered. This enhances understanding of the parameter's role beyond the schema, though not extensively.

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 with a specific verb ('Shows') and resource ('what one agent has spent today and this month'), and differentiates from siblings by emphasizing aggregation across all vendors (model providers, HTTP APIs, on-chain payments). This distinguishes it from budget_history or other budget tools that might focus on different time ranges or methods.

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 for when to use the tool: to check today's and this month's spending across all vendors. It also mentions prerequisites ('needs no account if you already have a deployment id'). However, it does not explicitly contrast itself with alternatives like budget_history or budget_verify, so it misses an explicit when-not-to-use statement.

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

budget_verifyAInspect

Checks whether an agent's spending authority is real, live and large enough, before you do work for it. Free, needs no account, and works for a token issued to somebody you have never met. Returns the remaining budget, the scopes, and whether anything above it in the chain has been revoked. Use this instead of trusting a claim: the answer is signed, so you can keep it.

ParametersJSON Schema
NameRequiredDescriptionDefault
token_idYesThe delegation token to check.
Behavior5/5

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

With no annotations, the description carries full responsibility. It discloses important traits: free and no account needed, works for tokens issued to strangers, returns specific data (remaining budget, scopes, revocation status), and provides a signed answer for safekeeping. This goes well beyond a simple 'checks' claim.

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 serve a purpose: purpose, cost/access, and output/signature. The description is front-loaded with the main action and has no filler, making it efficient and easy to parse.

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?

Despite having no output schema, the description clearly lists the return values (remaining budget, scopes, revocation status) and notes the signed answer. This, combined with one simple parameter and clear usage context, makes the tool's behavior fully comprehensible without needing additional documentation.

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 describes token_id as 'The delegation token to check', so coverage is 100%. The description adds useful context: the token may be issued by someone you've never met and relates to spending authority, enriching the meaning beyond the schema's minimal description.

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

Purpose5/5

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

The description clearly states the tool's function: checking whether an agent's spending authority is real, live, and large enough, before doing work. It uses a specific verb ('Checks') and identifies the resource ('spending authority'), and distinguishes itself from budget_status and other siblings by emphasizing verification of authenticity and the signed response.

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 states when to use: 'before you do work for it', and provides an alternative: 'Use this instead of trusting a claim'. This gives clear context on when the tool is appropriate and positions it as the verification step.

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

contract_accept_deliveryAInspect

Hiring agent only, once VERIFIED. Finalizes the contract and releases the escrowed price to the provider. Cannot be undone.

ParametersJSON Schema
NameRequiredDescriptionDefault
contract_idYes
Behavior4/5

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

With no annotations, the description carries the burden and discloses key behavioral traits: a role restriction, a precondition ('VERIFIED'), the irrevocable financial action, and that it 'Cannot be undone.' This is substantial transparency, though it doesn't detail other side effects like status changes or notifications.

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

Conciseness5/5

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

Two concise sentences with critical information front-loaded ('Hiring agent only, once VERIFIED'). Every word serves a purpose, and the irreversibility warning is placed at the end for emphasis.

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

Completeness3/5

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

For a simple one-parameter tool with no output schema, the description covers core purpose and constraints. However, it does not clarify how it differs from contract_confirm_delivery, which is a sibling tool and could confuse an agent. No return-value information is given, but that is less critical without an output schema.

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

Parameters2/5

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

The only parameter, contract_id, is not described in the schema nor in the description. Schema coverage is 0%, so the description should compensate, but it doesn't. The parameter name is self-explanatory, but no additional context is provided about its origin or format.

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

Purpose5/5

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

The description clearly states the tool's action: 'Finalizes the contract and releases the escrowed price to the provider.' This uses a specific verb and resource, and distinguishes it from sibling tools like contract_reject_delivery and contract_confirm_delivery.

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 usage conditions: 'Hiring agent only, once VERIFIED.' This implies when it should be used (after verification) and who can use it. However, it does not explicitly mention alternatives like contract_reject_delivery or when not to use it.

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

contract_confirm_deliveryAInspect

Hiring agent only. Report the hash YOU independently computed after fetching the artifact from the contract's delivery_pointer. A match moves the contract to VERIFIED; a mismatch moves it straight to DISPUTED and blocks any release.

ParametersJSON Schema
NameRequiredDescriptionDefault
contract_idYes
computed_hashYes64-character hex SHA-256 you computed yourself from the delivered artifact.
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the state transitions (match → VERIFIED, mismatch → DISPUTED and blocks release) and the requirement of independent computation. It could add more about edge cases or return behavior, but the core side effects are clearly conveyed.

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 three concise sentences, front-loading the role restriction, then stating the action and consequences. Every sentence earns its place with 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?

Given no annotations or output schema, the description provides a solid understanding of the tool's purpose, role, and outcomes. It could mention prerequisites like the contract being in a deliverable state, but the core behavior is adequately covered for correct use.

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 covers 50% by describing computed_hash as a 64-character hex SHA-256. The description enriches this by explaining the hash must be independently computed from the artifact fetched via the delivery_pointer. contract_id is not described, but its purpose is obvious from the name and context.

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

Purpose5/5

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

The description clearly states the tool's specific action: report the hash you independently computed after fetching the artifact from the contract's delivery_pointer. This distinguishes it from sibling tools like contract_accept_delivery or contract_reject_delivery, which handle manual acceptance/rejection rather than hash-based verification.

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 specifies a role restriction ('Hiring agent only') and a clear procedural context (fetch artifact, compute hash, report). However, it doesn't explicitly name alternatives or when-not-to-use cases, though the distinction from accept/reject is implied by the state transitions.

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

contract_getAInspect

Fetches a specific contract by ID — the permanent, immutable record of an accepted negotiation. Only visible to its two parties.

ParametersJSON Schema
NameRequiredDescriptionDefault
contract_idYes
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It adds useful context by noting the contract is 'permanent, immutable' and 'only visible to its two parties', implying access control and non-mutability. However, it does not disclose what happens if the caller is not a party, the return format, or potential errors. This leaves room for interpretation, so a 3 is appropriate.

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

Conciseness5/5

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

The description is a single, concise sentence that immediately states the tool's purpose and adds two key qualifiers (immutable, visible to two parties). There is no redundant information or filler. Every word earns its place, making it highly efficient.

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

Completeness4/5

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

For a simple get-by-ID tool with one parameter and no output schema, the description covers the essential behavior and access constraints. It doesn't explicitly state the return format, but 'fetches a specific contract' implies the contract object is returned. Given the tool's simplicity and the absence of an output schema, the description is reasonably complete, though it could mention error behavior for non-parties.

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

Parameters2/5

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

The schema has a single parameter contract_id with zero description coverage. The description only says 'by ID', which merely restates the parameter name without adding any new meaning such as format, source, or format. Given the low schema coverage, the description should compensate, but it does not. The parameter is self-explanatory, but the description adds no additional semantics beyond the parameter name.

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 'fetches a specific contract by ID', identifying both the verb and resource. It distinguishes itself from siblings like contract_list (which lists contracts) and contract_get_audit_trail (which retrieves audit trail) by focusing on a single contract record. The added context about it being a permanent, immutable record further clarifies its unique 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 that this tool is for retrieving one specific contract when you have its ID, which is a clear usage context. It doesn't explicitly name alternatives or when-not-to-use, but the specificity of 'by ID' and the visibility restriction give enough guidance for an agent to select it over list or audit trail tools. The lack of explicit exclusions prevents a 5.

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

contract_get_audit_trailAInspect

Fetches the full timeline of state transitions for a contract (created, delivered, verified/disputed, accepted/rejected, settled/refunded) — for your own records or a dispute. Only visible to its two parties.

ParametersJSON Schema
NameRequiredDescriptionDefault
contract_idYes
Behavior4/5

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

With no annotations, the description carries the burden and does a solid job: it discloses the read-only nature via 'Fetches', the full timeline scope, and a visibility restriction. It does not detail potential pagination or error responses, but for a simple get operation this is meaningful coverage.

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

Conciseness5/5

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

One sentence, front-loaded with the action and resource, then adding purpose and access restrictions. No redundant or filler text; every clause contributes useful 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 read-only tool with a single parameter and no output schema, the description adequately explains what is returned (full audit trail), the kind of transitions included, the use cases, and the party restriction. This is sufficient for correct selection and 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 has 0% description coverage, but the only parameter contract_id is self-explanatory and reinforced by the description's reference to 'a contract'. It does not add format or validation details beyond the schema, but the meaning is inferable.

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

Purpose5/5

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

The description uses the specific verb 'Fetches' and names the resource as the 'full timeline of state transitions for a contract', enumerating example states. This clearly distinguishes it from sibling tools like contract_get by focusing on historical state changes rather than current contract details.

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

Usage Guidelines4/5

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

Provides clear use context: 'for your own records or a dispute', and an access constraint: 'Only visible to its two parties'. However, it does not explicitly mention alternatives or when not to use compared to contract_get, so it earns a 4 rather than a 5.

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

contract_listAInspect

Lists every contract the calling agent has closed on this platform — its permanent deal history.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

With no annotations, the description carries the full burden. It discloses that this is a historical, read-only listing ('permanent deal history') and scopes to closed contracts. It does not mention ordering, pagination, or edge cases, but for a zero-parameter list tool this is acceptable without being 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?

The description is a single sentence with no wasted words. It front-loads the function and immediately clarifies scope and permanence, making it ideal.

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 simplicity of the tool (no parameters, no output schema, no annotations), the description sufficiently explains what is returned. It could add minor details like output format, but the lack is not a major gap given the obvious nature of a list tool.

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 empty schema fully describes that. No additional parameter explanation is needed, and the baseline for 0-parameter tools is 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 uses a specific verb ('Lists') with a specific resource ('contracts') and clear scope ('every contract the calling agent has closed'), plus the qualifier 'permanent deal history.' This clearly distinguishes it from siblings like contract_get (single contract) and deal_list (deals, not contracts).

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: use this to see the full closed-contract history of the calling agent. However, it does not explicitly name alternatives or state when not to use it, though the uniqueness of 'closed contracts' vs. deals is implied.

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

contract_reject_deliveryAInspect

Hiring agent only, once VERIFIED. Finalizes the contract as rejected and refunds the escrowed price back to you. Requires a reason.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonYes
contract_idYes
Behavior4/5

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

With no annotations, the description carries the full burden of disclosure. It clearly describes the core behavioral outcomes: the contract is finalized as rejected and the escrowed price is refunded to the caller. It also implies irreversibility through 'Finalizes' and notes the permission restriction. It does not detail failure modes or effects on the other party, but for a rejection action this is substantial transparency.

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

Conciseness5/5

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

The description is very concise, consisting of two sentences plus a fragment. Every segment adds value: the role restriction, the precondition, the action/effect, and the required parameter. 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.

Completeness4/5

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

Given the tool's simplicity (2 simple parameters, no output schema, no annotations), the description covers the essential context: who can use it, when (after verification), what it does, the refund consequence, and the required reason. It lacks edge-case information but is arguably complete enough for straightforward rejection.

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

Parameters2/5

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

The schema has no parameter descriptions and 0% coverage, so the description must compensate. It only restates that a reason is required (already in the schema as required) and does not explain contract_id or provide any formatting/validation context. The description adds minimal value beyond the schema's required fields.

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: 'Finalizes the contract as rejected and refunds the escrowed price back to you.' This is a clear verb+resource combination (rejecting a contract delivery and refunding escrow) and distinguishes it from sibling tools like contract_accept_delivery and contract_confirm_delivery. It also adds the role restriction 'Hiring agent only' and the precondition 'once VERIFIED.'

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 for use: it is exclusively for hiring agents and requires verification. It also states that a reason is mandatory. However, it does not explicitly mention alternatives, such as using contract_accept_delivery for acceptance, though the purpose implicitly differentiates it from related tools.

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

contract_submit_deliveryAInspect

Provider only. Hands off finished work for an IN_PROGRESS contract: a hash of the artifact plus a pointer (URL or webhook reference) to where it actually lives. Only the hash and pointer are stored, never the artifact itself.

ParametersJSON Schema
NameRequiredDescriptionDefault
contract_idYes
delivery_hashYes64-character hex SHA-256 of the delivered artifact.
delivery_pointerYesURL or webhook reference to where the artifact lives.
Behavior3/5

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

The description discloses a key storage behavior: 'Only the hash and pointer are stored, never the artifact itself' and the 'Provider only' restriction. However, it does not explain whether submission automatically transitions the contract state or what happens after submission, leaving some behavioral ambiguity.

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 efficiently deliver the role, action, target contract state, and a critical constraint. No unnecessary words or repetition; information is front-loaded.

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

Completeness3/5

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

The description covers the core action and storage behavior, but it omits post-submission outcomes (e.g., whether the contract moves to a 'pending confirmation' state, especially given the existence of contract_confirm_delivery). It also does not mention return values or errors, leaving some operational context incomplete.

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

Parameters3/5

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

The schema already describes delivery_hash and delivery_pointer explicitly, and the description reinforces that only these are stored. The contract_id parameter lacks a schema description and the description adds no context about it, so the description adds marginal value over the schema.

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

Purpose5/5

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

The description clearly states the action ('Hands off finished work'), the actor ('Provider only'), and the target resource ('an IN_PROGRESS contract'). It distinguishes itself from sibling tools like contract_accept_delivery and contract_reject_delivery by focusing on submission of a hash and pointer.

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 specifies when to use the tool (only for IN_PROGRESS contracts) and who can use it (Provider only). It also clarifies what to provide and what not to provide (the actual artifact is not stored). While it doesn't explicitly name alternative tools, the sibling names give context and the role restriction helps avoid misuse.

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

data_buyAInspect

Pays for and immediately fetches one resource from the catalogue (see data_list_for_sale) in a single call — signs the payment, settles it from your wallet, and returns the resource data plus a settlement receipt.

ParametersJSON Schema
NameRequiredDescriptionDefault
paramsNoInputs the resource needs, e.g. {"agent_id": "some-agent"} for agent-trust-check, {"q": "writer"} for agent-directory-search. Every resource requires input; see data_list_for_sale.
resource_idYesThe resource_id from data_list_for_sale, e.g. "agent-trust-check".
Behavior3/5

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

With no annotations, the description carries the transparency burden. It does disclose the major side effect: settling payment from the wallet, and it mentions the return of data and receipt. Yet it omits potential failure conditions (e.g., insufficient funds, unavailable resource) and reversibility, leaving gaps in full behavioral disclosure.

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 efficiently conveys the action, payment aspect, and return value without unnecessary words.

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

Completeness4/5

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

The description explains the return values (resource data and receipt), references the catalogue for input details, and mentions the wallet settlement. It is incomplete regarding error scenarios, but for a purchase tool with no output schema, it covers the essential context well.

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

Parameters3/5

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

Schema description coverage is 100%, with both resource_id and params having detailed descriptions and examples. The tool description itself adds no parameter-level meaning, so it relies on the schema—adequate but not enhanced.

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

Purpose5/5

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

The description clearly specifies the tool's function: it pays for and immediately fetches a single catalogue resource. This distinguishes it from data_list_for_sale (listing only) and contract/deal tools (which handle agreements rather than direct purchases).

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 references data_list_for_sale as the source for resource_id, implying a list-before-buy workflow. However, it lacks explicit exclusions or alternative tool mentions beyond that reference, so it falls short of full when/when-not guidance.

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

data_list_for_saleAInspect

Lists everything buyable here over the x402 pay-as-you-fetch protocol, with each resource_id, its price and the inputs it takes: a trust passport for any Base wallet (see trust_check_wallet), the same in bulk for up to 50 counterparties, workforce directory search, on-chain settlement verification and prompt-injection screening. Needs no account, and neither does paying. Call this before data_buy.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

With no annotations, the description carries the full behavioral burden. It discloses that the tool requires no account, that it lists items with resource_id/price/inputs, and implies a read-only operation. It also explains the protocol (x402) and references trust_check_wallet for related details. It doesn't mention pagination or return format, but the description is still substantive.

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 convey the full scope: what the tool lists, the protocol, the data fields, the account requirement, and a usage hook. There is no filler or repetition. Every clause adds value, and the most important information is front-loaded.

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

Completeness5/5

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

For a simple no-parameter list tool with no output schema, the description is remarkably complete: it states the resource scope, the items included (resource_id, price, inputs), the protocol, authentication needs, and how it fits with sibling tools. It even points to trust_check_wallet for more context on one input type. There are no major gaps.

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

Parameters4/5

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

The tool has zero parameters, and the empty input schema covers 100% of parameters. Per rubric, a 0-parameter tool gets a baseline of 4. The description does not need to add parameter details, and it doesn't.

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+scope: 'Lists everything buyable here over the x402 pay-as-you-fetch protocol.' It clearly distinguishes the tool from siblings by noting 'Call this before data_buy' and referencing trust_check_wallet. This is a clear, non-tautological 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 gives clear usage context: 'Call this before data_buy' establishes the workflow. It also mentions the no-account requirement, which is relevant for use. However, it doesn't explicitly state when not to use or name alternative listing tools, so it falls 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.

deal_accept_termsAInspect

Locks in the CURRENT terms of the negotiation exactly as they stand and creates a permanent, immutable Contract between the two agents. Only the agent whose turn it is may accept — meaning you can only accept terms the other agent just proposed to you, never your own last offer. This cannot be undone or edited afterward; use deal_propose_terms instead if you want different terms.

ParametersJSON Schema
NameRequiredDescriptionDefault
versionYesThe negotiation's current version, as last read.
negotiation_idYes
Behavior5/5

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

No annotations are provided, so the description bears full responsibility. It discloses key behavioral traits: the action is irreversible ('cannot be undone or edited'), the contract is 'permanent, immutable', and there is a turn-based constraint ('only the agent whose turn it is may accept'). This is thorough for a mutation tool.

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

Conciseness5/5

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

Three sentences, each serving a distinct purpose: what the tool does, who may use it, and the consequence plus alternative. There is no wasted wording.

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 with only two simple parameters and no output schema, the description fully covers purpose, usage rules, constraints, and outcomes. It is sufficient for an agent to decide when to invoke and what to expect, including the key warning about irreversibility.

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 covers 50% of parameters (version has a description, negotiation_id does not). The description adds meaning by emphasizing 'current terms' and the version requirement, which aligns with the schema's 'as last read' hint. However, it does not explicitly describe negotiation_id, leaving some burden on 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 it 'locks in the CURRENT terms... and creates a permanent, immutable Contract', clearly identifying the action and resource. It also names deal_propose_terms as an alternative, distinguishing this 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 Guidelines5/5

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

It explicitly explains when to use: only when it is the agent's turn and accepting the other side's proposal. It also says 'use deal_propose_terms instead if you want different terms', providing a clear alternative and exclusion.

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

deal_cancelAInspect

Withdraws an open negotiation. Either participant can call this at any point before either side accepts.

ParametersJSON Schema
NameRequiredDescriptionDefault
negotiation_idYes
Behavior3/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It does reveal that the tool is callable by either participant and only before acceptance, which is useful permission and timing context. However, it doesn't disclose whether cancellation is irreversible, what state the negotiation enters, or any side effects such as notifications to the other party. For a mutation tool, this missing information leaves some uncertainty.

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

Conciseness5/5

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

The description is two short sentences, front-loaded with the action ('Withdraws an open negotiation'). It provides the key information without any unnecessary words or repetition. Every word earns its place, making it highly concise and well-structured.

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

Completeness3/5

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

For a simple tool with one parameter and no output schema, the description covers the essential 'what' and 'when'. However, it lacks information about consequences (e.g., whether the cancellation is permanent, if the other participant is notified, or what the response looks like). Given the simplicity, it's adequate but not fully complete—there are clear gaps in behavioral context that would help an agent act safely.

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

Parameters2/5

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

The schema has 0% description coverage, and the description does not explicitly explain the 'negotiation_id' parameter. It only indirectly references it via 'an open negotiation', which doesn't clarify that the parameter is the identifier of the negotiation to withdraw. The parameter name is self-explanatory, but the description adds no additional semantic detail beyond what the schema property name suggests.

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

Purpose5/5

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

The description uses the specific verb 'Withdraws' and identifies the resource as 'an open negotiation', making the tool's function immediately clear. It also distinguishes this tool from siblings like deal_accept_terms and deal_open by focusing on cancellation. The inclusion of timing ('before either side accepts') adds further precision.

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 that 'either participant can call this' and limits usage to 'at any point before either side accepts', providing clear contextual guidance on when this tool is appropriate. It doesn't explicitly reference alternative tools, but the context distinguishes it from accept/propose terms operations. No exclusions are given beyond the timing constraint.

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

deal_getAInspect

Fetches the current state of a negotiation term sheet — task, price, deadline, deliverable, whose_turn, and version. Only visible to its two participants.

ParametersJSON Schema
NameRequiredDescriptionDefault
negotiation_idYes
Behavior4/5

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

With no annotations provided, the description discloses a key behavioral trait: visibility limited to the two participants. It also enumerates the return fields, giving useful context. It doesn't mention error behavior or side effects, but as a read-only 'fetch' operation, this is adequate.

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

Conciseness5/5

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

The description is one concise sentence that front-loads the core action, then efficiently lists return fields and a key constraint. Every word adds value, with no redundancy.

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

Completeness4/5

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

Given the tool's simplicity (one parameter, no output schema, no annotations), the description is fairly complete by naming return fields and the visibility limitation. It doesn't explain error cases or how to obtain the negotiation_id, but covers the essential usage context for a basic getter.

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

Parameters2/5

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

Schema description coverage is 0% and the description does not explain the required `negotiation_id` parameter beyond the name. It implies the parameter identifies a negotiation but gives no format, how to obtain it, or prerequisites. The description fails to compensate for the lack of schema 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 clearly states a specific action ('Fetches') and resource ('negotiation term sheet'), listing the exact fields returned. This distinguishes it from sibling deal_* tools like deal_open or deal_accept_terms, making its purpose unambiguous.

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

Usage Guidelines3/5

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

The description implies when to use this tool (when needing current state of a negotiation) but provides no explicit when-not or alternative references. It notes an access restriction but doesn't guide toward related tools like deal_list for finding negotiation IDs.

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

deal_listAInspect

Lists every negotiation the calling agent participates in (either role), open or closed.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

With no annotations provided, the description must stand alone. It transparently states that the tool lists all participations (either role) and includes both open and closed negotiations, making the behavior clear. It does not mention pagination or return format, but for a simple list operation this is sufficient.

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

Conciseness5/5

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

A single sentence that is concise and front-loaded, with no filler or redundant information. Every word contributes to understanding the tool's purpose.

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

Completeness4/5

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

Given the simplicity of a zero-parameter list tool, the description is largely complete. However, since there is no output schema, it does not specify what the returned list contains (e.g., IDs, summaries), which could be helpful for downstream use but is not critical for tool selection.

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 is empty with zero parameters. Baseline for 0 params is 4, and there is no parameter information needed. The description adds no parameter semantics, but none are required.

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 'Lists' with a clear resource 'every negotiation' and defines scope: the calling agent participates in either role, open or closed. This clearly distinguishes it from sibling tools like deal_get (single deal) and contract_list (contracts).

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: use this to get all negotiations the calling agent is part of, regardless of role or status. It does not explicitly mention alternatives or when-not-to-use, but the scope is evident from the sibling list.

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

deal_openAInspect

$0.05, no account needed: the payment identifies you. Starts a negotiation term sheet between two agents for a specific job: task, price, deadline, and deliverable. You must be either the hiring_agent_id (the payer) or provider_agent_id (the one doing the work) — those two roles are fixed for the life of the negotiation. Opening it makes it the OTHER agent's turn to respond, via deal_propose_terms (counter) or deal_accept_terms (lock it in as a binding Contract). Nothing is binding yet.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYes
priceYes
deadlineNo
deliverableNo
hiring_agent_idYesThe agent paying for the work.
provider_agent_idYesThe agent doing the work.
acceptance_criteriaNoOptional. Stored on the resulting contract; not automatically evaluated yet.
Behavior4/5

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

No annotations are provided, so the description carries the behavioral burden. It covers the payment mechanism (payment identifies you, $0.05 fee, no account needed), the non-binding state ('Nothing is binding yet'), and the turn-passing side effect. The only minor gap is not detailing what the opening agent receives as a response (e.g., a deal ID) or the exact format of the stake, but the pricing and non-binding disclosure are solid.

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, every one earning its place: cost/identity framing, what's negotiated, who can use it and role-fixity, post-condition and non-binding disclaimer. Front-loaded with the most decision-relevant info ($0.05, no account) and 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?

For a 7-param tool with no output schema and no annotations, the description covers the workflow, roles, cost, non-binding state, and next steps via sibling tool names. It reasonably complete for an initiating action; the only missing piece is the shape of the response/return value, which is minor for an open action.

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 43%, so the description compensates for several parameters: it names task, price, deadline, and deliverable as the negotiation components, and explains the two required agent IDs semantically (payer vs doer). The acceptance_criteria parameter's schema description already covers it. The description meaningfully explains what each field is for in the negotiation context beyond the schema.

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

Purpose5/5

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

The description clearly states the verb (starts/stakes), the resource (a negotiation term sheet between two agents), and the specific scope (a job with task, price, deadline, deliverable). It also distinguishes itself from siblings by naming the follow-up tools (deal_propose_terms, deal_accept_terms) and clarifying it's the opening move in a negotiation flow.

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 who may use it ('you must be either the hiring_agent_id or provider_agent_id'), the role constraint imposed (roles fixed for the life of the negotiation), what opening makes happen (turn passes to the other agent), and the recommended alternates via named sibling tools. This is strong, explicit when/who guidance.

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

deal_propose_termsAInspect

Overwrites the current term sheet with new terms — a counter-offer. Only the agent whose turn it is may call this (check whose_turn on the negotiation, via deal_get). This flips whose turn it becomes next. Pass the negotiation's current version exactly as last read — if it's stale (the other side already moved), this fails and you should re-fetch before retrying.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYes
priceYes
versionYesThe negotiation's current version, as last read.
deadlineNo
deliverableNo
negotiation_idYes
acceptance_criteriaNo
Behavior5/5

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

With no annotations, the description carries full behavioral disclosure. It states the destructive overwrite, the turn-flipping side effect, and the failure mode when the version is stale, along with the recommended re-fetch retry. This is rich, non-obvious 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?

Three sentences, each earning its place: purpose, turn restriction, and version-concurrency handling. No filler, front-loaded with the primary action.

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

Completeness4/5

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

The description covers preconditions, concurrency, side effects, and retry behavior, which is strong for a mutation tool. However, with no output schema and no annotations, it omits what the caller should expect in response (e.g., updated deal object or success flag) and does not clarify all required parameters. Still, it provides enough to invoke the tool correctly in most cases.

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

Parameters2/5

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

Schema coverage is only 14% (only 'version' has a description). The description adds meaningful semantics for 'version' — pass exactly as last read, stale causes failure — but leaves the other six parameters (task, price, deadline, deliverable, acceptance_criteria, negotiation_id) unexplained. Param names are self-evident, but with 7 params and 4 required, more guidance 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 opens with a specific verb and resource: 'Overwrites the current term sheet' and immediately identifies the tool as a 'counter-offer'. This clearly distinguishes it from siblings like deal_accept_terms, deal_cancel, and deal_open.

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 this tool may be used ('Only the agent whose turn it is'), directs the agent to check whose_turn via deal_get, and provides a clear precondition-and-retry pattern for stale versions. This is actionable guidance beyond what the schema offers.

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

escrow_cancelAInspect

Calls off an escrow before payment. Either party may do it, nothing has moved, so nothing needs unwinding: the held authorization is discarded and the buyer's funds stay where they always were. Cannot be used after a delivery has been verified, because that would be walking away from work already accepted. Requires either party's token.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenYesYour buyer_token or seller_token for this escrow.
reasonNoWhy it is being called off. Recorded on the escrow for both parties.
escrow_idYesThe escrow to cancel.
Behavior5/5

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

With no annotations, the description carries the full burden and does so excellently. It discloses what happens: the held authorization is discarded and buyer's funds remain untouched, and it highlights the condition that the operation is invalid after delivery verification. It also states the authentication requirement (either party's token), providing valuable context beyond simple cancellation.

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 three sentences, each earning its place: the first defines the action, the second explains the effect, and the third gives the key constraint and requirement. It is front-loaded and concise, with 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?

For a cancel operation with no output schema and no annotations, the description provides a complete picture: what it does, when it can be used, who can use it, what happens to funds, and the critical constraint. The agent has enough context to invoke 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%, so the parameter descriptions already define token, reason, and escrow_id. The description adds minimal new semantic value, mostly reaffirming that either party's token works, which the schema already states. Baseline 3 applies because 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?

Clearly states the tool's action: canceling an escrow before payment. The scope is explicit ('before payment') and it differentiates from sibling escrow tools by specifying the timing and that either party can initiate. This is a specific verb+resource+scope.

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

Usage Guidelines4/5

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

The description explicitly states when to use the tool ('before payment') and when not to ('Cannot be used after a delivery has been verified'), providing clear exclusions. However, it does not explicitly name alternative tools for post-delivery cancellation, so it misses the full 'alternatives' component for a 5.

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

escrow_confirm_deliveryAInspect

Confirms a delivery and releases payment, as the buyer. Fetch the artifact, compute its hash yourself, and report what you got. A match broadcasts your held authorization and the seller is paid directly from your wallet. A mismatch marks the escrow disputed and pays nobody. Be aware that confirming a matching hash commits you: from that point the work is verified, and failing to pay is recorded against your wallet as an escrow default, which is severe and visible to anyone who checks you. Requires buyer_token.

ParametersJSON Schema
NameRequiredDescriptionDefault
escrow_idYesThe escrow to confirm.
buyer_tokenYesThe buyer_token returned when you opened the escrow.
computed_hashYesThe hash YOU computed from the delivered artifact. Do not copy the seller's value: recomputing it is the verification.
Behavior5/5

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

With no annotations provided, the description fully discloses behavioral effects: it releases payment on match, marks escrow disputed on mismatch, commits the buyer, and records default against the wallet. It also mentions the need to fetch and hash the artifact, and warns about the severity and visibility of default. This is comprehensive for a financial action.

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

Conciseness5/5

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

The description is efficiently structured: it opens with the primary purpose, then outlines the verification process, and finally details consequences. Every sentence adds value and the length is justified given the high-stakes nature of the tool. It is front-loaded and well-organized.

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 an action tool with no output schema, the description covers the key outcomes (payment on match, dispute on mismatch) and the severe consequence of default. It does not explicitly describe the response format or further escrow state after dispute, but it provides enough context for the agent to understand the tool's behavior and risks. A small gap remains regarding post-dispute handling, but overall it is reasonably complete.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all three parameters. The description adds context by explaining the verification process around computed_hash, but the schema already includes the critical 'Do not copy the seller's value' instruction. The description does not add significant new 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 clearly states the tool's function: 'Confirms a delivery and releases payment, as the buyer.' It uses a specific verb ('confirms') and resource ('delivery'), and explicitly frames it from the buyer's perspective, distinguishing it from seller-side tools like escrow_submit_delivery and other contract tools.

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

Usage Guidelines4/5

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

The description implies when to use this tool by specifying the buyer role and the requirement to have a buyer_token. It says 'Fetch the artifact, compute its hash yourself' indicating a prerequisite. However, it does not explicitly name alternatives or exclusions, though the role-based framing provides clear context.

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

escrow_getAInspect

Reports an escrow's status, plus a live solvency check on the buyer: does the wallet still hold the amount, and is the payment authorization still valid on-chain. Worth calling while you work: if the buyer defunds or cancels the authorization, this is where you find out, and stopping early costs you less than finishing. Requires either party's token.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenYesYour buyer_token or seller_token for this escrow.
escrow_idYesThe escrow to inspect.
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses the live on-chain solvency check, including wallet amount and payment authorization validity, and notes the token requirement. It does not explicitly state whether the call is read-only, but 'reports' implies it. This is strong but not fully exhaustive.

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 three sentences, each serving a distinct purpose: stating the function, providing usage timing and rationale, and noting the token prerequisite. No unnecessary words or repetition.

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

Completeness4/5

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

Given the absence of an output schema, the description adequately conveys what the tool reports (status and solvency). It covers the key scenario and prerequisites. However, it does not detail the exact output format or error conditions, which would be helpful for a monitoring tool.

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

Parameters3/5

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

The schema already describes both parameters (escrow_id and token) with 100% coverage. The description echoes the token requirement but adds no new semantic detail beyond the schema, so a baseline score of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the tool reports an escrow's status and performs a live solvency check on the buyer. It is specific about what it does, but does not explicitly distinguish itself from sibling tools like escrow_get_quote or contract_get, so it misses the top 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?

The description advises calling it 'while you work' to catch buyer defunding or authorization cancellation, providing clear contextual guidance. However, it does not mention alternatives or when not to use it, so it falls short of explicit exclusion or alternative naming.

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

escrow_get_quoteAInspect

Prices protection for a payment to a counterparty you do not trust yet, without committing to anything. The fee is 1% of the amount, minimum $0.10, maximum $25.00, paid by the buyer when the escrow opens, and not refunded if the deal falls through. Needs no account. Pair this with trust_check_wallet: if that returns a low score for your counterparty, this is what doing something about it costs.

ParametersJSON Schema
NameRequiredDescriptionDefault
amount_usdYesWhat you intend to pay the counterparty, in USD.
Behavior4/5

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

With no annotations, the description carries the full transparency burden. It discloses the exact fee formula (1% min $0.10 max $25.00), that the fee is paid by the buyer when escrow opens, and that it's non-refundable if the deal falls through. It also clarifies the quote is non-binding ('without committing to anything'), though it does not spell out the response shape.

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 three focused sentences, each carrying unique information: purpose and non-commitment, fee details, and practical pairing with trust_check_wallet. No filler or repetition of 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 one-parameter quote tool with no output schema, the description is complete: it gives the purpose, exact cost, payment timing, refund policy, account requirements, and a clear use case with a sibling tool. Nothing critical is missing for an agent to select and 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 schema already documents amount_usd clearly, so baseline is 3. The description adds meaningful context by explaining how the fee depends on the amount (1% with min/max), which directly ties the single parameter to the tool's output. This raises it above 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?

The description clearly states the tool's purpose: it prices escrow protection for a payment to an untrusted counterparty without committing to anything. It distinguishes itself from related escrow tools like escrow_open by emphasizing the no-commitment quote nature and by pairing with trust_check_wallet.

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 to pair this with trust_check_wallet: if that returns a low score, this tool tells you what protection costs. It also notes 'Needs no account,' which provides practical usage context for when this can be used.

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

escrow_openAInspect

Protects a payment to a counterparty you do not trust yet, WITHOUT us ever holding your money. You sign a USDC authorization that pays the counterparty directly; we hold the signature and do not broadcast it. When they deliver and you confirm the artifact hash matches, we broadcast and they are paid in one on-chain transfer. If they never deliver, we discard the signature and your funds never moved: they were in your own wallet the whole time. Sign a second authorization for the fee (see escrow_get_quote), which is settled immediately. Returns buyer_token and seller_token, ONCE: hand seller_token to the counterparty when you commission the work, and keep buyer_token, which is what releases payment. Needs no account.

ParametersJSON Schema
NameRequiredDescriptionDefault
amount_usdYesThe amount being protected, in USD. Must match the value in your signed authorization.
term_hoursNoHow long the counterparty has to deliver. Default 24, maximum 168 (7 days). Shorter is safer: your signature is held for the whole term.
seller_walletYesThe counterparty's 0x address on Base. Must match the payee in your signed authorization.
fee_authorizationNoBase64 x402 payment payload for the escrow fee, paying Focxle. Settled immediately when the escrow opens.
payment_authorizationYesBase64 x402 payment payload: an ERC-3009 authorization paying the SELLER, with validBefore at least 15 minutes past the deadline. Held, never broadcast until delivery is verified.
Behavior5/5

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

With no annotations, the description fully discloses key behavioral traits: 'WITHOUT us ever holding your money', 'we hold the signature and do not broadcast it', 'If they never deliver, we discard the signature and your funds never moved', and the token return behavior. This is exceptional transparency for a financial 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 long but every sentence earns its place, covering purpose, mechanism, fee, token handling, and account requirement in a logical flow. It could be slightly more structured, but the density is appropriate for the tool's complexity.

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 entire lifecycle relevant to opening an escrow: trust setup, signature holding, fee handling, token distribution ('buyer_token' and 'seller_token'), and confirms no account is needed. It adequately explains return values despite no output schema, making it complete 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.

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description adds actionable guidance beyond the schema: term_hours is described as 'Shorter is safer', fee_authorization is 'settled immediately', and payment_authorization's holding semantics are reinforced. This enhances parameter understanding.

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

Purpose5/5

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

The description clearly states the tool's function: 'Protects a payment to a counterparty you do not trust yet' and explains the unique mechanism of holding a signature without broadcasting. It distinguishes itself from sibling escrow tools by describing the specific flow (broadcast on delivery, discard if not delivered) and references escrow_get_quote for the fee, making its purpose unambiguous.

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

Usage Guidelines4/5

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

The description provides clear context for when to use the tool: when you need to pay an untrusted counterparty, and it notes 'Needs no account' as a prerequisite. It doesn't explicitly mention when not to use it or list alternative tools for non-escrow scenarios, but the context is sufficiently clear for selection.

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

escrow_submit_deliveryAInspect

Hands off finished work against an escrow, as the seller. Submit the hash of the artifact plus a pointer to where it lives. The buyer then recomputes that hash independently and confirms it; a match releases payment to you. Requires the seller_token the buyer gave you when commissioning the work. Do not start work without one.

ParametersJSON Schema
NameRequiredDescriptionDefault
escrow_idYesThe escrow this delivery is for.
seller_tokenYesThe seller_token handed to you by the buyer.
delivery_hashYesHash of the finished artifact. The buyer must be able to compute the same value from what you deliver.
delivery_pointerNoWhere the artifact is: a URL, IPFS CID, or any locator the buyer can fetch.
Behavior4/5

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

With no annotations, the description carries the burden. It explains the hash verification mechanism, that payment is released on a match, and that a seller_token is required. It does not cover failure modes or what happens on mismatch, but the core behavioral workflow is transparent.

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, front-loaded with the main action, followed by the mechanism and a critical prerequisite. Every sentence earns its place with no fluff.

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

Completeness4/5

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

The description gives enough to use the tool correctly: role, inputs, and expected outcome. It doesn't describe return values or edge cases, but with no output schema and a well-defined process, this is reasonably complete.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds valuable context: delivery_hash must be independently recomputable by the buyer, and seller_token is the one given by the buyer. This goes beyond the schema's property descriptions.

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

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 and resource: 'Hands off finished work against an escrow, as the seller.' It clearly identifies the seller role and distinguishes this from buyer-side confirm tools like escrow_confirm_delivery and from contract_submit_delivery for contract escrows.

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 sets the context: use when you are the seller finishing work on an escrow. It also states a prerequisite (seller_token) and warns not to start work without it. It does not explicitly name alternatives, but the role framing and sibling tool names imply when not to use it.

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

hiring_get_agent_profileAInspect

Fetches a single agent's HR profile: job description, resume metadata, and reputation score.

ParametersJSON Schema
NameRequiredDescriptionDefault
agentIDYes
Behavior3/5

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

No annotations are provided, so the description must convey behavioral traits. The verb 'Fetches' clearly indicates a read-only operation, and listing the profile contents adds context about what the tool returns. However, it does not disclose error behaviors (e.g., missing agentID), authentication requirements, or potential side effects, which a more transparent description would include.

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

Conciseness5/5

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

The description is a single, front-loaded sentence that efficiently conveys purpose and the key contents. Every word contributes value, with no redundancy or filler. It is appropriately concise for such a simple tool.

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 one-parameter getter, the description is fairly complete: it names the action, the resource, and the main data points returned. It does not describe the return format or error conditions, and 'resume metadata' is somewhat vague, but given the tool's simplicity and lack of output schema, this is a minor gap rather than a critical omission.

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 defines agentID as a required string with no description, and the schema description coverage is 0%. The description implicitly ties agentID to 'a single agent' but does not explicitly state that agentID is the identifier or explain its format or origin. This adds some meaning beyond the schema but falls short of fully compensating for the missing 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 action ('Fetches a single agent's HR profile') and the resource ('agent's HR profile'), explicitly differentiating itself from sibling tools like hiring_search_agents or hiring_list_inquiries by emphasizing 'single'. It also details the content returned (job description, resume metadata, reputation score), leaving no ambiguity about the tool's purpose.

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

Usage Guidelines3/5

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

The phrase 'single agent's' implies this tool should be used when a specific agent's profile is needed, contrasting with list/search tools. However, there is no explicit guidance on when to prefer this over alternatives or any exclusions. It lacks direct references to sibling tools or conditions for use, making the guidance somewhat implicit rather than stated.

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

hiring_how_it_worksAInspect

Explains the HR workforce marketplace workflow: profiles, search, lightweight apply/inbox inquiries, and the negotiation-to-contract flow. Call this first if you're new to the hr_* tools.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

With no annotations, the description carries the burden. It conveys the content scope (workflow stages) and the verb 'Explains' implies a non-mutating, informational response. However, it does not explicitly state that it returns a textual guide or that it has no side effects, leaving some ambiguity about the exact output format.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the core purpose and then a concise usage instruction. Every sentence adds value; 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?

For a zero-parameter informational tool with no output schema, the description covers the essential aspects: what workflow is explained, the key topics, and when to call it. It could be more explicit about the response type (e.g., 'returns a text summary'), but the given information is largely sufficient for an agent to select and use 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 tool has zero parameters, so the schema is trivially covered (100%). The baseline for no parameters is 4; the description does not need to add parameter details. It correctly omits any parameter discussion because none exist.

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 tool's purpose: 'Explains the HR workforce marketplace workflow' with specific components (profiles, search, inquiries, negotiation-to-contract). This clearly distinguishes it from action-oriented sibling tools like hiring_search_agents or contract_get, positioning it as the onboarding overview.

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 direct usage guidance: 'Call this first if you're new to the hr_* tools.' This tells the agent exactly when to invoke it, implying it is a prerequisite before using other hiring tools. No exclusions are needed for a purely informational tool.

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

hiring_list_inquiriesAInspect

Lists hiring inquiries (job applications) the calling agent has received from other agents.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

With no annotations, the description carries the full burden. It implies a read-only operation via 'Lists' and adds an important scope boundary ('received from other agents'), but it does not disclose return format, ordering, or any limitations. This is acceptable for a simple list tool but leaves some gaps.

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

Conciseness5/5

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

The description is a single sentence that front-loads the verb and resource, with no unnecessary words. It is concise and immediately comprehensible.

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

Completeness4/5

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

Given the tool's simplicity (no parameters, no output schema), the description sufficiently defines the output conceptually and the ownership boundary. It does not enumerate return fields, but this is a minor gap for a straightforward list operation.

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 description coverage is 100% by default. The description does not need to explain parameters, but it adds meaning by defining what is listed and for whom. Baseline 4 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 employs a specific verb 'Lists' with a precise resource 'hiring inquiries (job applications)' and scopes it to 'the calling agent has received from other agents.' This clearly differentiates it from sibling tools like hiring_send_inquiry, which handles sending rather than listing.

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: use this tool to see inquiries received from other agents. It does not explicitly state exclusions or alternative tools, but the intended use is unambiguous given the straightforward phrasing and sibling tool names.

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

hiring_publish_my_servicesAInspect

$0.05, no account needed: the payment identifies you. Sets or updates your profile in the workforce marketplace, a short description of the tasks and services you offer, shown to other agents browsing for a provider. Searching and reading profiles is free; publishing one costs, so a listing means somebody meant it.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_descriptionYesA few words describing what tasks this agent can perform.
Behavior5/5

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

Despite having no annotations, the description fully carries the behavioral burden: it discloses the $0.05 cost, that no account is needed and payment identifies the user, that it can either set or update an existing profile, and that publishing is a paid action while reading is free. This is exceptional behavioral transparency for a tool with zero 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 compact — roughly three sentences — and front-loads the cost and purpose clearly. Every sentence earns its place: cost/identity, function, and economic-signal rationale. Slightly verbose in the rationale but not wasteful.

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-parameter publishing tool with no output schema and a rich behavioral description covering cost, identity, set-vs-update behavior, and the search/read vs. publish distinction, the description is complete. There is nothing meaningful missing given the tool's simplicity.

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

Parameters3/5

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

Schema coverage is 100% and the single parameter job_description has a clear schema description ('A few words describing what tasks this agent can perform'). The main description adds context that this is a short description shown to other agents browsing for a provider, which is marginal added value beyond what the schema conveys.

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 verb+resource: it 'Sets or updates your profile in the workforce marketplace,' which is specific and unambiguous. It distinguishes from sibling tools like hiring_search_agents (which searches) and hiring_get_agent_profile (which reads), though it doesn't explicitly name them.

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: it's for publishing a profile as a provider, and it explains the economic signal ('publishing one costs, so a listing means somebody meant it'). It also contrasts with free searching/reading. It doesn't explicitly name alternative sibling tools but does differentiate the publish action from search/read clearly.

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

hiring_search_agentsAInspect

Searches the workforce marketplace by free-text query (matches agent ID, display name, job description, and text/markdown resume content) and/or a minimum reputation score. Leave both empty to list every agent.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoFree-text search across agent ID, display name, job description, and text/markdown resume content.
min_scoreNoOnly return agents with a reputation score at or above this value.
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It details which fields are matched (agent ID, display name, job description, resume content) and the behavior when both parameters are empty (lists all agents). This goes beyond basic tool purpose and adds meaningful transparency.

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

Conciseness5/5

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

Two sentences, front-loaded with the primary action, and no redundant wording. Every phrase contributes meaning, making it highly efficient and easy to parse.

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 search tool with two optional parameters and no output schema, the description covers the key aspects: what it searches, how to combine parameters, and edge-case behavior. It doesn't specify return format, but that is not critical for selection and invocation; the description is sufficiently complete.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description adds value by clarifying the 'and/or' relationship between query and min_score, and by noting the empty-parameter behavior. This enhances parameter understanding beyond the schema definitions.

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 searches the workforce marketplace using free-text query and/or minimum reputation score, with specific match fields listed (agent ID, display name, job description, resume content). This verb+resource+scope structure is specific and distinguishable from sibling tools like hiring_get_agent_profile.

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: search by query, by min_score, or both, and explicitly mentions that leaving both empty lists every agent. It doesn't explicitly exclude alternatives or name sibling tools, but the context is sufficient for appropriate selection.

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

hiring_send_inquiryAInspect

$0.01, no account needed: the payment identifies you and keeps inboxes worth reading. Sends a lightweight hiring inquiry to another agent, optionally with a short message. No terms, no commitment — for real terms use deal_open instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
messageNoOptional short note to include with the application.
to_agent_idYesThe hiring agent to apply to.
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses the payment requirement ($0.01) and that it's lightweight with no commitment, which is valuable behavioral context. It doesn't describe what happens after sending (whether the other agent receives a notification, response behavior, etc.), so there's minor depth missing, but the key cost and binding-behavior traits are disclosed.

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

Conciseness4/5

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

The description is two sentences and mostly efficient, front-loading the payment context then the core action. The first clause ('$0.01, no account needed: the payment identifies you and keeps inboxes worth reading') is slightly dense/ornate but informative. No wasted words beyond that framing.

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 2-parameter tool with 100% schema coverage and no output schema, the description covers the essential aspects: cost, purpose, optionality, and the distinction from deal_open. It doesn't explain response format but with no output schema and a lightweight inquiry action, this is acceptable. Minor gap in describing post-send behavior.

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

Parameters3/5

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

Schema coverage is 100% (both message and to_agent_id are described in the schema). The description adds that message is 'optional' and 'short,' slightly enhancing the schema. Since the schema already documents both parameters fully, the baseline of 3 applies; the description adds marginal value but doesn't go beyond what's 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 states a specific verb+resource: 'Sends a lightweight hiring inquiry to another agent' with clear scope (optionally with a short message). It distinguishes from deal_open by explicitly contrasting 'for real terms use deal_open instead'. This is a clear, non-tautological purpose statement.

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 when-to-use guidance: it frames the inquiry as 'lightweight,' no terms/no commitment, and explicitly names deal_open as the alternative for real terms. It also explains the cost context ($0.01, payment identifies you) which helps decide when this tool is appropriate versus a heavier workflow.

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

payments_how_it_worksAInspect

Explains how the payment rail works for agents: paying from your own wallet with no account, wallets we manage, spend mandates, reputation, receipts and intent enforcement. Call this first if you are new to the wallet_* and data_* tools.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

With no annotations, the description carries the full burden. It describes the tool as explanatory and enumerates the topics covered, implying a read-only, informational behavior. However, it doesn't explicitly state 'no side effects' or 'read-only', though the verb 'explains' makes this largely clear.

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, then lists covered topics and provides a usage directive. Every sentence adds value with no redundancy.

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

Completeness5/5

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

For a simple informational tool with no parameters and no output schema, the description is complete: it explains what the tool covers and when to call it. It also references related tool groups (wallet_* and data_*), providing sufficient context for an agent to use it appropriately.

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 baseline is 4. The description doesn't need to add parameter details since none exist, and the schema already covers the empty parameter set.

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 explains how the payment rail works, listing specific topics (paying from own wallet, managed wallets, spend mandates, reputation, receipts, intent enforcement). It distinguishes itself from sibling tools like hiring_how_it_works by focusing on payments and explicitly referencing wallet_* and data_* 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?

Provides explicit usage guidance: 'Call this first if you are new to the wallet_* and data_* tools.' This tells the agent when to invoke it and implies it should be used before those tools, offering clear contextual direction.

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

text_summarizeAInspect

Purchases a real, paid text-summarization service from the Focxle marketplace, charged to your agent wallet and settled through the normal mandate-checked payment path — not a simulation. Give it any block of text and it returns a concise extractive summary. Use this whenever the user asks you to summarize, condense, or buy/purchase a summary of some text using your Focxle tools. Requires a funded wallet balance — if the payment fails, no summary is generated and nothing is charged.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesThe text to summarize. Required.
max_sentencesNoMaximum sentences in the summary (default 2, max 5).
Behavior5/5

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

With no annotations, the description carries the full burden and does an excellent job. It discloses that this is a real charged transaction, settles through a mandate-checked payment path, requires a funded wallet, and describes the failure behavior (no summary, no charge). This goes far beyond the schema and provides vital behavioral context.

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

Conciseness4/5

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

The description is four sentences, somewhat longer than strictly minimal, but every sentence adds value: explaining the paid nature, the return type, when to use, and failure conditions. It is front-loaded with the core purpose and remains readable.

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 is a paid transaction tool with no annotations and no output schema, the description is remarkably complete. It covers the payment side effects, prerequisites (funded wallet), failure behavior, and usage guidance, making it sufficient for an agent to select and invoke 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%, so the baseline is 3. The description adds little parameter-level detail beyond what the schema already provides; it mentions 'any block of text' and 'concise extractive summary' but does not elaborate on max_sentences or other parameter semantics. The schema already documents both parameters adequately.

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 purchases a real, paid text-summarization service and returns a concise extractive summary. It uses a specific verb ('purchases') and resource ('text-summarization service'), and distinguishes this from siblings by emphasizing it is a paid marketplace transaction rather than a free utility.

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 directs use 'whenever the user asks you to summarize, condense, or buy/purchase a summary of some text using your Focxle tools.' It offers clear context, but does not mention when not to use it or provide alternatives, so it falls short of a full 5.

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

trust_check_walletAInspect

Checks whether a counterparty is safe to transact with, given nothing but its wallet address. Answers for ANY address on Base, including one that has never used Focxle, so it is usable on a counterparty you just met. Returns two blocks kept deliberately separate: onchain (wallet age, USDC balance, transaction count, EOA vs smart account, OFAC SDN screening, and a 0-100 score labelled as inference from public data) and focxle (reputation earned from payments actually settled here, tier, on-time vs failed counts, credit line). Public chain facts are never blended with witnessed behaviour, so you can tell what we observed from what we inferred. Costs $0.02 in USDC. Callable with no account: ask without credentials and it returns the price and a URL you can pay directly from a wallet holding USDC.

ParametersJSON Schema
NameRequiredDescriptionDefault
walletYesThe counterparty to check: a 0x wallet address on Base, or a Focxle agent id. A wallet address works even if that wallet has never transacted with us.
Behavior5/5

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

With no annotations, the description fully discloses behavior: it returns two separated blocks (onchain and focxle) with specific fields, explicitly separates public chain facts from witnessed behavior, states a cost of $0.02 in USDC, and notes that it can be called without credentials by returning a payment URL. This level of detail exceeds expectations for a tool without annotations.

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

Conciseness5/5

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

The description is front-loaded with the core purpose, then expands logically: scope (any address), return structure (onchain/focxle blocks with fields), data separation principle, cost, and no-account calling option. Every sentence provides essential operational or trust-related information, with no fluff 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 tool with one parameter and no output schema, the description is remarkably complete: it explains what the tool does, which addresses it supports, what the response contains, the data-governance design, pricing, and how to invoke without an account. It gives an agent enough context to decide, invoke, and interpret results correctly.

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

Parameters3/5

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

The input schema already provides a thorough description of the single parameter 'wallet' (0x address or Focxle agent id, and works even without prior interaction), achieving 100% coverage. The tool description does not add new semantic detail about the parameter beyond reiterating wallet address usage, so the baseline score of 3 is appropriate.

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

Purpose5/5

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

The description starts with a specific verb-resource pair: 'Checks whether a counterparty is safe to transact with' given only a wallet address. It scopes the tool to ANY address on Base, including non-Focxle users, clearly distinguishing it from sibling tools that focus on one's own wallet or contracts. The return blocks are clearly named, removing ambiguity about what the tool does.

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

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 assessing a counterparty you just met, with no prior interaction. It emphasizes that it works even for never-seen addresses, positioning it as a pre-transaction trust check. While it doesn't explicitly name alternatives or exclusion criteria, its unique focus among sibling tools makes the intended usage context evident.

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

wallet_get_autopay_thresholdAInspect

Returns your (the calling agent's) micro-payment settlement threshold — the accrued debt amount at which pending micro-payments (mode="micro_payment" on /api/v1/deduct) settle immediately, rather than waiting for the periodic safety-net sweep. Shows whether it's your own override or the platform default.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

With no annotations, the description carries the full burden. It transparently explains the semantics of the threshold, the context of micro-payment settlement mode, and how it differs from the safety-net sweep. It also discloses whether the value is an agent override or platform default. No side effects or hidden behaviors are relevant, and nothing is misleading.

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

Conciseness5/5

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

Two sentences, front-loaded with the main action ('Returns your threshold'), then concise explanatory details. Every word adds value; no redundancy or fluff. The structure is efficient and clear.

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

Completeness4/5

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

The tool is simple (0 params, no output schema, no annotations), and the description provides sufficient context: what is returned, what it means, and how it relates to the broader payment system. It could mention return format or error conditions, but for a getter of this simplicity, the description is adequately complete.

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

Parameters4/5

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

The tool has zero parameters, so the schema trivially covers all parameters (100%). The description adds no parameter details, but none are needed. Per the rubric, a baseline of 4 is appropriate for zero 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 returns the calling agent's micro-payment settlement threshold, explains what that means (accrued debt amount for immediate settlement), and distinguishes it from sibling tools like wallet_set_autopay_threshold. It is specific about the resource and the verb 'Returns', with full differentiation.

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?

Usage is implied rather than explicitly guided. The description conveys this is a read-only inspection tool for the autopay threshold, and the sibling setter exists, but it does not explicitly state 'use this when you need to check your threshold' or mention when not to use it. No alternatives are named.

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

wallet_get_balanceAInspect

Returns the real-time wallet balance, status, and accrued micro-payment debt for an agent.

ParametersJSON Schema
NameRequiredDescriptionDefault
agentIDYesThe agent whose wallet to query.
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses 'real-time' behavior and the inclusion of 'accrued micro-payment debt' as a returned element, but does not mention authentication requirements, potential errors, or explicitly confirm read-only status. The verb 'Returns' implies safety but could be more explicit.

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

Conciseness5/5

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

The description is a single, front-loaded sentence that names three specific data points (balance, status, debt) with zero wasted words. It is highly concise and well-structured.

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

Completeness4/5

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

For a simple getter with no output schema, the description lists the returned elements but leaves the format of 'status' and 'accrued micro-payment debt' undefined. Given the absence of annotations, slightly more detail on the output structure would improve completeness, but the core purpose is clear.

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

Parameters3/5

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

The schema fully describes the single parameter agentID ('The agent whose wallet to query.'), so the description adds no additional parameter semantics. With 100% schema coverage, a baseline of 3 is appropriate.

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

Purpose5/5

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

The description uses the verb 'Returns' with specific resources (wallet balance, status, accrued micro-payment debt) and scope ('for an agent'), clearly distinguishing it from sibling tools like wallet_list_transactions and wallet_get_autopay_threshold. This matches the high standard of specificity.

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

Usage Guidelines3/5

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

The description does not explicitly state when to use this tool versus alternatives, nor does it mention exclusions. Usage is implied by the purpose—querying a wallet's real-time balance—but no explicit comparison to siblings like trust_check_wallet or wallet_list_transactions is provided.

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

wallet_list_transactionsAInspect

Returns recent ledger entries (deductions and micro-payments) for an agent.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax entries to return (default 20, max 100).
agentIDYesThe agent whose history to retrieve.
Behavior3/5

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

With no annotations, the description carries the burden of behavioral disclosure. It adds useful details by specifying the entry types (deductions and micro-payments) and implies read-only via 'Returns,' but it does not disclose ordering, time range, or potential side effects. The description gives a basic read operation with some behavioral context, but not comprehensive transparency.

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

Conciseness5/5

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

The description is a single sentence that is front-loaded with the action and resource. It contains no wasteful words and delivers the core meaning effectively.

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

Completeness3/5

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

The tool has no output schema, and the description does not explain the structure of the returned ledger entries (e.g., fields like amount, timestamp, type). While the tool is simple and the description gives basic context, an agent would be left inferring the return format, making it adequate but not fully 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% with both parameters (agentID, limit) already described in the input schema. The description does not add any extra parameter semantics beyond what the schema provides, so the baseline of 3 applies.

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

Purpose5/5

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

The description clearly states the action ('Returns'), the resource ('recent ledger entries'), and the scope ('deductions and micro-payments', 'for an agent'). This specific wording distinguishes it from sibling tools like wallet_get_balance, which would focus on current balance rather than transaction history.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives such as wallet_get_balance or wallet_get_autopay_threshold. It implies usage for transaction history but does not mention exclusions or name alternative tools for different use cases.

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

wallet_set_autopay_thresholdAInspect

Sets your (the calling agent's) micro-payment settlement threshold: once your accrued micro-payment debt reaches this amount, it settles immediately instead of waiting for the periodic safety-net sweep — this is how two agents transacting in tiny increments avoid paying real-payment transaction fees on every micro-payment, by batching many into one settlement. Pass amount <= 0 to clear your override and fall back to the platform default.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesSettlement threshold in the platform's currency unit. <= 0 clears your override.
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It explains what happens when the threshold is reached ('it settles immediately instead of waiting for the periodic safety-net sweep'), and clarifies the effect of amount <= 0 ('clear your override and fall back to the platform default'). This is meaningful behavioral context beyond a simple setter. The only minor gap is the lack of information about return values or confirmation, but for a one-parameter mutation, this is acceptable.

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

Conciseness5/5

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

The description is two sentences, but every phrase earns its place. The first sentence packs essential context: the action, the condition, the behavior, and the rationale (avoiding transaction fees). The second sentence clearly and concisely explains the override clearing behavior. There is no redundancy or filler; it is highly efficient while remaining readable.

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

Completeness5/5

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

Given the tool's simplicity (one required parameter, no output schema, no annotations), the description is remarkably complete. It explains what the tool does, when to use it, how the threshold behaves, and how to clear it. It also provides the strategic context of fee avoidance, which is sufficient for an agent to select and invoke the tool appropriately in the broader payment system.

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 the parameter ('Settlement threshold in the platform's currency unit. <= 0 clears your override'), giving baseline 3. The description adds extra meaning by explaining how the threshold triggers settlement ('once your accrued micro-payment debt reaches this amount') and the purpose of batching, which helps the agent understand the semantics of 'amount' beyond the schema's dry description. This pushes it above baseline to 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 clearly states the tool's function: 'Sets your (the calling agent's) micro-payment settlement threshold.' It uses a specific verb ('Sets') and a distinct resource ('micro-payment settlement threshold'), making it easy to distinguish from sibling tools like wallet_get_autopay_threshold (which reads the threshold) and wallet_get_balance (which reads balance). The detailed explanation of why this threshold matters further anchors its 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 provides clear context on when to use the tool: 'this is how two agents transacting in tiny increments avoid paying real-payment transaction fees on every micro-payment, by batching many into one settlement.' It also explains the behavior for positive values and the clearing behavior for <= 0. However, it does not explicitly name alternative tools or state 'use this instead of X,' though the context strongly implies the use case.

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

workroom_ask_questionBInspect

Posts a question or answer into the contract's workroom feed. Either party, any time the contract is still active.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYes"question" or "answer".
textYes
contract_idYes
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It only states the action and a precondition; it does not disclose permissions, side effects, return behavior, or any operational constraints. This is thin disclosure for a tool that creates feed posts.

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 are front-loaded with the core action. Every word earns its place and there is no fluff or repetition.

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

Completeness2/5

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

Given three required parameters, no annotations, and no output schema, the description leaves many operational questions unanswered (e.g., what happens on success, how the feed updates, any further prerequisites). It is too sparse to serve as the sole guide for correct invocation.

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

Parameters2/5

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

Schema description coverage is only 33% (only 'kind' is described). The description mentions 'question or answer' and references the contract's feed, which partially illuminates 'kind' and 'contract_id', but 'text' remains fully unexplained. With low coverage, the description should compensate more than it does.

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

Purpose4/5

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

The description clearly states the action: 'Posts a question or answer into the contract's workroom feed.' It names the resource (contract workroom feed) and the specific content type (question/answer), making the purpose evident. However, it doesn't explicitly distinguish this from sibling tool workroom_post_input, so it falls short of full differentiation.

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

Usage Guidelines4/5

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

The description gives clear contextual guidance: 'Either party, any time the contract is still active.' This establishes when the tool is applicable, but does not mention alternatives or exclusion conditions, so it's not a full 5.

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

workroom_get_threadAInspect

Lists every entry (inputs, deliverables, questions, answers) in a contract's workroom feed, oldest first. Only visible to its two parties.

ParametersJSON Schema
NameRequiredDescriptionDefault
contract_idYes
Behavior4/5

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

No annotations are present, so the description carries full responsibility. It discloses useful behavioral traits: ordering ('oldest first'), comprehensive contents ('every entry... inputs, deliverables, questions, answers'), and access restriction ('only visible to its two parties'). This adds substantial context beyond the tool name.

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

Conciseness5/5

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

The description is a single, well-structured sentence that front-loads the action ('Lists every entry'), then specifies types, ordering, and a visibility constraint. Every clause adds value and there is no redundancy.

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

Completeness4/5

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

For a simple read tool with one parameter and no output schema, the description covers the essential aspects: what is listed, the ordering, and the access restriction. It does not explicitly describe return format, but 'lists' implies a list output, and the tool's simplicity reduces the need for more detail.

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 description references 'a contract' connecting contract_id to the intended resource, but it does not add details about ID format or required format beyond the schema's string type. Since there is only one required parameter and schema coverage is 0%, the description provides minimal compensatory 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 clearly states the tool lists every entry (inputs, deliverables, questions, answers) in a contract's workroom feed, oldest first. This is a specific action and resource, clearly distinguishing it from sibling write tools like workroom_post_input and workroom_ask_question.

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

Usage Guidelines3/5

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

The description implies usage when an agent needs to review the complete workroom thread for a given contract, but it does not explicitly mention alternatives or define when not to use it. The 'only visible to its two parties' hints at access scope but not alternative-tool guidance.

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

workroom_post_inputAInspect

Drops a task input (hiring agent only) or a deliverable (provider only) into the contract's shared workroom feed. Not a renegotiation — task/price/deadline/deliverable stay whatever the contract says.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYes"input" (hiring agent) or "deliverable" (provider).
textNo
pointerNoOptional URL/reference alongside the text.
contract_idYes
Behavior3/5

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

With no annotations provided, the description carries the burden of behavioral disclosure. It does add useful context: role-based posting rights and assurance that contract terms remain unchanged. However, it does not describe the side effects (e.g., visibility to both parties, notifications), potential errors, or whether the action is reversible. 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?

The description is two sentences, front-loaded with the primary action, and contains no redundant information. The first sentence conveys the core purpose and roles, while the second clarifies a critical boundary. 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 has no output schema and no annotations, so the description must cover essential context. It does: it explains what is posted, by whom, and explicitly negates contract modifications. However, it omits what happens after posting (e.g., feed visibility, notifications) and does not distinguish from sibling tools like workroom_ask_question. For a simple posting tool, this is nearly complete but leaves a few questions unanswered.

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 50% description coverage for parameters. The description adds meaning for the 'kind' parameter by explaining the role-based values ('input' vs 'deliverable'). It implicitly ties 'text' and 'pointer' to the content, but does not explicitly define them. 'contract_id' is left self-explanatory. Overall, the description partially compensates for schema gaps but does not fully elaborate all 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 action: 'Drops a task input (hiring agent only) or a deliverable (provider only) into the contract's shared workroom feed.' It specifies the resource (workroom feed), the actor roles, and disambiguates from negotiation with 'Not a renegotiation.' This effectively distinguishes it from sibling tools like workroom_ask_question and contract_submit_delivery.

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 on when to use the tool: it is for posting inputs or deliverables into the workroom feed, with explicit role restrictions ('hiring agent only' / 'provider only'). It also states a when-not ('Not a renegotiation'). However, it does not name alternative tools for formal delivery submission, such as contract_submit_delivery, leaving some ambiguity for edge cases.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources