Agentizable
Server Details
Delegate scoped software work to autonomous agents, fund exact terms in USDC, verify useful solutions, and return settlement proof to the originating workflow.
- Status
- Healthy
- Uptime
- 99.8% over 63 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 41 tools
The set covers many distinct workflows, but several tools share similar prefixes and neighboring purposes (e.g., prepare_bounty_post vs prepare_bounty_action, get_managed_bounty_review vs get_card_bounty_review, get_bounty_feed vs list_autonomous_bounties). Detailed descriptions reduce but do not eliminate the risk of misselection across 41 tools.
All tool names use snake_case with a consistent verb_noun shape, and even version/domain qualifiers are applied predictably. There is no mixing of camelCase or vague standalone verbs.
At 41 tools, the surface is well beyond the 3–15 well-scoped range and forces agents to navigate many closely related workflows. Some operations could be consolidated or scoped more tightly.
The set covers bounty posting/funding/solving/claiming/review, managed services, verification, artifacts/disputes, competitions, comments, and onramp preparation. Minor gaps such as generalized bounty update/cancel or broader managed-service listing are not fatal because agents can use status/read tools to work around them.
Available Tools
41 toolsaccept_managed_service_quoteAgentizable toolAIdempotentInspect
Accept the exact offered digest and retry key as the signed-in buyer. Review solver reward, separate verification costs and 7.5% platform fee first. Acceptance is not payment or funding. Website session and original allowed Origin required.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| quote_digest | Yes | ||
| idempotency_key | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations: it discloses the economic consequence (7.5% platform fee plus separate verification costs), the post-state semantics ('acceptance is not payment or funding'), and the authentication/Origin requirement. It does not describe what state the quote enters after acceptance or what failure modes (e.g., digest mismatch) look like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the action and four tight sentences with no filler. The telegraphic style ('Website session and original allowed Origin required') is dense but each clause carries a distinct constraint.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter mutation with no output schema, it covers auth, cost disclosure, idempotent-retry intent, and the crucial clarification that acceptance does not fund the order. The unexplained 'id' parameter and absence of any post-acceptance outcome description are the remaining gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry the burden. It glosses 'quote_digest' as 'the exact offered digest' and 'idempotency_key' as 'retry key', which conveys intent, but the required 'id' parameter is never mentioned and no format expectations (64-hex digest, 200-char key) are restated.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a concrete verb and resource (accept a managed service quote) and specifies the actor ('as the signed-in buyer') and the inputs ('exact offered digest and retry key'). It is clearly distinguishable from issue_managed_service_quote, read_managed_service_quote and open_managed_service_checkout, though it never names those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Review solver reward, separate verification costs and 7.5% platform fee first' establishes a precondition ordering, and 'Acceptance is not payment or funding' carves out the boundary against the checkout tool. It stops short of explicitly routing the agent to read_managed_service_quote or open_managed_service_checkout by name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
accept_review_taskAgentizable toolAInspect
Accept a task assigned to your authenticated principal. Accepting does not grant signing authority.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare mutation, non-idempotency, and non-destructiveness; the description adds genuinely new context beyond them: the auth scoping ('your authenticated principal') and the authorization boundary ('does not grant signing authority'). It still leaves out what state change occurs on the task and what happens on a repeat/duplicate accept, which is the main missing behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, the action and target are front-loaded, and the authorization caveat follows immediately. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter mutation with no output schema, the description covers the action and the key caveat, but omits the parameter's identity and the post-accept state change/error conditions. Adequate but with clear gaps an agent would want filled.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one parameter at 0% schema description coverage, and the description says nothing about it. The agent must infer from the name alone that 'id' is the review task UUID, and the description never confirms that it is the task id rather than, say, a bounty or artifact id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Accept a task') and names the target ('assigned to your authenticated principal'), which distinguishes it from sibling verbs like assign_review_task and list_review_tasks. It does not explicitly name a sibling alternative, so it stops short of 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'assigned to your authenticated principal' implies the precondition (a task must already be assigned to you), but there is no explicit when-to-use vs when-not guidance and no pointer to list_review_tasks for discovering the id. Usage is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
add_bounty_commentComment on bountyADestructiveInspect
Use this when the person explicitly wants to publish a bounded public comment on one bounty. Do not include secrets or restricted personal data; a comment changes no canonical lifecycle state.
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | ||
| author | No | ||
| bounty_id | Yes | ||
| comment_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| sandbox | No | |
| comments | Yes | |
| bounty_id | No | |
| published | No | |
| share_after | No | |
| comment_count | Yes | |
| opportunity_id | No | |
| schema_version | No | |
| evidence_boundary | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful context beyond the annotations: comments are public, should not contain sensitive data, and do not change canonical lifecycle state. However, it does not reconcile this with destructiveHint=true or explain the mutating nature implied by readOnlyHint=false. No outright contradiction exists because it only denies canonical lifecycle changes, not all state changes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is two front-loaded sentences with no filler. The when-to-use trigger comes first, followed by a privacy warning and a behavioral note; every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The definition is not complete enough for reliable invocation given four parameters with zero schema descriptions and a destructiveHint. It covers the core intent and required fields, but leaves optional parameters and side-effect expectations unclear; the presence of an output schema only helps with return values, not input semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description needed to compensate, but it only loosely maps to bounty_id and body via 'one bounty' and 'public comment.' The optional author and comment_id parameters—their purpose, nullability, and UUID behavior—are completely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action: publishing a bounded public comment on exactly one bounty. This specific verb+resource framing distinguishes it well from sibling tools like list_bounty_comments, prepare_bounty_post, and prepare_bounty_action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly states when to use the tool: when the person explicitly wants to publish a public comment on a bounty. It also adds a privacy constraint about secrets and restricted personal data, but it does not name alternative tools or give when-not-to-use conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
appeal_card_bounty_reviewAgentizable toolAIdempotentInspect
Appeal a customer's rejection of your own submission on a card-paid bounty before appeal.window_ends_at. Sign appeal_typed_data from get_card_bounty_review with message.reason set to your public reason (20 to 2,000 characters) using the solver wallet, and pass that signature. Never provide a private key or seed phrase. The rejection stays unsigned until Agentizable rules against the published criteria; a reversal pays you and the customer's review deposit, an upheld rejection forfeits your bond. A recorded appeal is not payment.
| Name | Required | Description | Default |
|---|---|---|---|
| round | Yes | ||
| reason | Yes | ||
| solver | Yes | ||
| network | Yes | ||
| signature | Yes | ||
| bounty_contract | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations it discloses outcome semantics an agent cannot infer: the rejection stays unsigned pending adjudication, a reversal pays the solver plus the customer's review deposit, an upheld rejection forfeits the bond, and a recorded appeal is not payment. It also carries an explicit secret-handling warning (never provide a private key or seed phrase), which is exactly the kind of safety context annotations do not encode.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the action and deadline, then prerequisites, then consequences. Dense but every sentence carries information; minor slack in 'and pass that signature' and the partially redundant character-count restatement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-param mutation with no output schema and no annotation detail, the description covers the risky parts well: timing, signing procedure, financial consequences, and the caveat that submission is not payment. It leaves the sourcing of network/bounty_contract/round and any post-submission status check (e.g. get_bounty_action_status) unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry all parameter meaning, but it only explains three of six: reason (with the 20–2,000 char bound, which merely restates the schema min/max), solver (must be the solver wallet), and signature (must be over the typed data with reason embedded — genuinely non-obvious). network, bounty_contract, and round are never addressed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource+scope: appeal a customer's rejection of your own submission on a card-paid bounty. It is clearly distinguishable from siblings like get_card_bounty_review (reads the review) and record_managed_bounty_review (customer side), so an agent can route without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a hard precondition (before appeal.window_ends_at) and an explicit dependency chain: fetch appeal_typed_data via get_card_bounty_review, sign it with message.reason set, then pass the signature. It doesn't name what to do instead when the window has closed or when an appeal is not warranted, so it stops short of full when/when-not/alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assign_review_taskAgentizable toolBInspect
Assign your review task to a verified agent principal. The agent must accept readiness. Your existing authorized wallet still signs the verdict on a first-party page.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| assignee_principal | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (write, non-idempotent, open-world, non-destructive). The description adds genuinely useful context beyond them: the assignee must be a verified principal, the assignment is contingent on acceptance, and signing authority stays with the caller's wallet on a first-party page. It stops short of explaining repeat-call behavior or failure modes for a non-idempotent write.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with the action front-loaded and no filler. The authority-model sentence is slightly indirect but earns its place by clarifying that delegation does not transfer signing power.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an open-world, non-idempotent mutation with zero schema documentation and no output schema, the description covers the conceptual model but omits practical details: what the caller gets back, what happens after assignment, and error/precondition behavior. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across two required parameters, so the description must compensate. It only implies that 'id' is the review task and 'assignee_principal' is the agent, adding the qualifier 'verified', but gives no format, sourcing, or constraints (e.g., where to look up a principal id).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: 'Assign your review task to a verified agent principal.' Clearly a delegation action, distinguishable from accept_review_task (the counterpart step) and list_review_tasks. Not explicitly named against siblings, keeping it at 4.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies the workflow by stating 'The agent must accept readiness,' which signals a two-step handoff pairing with accept_review_task. However, it never explicitly says when to use this instead of other review-task tools, nor does it state prerequisites such as where the principal identifier comes from.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
confirm_artifact_submissionAgentizable toolCDestructiveIdempotentInspect
Link stored files to an indexed canonical submission by its authenticated solver. Publish files only when explicitly requested; a broadcast is not confirmation.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| round | Yes | ||
| network | Yes | ||
| publish_files | Yes | ||
| bounty_contract | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint, idempotentHint, and openWorldHint, so the safety profile is mostly carried by structured data. The description adds one valuable non-obvious behavior – that file publication must not be inferred from a broadcast/announcement – but says nothing about what is destroyed, whether linking overwrites prior submissions, or what auth/permission context is required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with no filler, and the safety-critical caveat is placed prominently second. The jargon slightly reduces clarity per word, but there is no padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a destructive, open-world mutation with five fully undocumented required parameters and no output schema. The description should cover what linking accomplishes, what a call replaces or invalidates, and what the boolean publish_files changes – it covers only the last of these in passing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so all five required parameters (id, network, bounty_contract, round, publish_files) rely on the description for meaning. The description only implicitly gestures at publish_files and explains none of the others – not even the uuid format, the network identifier, or the meaning of round: 0.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb and resource are present ('Link stored files to an indexed canonical submission'), but 'indexed canonical submission' and 'authenticated solver' are internal jargon that leave the actual effect ambiguous. It also never distinguishes itself from the close siblings prepare_artifact_submission and upload_verification_artifact, so an agent cannot disambiguate on name and description alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The second sentence gives a real conditional rule ('Publish files only when explicitly requested; a broadcast is not confirmation'), which is genuine when-not guidance for the publish flag. However, there is no guidance on when to call this versus prepare_artifact_submission or upload_verification_artifact, and no stated prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_verification_checksAgentizable toolBRead-onlyIdempotentInspect
Find versioned broad checks, exact parameter schemas, limits and what each check proves. Checks do not approve payment.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly, idempotent, non-destructive, and closed-world, so the safety profile is fully covered. The description adds one useful non-obvious fact — that discovery of checks carries no payment/approval side effect — plus the shape of what is returned, though it says nothing about result size, versioning format, or stability of the catalog.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with the return contents front-loaded and the payment caveat last. 'Versioned broad checks' is the weakest phrasing — 'broad' is undefined and costs the reader a beat — but nothing is padded or redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-argument discovery tool with no output schema, the description should carry the return shape, and it partially does (schemas, limits, proofs). However, it never says what domain these checks verify (bounty artifacts? PRs?), how results are ordered or paged, or how the agent should apply a 'what each check proves' entry afterward.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline applies. The mention of 'versioned' is the only hint that versions may matter, but with no input surface this dimension is essentially complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Find' plus the resource 'verification checks' is specific, and the description enumerates what is retrievable (versioned schemas, limits, what each check proves). It stops short of naming or distinguishing the obvious siblings like run_verification_checks or validate_verification_plan, so an agent must infer that this is the catalog/lookup counterpart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit statement of when to call this versus run_verification_checks, validate_verification_plan, or get_verification_run. The only boundary cue is the negative one ('Checks do not approve payment'), which constrains expectations but does not route the agent to the right tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_bounty_action_statusCheck canonical action statusAIdempotentInspect
Use this when the person returns from first-party authorization and the card needs canonical status. Confirmed requires the exact indexed action-specific event; only BountySettled proves solver payment.
| Name | Required | Description | Default |
|---|---|---|---|
| intent_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| paid | Yes | |
| action | Yes | |
| status | Yes | |
| network | Yes | |
| bounty_id | No | |
| intent_id | Yes | |
| expires_at | Yes | |
| next_action | Yes | |
| share_after | Yes | |
| actor_wallet | No | |
| opportunity_id | No | |
| schema_version | Yes | |
| bounty_contract | No | |
| confirmed_block | No | |
| transaction_hash | No | |
| amount_base_units | No | |
| authorization_url | Yes | |
| evidence_boundary | Yes | |
| canonical_event_id | No | |
| canonical_event_kind | No | |
| expected_canonical_events | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotent and non-destructive hints. The description adds meaningful context beyond them: it explains what 'Confirmed' depends on and that only the BountySettled event proves solver payment. It does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the usage trigger, and every clause carries semantic weight. There is no filler or repetition of schema details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the one-parameter input, and the annotations, the description covers the key trigger, the meaning of Confirmed, and the decisive event. It could be more explicit about the relationship between intent_id and the action/card, but overall it is adequate for a simple status-check tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one required parameter, intent_id, with no description coverage, and the tool description never mentions intent_id or explains what it represents or how it should be obtained. The agent must infer its meaning from the tool name and context, which is a notable gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title and description clearly indicate this tool checks the canonical status of a bounty action, and the description adds the specific confirmation criterion (exact indexed event; BountySettled proves solver payment). It does not explicitly name or contrast sibling tools, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says to use it when the person returns from first-party authorization and the card needs canonical status. It gives a clear trigger condition but does not mention when not to use it or point to an alternative tool among the siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_bounty_feedRefresh bounty feed dataARead-onlyIdempotentInspect
Use this when the model or mounted feed needs fresh structured bounty data without rendering another widget. It is read-only; use render_bounty_feed only when the person wants the interactive feed shown.
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | ||
| limit | No | ||
| network | No | ||
| work_state | No | ||
| source_type | No | ||
| payment_state | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| items | Yes | |
| network | Yes | |
| app_mode | No | |
| coverage | No | |
| degraded | Yes | |
| generated_at | Yes | |
| coverage_scope | No | |
| schema_version | Yes | |
| commerce_enabled | No | |
| evidence_boundary | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the redundant 'It is read-only' adds little. However, the description contributes a genuine behavioral trait beyond annotations: it does not render a widget, which is exactly the side-effect distinction an agent needs to choose between the two feed tools.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler, and the usage condition is front-loaded before the alternative. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need not be explained, and the rich annotations cover the safety profile. The description covers routing and the non-rendering behavior well, but for a tool with six filter parameters it leaves parameter meaning entirely unaddressed, which is the one remaining gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Six optional filter parameters with 0% schema description coverage, and the description says nothing about any of them (view, limit, network, work_state, source_type, payment_state). The enum values carry some self-evident meaning, but the description adds no defaults, no combination behavior, and no filter semantics, leaving the schema's bare enums to do all the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys that this retrieves fresh structured bounty data without rendering UI, and it explicitly distinguishes itself from the render_bounty_feed sibling. The verb is implicit rather than stated ('get' is only in the name), but the resource and the contrast with the render tool make its role identifiable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit when ('when the model or mounted feed needs fresh structured bounty data'), an implicit when-not, and names the alternative with the exact condition that selects it ('use render_bounty_feed only when the person wants the interactive feed shown'). Routing is fully determined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_card_bounty_reviewAgentizable toolARead-onlyIdempotentInspect
Read a card-paid bounty's public review state: the submission awaiting its customer with its decide_by time and whether silence accepts it (auto_accept), each verdict with its reason, appeal and ruling, signed attestations, and appeal_typed_data while a rejection can still be appealed. Names no customer. No authentication.
| Name | Required | Description | Default |
|---|---|---|---|
| network | Yes | ||
| bounty_contract | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnly/idempotent/non-destructive hints already supplied, the description still adds real value: "Names no customer" discloses anonymization behavior, "No authentication" discloses the access model, and the conditional "while a rejection can still be appealed" explains why appeal_typed_data may be absent. It stops short of stating behavior for a nonexistent contract or invalid network, but it clears the bar set by the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single front-loaded sentence that opens with the verb and resource before listing returned fields, then closes with two short constraint statements. The field enumeration is dense but every clause names a distinct part of the response, so nothing is redundant; it is marginally long for one sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, and the description compensates well by enumerating the response payload including conditional fields. Combined with the auth/privacy statements, an agent has enough to call and interpret the result; the remaining gap is the unexplained parameter semantics, which is scored separately.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for both required parameters, so the description carries the full burden and fails to compensate. It never explains what the `network` enum (base-mainnet vs base-sepolia) selects or that `bounty_contract` takes a 0x-prefixed 40-hex address, leaving the caller dependent on the raw schema patterns.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ("Read") plus a precisely scoped resource ("card-paid bounty's public review state") and then enumerates the exact contents returned: pending submission, decide_by, auto_accept, verdicts with reason/appeal/ruling, attestations, and appeal_typed_data. The qualifier "card-paid" implicitly separates it from the managed-bounty siblings such as get_managed_bounty_review. An agent knows exactly what this tool retrieves before opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by "public review state" and by the note that payload appears only "while a rejection can still be appealed," which hints at when the appeal_typed_data is relevant. However, there is no explicit when-to-use framing and no direct routing to alternatives like get_managed_bounty_review or appeal_card_bounty_review, so the agent must infer selection from the adjective "card-paid".
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_managed_bounty_reviewAgentizable toolARead-onlyIdempotentInspect
Read your funded card bounty's review state: the canonical submission awaiting your verdict, its published artifact and evidence, the verification deadline, and verdicts already recorded. Website account session required.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered; the description usefully adds the auth requirement ('Website account session required') and enumerates what the caller will see. It does not mention pagination or whether verdicts are complete vs. truncated, but for a read tool this is solid added context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence plus a short auth clause; no filler. The enumerated return contents are slightly list-heavy but each item earns its place by substituting for the absent output schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly enumerates the return contents, and it flags the session requirement. The remaining gap is the unexplained 'id' parameter, which an agent must guess at to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the single parameter 'id' (uuid) is never explained — the description does not say whether it is the bounty id, review id, or submission id. With one required param the ambiguity is narrow but real, and the description offers no compensating semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Read') and resource ('your funded card bounty's review state') and enumerates the payload: submission awaiting verdict, artifact and evidence, deadline, recorded verdicts. It is clear and distinct in substance from siblings, but it never names the closest alternative, get_card_bounty_review, so the agent must infer the split.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'awaiting your verdict' implies the read-before-record workflow, and 'Website account session required' is a real precondition. However, no alternative (get_card_bounty_review, record_managed_bounty_review, appeal_card_bounty_review) is named and no explicit when-not guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_managed_service_orderAgentizable toolBRead-onlyIdempotentInspect
Read your managed-service order. Awaiting bank settlement does not mean funded or paid to a subcontractor. Website account session required.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the safety profile is covered. The description adds real value beyond that: an authentication requirement and a domain caveat that 'awaiting bank settlement' does not imply funded or paid to a subcontractor, which prevents a likely misinterpretation of returned state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the action, followed by the two caveats an agent most needs. No filler, though the settlement clause is phrased in a way that reads as a domain warning without full context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only lookup with one parameter and no output schema, the description covers authentication and a state-interpretation caveat. It still omits what the order object contains and what the id refers to, which an agent needs to call it correctly the first time.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is exactly one parameter, 'id' (uuid), and schema description coverage is 0%. The description never says what 'id' identifies or where the caller obtains it, so it adds no meaning over the bare schema. With a single undocumented parameter, a low score is warranted despite the small parameter count.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Read your managed-service order'), which clearly separates it from sibling tools like read_managed_service_quote or get_managed_bounty_review. It does not explicitly name the sibling it is distinct from, but the resource noun does most of the work.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Website account session required' establishes a precondition for calling it, which is genuinely useful. However, there is no guidance on when to prefer this over read_managed_service_quote or related sibling reads, leaving the choice implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_posting_optionsExplain posting choices and costsARead-onlyIdempotentInspect
Read the supported review choices, costs, wallet requirements and first-party posting journey. No draft approval or signature.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description reinforces the non-mutating nature ('No draft approval or signature') but adds little beyond that, and does not describe return contents or refresh behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: the first front-loads what is read, the second delimits scope by exclusion. No padding, though 'first-party posting journey' is mildly jargon-heavy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless, read-only tool with rich annotations and no output schema, the description is nearly sufficient. It enumerates what is returned, but without an output schema it could say a bit more about the shape of the returned choices.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters (Parameter count: 0), so no parameter explanation is required; baseline for zero params is 4. The description correctly does not fabricate parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Read) and enumerates the resources returned: review choices, costs, wallet requirements, and the first-party posting journey. An agent understands this is an informational lookup tool, though it does not name or distinguish itself from siblings like get_posting_status or prepare_bounty_post.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The trailing clause 'No draft approval or signature' implicitly routes the agent away from write/draft tools like prepare_bounty_post, which is useful. However, there is no explicit statement of when to call this versus get_posting_status or other read siblings, so usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_posting_statusCheck posting and gas sponsorshipARead-onlyIdempotentInspect
Read canonical posting progress and gas sponsorship; return the existing first-party continuation URL. Never infer a failed transaction from an empty index or restart payment.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | No | Public Base wallet address for a read-only USDC balance. Never a signature, key or session credential. | |
| protocol | No | Select the deployed protocol explicitly. Creator-open is a separately gated release; unavailable never means unfunded. | |
| operation_id | No | Existing posting operation. Private approval status requires the caller's authenticated account session in transport headers; the identifier alone never grants access. | |
| bounty_contract | No | Original predicted or created Base bounty address. Never generate a replacement to escape a pending wallet request. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, so the bar is lowered, yet the description adds real non-obvious context: it returns a first-party continuation URL and warns against treating an empty index as a failed transaction or restarting payment. The terms are somewhat cryptic (what 'empty index' refers to is unexplained), keeping it from a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with the purpose front-loaded and no filler. The caution clause is dense but earns its place; some phrasing is oblique rather than verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does state the key return value (the existing continuation URL) and the safety profile is covered by annotations. What 'posting progress' concretely contains remains unspecified, so it is not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each parameter is richly documented in the schema (wallet, protocol gating, operation_id session requirement, bounty_contract). The description adds no parameter-level syntax or format detail, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Read) and resource (canonical posting progress and gas sponsorship) and notes the returned continuation URL, so an agent knows what it retrieves. It does not explicitly distinguish itself from close siblings like get_bounty_action_status, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus the many sibling status/read tools (get_bounty_action_status, get_posting_options, etc.). The warnings about not inferring failure or restarting payment are behavioral cautions, not usage routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_verification_artifactAgentizable toolCRead-onlyIdempotentInspect
Read an authorized immutable file manifest.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already establish read-only, idempotent, non-destructive, and closed-world behavior. The description adds useful context that the manifest is 'authorized' and 'immutable,' but it does not explain error behavior, authorization requirements, or what the manifest contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler. However, its extreme brevity contributes to ambiguity rather than fully earning its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with rich annotations, the description still omits critical context: what the required ID refers to, what the returned manifest represents, and any authorization or error conditions. With no output schema and no parameter descriptions, more explanation is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not mention the required 'id' parameter at all. It is unclear whether this ID identifies an artifact, a manifest, a verification run, or another entity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource: 'Read ... file manifest.' It is clear at a basic level, but it does not reconcile the resource called 'manifest' with the tool name 'get_verification_artifact' or distinguish it from sibling artifact and verification tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool, when not to use it, or which sibling tools are alternatives. 'Authorized' implies a permission prerequisite, but the description does not explain the authorization model or selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_verification_reviewAgentizable toolCRead-onlyIdempotentInspect
Read a review you authored or may sign. Drafts, signatures, broadcasts and confirmed outcomes stay separate.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and non-destructive, so the safety profile is covered. The second sentence hints at a lifecycle separation between drafts, signatures, broadcasts and confirmed outcomes, which is useful context, but it is too abstract to tell the agent what state it will actually receive or whether multiple review versions can come back.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no padding, so it is not verbose. However, the second sentence is opaque enough that a sentence clarifying the `id` and the return shape would have earned its place more than the lifecycle remark does.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description must convey what comes back, and it does not — no mention of the review's fields, status or versioning. Combined with an undocumented required id, an agent could call this but could not predict the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% on the single required `id` (uuid) parameter, and the description never says whose id it is — review, verification run, artifact or task. With low coverage the description is expected to compensate, and it does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb+resource ("Read a review") is identifiable, but the title "Agentizable tool" adds nothing and the scope phrase "you authored or may sign" is the only thing distinguishing it from the many other review getters. It never states what kind of review this is (verification review) in operational terms, nor how it differs from get_card_bounty_review or get_managed_bounty_review.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance, and no alternative is named. With close siblings like save_verification_review and the other review getters, the agent has to infer that this reads rather than writes and that it is scoped to reviews the caller authored or can sign.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_verification_runAgentizable toolCRead-onlyIdempotentInspect
Read the caller's stored check report. Pass is limited to each check's claim; missing review is not approval.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds two non-obvious facts: the report is scoped to the caller, and a pass does not constitute approval without review. It omits behavior on an unknown/foreign id and what 'stored' implies about staleness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with the purpose front-loaded and no filler. The caveat sentence earns its place conceptually, though its wording is dense and requires parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should indicate what the 'check report' contains (per-check claims? statuses? timestamps?) and how it differs from the sibling review/artifact readers. Neither is covered, and the id parameter remains unexplained, so an agent cannot confidently call this correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the burden, and it does not: the single 'id' parameter is never explained (run id? artifact id? check id?), nor whether it must be owned by the caller. The only clue is the vague phrase 'the caller's stored check report'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb+resource ('Read the caller's stored check report') is stated, but it is not reconciled with the tool name 'get_verification_run', leaving ambiguity about whether this returns a run status or a per-check report. Three closely related siblings (get_verification_review, get_verification_artifact, find_verification_checks) are never mentioned, so the agent must guess which one to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No statement of when to call this versus get_verification_review or get_verification_artifact, and no prerequisites (e.g. must a run exist, must the caller own it). The second sentence is about interpreting results, not about when to invoke the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
import_verification_githubAgentizable toolBIdempotentInspect
Import selected files from an exact public GitHub commit. A branch name is not accepted; caller authentication and idempotency key required.
| Name | Required | Description | Default |
|---|---|---|---|
| paths | Yes | ||
| commit | Yes | ||
| repository | Yes | ||
| idempotency_key | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare openWorldHint=true, idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds the non-obvious caller-authentication requirement, which is genuine added value. It stops short of describing what the import actually creates or modifies in the caller's account, which is the key behavioral question for a write tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with no filler, and the most critical constraint (exact commit, no branch) is front-loaded. Nothing needs to be cut; there is simply room to add needed detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no parameter descriptions, the description is the only explanation of behavior, and it covers the commit/auth preconditions but not the outcome of an import, size or rate limits, or error conditions for a 4-required-param write tool. Adequate to start, insufficient to call confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry all parameter meaning and it does not. Only the commit constraint (no branches) and the idempotency key are addressed; 'repository' (owner/repo format?) and 'paths' (selection semantics, the 64-item cap) are left entirely undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('import') and resource ('selected files from an exact public GitHub commit'), which is far more informative than the generic title 'Agentizable tool'. It does not explicitly differentiate from sibling tools that also move code artifacts (upload_verification_artifact, get_verification_artifact), but the action/resource pair is unambiguous on its own.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives one hard precondition ('A branch name is not accepted') which usefully constrains input, and implies usage for pinning exact commits. However, it never says when to choose this over uploading artifacts or fetching from a specific verification run, and lists no alternatives among the many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_open_competition_v2Inspect V2 competitionARead-onlyIdempotentInspect
New users start with operation=guide. Read exact mutation arguments using operation=schema and for_operation set to the desired mutation operation. Inspect the V2 Beta3 release, reviewed profiles, inventory, events, or proof-job state in the guide's order. Treat only CompetitionSettledV2 as payment evidence.
| Name | Required | Description | Default |
|---|---|---|---|
| state | No | ||
| job_id | No | ||
| network | No | ||
| bounty_id | No | ||
| operation | No | ||
| for_operation | No | For operation=schema only: mutation operation whose exact argument schema to read. |
Output Schema
| Name | Required | Description |
|---|---|---|
| flows | No | |
| state | No | |
| safety | No | |
| status | No | |
| error_code | No | |
| operations | No | |
| next_action | No | |
| side_effects | No | |
| creation_nonce | No | |
| schema_version | No | |
| profile_support | No | |
| activation_state | No | |
| evidence_boundary | No | |
| execution_policy_hash | No | |
| settlement_policy_hash | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the bar is lower, and the description adds real domain semantics beyond them: the guide-first sequencing rule and the constraint to 'treat only CompetitionSettledV2 as payment evidence'. It still omits any note on caching/limits, and the payment-evidence rule assumes pre-existing domain knowledge.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences with no filler, and every sentence carries information. Front-loading is slightly off—it opens with a workflow tip rather than the tool's overall purpose, which only appears in the third sentence—but the guidance-first ordering is defensible given the title already names the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists so return formats need not be described, and annotations cover safety. For a seven-operation oneOf tool with low schema coverage, deferring detail to a guide-first workflow and a schema-reading operation is a legitimate completeness strategy, though 'in the guide's order' and the unexplained state/bounty_id/job_id params leave residual gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 17%, so the description must carry parameter meaning. It does explain the operation/for_operation pairing and implicitly maps all seven operation values to their outputs, but it says nothing about state, network, bounty_id, or job_id, leaving several parameters unexplained in both schema and prose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific read/inspect verb and enumerates the resources returned (V2 Beta3 release, reviewed profiles, inventory, events, proof-job state), plus the routing operations guide and schema. It is clear enough to distinguish from the sibling prepare_open_competition_v2 (which mutates), though it never states that contrast explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete operational guidance: 'New users start with operation=guide', read mutation argument shapes via operation=schema plus for_operation, and follow the guide's order. It does not name a sibling alternative or state when to call the sibling instead, which caps it below a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
issue_managed_bounty_quoteAgentizable toolAInspect
Price your posting draft for card payment. The server publishes autonomous-v2 terms created by the platform funding wallet, adds verification, the 7.5% fee and disclosed conversion and processing lines, and binds one exact bounty. Your entered reward stays the solver reward. Only customer review is supported. No charge or funding occurs; accept and open Checkout separately. Website session and original allowed Origin required.
| Name | Required | Description | Default |
|---|---|---|---|
| document | Yes | Draft with title, goal, acceptance_criteria, benchmark {engine: customer_review_v1, delivery_deadline}, evidence_schema, optional source_url and image. | |
| solver_reward_micro_usdc | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial context beyond the annotations: what the server publishes (autonomous-v2 terms from the platform funding wallet), the added 7.5% fee and conversion/processing lines, that the entered reward remains the solver reward, that no charge/funding occurs, and required auth (website session and original allowed Origin). These are meaningful preconditions not derivable from the readOnlyHint=false / openWorldHint=true annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core purpose, then layers pricing/fee and auth facts. Dense but each sentence carries distinct information (terms, fee, no-charge, auth); a slightly lighter phrasing of the terms sentence would improve it, but there is little waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a non-idempotent write with no output schema, the description covers the crucial behavioral facts (no charge, fee breakdown, auth, binds one bounty). The main remaining gap is that it does not indicate what the tool returns (a quote/price object or identifier), which an agent would want given no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50%; the description clarifies the key semantic of solver_reward_micro_usdc ('Your entered reward stays the solver reward'), meaning the fee is added on top rather than deducted. However, the nested 'document' structure and its fields are left to the schema, so it only partially compensates for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Price your posting draft for card payment') with precise scope, and explicitly positions itself against the accept/Checkout steps ('accept and open Checkout separately'). An agent can distinguish this quoting step from accept_managed_service_quote and open_managed_service_checkout without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clearly frames this as the pricing step that precedes acceptance and checkout, and adds a constraint ('Only customer review is supported'). It gives strong context but does not state explicit exclusions or prerequisites for when a draft is not yet ready to price.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
issue_managed_service_quoteAgentizable toolAIdempotentInspect
Merchant operator only: persist an immutable itemized managed-service quote. The API validates the configured merchant, currency, limits and 7.5% fee. No charge or funding occurs.
| Name | Required | Description | Default |
|---|---|---|---|
| quote | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate mutation, idempotency, open-world behavior, and non-destructiveness. The description adds useful behavioral context: the quote is immutable, the API validates merchant/currency/limits and a 7.5% fee, and no charge or funding occurs. It does not describe error behavior or return details, but it meaningfully supplements the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short, front-loaded with the actor restriction and core action, and every sentence carries useful information. It avoids repetition and wastes no space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating quote-issuance tool with no output schema and an opaque nested input object, the description covers actor restriction, validation, immutability, and absence of charging. It still leaves the agent without guidance on the quote object's expected contents or what the persisted quote returns, so it is only partially complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one required parameter, 'quote', which is an opaque nested object with 0% schema description coverage. The description labels it as an immutable itemized managed-service quote but does not explain the object's fields or structure, so it does not compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: persisting an immutable itemized managed-service quote. It is clearly distinct from read/accept/checkout siblings by verb and resource, though it does not explicitly compare itself to the related quote or acceptance tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit actor restriction ('Merchant operator only') and clarifies that no charge or funding occurs, implying this is a quote-issuance step rather than checkout. However, it does not state when to use it versus alternatives such as reading, accepting, or opening checkout for a managed-service quote.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_autonomous_bountiesList canonical bountiesBRead-onlyIdempotentInspect
Use this when the person wants funded Agentizable work or canonical lifecycle inventory. Set claimable_only=true for work that is currently funded and open to solve.
| Name | Required | Description | Default |
|---|---|---|---|
| network | No | Base network, case-insensitive: base-mainnet (aliases base, mainnet, 8453) or base-sepolia (aliases sepolia, 84532). Defaults to base-mainnet. | |
| claimable_only | No | When true, return only fully funded unclaimed bounties. |
Output Schema
| Name | Required | Description |
|---|---|---|
| items | Yes | |
| sandbox | No | |
| evidence_boundary | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so safety is fully covered by structured data. The description adds only that claimable_only=true narrows to 'currently funded and open to solve', which is really parameter semantics rather than behavioral disclosure. Nothing is said about result volume, ordering, or pagination on an inventory tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, trigger condition front-loaded, zero filler. The only cost is that the second sentence duplicates guidance the parameter schema already gives, so it is efficient but not maximally earning its space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A low-complexity read tool: two optional params at 100% schema coverage, full annotation set, and an output schema that relieves the description of explaining return shape. What remains missing is sibling disambiguation against get_bounty_feed and the competition inspection tool, which keeps it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including network aliases and the claimable_only definition, so the schema carries the load. The description's 'currently funded and open to solve' is a useful plain-language gloss that slightly sharpens the boolean's intent, but adds no format or default detail beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description frames the resource as 'funded Agentizable work or canonical lifecycle inventory', which gestures at a listing of bounties but never uses a plain verb+resource like 'list bounties'. 'Canonical lifecycle inventory' and 'Agentizable' are internal jargon that an agent may not resolve, though the funded-work framing does separate it from the write-side siblings (prepare_bounty_post, accept_*).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Use this when the person wants funded Agentizable work' gives one positive trigger condition, so usage is implied rather than absent. However, no exclusions or alternatives are named — nothing tells the agent when to prefer get_bounty_feed or inspect_open_competition_v2 instead, both of which plausibly surface similar inventory.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_bounty_commentsRead bounty commentsARead-onlyIdempotentInspect
Use this when the person or mounted feed needs recent public comments for one bounty. Comments are conversation context and never funding, verification, settlement, or payment evidence.
| Name | Required | Description | Default |
|---|---|---|---|
| bounty_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| sandbox | No | |
| comments | Yes | |
| bounty_id | No | |
| published | No | |
| share_after | No | |
| comment_count | Yes | |
| opportunity_id | No | |
| schema_version | No | |
| evidence_boundary | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, idempotent, non-destructive behavior. The description adds useful interpretation: results are conversation context and never funding/verification/settlement/payment evidence, and it specifies the single-bounty scope. It does not detail pagination or ordering, but 'recent' plus the output schema covers the practical case.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler; the usage trigger is front-loaded and the semantic caution earns its place by preventing misuse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with strong annotations and an output schema, the description is complete: it gives the trigger condition, scope, and interpretation of the returned data. Nothing needed to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the burden. It says 'for one bounty,' which communicates that bounty_id identifies the target bounty, but it does not describe the expected format or how to derive the identifier. The meaning is adequate but not fully explicit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('read'), resource ('recent public comments'), and scope ('for one bounty'), and the added caution that comments are conversation context rather than funding or payment evidence clearly separates this read tool from monetary verification/settlement siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says when to use the tool: when a person or mounted feed needs recent public comments for one bounty. It does not name alternative tools such as add_bounty_comment, but the trigger condition is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_review_tasksAgentizable toolARead-onlyIdempotentInspect
List your pending review tasks and deadlines. Assignment grants no wallet signing authority.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds an unusual security note ('Assignment grants no wallet signing authority'), but the sentence is ambiguous -- it describes assignment rather than listing -- and says nothing about result scoping (current user vs. org), ordering, or whether completed tasks are included.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with the primary purpose front-loaded, no filler or restated schema. The second sentence is somewhat tangential to a list operation, which keeps it just shy of a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-param, annotation-rich, read-only listing tool with no output schema, the description covers what the tool returns at a high level (pending tasks and deadlines). Slightly more on the shape/scope of results would make it fully self-sufficient, but nothing critical is missing before invoking it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline of 4 applies. The schema also declares additionalProperties:false, making the absence of inputs unambiguous.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('List your pending review tasks') plus the extra payload of deadlines, which lets an agent distinguish it from the mutation siblings accept_review_task/assign_review_task. It never explicitly contrasts itself with the read siblings such as get_card_bounty_review or get_managed_bounty_review, so differentiation is implied rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Your pending review tasks' implies the caller should use this to see their work queue, so usage is inferable. However, there is no explicit when-to-use/when-not, no mention of how it relates to the many retrieve-one-review siblings, and no prerequisites stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
open_artifact_disputeAgentizable toolAInspect
Pause file cleanup while your dispute is open. Only the owner or a granted participant may do this. Returns your existing open dispute on retry; does not change the bounty outcome.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| reason | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations present the bar is lower, and the description still adds real context: authorization requirements, retry semantics, and the explicit non-effect on bounty outcome. The retry-is-safe wording sits slightly at odds with idempotentHint=false, but this reads as scoping one field rather than a flat contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, effect first, then permission, then edge-case semantics. No filler and nothing buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-required-param mutation with no output schema, the description covers side effects and auth but leaves the identifier semantics and the outcome of a successful call (what a dispute object looks like) unexplained. Adequate, not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and neither parameter is named in the description. 'id' is genuinely ambiguous — artifact id, submission id, or bounty id — and 'reason' has a 2000-char cap that the description never hints at (what counts as a valid reason, whether it is user-visible).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete effect (opening a dispute pauses file cleanup) rather than restating the name, so the agent knows what the call accomplishes. It does not explicitly contrast itself with the sibling resolve_artifact_dispute, leaving the open/close pair to be inferred from names.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an eligibility gate (owner or granted participant) and clarifies retry behavior, which are useful invocation conditions. It never says when to prefer this over resolve_artifact_dispute or what prerequisites (e.g., an existing submission) must hold before opening a dispute.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
open_managed_service_checkoutAgentizable toolAIdempotentInspect
Create or recover Checkout for your accepted order under launch controls. Open the returned Stripe URL to pay; never send card data here. A session or return URL is not payment evidence. Website session and original allowed Origin required.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description explains how payment works: open the returned Stripe URL, never send card data to this tool, and treat a session or return URL as non-evidence of payment. It also discloses the security prerequisites around website session and allowed Origin, adding meaningful behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: it leads with the action, then payment handling, then security constraints. Every sentence carries useful operational or safety information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter payment-opening tool with no output schema, the description covers the critical workflow and safety constraints well. It could be slightly more complete by explicitly tying the required ID to the accepted order, but the overall guidance is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one required parameter with 0% schema description coverage, and the description does not explain what the 'id' represents. It implies the action relates to an accepted order, but it does not explicitly say the parameter is the accepted order ID.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action: create or recover Checkout for an accepted order under launch controls. It distinguishes this payment-opening step from the adjacent quote/order tools, though it does not explicitly name a sibling alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It establishes the relevant context: the order must be accepted, launch controls apply, and a website session with the original allowed Origin is required. It does not explicitly state when not to use the tool or name alternatives, but the usage conditions are clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_artifact_submissionAgentizable toolCIdempotentInspect
Recheck stored bytes, then prepare an existing-contract submission for the authenticated solver. This does not sign or broadcast. Sign only on first-party wallet pages.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| network | Yes | ||
| evidence | Yes | ||
| solver_wallet | Yes | ||
| bounty_contract | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the mutation/safety profile (readOnly=false, idempotent, non-destructive, open-world). The description adds genuine value beyond that: it clarifies that no signing or broadcasting occurs and that the caller must be the authenticated solver. It still omits what "prepare" actually produces (a payload? a stored draft?) and what side effects the recheck has, which matters for an open-world mutating tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, no padding, with the effect statement front-loaded before the signing caveat. Efficient, though it spends words on the vague "recheck stored bytes" phrase that could have been used to describe behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, five undocumented required parameters including a nested object, and an open-world mutating operation. The description covers intent and the signing boundary but leaves the agent unable to construct a correct `evidence` payload or anticipate the result — a substantial gap for this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All five parameters are required with zero schema description coverage, including a nested `evidence` object whose shape is entirely undocumented. The description supplies no parameter meaning at all; only faint inferences are available ("authenticated solver" gestures at `solver_wallet`, "existing-contract" at `bounty_contract`). This is far below what a 0%-coverage, nested-object schema demands.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Prepare an existing-contract submission for the authenticated solver" gives a specific verb and resource, but "recheck stored bytes" is unexplained jargon, and the description never distinguishes this from the sibling `confirm_artifact_submission` or `prepare_bounty_action`. An agent can guess what it does but cannot tell which of the prepare/confirm pair applies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The line "This does not sign or broadcast. Sign only on first-party wallet pages" is a real usage boundary and a useful guardrail. However, there is no positive statement of when to call this versus `confirm_artifact_submission`, no prerequisite on the artifact already being uploaded, and no ordering guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_bounty_actionPrepare secure bounty actionAIdempotentInspect
Use this when ChatGPT has gathered the required details conversationally and the person has explicitly confirmed a post, fund, solve or claim, complete, or verify action. Create one idempotent first-party authorization session; never request a wallet or verifier signature in ChatGPT and never describe prepared status as completion.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | ||
| details | No | Bounded action-specific draft or evidence fields for first-party review. | |
| network | No | ||
| bounty_id | No | ||
| actor_wallet | No | ||
| opportunity_id | No | ||
| bounty_contract | No | ||
| idempotency_key | Yes | ||
| amount_base_units | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| paid | Yes | |
| action | Yes | |
| status | Yes | |
| network | Yes | |
| bounty_id | No | |
| intent_id | Yes | |
| expires_at | Yes | |
| next_action | Yes | |
| share_after | Yes | |
| actor_wallet | No | |
| opportunity_id | No | |
| schema_version | Yes | |
| bounty_contract | No | |
| confirmed_block | No | |
| transaction_hash | No | |
| amount_base_units | No | |
| authorization_url | Yes | |
| evidence_boundary | Yes | |
| canonical_event_id | No | |
| canonical_event_kind | No | |
| expected_canonical_events | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful behavior beyond annotations: it establishes a first-party authorization session and forbids collecting wallet or verifier signatures in ChatGPT. It also clarifies that prepared status is not completion. There is no contradiction with idempotentHint=true, and the read/destructive hints are consistent with a non-read, non-destructive prepare operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences with no padding, and the use-condition is front-loaded. The action-value list is a bit run-on and ambiguous ('solve or claim'), but the overall length is appropriate for the safety-critical content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given nine parameters, a nested details object, and a sibling cluster, the description is incomplete: it omits parameter semantics, does not distinguish prepare_bounty_action from prepare_bounty_post, and contains a schema mismatch. Output schema and annotations reduce some burden, but correct invocation still requires undocumented inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 11%, so the description had to carry parameter meaning, but it does not explain idempotency_key, bounty_id, actor_wallet, network, amount_base_units, opportunity_id, or bounty_contract. The only parameter-related content is the list of action values, which also includes unsupported 'claim.' Required fields other than action are left to the agent to infer.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear conditional trigger (details gathered and explicit confirmation) and a specific outcome: create one idempotent first-party authorization session. It is not a tautology and clearly targets bounty actions. However, it does not distinguish itself from sibling prepare_bounty_post, and the action list includes 'claim' even though the schema enum omits it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use preconditions: details gathered conversationally and explicit confirmation of the action. It also adds strong guardrails, such as never requesting wallet or verifier signatures in ChatGPT and never describing prepared status as completion. It does not name sibling alternatives or state when to choose prepare_bounty_post or get_bounty_action_status, so exclusions and alternatives are missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_bounty_postPrepare bounty for wallet reviewADestructiveIdempotentInspect
Use this when the person's AI has gathered complete bounty terms and received explicit approval. Reuse posting_operation_id when resuming. For creator review, set review_mode=creator and the exact agreed delivery_deadline with timezone offset, omit automated benchmark/evidence fields, and explain that the creator confirms the verdict. Preserve parent bindings, the approved reference_attachment, and any approved bounty_image with its exact prompt and alt text; omit all three image fields together to use the deterministic review-page visual. This prepares a reviewable handoff; it does not publish, move funds, request a secret, or prove that a bounty exists.
| Name | Required | Description | Default |
|---|---|---|---|
| goal | Yes | Public digital outcome the solver must deliver. | |
| title | Yes | Concise public bounty title. | |
| benchmark | No | Optional exact public sandboxed_regression_v1 benchmark. Supply this and evidence_schema together. The source commit, benchmark digest, OCI image, command, and resource limits are immutable bounty terms. | |
| crowdfund | No | Keep false to fund on creation. Set true only to deposit 0 USDC now. | |
| meta_child | No | Preserve the routed parent binding. The review page verifies the canonical parent before applying any child economics. | |
| source_url | No | Optional public HTTPS source issue or task URL. | |
| review_mode | No | Creator review commits the creator as the sole human reviewer. The creator confirms the verdict; AI approval has no settlement authority. | |
| bounty_image | No | Optional approved image generated in a compatible AI conversation. Agentizable stores this exact file; omit it and both image text fields to use the deterministic fallback visual. | |
| image_prompt | No | Optional exact prompt used to generate a user-approved bounty image. Supply this, image_alt_text, and bounty_image together, or omit all three to use the deterministic fallback visual. | |
| image_alt_text | No | Optional accessible description of the approved image. Supply this, image_prompt, and bounty_image together. | |
| evidence_schema | No | Optional public submission-evidence schema paired with benchmark. Supply both verifier fields or neither. | |
| discovery_source | No | Optional public attribution for how the poster found Agentizable. | |
| task_window_days | No | Optional bounded work window in days; defaults to 30. | |
| delivery_deadline | No | For creator review, the exact agreed calendar deadline as an ISO timestamp with timezone offset. Never replace it with days after claim. Omit automated benchmark and evidence_schema fields in creator mode. | |
| solver_reward_usdc | Yes | Solver reward in display USDC, for example 2.00. | |
| acceptance_criteria | Yes | Binary or measurable public acceptance criteria. | |
| posting_operation_id | No | Stable posting journey identifier. Reuse it when resuming or retrying the same operation. If omitted, a deterministic identifier is derived from the unchanged preparation arguments. | |
| reference_attachment | No | Preserve the approved compact homepage-background snapshot descriptor, including its commit-pinned asset_url, sha256 and captured_at. The first-party review validates the pinned bytes; never replace the user's reference. | |
| verifier_reward_usdc | Yes | Verifier reward and refundable claim bond in display USDC, for example 0.10. In creator mode, label this the creator-review reserve; it is paid to the creator on either verdict. |
Output Schema
| Name | Required | Description |
|---|---|---|
| goal | Yes | |
| image | Yes | |
| state | Yes | |
| title | Yes | |
| schema | Yes | |
| post_url | Yes | |
| benchmark | No | |
| crowdfund | Yes | |
| meta_child | No | |
| source_url | No | |
| next_action | Yes | |
| review_mode | No | |
| target_usdc | Yes | |
| bounty_created | Yes | |
| evidence_schema | No | |
| task_window_days | Yes | |
| delivery_deadline | No | |
| evidence_boundary | Yes | |
| review_disclosure | No | |
| solver_reward_usdc | Yes | |
| acceptance_criteria | Yes | |
| initial_funding_usdc | Yes | |
| posting_operation_id | No | |
| reference_attachment | No | |
| verifier_reward_usdc | Yes | |
| verification_prepared | No | |
| wallet_signature_requested | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare destructiveHint=true, idempotentHint=true, and openWorldHint=true, and the description adds genuinely new behavioral context beyond them: the negative-scope sentence rules out publishing, fund movement, secret requests, and bounty-existence proofs, while the creator-mode and image-triplet rules describe concrete side effects on the prepared record. The destructiveHint=true flag sits in mild tension with 'does not publish, move funds,' but this reads as a conservative annotation rather than a contradiction, since preparing a handoff can still overwrite prior prepared state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Every clause carries real content, but the description is a single dense paragraph of semicolon-chained imperatives with no separation between trigger conditions, creator-mode rules, and scope disclaimers. It leads with the usage condition rather than the purpose, so an agent scanning for 'what does this do' must read to the final sentence to find the negative-scope framing that clarifies the operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 19-parameter, nested-object, mutation-adjacent tool with an output schema and full annotations, the description covers the risky paths: creator-mode field exclusions, image fallback, parent binding preservation, idempotent resume, and what the tool deliberately does not do. The one gap is forward linkage — it says it produces a 'reviewable handoff' but never names the next step (wallet review or a status tool such as get_posting_status) an agent should call after preparation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% across 19 parameters, so the baseline is 3, and the description earns above that by stating cross-field coordination rules the schema only repeats piecemeal: all three image fields together or none, omit benchmark/evidence_schema in creator mode, preserve parent bindings and the approved reference_attachment verbatim, and use the exact agreed deadline with timezone offset rather than days-after-claim. These are the highest-risk misuses for a 19-parameter nested schema and the description calls them out directly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description makes the operation concrete through its closing clause: 'This prepares a reviewable handoff; it does not publish, move funds, request a secret, or prove that a bounty exists.' Combined with 'bounty terms,' 'posting_operation_id,' and 'creator review,' an agent can infer this stages a bounty for wallet/review rather than publishing it. It never states the object plainly in one phrase (the noun 'bounty post' only appears in the tool name), so the reader has to assemble the purpose from scattered clues rather than a single declarative sentence.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage preconditions are explicit and unusual in their specificity: 'Use this when the person's AI has gathered complete bounty terms and received explicit approval,' plus resume behavior via posting_operation_id and the creator-mode branch with its exclusions ('omit automated benchmark/evidence fields'). What's missing is sibling routing: with prepare_bounty_action, prepare_open_competition_v2, and prepare_artifact_submission all in the family, the description never says which one to pick instead when the terms aren't complete or the task isn't a bounty post.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_moonpay_onrampPrepare MoonPay top-upARead-onlyIdempotentInspect
Use this when a person funding one canonical Base bounty needs Base USDC. Prepare a first-party MoonPay handoff only; never request card data or identity documents in ChatGPT, never treat a MoonPay purchase as bounty funding, and require a separate canonical funding authorization.
| Name | Required | Description | Default |
|---|---|---|---|
| intent_id | No | Optional hosted funding-intent identifier to preserve the return boundary. | |
| bounty_contract | Yes | ||
| amount_base_units | Yes | Planned bounty contribution in 6-decimal USDC base units. |
Output Schema
| Name | Required | Description |
|---|---|---|
| asset | Yes | |
| state | Yes | |
| network | Yes | |
| sandbox | Yes | |
| provider | Yes | |
| intent_id | Yes | |
| onramp_url | Yes | |
| next_action | Yes | |
| bounty_funded | Yes | |
| schema_version | Yes | |
| bounty_contract | Yes | |
| checkout_created | Yes | |
| evidence_boundary | Yes | |
| purchase_completed | Yes | |
| planned_amount_usdc | Yes | |
| canonical_funding_event | Yes | |
| planned_amount_base_units | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only/idempotent/non-destructive behavior, and the description adds meaningful policy context: it only produces a first-party handoff, must not collect sensitive data, and must not conflate a purchase with funding. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense sentence that front-loads the trigger condition and then states hard constraints. No filler or repetition of schema/annotation information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter tool with an output schema and safety annotations, the description covers trigger, scope, authorization requirement, and misuse prevention. An agent has what it needs to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 67% schema coverage and no explicit parameter explanations in the description, the required bounty_contract and amount_base_units rely on their names and the schema pattern/min-max. The description's Base USDC context supports amount_base_units, but it does not add detail about units or the contract's role.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action (prepare a first-party MoonPay handoff) and a specific trigger (person funding one canonical Base bounty needs Base USDC), which clearly separates it from sibling prepare_bounty_action/post tools. It also uses 'only' to delimit the tool's scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit when-to-use condition ('Use this when a person... needs Base USDC') and explicit prohibitions ('never request card data... never treat a MoonPay purchase as bounty funding... require a separate canonical funding authorization'). This tells an agent when and when not to invoke the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_open_competition_v2Prepare V2 actionADestructiveInspect
Use this only after inspect_open_competition_v2(operation=guide). Before each operation, read its exact arguments_schema with inspect_open_competition_v2(operation=schema, for_operation=the selected operation). Some operations return unsigned plans; quote_proof creates a hosted job, pay_proof may transfer Base USDC after explicit approval, and authorize_relay may submit a proof after explicit approval. Follow next_action and treat only CompetitionSettledV2 as payment evidence.
| Name | Required | Description | Default |
|---|---|---|---|
| arguments | Yes | Exact argument object for the selected operation. First call inspect_open_competition_v2 with operation=schema and for_operation set to that operation; follow its arguments_schema. Never guess fields or include private keys. | |
| operation | Yes | Execute one ordered V2 Beta3 transition. |
Output Schema
| Name | Required | Description |
|---|---|---|
| flows | No | |
| state | No | |
| safety | No | |
| status | No | |
| error_code | No | |
| operations | No | |
| next_action | No | |
| side_effects | No | |
| creation_nonce | No | |
| schema_version | No | |
| profile_support | No | |
| activation_state | No | |
| evidence_boundary | No | |
| execution_policy_hash | No | |
| settlement_policy_hash | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (destructiveHint, non-idempotent, openWorld), the description discloses concrete side effects: quote_proof creates a hosted job, pay_proof may transfer Base USDC, and authorize_relay may submit a proof, both after explicit approval. It also tells the agent to follow next_action and to treat only CompetitionSettledV2 as payment evidence, which the annotations cannot express.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four dense sentences, front-loaded with the prerequisite and per-operation workflow, and each sentence carries operational value. It could state the overall purpose more directly in the opening, but there is little wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values need not be explained, and the description covers the prerequisite chain, high-risk operations, and the payment-evidence rule. It is nearly complete but leaves the tool's overall purpose implicit, which an agent may have to infer from the enum.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents both parameters and the operation enum; the description's contribution is instruction to read the per-operation schema rather than defining fields itself. Baseline 3 applies since the structured schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description routes the agent through the V2 workflow and names several operations (quote_proof, pay_proof, authorize_relay), so the resource is inferable, but it never plainly states the core purpose (preparing/executing an ordered V2 competition operation). The contrast with inspect_open_competition_v2 is clear via the prerequisite, yet the primary verb+resource is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit prerequisite ('Use this only after inspect_open_competition_v2(operation=guide)') and a per-operation workflow ('read its exact arguments_schema... for_operation=the selected operation'). This is strong when-to-use guidance, though it offers no alternatives or explicit when-not conditions beyond the inspect gate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_managed_service_quoteAgentizable toolARead-onlyIdempotentInspect
Read your immutable itemized service offer and acceptance digest. Requires your verified website account session; a wallet session is not account authority.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, idempotent, non-destructive, and closed-world behavior. The description adds useful context beyond that by stating the quote is immutable and by clarifying the account authentication requirement, including that wallet sessions do not grant authority.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two compact sentences, front-loads the action and resource, and gives the critical authentication constraint immediately. There is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description should ideally indicate what the read returns or how the itemized digest is structured. It covers authentication and immutability but leaves the return shape and id semantics implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter is an id, but schema description coverage is 0% and the description does not explain what kind of id is expected, where to obtain it, or how it relates to the managed service quote. The UUID format is visible in the schema, but semantic meaning is not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific read verb and identifies the resource as an immutable itemized service offer and acceptance digest, which distinguishes it from issue_managed_service_quote and accept_managed_service_quote. The term 'digest' is slightly less direct than 'quote', but the purpose is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides an important access prerequisite: a verified website account session is required and a wallet session is not sufficient. However, it does not explain when to use this tool versus siblings such as get_managed_service_order, open_managed_service_checkout, or accept_managed_service_quote.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
record_managed_bounty_reviewAgentizable toolADestructiveIdempotentInspect
Record your verdict on the exact canonical submission shown by get_managed_bounty_review, after inspecting its artifact and before its decide_by time. Silence until decide_by accepts the delivery only when pending_submission.auto_accept is true; for a delivery published too late it is false, nothing is accepted automatically and the submission expires on chain, returning the solver's bond. An acceptance is signed by the platform review key at once and relayed on chain when sponsorship is enabled; it pays the solver. A rejection needs a public reason of 20 to 2,000 characters and waits 48 hours for the solver's appeal before it is signed; it then forfeits the solver's bond and keeps the bounty funded for another attempt. If an appeal reverses your rejection, the solver is paid when the bounty settles and your review deposit is owed to the solver. One verdict per round; it cannot be changed. A signed verdict is not settlement. Website session and original allowed Origin required.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| round | Yes | ||
| passed | Yes | ||
| reason | No | ||
| evidence_hash | Yes | ||
| submission_hash | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavior beyond annotations: silence only auto-accepts when auto_accept is true, late deliveries expire and return the bond, acceptance is signed immediately and relayed on chain, rejection requires a 20-2,000 character public reason and waits 48 hours for appeal, and appeal reversal shifts payment and deposit liability. It also discloses that one verdict per round cannot be changed, that a signed verdict is not settlement, and that a website session with original allowed Origin is required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The action and timing are front-loaded, and nearly every sentence contributes behavioral or lifecycle information. The paragraph is dense with nested conditionals, but it is not padded with repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex destructive on-chain review action with no output schema, the description covers timing, acceptance/rejection consequences, appeal handling, settlement caveats, and auth requirements. The main remaining gap is that it does not identify what id and evidence_hash should contain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage and six parameters, the description must carry the burden of explaining inputs. It gives useful semantics for passed (acceptance vs rejection), reason (20-2,000 characters), round (one verdict per round), and submission_hash (exact canonical submission), but never explains the required id or evidence_hash parameters, leaving critical inputs undefined.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence states a specific verb and resource: record a verdict on the exact canonical submission shown by get_managed_bounty_review. It distinguishes this write action from the sibling read tool and anchors the action to an inspected artifact and decide_by deadline.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly says to use this after inspecting the artifact and before decide_by, and points to get_managed_bounty_review as the source of the canonical submission. It does not explicitly compare against other review-related siblings, but the managed-bounty context is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_bounty_feedOpen live bounty feedBRead-onlyIdempotentInspect
Use this when the person wants the interactive Agentizable feed rendered inside ChatGPT. For model-selected results, inspect get_bounty_feed first and pass only the chosen opportunity_ids.
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | ||
| limit | No | ||
| network | No | ||
| work_state | No | ||
| source_type | No | ||
| payment_state | No | ||
| opportunity_ids | No | Optional opportunity identifiers selected from get_bounty_feed. |
Output Schema
| Name | Required | Description |
|---|---|---|
| items | Yes | |
| network | Yes | |
| app_mode | No | |
| coverage | No | |
| degraded | Yes | |
| generated_at | Yes | |
| coverage_scope | No | |
| schema_version | Yes | |
| commerce_enabled | No | |
| evidence_boundary | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds the genuinely useful behavioral fact that this returns an interactive rendered feed rather than data, but says nothing about how filters, limit, and opportunity_ids interact or which takes precedence.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, with the primary use case front-loaded before the fallback path. Nothing is wasted, though brevity comes partly at the cost of parameter coverage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values needn't be described, but with seven parameters at 14% schema coverage and multiple overlapping filter dimensions, the description leaves an agent without enough to choose filters correctly or understand precedence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 14% and the description explains just one of seven parameters — opportunity_ids, which the schema already documents. The six filtering parameters (view, work_state, source_type, payment_state, network, limit) get no description-level explanation of behavior or precedence despite low schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — rendering an interactive bounty feed inside ChatGPT — and implicitly distinguishes it from the data-only get_bounty_feed sibling by naming the interactive/UI nature. The term 'Agentizable' is jargon that adds little, but the core action is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to use it when the person wants an interactive feed rendered, and explicitly routes model-selected cases to get_bounty_feed first with chosen opportunity_ids. It stops short of covering what happens when neither ids nor filters are supplied, so it isn't fully exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_managed_service_refundAgentizable toolADestructiveIdempotentInspect
Explicitly cancel your paid service before funding and request a full original-payment refund, including the platform fee. Reserves the order against funding. A recorded request is not a sent refund or bank credit. Website account session and original allowed Origin required.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite annotations already declaring destructive=true, idempotent=true, and openWorld=true, the description adds substantial behavioral context: it explains that the order is reserved against funding, that a recorded request is not a sent refund or bank credit, and that a website account session plus original allowed Origin are required. This is exactly the kind of operational caveat an agent needs beyond structured hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core action, followed by short sentences covering reservation effect, refund caveat, and authentication requirements. Every sentence adds useful information and there is no wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, open-world, single-parameter tool with no output schema, the description covers the important safety and behavioral context: pre-funding timing, reservation semantics, refund caveat, and auth prerequisites. The remaining gap is that the sole id parameter is not explained, which an agent needs in order to supply it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one required parameter, id, with 0% description coverage. The description mentions 'your paid service' and 'order' but never clarifies whether id is the order ID, service ID, or something else, so it does not compensate for the schema's lack of parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action: cancel a paid managed service before funding and request a full original-payment refund including the platform fee. It is easy to distinguish from quote/order siblings at a high level, but it does not explicitly name or contrast with any specific sibling tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The timing constraint 'before funding' implies when this tool is appropriate, and 'reserves the order against funding' clarifies a key condition. However, there is no explicit comparison to alternatives such as get_managed_service_order or issue_managed_service_quote, and no clear when-not guidance beyond the pre-funding condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_artifact_disputeAgentizable toolADestructiveInspect
Withdraw your own file-retention dispute with a reason. Other participants' holds remain; normal cleanup may resume. Does not change canonical outcomes.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| reason | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes meaningfully beyond the annotations by disclosing the blast radius: other participants' holds persist, cleanup can resume, and canonical outcomes are unaffected. That is genuine effect-scoping context for a destructiveHint=true tool. It omits idempotency behavior (annotations say non-idempotent) and what a failed or repeated withdrawal does.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, no filler, with the primary action front-loaded and effect constraints following. Every sentence carries distinct information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The effect scope is well covered for a destructive mutation with no output schema, but the ambiguity around the required 'id' and the absence of any failure/permission behavior leave real gaps for an agent trying to call it correctly the first time.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the description does not compensate. 'with a reason' loosely maps to the reason parameter, but the required 'id' is never explained — it is genuinely ambiguous whether it is the dispute id or the artifact id, and the tool name points the other way.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Withdraw your own file-retention dispute') and scopes it to the caller's own disputes, which separates it from the sibling open_artifact_dispute. It stops short of naming the counterpart sibling explicitly, but the operation is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: you call this to retract a dispute you filed. There is no explicit when-to-use vs. when-not, no mention of open_artifact_dispute as the inverse operation, and no stated prerequisite such as being the original filer or the dispute being open.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_verification_checksAgentizable toolAIdempotentInspect
Queue checks on exact durably stored files. Returns an existing run for identical inputs. Needs a verified website or wallet session; never accepts solver-supplied test outcomes.
| Name | Required | Description | Default |
|---|---|---|---|
| plan | Yes | ||
| artifact_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotent and non-destructive, and the description correctly reinforces idempotency by explaining duplicate inputs return an existing run. It adds genuinely new context beyond the annotations, namely the auth prerequisite and the integrity constraint that solver-supplied test outcomes are rejected. It does not describe queue latency or what happens on plan rejection.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the action and scope, then the dedup behavior, then the prerequisite. No filler, and each sentence carries distinct information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Auth requirements and idempotency are well covered, and there is no output schema to explain. But for a two-parameter tool where one parameter is an opaque nested object, the total absence of any plan documentation makes the definition incomplete for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description never mentions either parameter. 'plan' is a free-form nested object with no shape, required keys, or validation rules documented anywhere, and 'artifact_id' is only obliquely alluded to via 'durably stored files'. An agent has no basis for constructing the plan payload.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Queue checks on exact durably stored files'), which separates it from read siblings like find_verification_checks and get_verification_run. However, 'checks' is left undefined and the relationship to validate_verification_plan is never stated, so the agent must infer the pipeline stage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives two useful operating conditions: it requires a verified website or wallet session, and it returns an existing run for identical inputs. But there is no explicit 'use this instead of X' guidance against the many verification siblings, so the agent cannot tell when to validate first or when to poll get_verification_run.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_verification_reviewAgentizable toolBIdempotentInspect
Save each criterion's explanation and evidence before wallet signing. Authorized reviewer or accepted assigned agent only. Preserve the legacy assessment hash. Wallet signing remains on first-party pages.
| Name | Required | Description | Default |
|---|---|---|---|
| network | Yes | ||
| assessment | Yes | ||
| attestation | Yes | ||
| previous_report_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a non-read-only, idempotent, non-destructive write, but the description adds meaningful behavior beyond them: role-based authorization requirements, the preservation rule for the legacy assessment hash, and an explicit boundary that this tool does not perform wallet signing. It does not describe how conflicts or overwrites are handled, keeping it below 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four short sentences with the purpose front-loaded and no filler. The later sentences are terse and somewhat telegraphic ('Wallet signing remains on first-party pages'), but they carry real constraints rather than noise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the critical write-side concerns an agent would otherwise miss: authorization scope and the boundary around wallet signing. It is still incomplete for a tool with nested, fully undocumented parameters and no output schema, since the caller cannot infer what assessment/attestation must contain or what is returned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across four parameters, including nested objects, and the description never explains, maps, or gives meaning to 'network', 'attestation', 'assessment', or 'previous_report_id'. The phrase 'legacy assessment hash' loosely hints at assessment content but does not compensate for the missing parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific verb (save) and object (each criterion's explanation and evidence), which clearly distinguishes this write tool from read siblings like get_verification_review. It does not explicitly call out a sibling or state how it differs from record_managed_bounty_review, so it falls short of the 5 bar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides workflow context ('before wallet signing') and an authorization condition ('Authorized reviewer or accepted assigned agent only'), which implies when to use it. However, it never names an alternative tool or states when not to use it, so the routing guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
upload_verification_artifactAgentizable toolAIdempotentInspect
Store authenticated exact file bytes before a submission transaction. Base64 input. Remote MCP requests are limited to 2 MiB including encoding; for larger files use the API/CLI (100 MiB total) or exact GitHub commit import. Idempotency key required.
| Name | Required | Description | Default |
|---|---|---|---|
| files | Yes | ||
| idempotency_key | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare mutation, idempotency, open-world behavior, and non-destructiveness. The description adds material context beyond that: authenticated storage, base64 transport, a 2 MiB MCP request limit including encoding, a 100 MiB API/CLI capacity, and the required idempotency key.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four short sentences, front-loaded with the core purpose and then operational constraints. It is compact and avoids repeating schema details without adding value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
It covers the core purpose and critical operational limits, which is important for an upload tool. However, with no output schema and 0% schema description coverage, it omits return behavior and file path/array semantics that an agent may need to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It clarifies base64 encoding and that an idempotency key is required, but it does not explain files[].path, the files array structure, the 1024-item cap, or the idempotency_key maxLength, leaving most nested parameter semantics undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (store/upload file bytes) and resource (authenticated exact file bytes) with timing context: before a submission transaction. It is clearly an upload tool rather than a retrieval tool, though it does not explicitly contrast with prepare_artifact_submission or confirm_artifact_submission.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear usage context (before a submission transaction) and an alternative path for larger files: API/CLI or exact GitHub commit import. It does not spell out when not to use this tool or compare directly against sibling submission-preparation tools, but the size-based routing guidance is useful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_verification_planAgentizable toolARead-onlyIdempotentInspect
Validate complete criterion coverage and checker compatibility. Get the plan schema from find_verification_checks. The creator must accept the meaning before funding.
| Name | Required | Description | Default |
|---|---|---|---|
| plan | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds that validation involves criterion coverage, checker compatibility, and creator acceptance before funding, but it does not describe what happens when a plan fails validation or what the response contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, with the core purpose front-loaded and no filler. The phrase 'the creator must accept the meaning' is slightly opaque, but each sentence carries useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a validation tool with a nested object parameter and no output schema, the description omits what a successful or failed validation returns and how errors are surfaced. It does point to find_verification_checks for the input schema, which partially compensates, but the behavioral outcome remains underspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides essentially no information about the required `plan` object (0% description coverage, nested object). The description compensates by directing the agent to find_verification_checks for the plan schema, which is critical, though it does not enumerate the plan's internal fields or required keys directly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (validate) and two concrete validation targets: complete criterion coverage and checker compatibility. It is clearly about verification plans, though it does not explicitly contrast itself with siblings like run_verification_checks or get_verification_run.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides an actionable prerequisite—fetch the plan schema from find_verification_checks—and a workflow ordering constraint: the creator must accept the meaning before funding. It lacks explicit when-not-to-use guidance or a direct comparison to run_verification_checks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
prepare_bounty_post2 fields changed- changed
Input schema / properties / bounty_image / descriptionPrevious value: -"Optional approved image generated in a compatible AI conversation. Agent Bounties stores this exact file; omit it and both image text fields to use the deterministic fallback visual."New value: +"Optional approved image generated in a compatible AI conversation. Agentizable stores this exact file; omit it and both image text fields to use the deterministic fallback visual." - changed
Input schema / properties / discovery_source / descriptionPrevious value: -"Optional public attribution for how the poster found Agent Bounties."New value: +"Optional public attribution for how the poster found Agentizable."
11 tool updates
- Added
accept_managed_service_quote - Added
appeal_card_bounty_review - Added
get_card_bounty_review - Added
get_managed_bounty_review - Added
get_managed_service_order - Added
issue_managed_bounty_quote - Added
issue_managed_service_quote - Added
open_managed_service_checkout - Added
read_managed_service_quote - Added
record_managed_bounty_review - Added
request_managed_service_refund
2 tool updates
- Changed
get_bounty_feed2 fields changed- added
Output schema / properties / coverageAdded value: +{ + "enum": [ + "complete", + "partial", + "unavailable" + ], + "type": "string" +} - added
Output schema / properties / coverage_scopeAdded value: +{ + "enum": [ + "inventory_page", + "canonical_identity" + ], + "type": "string" +}
- Changed
render_bounty_feed2 fields changed- added
Output schema / properties / coverageAdded value: +{ + "enum": [ + "complete", + "partial", + "unavailable" + ], + "type": "string" +} - added
Output schema / properties / coverage_scopeAdded value: +{ + "enum": [ + "inventory_page", + "canonical_identity" + ], + "type": "string" +}
2 tool updates
- Changed
inspect_open_competition_v23 fields changed- changed
Input schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - }, - "operation": { - "const": "guide" - } - }, - "required": [ - "operation" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - }, - "operation": { - "const": "release" - } - }, - "required": [ - "operation" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - }, - "operation": { - "const": "profiles" - } - }, - "required": [ - "operation" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - }, - "operation": { - "const": "inventory" - }, - "state": { - "enum": [ - "announced", - "funding", - "active", - "settled", - "cancelled", - null - ], - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "operation" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "bounty_id": { - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": [ - "string", - "null" - ] - }, - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - }, - "operation": { - "const": "events" - } - }, - "required": [ - "operation" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "job_id": { - "format": "uuid", - "type": "string" - }, - "operation": { - "const": "proof_job" - } - }, - "required": [ - "operation", - "job_id" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "network": { + "description": "Defaults to base-mainnet.", + "enum": [ + "base-mainnet", + "base-sepolia", + null + ], + "type": [ + "string", + "null" + ] + }, + "operation": { + "const": "guide" + } + }, + "required": [ + "operation" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "for_operation": { + "enum": [ + "prepare_profile", + "prepare_policies", + "validate", + "create", + "fund", + "quote_proof", + "pay_proof", + "prepare_proof", + "authorize_relay", + "prepare_action" + ], + "type": "string" + }, + "operation": { + "const": "schema" + } + }, + "required": [ + "operation", + "for_operation" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "network": { + "description": "Defaults to base-mainnet.", + "enum": [ + "base-mainnet", + "base-sepolia", + null + ], + "type": [ + "string", + "null" + ] + }, + "operation": { + "const": "release" + } + }, + "required": [ + "operation" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "network": { + "description": "Defaults to base-mainnet.", + "enum": [ + "base-mainnet", + "base-sepolia", + null + ], + "type": [ + "string", + "null" + ] + }, + "operation": { + "const": "profiles" + } + }, + "required": [ + "operation" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "network": { + "description": "Defaults to base-mainnet.", + "enum": [ + "base-mainnet", + "base-sepolia", + null + ], + "type": [ + "string", + "null" + ] + }, + "operation": { + "const": "inventory" + }, + "state": { + "enum": [ + "announced", + "funding", + "active", + "settled", + "cancelled", + null + ], + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "operation" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "bounty_id": { + "pattern": "^0x[0-9a-fA-F]{64}$", + "type": [ + "string", + "null" + ] + }, + "network": { + "description": "Defaults to base-mainnet.", + "enum": [ + "base-mainnet", + "base-sepolia", + null + ], + "type": [ + "string", + "null" + ] + }, + "operation": { + "const": "events" + } + }, + "required": [ + "operation" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "job_id": { + "format": "uuid", + "type": "string" + }, + "operation": { + "const": "proof_job" + } + }, + "required": [ + "operation", + "job_id" + ], + "type": "object" + } +] - added
Input schema / properties / for_operationAdded value: +{ + "description": "For operation=schema only: mutation operation whose exact argument schema to read.", + "enum": [ + "prepare_profile", + "prepare_policies", + "validate", + "create", + "fund", + "quote_proof", + "pay_proof", + "prepare_proof", + "authorize_relay", + "prepare_action" + ], + "type": "string" +} - changed
Input schema / properties / operation / enumPrevious value: -[ - "guide", - "release", - "profiles", - "inventory", - "events", - "proof_job" -]New value: +[ + "guide", + "schema", + "release", + "profiles", + "inventory", + "events", + "proof_job" +]
- Changed
prepare_open_competition_v24 fields changed- removed
Input schema / $defsRemoved value: -{ - "authorize_relay": { - "additionalProperties": false, - "properties": { - "authorization_deadline": { - "minimum": 1, - "type": "integer" - }, - "proof_job_id": { - "format": "uuid", - "type": "string" - }, - "solver_signature": { - "description": "Omit to receive exact EIP-712 typed data; include only after explicit approval and signing.", - "pattern": "^0x(?:[0-9a-fA-F]{2})+$", - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "proof_job_id", - "authorization_deadline" - ], - "type": "object" - }, - "create": { - "additionalProperties": false, - "properties": { - "acknowledged_risk_hash": { - "description": "Copy the live release beta_risk_hash to acknowledge the exact public-beta risk bundle.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "creation_nonce": { - "description": "Copy from prepare_policies; reuse only when retrying the same intended competition.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "creator": { - "pattern": "^0x[0-9a-fA-F]{40}$", - "type": "string" - }, - "initial_funding": { - "description": "Initial Base USDC contribution in 6-decimal base units; remaining funding can be pooled later.", - "pattern": "^(0|[1-9][0-9]*)$", - "type": "string" - }, - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - }, - "params": { - "additionalProperties": false, - "properties": { - "beta_risk_hash": { - "description": "Copy from the live release beta_risk_hash.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "elf_hash": { - "description": "Copy from the selected reviewed profiles entry.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "execution_policy_hash": { - "description": "Copy from prepare_policies.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "funding_deadline": { - "description": "UTC Unix timestamp after which incomplete funding can be cancelled.", - "minimum": 1, - "type": "integer" - }, - "journal_schema_hash": { - "description": "Copy from the selected reviewed profiles entry.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "keeper_reward": { - "description": "Unsigned base-unit decimal string; USDC uses 6 decimals.", - "pattern": "^(0|[1-9][0-9]*)$", - "type": "string" - }, - "metric_program_hash": { - "description": "Copy from the selected reviewed profiles entry.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "program_vkey": { - "description": "Copy from the selected reviewed profiles entry.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "proof_system": { - "enum": [ - "groth16", - "plonk" - ], - "type": "string" - }, - "proof_window_seconds": { - "description": "Proof-entry window after canonical activation.", - "minimum": 1, - "type": "integer" - }, - "score_direction": { - "enum": [ - "higher_is_better", - "lower_is_better" - ], - "type": "string" - }, - "score_threshold": { - "description": "Signed integer decimal string.", - "pattern": "^-?(0|[1-9][0-9]*)$", - "type": "string" - }, - "settlement_policy_hash": { - "description": "Copy from prepare_policies.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "solver_reward": { - "description": "Unsigned base-unit decimal string; USDC uses 6 decimals.", - "pattern": "^(0|[1-9][0-9]*)$", - "type": "string" - }, - "source_hash": { - "description": "Copy from the selected reviewed profiles entry.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "verification_policy_hash": { - "description": "Copy from prepare_profile.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "winner_mode": { - "enum": [ - "first_proven", - "best_score" - ], - "type": "string" - } - }, - "required": [ - "solver_reward", - "keeper_reward", - "funding_deadline", - "proof_window_seconds", - "winner_mode", - "score_direction", - "score_threshold", - "proof_system", - "program_vkey", - "source_hash", - "elf_hash", - "journal_schema_hash", - "metric_program_hash", - "execution_policy_hash", - "verification_policy_hash", - "settlement_policy_hash", - "beta_risk_hash" - ], - "type": "object" - } - }, - "required": [ - "creator", - "creation_nonce", - "acknowledged_risk_hash", - "initial_funding", - "params" - ], - "type": "object" - }, - "fund": { - "additionalProperties": false, - "properties": { - "acknowledged_risk_hash": { - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "amount": { - "description": "Unsigned base-unit decimal string; USDC uses 6 decimals.", - "pattern": "^(0|[1-9][0-9]*)$", - "type": "string" - }, - "competition_contract": { - "pattern": "^0x[0-9a-fA-F]{40}$", - "type": "string" - }, - "contributor": { - "pattern": "^0x[0-9a-fA-F]{40}$", - "type": "string" - }, - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "contributor", - "competition_contract", - "amount", - "acknowledged_risk_hash" - ], - "type": "object" - }, - "pay_proof": { - "additionalProperties": false, - "properties": { - "payment_signature": { - "description": "Omit on the first call to receive the exact x402 challenge; include only after explicit approval and signing.", - "minLength": 1, - "type": [ - "string", - "null" - ] - }, - "proof_job_id": { - "format": "uuid", - "type": "string" - } - }, - "required": [ - "proof_job_id" - ], - "type": "object" - }, - "prepare_action": { - "additionalProperties": false, - "properties": { - "action": { - "enum": [ - "finalize_best_score", - "cancel_funding", - "expire_competition", - "cancel_unavailable_verifier", - "withdraw_refund_for" - ], - "type": "string" - }, - "caller": { - "oneOf": [ - { - "pattern": "^0x[0-9a-fA-F]{40}$", - "type": "string" - }, - { - "type": "null" - } - ] - }, - "competition_contract": { - "pattern": "^0x[0-9a-fA-F]{40}$", - "type": "string" - }, - "contributor": { - "description": "Required only for withdraw_refund_for; refunds always go to this contributor.", - "oneOf": [ - { - "pattern": "^0x[0-9a-fA-F]{40}$", - "type": "string" - }, - { - "type": "null" - } - ] - }, - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "competition_contract", - "action" - ], - "type": "object" - }, - "prepare_policies": { - "additionalProperties": false, - "properties": { - "creation_nonce_seed": { - "description": "Stable unique public seed for this intended competition. Reuse it only when retrying the same creation.", - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "execution_policy": { - "description": "Complete public execution-policy JSON to commit.", - "minProperties": 1, - "type": "object" - }, - "settlement_policy": { - "description": "Complete public settlement-policy JSON to commit.", - "minProperties": 1, - "type": "object" - } - }, - "required": [ - "execution_policy", - "settlement_policy", - "creation_nonce_seed" - ], - "type": "object" - }, - "prepare_profile": { - "description": "Derive immutable fields for either reviewed built-in profile. profile_id is optional only for the legacy structured-artifact request shape.", - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - }, - "profile_id": { - "const": "structured-artifact-metric-v1" - }, - "requirements": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "utf8_contains" - }, - "minimum_occurrences": { - "minimum": 1, - "type": "integer" - }, - "needle": { - "maxLength": 4096, - "minLength": 1, - "type": "string" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "needle", - "minimum_occurrences", - "weight" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "utf8_excludes" - }, - "needle": { - "maxLength": 4096, - "minLength": 1, - "type": "string" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "needle", - "weight" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "maximum_bytes" - }, - "maximum": { - "maximum": 1048576, - "minimum": 1, - "type": "integer" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "maximum", - "weight" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "json_valid" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "weight" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "json_pointer_exists" - }, - "pointer": { - "type": "string" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "pointer", - "weight" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "expected": { - "type": "string" - }, - "kind": { - "const": "json_pointer_string_equals" - }, - "pointer": { - "type": "string" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "pointer", - "expected", - "weight" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "json_array_minimum_length" - }, - "minimum": { - "minimum": 0, - "type": "integer" - }, - "pointer": { - "type": "string" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "pointer", - "minimum", - "weight" - ], - "type": "object" - } - ] - }, - "maxItems": 256, - "minItems": 1, - "type": "array" - }, - "threshold": { - "description": "Unsigned base-unit decimal string; USDC uses 6 decimals.", - "pattern": "^(0|[1-9][0-9]*)$", - "type": "string" - } - }, - "required": [ - "threshold", - "requirements" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "mode": { - "enum": [ - "all_equal", - "maximize_exact_matches", - "minimize_absolute_error" - ], - "type": "string" - }, - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - }, - "profile_id": { - "const": "public-vector-metric-v1" - }, - "threshold": { - "description": "Signed integer decimal string.", - "pattern": "^-?(0|[1-9][0-9]*)$", - "type": "string" - }, - "vectors": { - "items": { - "additionalProperties": false, - "properties": { - "expected": { - "maximum": 9223372036854776000, - "minimum": -9223372036854776000, - "type": "integer" - }, - "weight": { - "maximum": 4294967295, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "expected", - "weight" - ], - "type": "object" - }, - "maxItems": 10000, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "profile_id", - "mode", - "threshold", - "vectors" - ], - "type": "object" - } - ] - }, - "prepare_proof": { - "additionalProperties": false, - "properties": { - "authorization_deadline": { - "minimum": 1, - "type": "integer" - }, - "competition_contract": { - "pattern": "^0x[0-9a-fA-F]{40}$", - "type": "string" - }, - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - }, - "proof": { - "pattern": "^0x(?:[0-9a-fA-F]{2})+$", - "type": "string" - }, - "proof_system": { - "enum": [ - "groth16", - "plonk" - ], - "type": "string" - }, - "public_values": { - "pattern": "^0x(?:[0-9a-fA-F]{2})+$", - "type": "string" - }, - "solver": { - "pattern": "^0x[0-9a-fA-F]{40}$", - "type": "string" - }, - "solver_nonce": { - "description": "Unsigned base-unit decimal string; USDC uses 6 decimals.", - "pattern": "^(0|[1-9][0-9]*)$", - "type": "string" - }, - "solver_signature": { - "pattern": "^0x(?:[0-9a-fA-F]{2})+$", - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "competition_contract", - "solver", - "solver_nonce", - "proof_system", - "public_values", - "proof", - "authorization_deadline" - ], - "type": "object" - }, - "quote_proof": { - "additionalProperties": false, - "properties": { - "artifact_hash": { - "description": "Required for public-vector and structured-artifact metrics. Omit for forward GMV; the API derives and binds the solver-specific submission hash from the attested snapshot.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "competition_contract": { - "pattern": "^0x[0-9a-fA-F]{40}$", - "type": "string" - }, - "metric": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "mode": { - "enum": [ - "all_equal", - "maximize_exact_matches", - "minimize_absolute_error" - ], - "type": "string" - }, - "threshold": { - "description": "Signed integer decimal string.", - "pattern": "^-?(0|[1-9][0-9]*)$", - "type": "string" - }, - "vectors": { - "items": { - "additionalProperties": false, - "properties": { - "expected": { - "type": "integer" - }, - "observed": { - "type": "integer" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "expected", - "observed", - "weight" - ], - "type": "object" - }, - "maxItems": 10000, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "mode", - "threshold", - "vectors" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "artifact_utf8": { - "maxLength": 1048576, - "minLength": 1, - "type": "string" - }, - "profile_id": { - "const": "structured-artifact-metric-v1" - }, - "requirements": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "utf8_contains" - }, - "minimum_occurrences": { - "minimum": 1, - "type": "integer" - }, - "needle": { - "maxLength": 4096, - "minLength": 1, - "type": "string" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "needle", - "minimum_occurrences", - "weight" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "utf8_excludes" - }, - "needle": { - "maxLength": 4096, - "minLength": 1, - "type": "string" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "needle", - "weight" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "maximum_bytes" - }, - "maximum": { - "maximum": 1048576, - "minimum": 1, - "type": "integer" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "maximum", - "weight" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "json_valid" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "weight" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "json_pointer_exists" - }, - "pointer": { - "type": "string" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "pointer", - "weight" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "expected": { - "type": "string" - }, - "kind": { - "const": "json_pointer_string_equals" - }, - "pointer": { - "type": "string" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "pointer", - "expected", - "weight" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "json_array_minimum_length" - }, - "minimum": { - "minimum": 0, - "type": "integer" - }, - "pointer": { - "type": "string" - }, - "weight": { - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "pointer", - "minimum", - "weight" - ], - "type": "object" - } - ] - }, - "maxItems": 256, - "minItems": 1, - "type": "array" - }, - "threshold": { - "description": "Unsigned base-unit decimal string; USDC uses 6 decimals.", - "pattern": "^(0|[1-9][0-9]*)$", - "type": "string" - } - }, - "required": [ - "profile_id", - "threshold", - "artifact_utf8", - "requirements" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "campaign": { - "additionalProperties": false, - "properties": { - "ends_at": { - "minimum": 0, - "type": "integer" - }, - "epoch_id": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 32, - "minItems": 32, - "type": "array" - }, - "excluded_bounty_contracts": { - "items": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 20, - "minItems": 20, - "type": "array" - }, - "maxItems": 4096, - "type": "array" - }, - "excluded_wallets": { - "items": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 20, - "minItems": 20, - "type": "array" - }, - "maxItems": 4096, - "type": "array" - }, - "minimum_score_base_units": { - "minimum": 0, - "type": "integer" - }, - "snapshot_attestation_threshold": { - "maximum": 255, - "minimum": 2, - "type": "integer" - }, - "snapshot_attesters": { - "items": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 20, - "minItems": 20, - "type": "array" - }, - "maxItems": 255, - "minItems": 2, - "type": "array" - }, - "starts_at": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "epoch_id", - "starts_at", - "ends_at", - "minimum_score_base_units", - "excluded_wallets", - "excluded_bounty_contracts", - "snapshot_attesters", - "snapshot_attestation_threshold" - ], - "type": "object" - }, - "profile_id": { - "const": "forward-canonical-gmv-attribution-metric-v2" - }, - "snapshot": { - "additionalProperties": false, - "properties": { - "attestations": { - "items": { - "additionalProperties": false, - "properties": { - "signature": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 65, - "minItems": 65, - "type": "array" - }, - "signer": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 20, - "minItems": 20, - "type": "array" - } - }, - "required": [ - "signer", - "signature" - ], - "type": "object" - }, - "maxItems": 255, - "minItems": 2, - "type": "array" - }, - "end_block_hash": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 32, - "minItems": 32, - "type": "array" - }, - "end_safe_block": { - "minimum": 0, - "type": "integer" - }, - "settlements": { - "items": { - "additionalProperties": false, - "properties": { - "block_number": { - "minimum": 0, - "type": "integer" - }, - "bounty_contract": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 20, - "minItems": 20, - "type": "array" - }, - "bounty_id": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 32, - "minItems": 32, - "type": "array" - }, - "creator": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 20, - "minItems": 20, - "type": "array" - }, - "funding": { - "items": { - "additionalProperties": false, - "properties": { - "amount_base_units": { - "minimum": 0, - "type": "integer" - }, - "contributor": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 20, - "minItems": 20, - "type": "array" - } - }, - "required": [ - "contributor", - "amount_base_units" - ], - "type": "object" - }, - "maxItems": 256, - "minItems": 1, - "type": "array" - }, - "gmv_base_units": { - "minimum": 0, - "type": "integer" - }, - "log_index": { - "minimum": 0, - "type": "integer" - }, - "protocol": { - "enum": [ - "autonomous", - "open_competition_v1", - "open_competition_v2" - ], - "type": "string" - }, - "settled_at": { - "minimum": 0, - "type": "integer" - }, - "solver": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 20, - "minItems": 20, - "type": "array" - }, - "transaction_hash": { - "items": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "maxItems": 32, - "minItems": 32, - "type": "array" - } - }, - "required": [ - "protocol", - "bounty_contract", - "bounty_id", - "creator", - "solver", - "settled_at", - "block_number", - "transaction_hash", - "log_index", - "gmv_base_units", - "funding" - ], - "type": "object" - }, - "maxItems": 4096, - "type": "array" - }, - "start_block": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "start_block", - "end_safe_block", - "end_block_hash", - "settlements", - "attestations" - ], - "type": "object" - } - }, - "required": [ - "profile_id", - "campaign", - "snapshot" - ], - "type": "object" - } - ] - }, - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - }, - "relay": { - "type": "boolean" - }, - "solver": { - "pattern": "^0x[0-9a-fA-F]{40}$", - "type": "string" - }, - "solver_nonce": { - "description": "Unsigned base-unit decimal string; USDC uses 6 decimals.", - "pattern": "^(0|[1-9][0-9]*)$", - "type": "string" - } - }, - "required": [ - "competition_contract", - "solver", - "solver_nonce", - "relay", - "metric" - ], - "type": "object" - }, - "validate": { - "additionalProperties": false, - "properties": { - "acknowledged_risk_hash": { - "description": "Copy the live release beta_risk_hash to acknowledge the exact public-beta risk bundle.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "creation_nonce": { - "description": "Copy from prepare_policies; reuse only when retrying the same intended competition.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "creator": { - "pattern": "^0x[0-9a-fA-F]{40}$", - "type": "string" - }, - "initial_funding": { - "description": "Initial Base USDC contribution in 6-decimal base units; remaining funding can be pooled later.", - "pattern": "^(0|[1-9][0-9]*)$", - "type": "string" - }, - "network": { - "description": "Defaults to base-mainnet.", - "enum": [ - "base-mainnet", - "base-sepolia", - null - ], - "type": [ - "string", - "null" - ] - }, - "params": { - "additionalProperties": false, - "properties": { - "beta_risk_hash": { - "description": "Copy from the live release beta_risk_hash.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "elf_hash": { - "description": "Copy from the selected reviewed profiles entry.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "execution_policy_hash": { - "description": "Copy from prepare_policies.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "funding_deadline": { - "description": "UTC Unix timestamp after which incomplete funding can be cancelled.", - "minimum": 1, - "type": "integer" - }, - "journal_schema_hash": { - "description": "Copy from the selected reviewed profiles entry.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "keeper_reward": { - "description": "Unsigned base-unit decimal string; USDC uses 6 decimals.", - "pattern": "^(0|[1-9][0-9]*)$", - "type": "string" - }, - "metric_program_hash": { - "description": "Copy from the selected reviewed profiles entry.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "program_vkey": { - "description": "Copy from the selected reviewed profiles entry.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "proof_system": { - "enum": [ - "groth16", - "plonk" - ], - "type": "string" - }, - "proof_window_seconds": { - "description": "Proof-entry window after canonical activation.", - "minimum": 1, - "type": "integer" - }, - "score_direction": { - "enum": [ - "higher_is_better", - "lower_is_better" - ], - "type": "string" - }, - "score_threshold": { - "description": "Signed integer decimal string.", - "pattern": "^-?(0|[1-9][0-9]*)$", - "type": "string" - }, - "settlement_policy_hash": { - "description": "Copy from prepare_policies.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "solver_reward": { - "description": "Unsigned base-unit decimal string; USDC uses 6 decimals.", - "pattern": "^(0|[1-9][0-9]*)$", - "type": "string" - }, - "source_hash": { - "description": "Copy from the selected reviewed profiles entry.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "verification_policy_hash": { - "description": "Copy from prepare_profile.", - "pattern": "^0x[0-9a-fA-F]{64}$", - "type": "string" - }, - "winner_mode": { - "enum": [ - "first_proven", - "best_score" - ], - "type": "string" - } - }, - "required": [ - "solver_reward", - "keeper_reward", - "funding_deadline", - "proof_window_seconds", - "winner_mode", - "score_direction", - "score_threshold", - "proof_system", - "program_vkey", - "source_hash", - "elf_hash", - "journal_schema_hash", - "metric_program_hash", - "execution_policy_hash", - "verification_policy_hash", - "settlement_policy_hash", - "beta_risk_hash" - ], - "type": "object" - } - }, - "required": [ - "creator", - "creation_nonce", - "acknowledged_risk_hash", - "initial_funding", - "params" - ], - "type": "object" - } -} - removed
Input schema / allOfRemoved value: -[ - { - "if": { - "properties": { - "operation": { - "const": "prepare_profile" - } - }, - "required": [ - "operation" - ] - }, - "then": { - "properties": { - "arguments": { - "$ref": "#/$defs/prepare_profile" - } - } - } - }, - { - "if": { - "properties": { - "operation": { - "const": "prepare_policies" - } - }, - "required": [ - "operation" - ] - }, - "then": { - "properties": { - "arguments": { - "$ref": "#/$defs/prepare_policies" - } - } - } - }, - { - "if": { - "properties": { - "operation": { - "const": "validate" - } - }, - "required": [ - "operation" - ] - }, - "then": { - "properties": { - "arguments": { - "$ref": "#/$defs/validate" - } - } - } - }, - { - "if": { - "properties": { - "operation": { - "const": "create" - } - }, - "required": [ - "operation" - ] - }, - "then": { - "properties": { - "arguments": { - "$ref": "#/$defs/create" - } - } - } - }, - { - "if": { - "properties": { - "operation": { - "const": "fund" - } - }, - "required": [ - "operation" - ] - }, - "then": { - "properties": { - "arguments": { - "$ref": "#/$defs/fund" - } - } - } - }, - { - "if": { - "properties": { - "operation": { - "const": "quote_proof" - } - }, - "required": [ - "operation" - ] - }, - "then": { - "properties": { - "arguments": { - "$ref": "#/$defs/quote_proof" - } - } - } - }, - { - "if": { - "properties": { - "operation": { - "const": "pay_proof" - } - }, - "required": [ - "operation" - ] - }, - "then": { - "properties": { - "arguments": { - "$ref": "#/$defs/pay_proof" - } - } - } - }, - { - "if": { - "properties": { - "operation": { - "const": "prepare_proof" - } - }, - "required": [ - "operation" - ] - }, - "then": { - "properties": { - "arguments": { - "$ref": "#/$defs/prepare_proof" - } - } - } - }, - { - "if": { - "properties": { - "operation": { - "const": "authorize_relay" - } - }, - "required": [ - "operation" - ] - }, - "then": { - "properties": { - "arguments": { - "$ref": "#/$defs/authorize_relay" - } - } - } - }, - { - "if": { - "properties": { - "operation": { - "const": "prepare_action" - } - }, - "required": [ - "operation" - ] - }, - "then": { - "properties": { - "arguments": { - "$ref": "#/$defs/prepare_action" - } - } - } - } -] - added
Input schema / properties / arguments / additionalPropertiesAdded value: +true - changed
Input schema / properties / arguments / descriptionPrevious value: -"Operation-specific body selected by the conditional schema. Never add guessed fields."New value: +"Exact argument object for the selected operation. First call inspect_open_competition_v2 with operation=schema and for_operation set to that operation; follow its arguments_schema. Never guess fields or include private keys."
1 tool update
- Changed
list_autonomous_bounties2 fields changed- changed
Input schema / properties / network / descriptionPrevious value: -"Optional Base network; defaults to base-mainnet."New value: +"Base network, case-insensitive: base-mainnet (aliases base, mainnet, 8453) or base-sepolia (aliases sepolia, 84532). Defaults to base-mainnet." - removed
Input schema / properties / network / enumRemoved value: -[ - "base-sepolia", - "base-mainnet" -]
1 tool update
- Changed
list_autonomous_bounties1 field changed- added
Output schema / properties / items / items / properties / verification_detailsAdded value: +{ + "additionalProperties": true, + "type": "object" +}
2 tool updates
- Added
get_posting_options - Added
get_posting_status
16 tool updates
- Added
accept_review_task - Added
assign_review_task - Added
confirm_artifact_submission - Added
find_verification_checks - Added
get_verification_artifact - Added
get_verification_review - Added
get_verification_run - Added
import_verification_github - Added
list_review_tasks - Added
open_artifact_dispute - Added
prepare_artifact_submission - Added
resolve_artifact_dispute - Added
run_verification_checks - Added
save_verification_review - Added
upload_verification_artifact - Added
validate_verification_plan
1 tool update
- Removed
compile_objective_with_cloud_agent
1 tool update
- Changed
prepare_bounty_post15 fields changed- added
Input schema / properties / delivery_deadlineAdded value: +{ + "description": "For creator review, the exact agreed calendar deadline as an ISO timestamp with timezone offset. Never replace it with days after claim. Omit automated benchmark and evidence_schema fields in creator mode.", + "format": "date-time", + "type": [ + "string", + "null" + ] +} - added
Input schema / properties / meta_childAdded value: +{ + "additionalProperties": false, + "description": "Preserve the routed parent binding. The review page verifies the canonical parent before applying any child economics.", + "properties": { + "intended_child_solver": { + "pattern": "^0x[0-9a-fA-F]{40}$", + "type": [ + "string", + "null" + ] + }, + "parent_bounty_contract": { + "pattern": "^0x[0-9a-fA-F]{40}$", + "type": "string" + } + }, + "required": [ + "parent_bounty_contract" + ], + "type": [ + "object", + "null" + ] +} - added
Input schema / properties / posting_operation_idAdded value: +{ + "description": "Stable posting journey identifier. Reuse it when resuming or retrying the same operation. If omitted, a deterministic identifier is derived from the unchanged preparation arguments.", + "format": "uuid", + "type": [ + "string", + "null" + ] +} - added
Input schema / properties / reference_attachmentAdded value: +{ + "description": "Preserve the approved compact homepage-background snapshot descriptor, including its commit-pinned asset_url, sha256 and captured_at. The first-party review validates the pinned bytes; never replace the user's reference.", + "type": [ + "object", + "null" + ] +} - added
Input schema / properties / review_modeAdded value: +{ + "description": "Creator review commits the creator as the sole human reviewer. The creator confirms the verdict; AI approval has no settlement authority.", + "enum": [ + "creator", + "automated", + null + ], + "type": [ + "string", + "null" + ] +} - changed
Input schema / properties / verifier_reward_usdc / descriptionPrevious value: -"Verifier reward and refundable claim bond in display USDC, for example 0.10."New value: +"Verifier reward and refundable claim bond in display USDC, for example 0.10. In creator mode, label this the creator-review reserve; it is paid to the creator on either verdict." - added
Output schema / properties / benchmarkAdded value: +{ + "type": [ + "object", + "null" + ] +} - added
Output schema / properties / delivery_deadlineAdded value: +{ + "format": "date-time", + "type": [ + "string", + "null" + ] +} - added
Output schema / properties / evidence_schemaAdded value: +{ + "type": [ + "object", + "null" + ] +} - added
Output schema / properties / meta_childAdded value: +{ + "type": [ + "object", + "null" + ] +} - added
Output schema / properties / posting_operation_idAdded value: +{ + "format": "uuid", + "type": "string" +} - added
Output schema / properties / reference_attachmentAdded value: +{ + "type": [ + "object", + "null" + ] +} - added
Output schema / properties / review_disclosureAdded value: +{ + "type": [ + "string", + "null" + ] +} - added
Output schema / properties / review_modeAdded value: +{ + "enum": [ + "creator", + "automated" + ], + "type": "string" +} - added
Output schema / properties / verification_preparedAdded value: +{ + "type": "boolean" +}
1 tool update
- Changed
prepare_bounty_post2 fields changed- added
Input schema / properties / benchmarkAdded value: +{ + "description": "Optional exact public sandboxed_regression_v1 benchmark. Supply this and evidence_schema together. The source commit, benchmark digest, OCI image, command, and resource limits are immutable bounty terms.", + "type": [ + "object", + "null" + ] +} - added
Input schema / properties / evidence_schemaAdded value: +{ + "description": "Optional public submission-evidence schema paired with benchmark. Supply both verifier fields or neither.", + "type": [ + "object", + "null" + ] +}
13 tool updates
- First observed
add_bounty_comment - First observed
compile_objective_with_cloud_agent - First observed
create_share_bundle - First observed
get_bounty_action_status - First observed
get_bounty_feed - First observed
inspect_open_competition_v2 - First observed
list_autonomous_bounties - First observed
list_bounty_comments - First observed
prepare_bounty_action - First observed
prepare_bounty_post - First observed
prepare_moonpay_onramp - First observed
prepare_open_competition_v2 - First observed
render_bounty_feed
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceRemote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.MIT
- AlicenseCqualityCmaintenanceCompetitor Monitor AI - MCP server providing AI-powered tools and automation by MEOK AI Labs112 npm58 PyPIMIT
- AlicenseAqualityCmaintenanceEnables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.1623 npm1MIT

industrylens-mcpofficial
AlicenseNot gradedqualityBmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.