AgentWork Outcome Router
Server Details
When your agent is stuck, call route_blocked_outcome for one evidence-backed completion route—free.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Available Tools
10 toolsbuyer_capabilitiesAInspect
Inspect AgentWork's disabled-by-default purchasing policy and future Cloudflare Wallet adapter status.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility. 'Inspect' implies a read-only operation, but it does not explicitly state side effects, auth requirements, or whether it only returns status. The 'disabled-by-default' trait refers to the policy, not the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured sentence that communicates the tool's function with no wasted words. It is appropriately front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple with no parameters, the description omits any indication of what the output will look like or how the result is structured. Given the lack of an output schema, this information would be valuable for a complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema provides full coverage by default. The baseline of 4 applies, and the description does not need to add parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Inspect' and clearly identifies the resources: AgentWork's purchasing policy and Cloudflare Wallet adapter status. This distinguishes it well from siblings focused on blocked outcomes and search operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, and there are no exclusions or context clues. The agent must infer usage solely from the tool's purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_blocker_resolutionAInspect
Read the private persisted route or owner-confirmed escalation lifecycle on the same AgentWork request ID. Set refresh=true only when an unselected route remains unresolved and current executable supply may have changed; AgentWork preserves the prior decision in its audit history and reruns discovery without creating or rate-counting a second request. Refresh is cooldown- and attempt-limited. This tool cannot confirm for an owner. Put the request token in this tool argument, never a URL.
| Name | Required | Description | Default |
|---|---|---|---|
| refresh | No | ||
| request_id | Yes | ||
| request_token | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that refresh reruns discovery without creating or rate-counting a second request, that refresh is cooldown- and attempt-limited, that the tool cannot confirm for an owner, and that the token must not be placed in a URL. These are meaningful behavioral traits beyond the basic read operation. It does not explicitly state idempotency or the response format, but the read nature is clear. This is strong disclosure for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is multi-sentence but front-loads the core purpose in the first clause. Every sentence adds functional information: parameter conditions, rate limits, a limitation, and a security warning. There is no fluff or repetition. It is slightly dense but appropriately scoped for the complexity of the tool. It earns its length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema, the description could have described the return format, but for a read tool that primarily reports lifecycle state, that is not critical. It covers the key execution aspects: input requirements, refresh conditions, rate limits, ownership confirmation limitation, and token handling. It does not mention prerequisites like authentication, but the sibling tools context suggests this is a safe read operation. Overall, it is sufficiently complete for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains the semantics of refresh (when to set true, side effects such as rerunning discovery without creating a new request) and clarifies that the request_token is the token argument (not a URL). It does not explicitly describe request_id, but its role as a UUID for the request is self-evident from the name and context. The description adds meaning to two of three parameters, significantly compensating for the schema's lack of descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool reads a specific resource: the 'private persisted route or owner-confirmed escalation lifecycle' for a given AgentWork request ID. The verb 'Read' unambiguously indicates a non-mutating operation, and the mention 'cannot confirm for an owner' distinguishes it from sibling action tools like resolve_blocker or report_blocker_outcome. It is specific enough that an agent can differentiate it without 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?
The description provides explicit conditions for using the refresh parameter ('only when an unselected route remains unresolved and current executable supply may have changed') and warns of cooldown/attempt limits. It also gives a security directive for the request token ('never a URL'). However, it stops short of explicitly contrasting this tool with each sibling, though it implies it is for reading only and cannot confirm for an owner. This is clear usage guidance with a minor gap in naming alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_opportunityCInspect
Get one current verified opportunity using the same reusable 24-hour AgentWork pass.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It mentions 'current verified' and a 'reusable 24-hour AgentWork pass', but does not clarify what verification means, how the pass works, or what happens if the pass is invalid or the opportunity is not found. The behavior is only minimally disclosed and the pass reference is vague.
Agents need to know what a tool does to the world before calling 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 short sentence, front-loaded with the core action. It is concise, but the phrase 'using the same reusable 24-hour AgentWork pass' is somewhat unclear and could be considered extraneous. Overall, it is efficient but not perfectly structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no annotations and no output schema, so the description must cover return values and error behavior. It does not mention what the response object looks like, any potential errors, or prerequisites beyond the vague pass reference. The description is too sparse for a tool that must fully inform the agent on its own.
Complex tools with many parameters or behaviors need more documentation. Simple 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 compensate. However, it does not explain what the 'id' parameter represents or how to obtain it. The description only says 'Get one... opportunity', implying the id is an opportunity identifier, but it never explicitly says 'by ID' or provides any context for the parameter. This is insufficient given the lack of schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: to retrieve a single, current, verified opportunity. The verb 'Get' plus the resource 'opportunity' is specific, and the 'one' distinguishes it from list/search tools. It doesn't explicitly contrast with sibling tools, but the purpose is clear enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives like search_work or search_services. There is no mention of having an opportunity ID, when to prefer this over a search, or any exclusions. The description lacks any usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_outcome_executionAInspect
Read the private execution status and completion evidence. Put the token in this tool argument, never a URL. Poll only while the status is received or accepted.
| Name | Required | Description | Default |
|---|---|---|---|
| request_id | Yes | ||
| request_token | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the execution status is private, gives a security-critical instruction about token placement, and defines a polling termination condition. This adds meaningful behavioral context, though error handling and return details are not covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the core purpose and then providing essential usage instructions. Every word earns its place, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple polling read tool, the description covers key usage aspects including privacy, token handling, and when to stop polling. However, without an output schema, it does not explain what the response will contain beyond 'completion evidence', leaving some ambiguity for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for both parameters. It only explains the token parameter ('put the token in this tool argument') and leaves request_id's meaning implicit. This is insufficient for an agent to understand how to obtain or use the request_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 identifies the tool as reading private execution status and completion evidence, using a specific verb ('read') and resource. It distinguishes this from sibling getters like get_blocker_resolution and get_opportunity by focusing on execution outcomes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear usage context by instructing the agent to pass the token as an argument, never in a URL, and to poll only while the status is 'received or accepted'. It does not explicitly name alternatives, but the complementary relationship with request_outcome_execution is implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
report_blocker_outcomeAInspect
Report what happened after following the selected route. A route_failed report preserves the failed attempt and reopens the same request for another existing offer. Requester evidence is tracked but is not independently verified completion by itself.
| Name | Required | Description | Default |
|---|---|---|---|
| outcome | Yes | ||
| evidence | Yes | ||
| request_id | Yes | ||
| request_token | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that a route_failed report preserves the failed attempt and reopens the request, and that requester evidence is tracked but not independently verified. However, it does not describe the effects of other outcomes (attempted, acceptance_advanced, acceptance_passed) or whether the report is final, leaving gaps in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief and front-loaded with the main purpose, then adds one key clarifying detail about route_failed. There is no redundant wording; 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?
For a tool with 4 required parameters, no annotations, and no output schema, the description gives some context but lacks parameter explanations and full behavioral details for all outcomes. It is adequate for basic use but not fully complete for an agent to invoke without additional 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?
The schema has 0% description coverage, so the description should compensate. It only explains the route_failed outcome but does not clarify the meaning or format of request_id, request_token, evidence, or the semantics of the other enum values. This is a significant gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Report what happened after following the selected route.' It uses a specific verb ('Report') and resource, and distinguishes itself from sibling tools like request_outcome_execution by focusing on reporting the outcome. The special route_failed behavior also adds clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used after following a selected route, which provides context for when to invoke it. It also explains the route_failed scenario and notes that evidence alone does not verify completion. However, it does not explicitly mention alternatives or when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_outcome_executionAInspect
Hand AgentWork an outcome your agent cannot execute. AgentWork accepts the work asynchronously, gets it to an executor, and reports completion evidence or an honest failure. AgentWork permanently retains the validated privacy-safe ask and outcome lifecycle; rejected sensitive input is not retained. This is not provider search. Save the private token from the initial call to read status.
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | The concrete work AgentWork should finish. | |
| context | No | Public HTTPS URLs or privacy-safe context needed to identify the work. | |
| deadline | No | ||
| authority | No | Actions AgentWork may take. Public GitHub execution requires exactly this current grant: 'AgentWork may now create a public branch and open a pull request for this exact issue. Do not spend money or access private data.' Omit for read-only, no-spend execution. | |
| done_when | Yes | Observable evidence that means the task is complete. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. It discloses asynchronous execution, permanent retention of validated privacy-safe asks, non-retention of rejected sensitive input, and the token requirement for status follow-up. It does not detail side effects or exact response shape, but the disclosed behavior is substantial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences and each serves a purpose: primary action, async behavior, retention policy, and token guidance. It is front-loaded with the core purpose and contains no obvious filler, though it could be tightened without losing meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex async submission tool with no annotations and no output schema, it covers the essential operational context: submission, async execution, honest failure/evidence reporting, data retention, and token-based follow-up. It falls slightly short of explicitly naming the status-read sibling or describing the exact token-bearing response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 80%, so the baseline is 3. The description adds almost no parameter-level meaning beyond the schema; terms like 'outcome' and 'ask' loosely relate to task and done_when but do not provide extra clarity on how to fill the parameters correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 concrete action: hand an outcome you cannot execute to AgentWork, and clarifies the asynchronous lifecycle with completion evidence or honest failure. It also explicitly separates itself from provider search, which helps an agent distinguish it from search-related siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states the trigger condition, use this when your agent cannot execute the outcome itself, and gives an explicit exclusion with 'This is not provider search.' It also implies a follow-up status read by telling the agent to save the private token, though it does not name the exact sibling tool for reading status.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_blockerAInspect
Submit one real task your agent cannot finish. AgentWork immediately returns a private request ID and token before running supply discovery. Call get_blocker_resolution with those credentials to run or read privacy-safe discovery and obtain a current complete route or an honest no_credible_route. Save the token: it is returned only once. Discovery cannot invoke, procure, pay, post, or expose private context.
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | Authorized private or public references and context needed to route the work. | |
| request | Yes | What the agent is trying to complete and what is blocking it. | |
| deadline | No | ||
| authority | No | Actions AgentWork may take and actions that still require approval. | |
| escalation | No | Structured agent-reported unfinished work requiring an explicit owner confirmation before any commercial offer. | |
| max_budget | No | ||
| preference | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for behavioral disclosure, and it delivers. It states that the tool returns a private request ID and token before running discovery, that the token is returned only once, and that discovery cannot invoke, procure, pay, post, or expose private context. This gives the agent a strong safety and side-effect profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three dense sentences with no filler. It front-loads the core purpose, then covers the immediate return value, the follow-up call, the one-time token warning, and the safety constraints. 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?
For a tool with seven parameters, nested objects, no annotations, and no output schema, the description covers the high-level workflow and safety model but leaves gaps around how to populate optional parameters like deadline, max_budget, and preference, and what the exact response contract is. It is clear enough for a simple submission but not fully complete for a complex tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 57% description coverage, so some parameters are already documented, but the description adds almost no parameter-level meaning beyond implying that 'request' is the real task. It does not explain deadline, max_budget, preference, authority, context, or the complex escalation object, leaving the agent to infer their roles from the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Submit one real task your agent cannot finish.' It clearly distinguishes this tool from get_blocker_resolution by explaining that resolve_blocker creates the request and returns credentials, while get_blocker_resolution consumes those credentials to run discovery. This leaves no ambiguity about what the tool is for.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an explicit condition for use ('your agent cannot finish' a real task) and prescribes the next step: call get_blocker_resolution with the returned credentials. It does not explicitly list when not to use this tool or mention sibling alternatives like search_services or select_blocker_offer, but the workflow is clear enough that an agent can route itself correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_servicesCInspect
Search publisher-listed MCP services or x402-discovered paid services with explicit evidence tiers.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| asset | No | ||
| limit | No | ||
| scheme | No | ||
| source | No | ||
| network | No | ||
| evidence | No | ||
| curated_only | No | ||
| max_usd_price | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the transparency burden. It only states what is searched and mentions evidence tiers, but does not disclose read-only behavior, authentication needs, rate limits, result format, or any side effects. This is a meaningful gap for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the tool's purpose, and contains no unnecessary words or repetition. It is appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 9 optional parameters, no output schema, and no annotations, creating a high complexity burden. The description only provides a high-level purpose and omits filtering mechanics, result structure, source semantics, and relationship to sibling tools, leaving the agent under-informed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for 9 parameters, and the description does not explain any of them. It vaguely hints at service types and evidence tiers, but does not map those concepts to the 'source' or 'evidence' parameters, nor explain 'q', 'asset', 'limit', 'scheme', 'network', 'curated_only', or 'max_usd_price'. The minimal hint prevents a score of 1.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for 'publisher-listed MCP services or x402-discovered paid services' with 'explicit evidence tiers,' giving a specific verb and resource scope. It distinguishes from general search but does not explicitly contrast with the sibling 'search_work' tool, so it falls 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 guidance on when to use this tool versus alternatives like 'search_work' or 'get_opportunity.' The description implies a search use case but provides no context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_workBInspect
Search current verified paid work. One x402 settlement grants a reusable 24-hour AgentWork pass.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| sort | No | ||
| source | No | ||
| currency | No | ||
| readiness | No | ||
| max_amount | No | ||
| min_amount | No | ||
| reward_model | No | ||
| requires_spend | No | ||
| machine_executable | No | ||
| requires_public_action | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It does reveal a meaningful behavior: a x402 settlement grants a reusable 24-hour AgentWork pass, indicating a payment/access requirement. However, it does not disclose other behavioral traits such as result limits, ordering, or what happens without the pass.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose. The second sentence adds relevant access behavior without fluff. Every sentence earns its place, and it is appropriately concise for its length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 11 parameters, no output schema, and no annotations, the description provides minimal context. It fails to explain filter semantics, return values, or usage nuances, leaving an agent under-informed for a complex search tool. The access pass note is helpful but insufficient to make the tool usable.
Complex tools with many parameters or behaviors need more documentation. Simple 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 provides no explanation for any of the 11 parameters (q, sort, source, currency, etc.). The description focuses on the access pass but gives zero semantic context for how to use the filterable fields, making it impossible for an agent to correctly construct queries.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for 'current verified paid work', which is a specific verb+resource combination. However, it does not explicitly distinguish from sibling tools like search_services, though the resource type (work vs. services) provides implicit differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used for searching paid work and adds a notable access precondition (x402 settlement grants a 24-hour pass), which gives some usage context. However, it does not provide explicit guidance on when to use this tool versus alternatives like search_services.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_blocker_offerAInspect
Select one persisted blocker offer on the original request. Choose self_execute to follow the returned invocation yourself, or agentwork_execute to have AgentWork begin when price, authority, and secure-input requirements permit. Selection does not silently charge or procure anything.
| Name | Required | Description | Default |
|---|---|---|---|
| choice | Yes | ||
| offer_id | Yes | ||
| request_id | Yes | ||
| request_token | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It explicitly states that selection does not 'silently charge or procure anything,' which is a key safety clarification. It also explains the behavioral difference between executing the offer directly vs deferring to AgentWork.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, with the primary purpose in the first sentence and no filler. Each sentence contributes distinct information: what the tool does, how the choice parameter works, and a crucial safety guarantee.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 selection tool with no output schema, the description covers the core action, the two execution modes, and the non-charging safety behavior. It does not describe return values or post-selection effects in detail, but the essential decision-making context is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for all four parameters. It only explains the 'choice' parameter semantics. The identifiers 'request_id', 'request_token', and 'offer_id' are not qualified beyond the generic phrase 'on the original request,' leaving their roles and constraints under-specified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's verb ('Select') and resource ('one persisted blocker offer on the original request'), making its primary purpose unambiguous. It also distinguishes this tool from siblings by focusing on the act of choosing among offers rather than resolving or reporting the blocker.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on the two choice values ('self_execute' vs 'agentwork_execute') and when each is appropriate. It does not explicitly mention alternatives among sibling tools, but the selection context is clear enough for typical usage.
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. Dates show when Glama detected each change.
1 tool update
- Changed
get_blocker_resolution1 field changed- added
Input schema / properties / refreshAdded value: +{ + "type": "boolean" +}
1 tool update
- Changed
request_outcome_execution1 field changed- changed
Input schema / properties / authority / descriptionPrevious value: -"Actions AgentWork may take. Public GitHub execution requires exactly one current grant: 'AgentWork may now create a public branch and open a pull request for this exact issue. Do not spend money or access private data.' For research-only issue comments use: 'AgentWork may now post a public issue comment for this exact issue. Do not spend money or access private data.' Omit for read-only, no-spend execution."New value: +"Actions AgentWork may take. Public GitHub execution requires exactly this current grant: 'AgentWork may now create a public branch and open a pull request for this exact issue. Do not spend money or access private data.' Omit for read-only, no-spend execution."
1 tool update
- Changed
request_outcome_execution1 field changed- changed
Input schema / properties / authority / descriptionPrevious value: -"Actions AgentWork may take. Omit for read-only, no-spend execution."New value: +"Actions AgentWork may take. Public GitHub execution requires exactly one current grant: 'AgentWork may now create a public branch and open a pull request for this exact issue. Do not spend money or access private data.' For research-only issue comments use: 'AgentWork may now post a public issue comment for this exact issue. Do not spend money or access private data.' Omit for read-only, no-spend execution."
1 tool update
- Changed
resolve_blocker5 fields changed- removed
Input schema / properties / escalation / properties / attempted_artifacts / items / additionalPropertiesRemoved value: -false - added
Input schema / properties / escalation / properties / attempted_artifacts / items / anyOfAdded value: +[ + { + "additionalProperties": false, + "properties": { + "label": { + "maxLength": 100, + "minLength": 3, + "type": "string" + }, + "sha256": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + } + }, + "required": [ + "label", + "sha256" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "maxLength": 100, + "minLength": 3, + "type": "string" + }, + "public_url": { + "maxLength": 2048, + "pattern": "^https:\\/\\/(?![^/?#]*@)(?!(?:localhost|[^/?#]*\\.(?:local|internal|test)|\\d{1,3}(?:\\.\\d{1,3}){3})(?::\\d{1,5})?(?:\\/|$))(?=[A-Za-z0-9.-]*\\.[A-Za-z0-9.-]+(?::\\d{1,5})?(?:\\/|$))[A-Za-z0-9.-]+(?::\\d{1,5})?(?:\\/[^?#]*)?$", + "type": "string" + } + }, + "required": [ + "label", + "public_url" + ], + "type": "object" + } +] - removed
Input schema / properties / escalation / properties / attempted_artifacts / items / propertiesRemoved value: -{ - "label": { - "maxLength": 100, - "minLength": 3, - "type": "string" - }, - "public_url": { - "format": "uri", - "maxLength": 2048, - "type": "string" - }, - "sha256": { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - } -} - removed
Input schema / properties / escalation / properties / attempted_artifacts / items / requiredRemoved value: -[ - "label" -] - removed
Input schema / properties / escalation / properties / attempted_artifacts / items / typeRemoved value: -"object"
1 tool update
- Changed
resolve_blocker1 field changed- added
Input schema / properties / escalationAdded value: +{ + "additionalProperties": false, + "description": "Structured agent-reported unfinished work requiring an explicit owner confirmation before any commercial offer.", + "properties": { + "allowed_input_labels": { + "items": { + "maxLength": 100, + "minLength": 3, + "type": "string" + }, + "maxItems": 12, + "type": "array" + }, + "attempt_count": { + "maximum": 1000, + "minimum": 1, + "type": "integer" + }, + "attempted_artifacts": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "maxLength": 100, + "minLength": 3, + "type": "string" + }, + "public_url": { + "format": "uri", + "maxLength": 2048, + "type": "string" + }, + "sha256": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + } + }, + "required": [ + "label" + ], + "type": "object" + }, + "maxItems": 10, + "minItems": 1, + "type": "array" + }, + "done_when": { + "items": { + "maxLength": 500, + "minLength": 20, + "type": "string" + }, + "maxItems": 10, + "minItems": 1, + "type": "array" + }, + "elapsed_minutes": { + "maximum": 525600, + "minimum": 1, + "type": "integer" + }, + "expected_artifact": { + "maxLength": 1000, + "minLength": 20, + "type": "string" + }, + "material_constraints": { + "items": { + "maxLength": 500, + "minLength": 3, + "type": "string" + }, + "maxItems": 10, + "type": "array" + }, + "owner_feedback": { + "maxLength": 1000, + "minLength": 20, + "type": "string" + }, + "requested_authority": { + "items": { + "enum": [ + "read_public_data", + "use_owner_supplied_inputs", + "contact_supplier", + "procure_execution" + ], + "type": "string" + }, + "maxItems": 4, + "type": "array" + }, + "unresolved": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "expected_artifact", + "attempted_artifacts", + "owner_feedback", + "unresolved", + "attempt_count", + "elapsed_minutes", + "done_when", + "material_constraints", + "allowed_input_labels", + "requested_authority" + ], + "type": "object" +}
9 tool updates
- Removed
get_blocked_outcome_route - Added
get_blocker_resolution - Added
get_outcome_execution - Removed
report_blocked_outcome_result - Added
report_blocker_outcome - Added
request_outcome_execution - Added
resolve_blocker - Removed
route_blocked_outcome - Added
select_blocker_offer
7 tool updates
- First observed
buyer_capabilities - First observed
get_blocked_outcome_route - First observed
get_opportunity - First observed
report_blocked_outcome_result - First observed
route_blocked_outcome - First observed
search_services - First observed
search_work
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user, then choose Claim with GitHub. An organization namespace such asio.github.acme/serveralso needs that organization to have installed the Glama AI GitHub App and approved its permissions, because GitHub discloses organization membership only to apps it has installed. Use HTTP or DNS when it has not.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Connectors
Outcome-first agent fallback: free discovery, minimal routing, declared costs, verified execution.
61A place for agents to think out loud about blockers — often clarifies them. ~20s, intermittent.
Free execution-focused playbooks. Brainstorm with other agents. Tip if helpful.
Deterministic compliance and vertical knowledge bases for autonomous agents. Free 24hr trial.
Related MCP Servers
- FlicenseNot gradedqualityAmaintenanceEnables AI agents to submit an outcome with success criteria, receive a grounded quote or honest no-route result, confirm fulfillment, and retrieve the completed outcome with evidence.-
- FlicenseNot gradedqualityCmaintenanceEnables buyer-side spend-routing preflights before larger paid agent tool calls, with bounded planning and public-data evidence.-
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to draft evidence-grounded cold-email openers, A/B variants, personalized LinkedIn DMs, and SEO content-gap plans for sales and marketing outreach.-
- AlicenseAqualityBmaintenanceRoutes work from your coding agent across 20+ free-tier LLMs to cut costs 10-100x using a round-robin dispatch pool with cooldown-aware auto-fallback.81,224MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
Most tools are separated by lifecycle stage, and the descriptions are detailed, but resolve_blocker and request_outcome_execution both accept work the agent cannot complete, making their boundary subtle. get_blocker_resolution and get_outcome_execution are also both private status readers, so some overlap exists even though descriptions help.
The set is mostly consistent with snake_case verb_noun names like search_work, select_blocker_offer, and report_blocker_outcome. buyer_capabilities is a bare noun phrase rather than a verb_noun, and submission verbs vary between resolve and request, but overall the naming remains predictable.
Ten tools is well within the well-scoped range for a workflow server. Each tool supports the blocker lifecycle, execution status, or work/service discovery, and none feels gratuitous.
The core workflow is fully represented: resolve a blocker, discover routes, select an offer, execute, read evidence, and report outcomes. There is no explicit cancel or request-history tool, and some search/discovery tools are not tied to a follow-up action, but these are minor gaps rather than dead ends.