Skip to main content
Glama

Conduit Agentic Commerce

Server Details

Search multi-merchant supply, checkout, and track orders via MCP.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

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

MCP client
Glama
MCP server

Full call logging

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

Tool access control

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

Managed credentials

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

Usage analytics

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

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 17 of 17 tools scored. Lowest: 3.6/5.

Server CoherenceA
Disambiguation4/5

Tools are mostly distinct, with clear domain prefixes. The only potential overlaps (order_events vs order_track, supply_details vs supply_delivery) are clarified by descriptions that emphasize different focuses (timeline vs current status, product info vs shipping probe).

Naming Consistency4/5

All tools use a consistent lowercase snake_case with domain prefixes (agent_, order_, payment_, supply_). However, the second part is not uniformly a verb (e.g., order_events, payment_mandate, supply_delivery), mixing nouns and verbs, which is a minor deviation from a strict verb_noun pattern.

Tool Count4/5

With 17 tools, the set is slightly above the typical 3-15 range but justified for a commerce platform covering agent management, order lifecycle, payments, and supply. Each tool addresses a distinct aspect, and the count feels reasonable rather than bloated.

Completeness4/5

The toolset covers core workflows well: agent create/update/auth, order list/execute/track/dispute/feedback, payment mandates/methods, and supply search/details/delivery. Minor gaps include no explicit get_order for full order details and no removal of payment methods, but these are workable via existing tools.

Available Tools

17 tools
agent_authenticateAuthenticate agentAInspect

Two-step re-auth. Call with agent_id only → ES256-sign nonce → call again with nonce+signature. Prefer keys from ~/.conduit/credentials.json. Do not agent_create if credentials already exist.

ParametersJSON Schema
NameRequiredDescriptionDefault
nonceNoChallenge nonce from the first agent_authenticate call (omit to request one)
agent_idYesAgent id from ~/.conduit/credentials.json, e.g. agt_...
signatureNoSignature of the nonce with the agent private key (omit with nonce to get challenge)

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
errorNo
nonceNo
detailNo
handleNo
agentIdNo
persistNo
mandatesNo
terminalNo
challengeNo
createdAtNo
publicKeyNo
openOrdersNo
reputationNo
preferencesNo
totalOrdersNo
friendlyNameNo
organizationNo
paymentRailsNo
businessProfileNo
organization_idNo
roleDescriptionNo
humanDescriptionNo
defaultDestinationNo
destination_sourceNo
effectiveDestinationNo
Behavior4/5

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

Beyond annotations (readOnlyHint false, destructiveHint false), description explains the multi-step authentication flow, signing requirement, and file preference. Adds value but doesn't detail failure modes or rate limits.

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

Conciseness5/5

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

Two sentences packed with essential information: the two-step nature, signing method, key file, and warning about creation. No wasted words.

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

Completeness4/5

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

Given complexity of multi-step auth and presence of output schema, description provides clear process flow. Could mention error handling or success indicators, but sufficient for correct tool invocation.

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

Parameters4/5

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

All 3 parameters have schema descriptions (100% coverage). Description adds flow context: nonce omitted on first call, then provided with signature. This clarifies parameter usage without repeating schema.

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

Purpose5/5

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

Clearly states it's a two-step re-authentication for an agent. Uses specific verb 'authenticate' and resource 'agent'. Distinguishes from sibling tool agent_create by warning against creating credentials if they already exist.

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

Usage Guidelines5/5

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

Explicitly describes the two-step process: call with agent_id only, then ES256-sign nonce, then call again with nonce+signature. Provides alternative avoidance: do not agent_create if credentials exist. Prefers keys from specific file.

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

agent_createCreate agent profileAInspect

Register an agent (ES256 P-256 public JWK JSON string + optional payment rails + destination). BEFORE: read ~/.conduit/credentials.json — if it exists, reuse agent_id (do NOT register again). AFTER: write credentials (version, agent_id, public_key, private_key as JWKs; recommend handle; chmod 0600). Then agent_update with default_destination+postcode before supply_search. Optional friendly_name / human_description / role_description only if the human stated them. Omit handle to auto-generate (e.g. parcel-watcher-12).

ParametersJSON Schema
NameRequiredDescriptionDefault
handleNoOptional display handle (lowercase kebab); omit to auto-generate e.g. parcel-watcher-12
public_keyYesES256 P-256 public JWK as a JSON string (kty=EC, crv=P-256, x, y). Not PEM, hex, or base64url-wrapped JSON. Keep the matching private JWK only in ~/.conduit/credentials.json.
preferencesNoOptional agent preference bag
friendly_nameNoHuman-facing label (≠ handle), e.g. EU Restock Bot
payment_railsNoOptional rail keys to seed, e.g. ["x402"]
business_profileNoOptional business profile metadata object
role_descriptionNoSelf-instruction for this agent only, e.g. manage EU supplies
human_descriptionNoDescription shown to humans on the org dashboard
default_destinationNoShipping destination object; include postcode before supply_search

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
errorNo
nonceNo
detailNo
handleNo
agentIdNo
persistNo
mandatesNo
terminalNo
challengeNo
createdAtNo
publicKeyNo
openOrdersNo
reputationNo
preferencesNo
totalOrdersNo
friendlyNameNo
organizationNo
paymentRailsNo
businessProfileNo
organization_idNo
roleDescriptionNo
humanDescriptionNo
defaultDestinationNo
destination_sourceNo
effectiveDestinationNo
Behavior4/5

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

Annotations show this is a write operation (readOnlyHint=false). The description adds important behavioral details: it writes credentials to a file with chmod 0600, it reuses existing agent_id if already registered, and it requires the private key to be kept locally. No contradiction with annotations.

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

Conciseness4/5

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

The description is a single paragraph but well-structured with BEFORE/AFTER markers. It covers all essential information without unnecessary fluff. Could be slightly more structured with bullet points, but still effective and concise given the tool's complexity.

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

Completeness5/5

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

Given the tool has 9 parameters (1 required), no nested objects, an output schema, and the workflow involves multiple steps (check, register, update, search), the description is remarkably complete. It explains preconditions, postconditions, and when to use each optional parameter.

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

Parameters3/5

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

Schema coverage is 100%, so the description does not need to add much. It clarifies the format of 'public_key' (not PEM, hex, or base64url-wrapped JSON) and that 'handle' can be auto-generated. This adds marginal value beyond the schema.

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

Purpose5/5

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

The description clearly states 'Register an agent' and specifies the required format for the public key (ES256 P-256 public JWK JSON string). It also distinguishes from sibling tools like 'agent_update' by outlining a sequential workflow (after registration, call agent_update).

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

Usage Guidelines5/5

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

Provides explicit pre-conditions (check ~/.conduit/credentials.json before registering), post-actions (write credentials with specific permissions, then update with default_destination+postcode before supply_search), and conditions for optional fields (only if stated by human). This gives clear when-to-use and how-to-use guidance.

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

agent_organizationGet agent organizationA
Read-onlyIdempotent
Inspect

Read the linked organization (name, slug, country, default address) for an agent. Returns org_not_linked when organization_id is unset — dashboard claim/join is not released yet; do not invent join_org.

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idYesAgent id whose linked organization to read
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
errorNo
detailNo
organizationNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds behavioral detail: it returns org_not_linked when organization_id is unset and warns against inventing join_org. This provides context beyond the structured annotations without contradicting them.

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

Conciseness5/5

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

The description is two concise sentences, with the purpose front-loaded in the first sentence and the error condition/guardrail in the second. Every phrase adds value; no redundant content.

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

Completeness5/5

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

For a simple read tool with a rich output schema and full annotations, the description covers the purpose, error behavior, and a key caution. It mentions the fields returned and the org_not_linked case, making it complete for an agent to invoke correctly.

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

Parameters3/5

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

Both parameters (agent_id and session_token) are fully described in the input schema, giving 100% schema description coverage. The description adds no additional parameter semantics beyond the schema, so the baseline 3 applies.

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

Purpose5/5

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

The description opens with 'Read the linked organization...' which is a specific verb and resource, and lists the exact fields returned. This clearly distinguishes it from sibling tools like agent_update or agent_authenticate.

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

Usage Guidelines4/5

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

The description implies use when you need an agent's linked organization data. It also provides a when-not by stating 'do not invent join_org' and notes that dashboard claim/join is not released, guiding the agent on error handling. However, it does not explicitly name alternatives or contrast with other agent tools.

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

agent_report_issueReport an issueAInspect

Report unexpected tool errors or confusing Conduit outcomes for AX review (agent_report_issue — not order_feedback). Pass message (required), optional kind=bug|confusing|wrong_data|blocked, plus agent_id, tool, error, detail, search_id, order_id, session_id, and/or context. Dedupes open reports with the same tool+error+correlation. Does not change reputation.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindNoTriage kind (default confusing): bug | confusing | wrong_data | blocked
toolNoMCP tool that failed or confused you, e.g. supply_search or order_execute
errorNoError code from the prior tool response when present, e.g. offer_not_in_cache
detailNoOptional longer detail (response excerpt, unexpected field). Do not include private_key.
contextNoOptional structured extras (args summary, badge, etc.). Secrets are stripped.
messageYesRequired: what went wrong or what confused you (expected vs actual). Keep actionable. This is agent_report_issue — not order_feedback.
agent_idNoAgent id from credentials when available (omit placeholders like "agent_id")
order_idNoorder_id for correlation when the issue is order-related
search_idNosearch_id for correlation when the issue is search-related
session_idNoOptional session id; Conduit also picks up x-conduit-session-id from the transport
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
kindNo
nextNo
toolNo
errorNo
detailNo
statusNo
agent_idNo
report_idNo
session_idNo
already_openNo
Behavior4/5

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

Beyond annotations (which only mark non-read-only and non-destructive), the description discloses important behavioral details: reports are deduped based on tool+error+correlation and reporting does not change reputation. This adds meaningful context, though it does not cover every possible side effect or auth-related behavior.

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

Conciseness5/5

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

The description is three sentences: purpose, parameter summary, and behavioral notes. It is front-loaded with the primary purpose, avoids redundancy with the schema, and every sentence carries useful information without wasted words.

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

Completeness5/5

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

Given the complexity (11 params, nested objects, output schema), the description is complete enough: it covers purpose, usage conditions, key parameters, sibling distinction, dedupe behavior, and non-reputation impact. The output schema covers return values, and auth-related notes are in the schema, so nothing critical is missing.

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

Parameters4/5

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

The input schema already covers all 11 parameters with 100% descriptions, so the baseline is 3. The description adds value by explaining the dedupe correlation semantics (tool+error+correlation) and grouping the optional correlation fields, which helps the agent understand how parameters relate to each other.

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

Purpose5/5

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

The description uses a specific verb ('Report') with a clear resource ('unexpected tool errors or confusing Conduit outcomes') and explicitly distinguishes from the sibling tool order_feedback. This makes the tool's purpose immediately unambiguous and differentiates it from similar-looking tools.

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

Usage Guidelines5/5

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

The description states when to use the tool ('unexpected tool errors or confusing Conduit outcomes'), names the alternative (order_feedback) in an explicit 'not ...' construction, and gives required/optional parameter guidance. This satisfies the when/when-not/alternatives criterion.

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

agent_updateUpdate agent profileAInspect

Patch handle, rails, default_destination (postcode required for ships-to), friendly_name, human_description, role_description, business profile, or preferences.

ParametersJSON Schema
NameRequiredDescriptionDefault
handleNoNew display handle (lowercase kebab)
agent_idYesAgent id to patch, e.g. agt_...
preferencesNoPreferences patch
friendly_nameNoHuman-facing label (≠ handle), e.g. EU Restock Bot
payment_railsNoReplacement rail key list
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed
business_profileNoBusiness profile patch
role_descriptionNoSelf-instruction for this agent only, e.g. manage EU supplies
human_descriptionNoDescription shown to humans on the org dashboard
default_destinationNoShipping destination; must include postcode for accurate search

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
errorNo
nonceNo
detailNo
handleNo
agentIdNo
persistNo
mandatesNo
terminalNo
challengeNo
createdAtNo
publicKeyNo
openOrdersNo
reputationNo
preferencesNo
totalOrdersNo
friendlyNameNo
organizationNo
paymentRailsNo
businessProfileNo
organization_idNo
roleDescriptionNo
humanDescriptionNo
defaultDestinationNo
destination_sourceNo
effectiveDestinationNo
Behavior3/5

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

Annotations already indicate this is a non-readonly, non-destructive operation, so the description need not restate that. It adds the useful note about postcode requirement for ships-to, but does not disclose other behavioral traits such as immediate persistence, impact on existing workflows, or the need for a valid session token (which is partially covered in the schema). The description adds only minimal extra context.

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

Conciseness5/5

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

The description is a single, concise sentence that front-loads the action verb 'Patch' and organizes the fields into a clear list. Every word earns its place, with no filler or repetition of annotations. This is an efficient and well-structured description.

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

Completeness4/5

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

Given the tool's complexity (10 parameters) and the presence of a rich schema and output schema, the description is complete enough. It states the purpose and key constraints, while the schema covers parameter details and the output schema handles return values. The only notable omission is an explicit mention of the session token requirement, but the schema includes it, and the overall package is sufficient.

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

Parameters3/5

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

The schema has 100% parameter description coverage, so the baseline is 3. The description lists the parameters in natural language but mostly repeats schema information. It adds a slight semantic nuance for default_destination (postcode required for ships-to) beyond the schema's 'must include postcode for accurate search', but this is marginal.

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

Purpose5/5

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

The description uses the specific verb 'Patch' and clearly identifies the resource (agent profile) and enumerates the editable fields (handle, rails, default_destination, etc.). This distinguishes it from sibling tools like agent_create or agent_authenticate, making its purpose unambiguous.

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

Usage Guidelines3/5

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

The description implies usage for updating an existing agent profile but does not explicitly state when to use it over agent_create or provide exclusions. The postcode hint for default_destination gives some context, but there is no direct comparison to alternatives or guidance on prerequisites beyond what the schema provides.

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

order_disputeGet dispute pathA
Read-onlyIdempotent
Inspect

Refund/chargeback/report paths for an order. Requires owning agent_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idYesOwning agent id (required for authorization)
order_idYesOrder id to resolve refund/chargeback/report paths for
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
errorNo
detailNo
refundNo
orderIdNo
chargebackNo
report_to_conduitNo
Behavior4/5

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

Annotations already indicate a safe read-only operation, and the description adds a specific authorization requirement (owning agent_id), which is a useful behavioral disclosure beyond the annotations. It does not contradict annotations and provides the key context that this is an access-controlled lookup.

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

Conciseness5/5

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

The description is a single sentence that frontloads the purpose and includes only necessary context (auth prerequisite). It is extremely concise with no wasted words, achieving maximum efficiency.

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

Completeness4/5

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

Given the presence of a rich output schema and comprehensive annotations, the description is reasonably complete. However, the term 'paths' could be ambiguous (e.g., URLs, processes, or resolution options), and the description does not clarify this. Still, for a low-complexity read-only tool, it is mostly adequate.

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

Parameters3/5

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

The input schema provides 100% coverage for all three parameters, so the baseline is 3. The description adds minimal semantic value by stating 'Requires owning agent_id,' but this only reinforces the existing schema description. No additional syntax or format details are provided.

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

Purpose4/5

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

The description states the tool's function clearly: resolving refund/chargeback/report paths for an order. It distinguishes this from sibling tools like order_events and order_track by focusing on dispute-related paths, though the term 'paths' is somewhat ambiguous without further context.

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

Usage Guidelines3/5

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

The description provides a clear context of when to use this tool (for dispute/refund/chargeback purposes) and a prerequisite (owning agent_id), but it does not explicitly mention alternatives or when not to use it. There is no comparison to sibling tools, leaving the agent to infer the distinction.

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

order_eventsGet order eventsA
Read-onlyIdempotent
Inspect

Lifecycle timeline — transitions only. Pair with order_track. Requires owning agent_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idYesOwning agent id (required for authorization)
order_idYesOrder id whose lifecycle events to list
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
errorNo
detailNo
eventsNo
orderIdNo
Behavior4/5

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

Annotations declare the tool read-only and idempotent; the description adds that it provides a lifecycle timeline of transitions only, and requires owner authorization. This adds context beyond annotations without contradicting them.

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

Conciseness5/5

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

Three short sentences, front-loaded with 'Lifecycle timeline' and no filler. Every sentence adds value.

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

Completeness5/5

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

The description covers purpose, scope (transitions only), companion tool, and authorization. With output schema available, this is sufficient for an agent to select and invoke the tool.

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

Parameters3/5

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

All three parameters have schema descriptions (100% coverage), and the description reinforces agent_id as required. It doesn't add substantive value beyond the schema, so a baseline score of 3 is appropriate.

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

Purpose5/5

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

The title and description clearly indicate the tool lists order lifecycle events, with 'transitions only' scoping the output. This distinguishes it from siblings like order_track (tracking) and order_list (listing orders).

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

Usage Guidelines4/5

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

The description explicitly says 'Pair with order_track', suggesting complementary use, and notes the authorization requirement ('Requires owning agent_id'). It implies this tool is for transition events only, but doesn't explicitly state exclusions or alternatives, which is a minor gap.

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

order_executeExecute orderA
Idempotent
Inspect

Handoff or autonomous checkout. Autonomous needs badge payable_now + active mandate. Use idempotency_key. Prefer supply_delivery when only comparing delivery.

ParametersJSON Schema
NameRequiredDescriptionDefault
carrierNoPreferred carrier when delivery options allow
agent_idYesOwning agent id
pay_withNoRail key to pay with when multiple are enabled
quantityNoUnits to buy (default 1)
search_idNosearch_id from supply_search for correlation
supply_idYesOffer supply id to purchase
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed
idempotency_keyNoClient idempotency key — reuse to safely retry the same execute

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
noteNo
errorNo
detailNo
statusNo
orderIdNo
payWithNo
productNo
railKeyNo
quantityNo
supplierNo
supplyIdNo
billTotalNo
createdAtNo
shortfallNo
simulatedNo
continueUrlNo
billBreakdownNo
handoffQualityNo
handoffEndpointNo
idempotentReplayNo
externalCheckoutIdNo
Behavior4/5

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

Annotations already indicate mutating, idempotent, not destructive. Description adds context about two execution modes (handoff vs autonomous) and prerequisites for autonomous mode. It doesn't explicitly state that a charge will occur, but 'checkout' implies it. Overall, useful extra context beyond annotations.

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

Conciseness5/5

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

Four short sentences packed with information: mode requirements, idempotency advice, and sibling tool guidance. No filler or repetition; every sentence earns its place.

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

Completeness4/5

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

Given 8 parameters, annotations, and output schema, the description provides key usage guidance (modes, prerequisites, alternatives) without explaining return values (covered by output schema). Minor gap: 'handoff' mode not elaborated, but overall sufficient for a checkout tool.

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

Parameters3/5

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

Schema covers 100% of parameters with descriptions. The description mentions idempotency_key and session_token in passing, but adds no additional meaning beyond what the schema already provides. Baseline of 3 is appropriate.

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

Purpose4/5

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

Description says 'Handoff or autonomous checkout', clearly indicating a purchase/order execution. It distinguishes from siblings like supply_delivery (comparison) and order_track (tracking). However, 'handoff' mode is ambiguous and not fully explained.

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

Usage Guidelines5/5

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

Explicitly says 'Prefer supply_delivery when only comparing delivery', providing a clear alternative and when-not-to-use condition. Also states requirements for autonomous mode ('badge payable_now + active mandate') and recommends using idempotency_key.

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

order_feedbackSubmit feedbackAInspect

Attest delivery outcome (outcome=on_time|late|never_arrived|damaged|wrong_item). Requires owning agent_id. Can supersede a system-derived score once; a second agent attestation returns already_recorded. Poor outcomes next→order_dispute. Omit quality/carrier_rating if unknown.

ParametersJSON Schema
NameRequiredDescriptionDefault
notesNoFree-text delivery/quality notes
outcomeYesObserved fulfillment outcome. Sets status (on_time/late→DELIVERED, damaged/wrong_item→DISPUTED, never_arrived→FAILED) and reputation.
qualityNoProduct quality 1-5 — omit if unknown (do not invent)
agent_idYesOwning agent id (required for authorization)
order_idYesOrder id to attest
search_idNoOptional search_id for analytics correlation
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed
carrier_ratingNoCarrier rating 1-5 — omit if unknown; used in reputation when provided

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
hintNo
nextNo
errorNo
detailNo
statusNo
orderIdNo
outcomeNo
updatedNo
supersededNo
already_recordedNo
Behavior5/5

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

Annotations already flag readOnlyHint=false and idempotentHint=false, but the description goes further by explaining the one-time override behavior and the already_recorded response on second attestation. It also discloses the authorization requirement and the ordering of steps toward order_dispute, adding meaningful behavioral context beyond the structured hints.

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

Conciseness5/5

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

The description is compact and front-loaded, using short clauses to convey the outcome enum, the auth requirement, the single-supersede rule, the dispute workflow, and the omission guidance. No word is wasted, making it appropriately sized for the tool's complexity.

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

Completeness5/5

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

Given the 8-parameter schema and the presence of an output schema, the description does not need to explain return values. It covers the key behavioral nuances (once-only supersede, already_recorded, dispute routing) and the required agent auth, making it complete for the tool's complexity.

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

Parameters3/5

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

The input schema already describes all 8 parameters with full coverage (100%). The description adds little new parameter-level information; the advice to omit quality/carrier_rating if unknown duplicates the schema's 'omit if unknown' notes. Thus the description provides a baseline level of value, warranting a 3.

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

Purpose5/5

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

The description opens with 'Attest delivery outcome' and enumerates the exact outcome values, clearly distinguishing it from sibling tools like order_dispute or order_update_status. It specifies the resource (delivery outcome) and the action (attest), making the tool's purpose unambiguous.

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

Usage Guidelines4/5

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

It states a prerequisite ('Requires owning agent_id'), a behavioral constraint ('Can supersede a system-derived score once; a second agent attestation returns already_recorded'), and points to an alternative for poor outcomes ('Poor outcomes next→order_dispute'). While not as explicit as 'use X instead', it gives clear context and a workflow pointer, so it earns a 4.

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

order_listList ordersA
Read-onlyIdempotent
Inspect

List orders for an agent ({ orders }). Optional status or open_only filter.

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNoOptional status filter: PENDING, CONFIRMED, IN_TRANSIT, DELIVERED, ABANDONED (or CANCELLED), FAILED, DISPUTED
agent_idYesOwning agent id whose orders to list
open_onlyNoIf true, only in-flight orders (PENDING, CONFIRMED, IN_TRANSIT). Ignored when status is set.
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
errorNo
detailNo
ordersNo
Behavior3/5

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

Annotations already declare the tool read-only, idempotent, and non-destructive. The description adds only the optional filtering behavior, which is also captured in the schema. It does not add new behavioral context like pagination or auth requirements, but the output schema covers return values.

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

Conciseness5/5

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

Two short sentences, front-loaded with the primary action. The '{ orders }' placeholder is slight noise, but the description is appropriately concise and every word earns its place.

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

Completeness5/5

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

With full parameter descriptions, an output schema, and safety annotations, the description is sufficient for a simple listing tool. It states the core purpose and available filters without needing extra detail.

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

Parameters3/5

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

Schema coverage is 100%, so the baseline is 3. The description repeats 'status or open_only filter' but does not add meaning beyond what each property description already provides, such as the interaction between status and open_only.

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

Purpose5/5

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

The description clearly states the action (list) and resource (orders) with a scope ('for an agent'), and the optional filters distinguish it from sibling tools like order_track or order_events. The placeholder '{ orders }' is odd but does not obscure the meaning.

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

Usage Guidelines3/5

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

The description implies when to use (when you need to list orders for an agent) but does not mention any alternative tools or exclusion criteria, such as using order_track for a single order or order_events for event history.

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

order_trackTrack orderA
Read-onlyIdempotent
Inspect

Honest deal-type-aware status (never fabricates carrier scans). Requires owning agent_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idYesOwning agent id (required for authorization)
order_idYesOrder id to track
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
errorNo
detailNo
statusNo
carrierNo
orderIdNo
productNo
recoveryNo
trackingNo
trackableNo
trackingIdNo
checkout_idNo
continueUrlNo
status_sourceNo
tracking_sourceNo
merchant_observedNo
handoff_expires_atNo
agent_status_lockedNo
Behavior4/5

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

Annotations already mark the tool as read-only and non-destructive, so the description's added guarantees about not fabricating carrier scans and requiring the owning agent_id contribute meaningful behavioral context beyond the annotations. 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.

Conciseness5/5

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

The description is a single, front-loaded sentence with no wasted words. It packs the essential behavioral distinction and authorization requirement efficiently.

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

Completeness4/5

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

For a simple read-only status tool with good annotations and an output schema, the description is largely sufficient. The only minor gap is that it does not clarify the session_token nuance mentioned in the schema, but the schema itself provides that detail, so the overall context is adequate.

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

Parameters3/5

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

Input schema covers 100% of parameters with descriptive text for order_id, agent_id, and session_token. The description reinforces the ownership requirement but does not add new parameter-level meaning beyond what the schema already provides, so the baseline of 3 is appropriate.

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

Purpose4/5

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

The title ('Track order') provides the verb and resource, while the description clarifies that it returns status in a deal-type-aware, honest manner. The phrase 'never fabricates carrier scans' helps differentiate it from potentially less reliable status sources, 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.

Usage Guidelines3/5

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

The description gives a clear precondition ('Requires owning agent_id') and implies a reliability use case, but it does not explicitly state when to prefer this over order_events or other sibling tools, nor does it provide exclusions. Usage context is present but not fully explicit.

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

order_update_statusUpdate order statusAInspect

Agent manual correction or degraded handoff recovery. note required except cancelled. Owning agent_id required.

ParametersJSON Schema
NameRequiredDescriptionDefault
noteNoRequired note except when status=CANCELLED
statusYesNew status, e.g. PENDING, CONFIRMED, SHIPPED, DELIVERED, CANCELLED
carrierNoCarrier name when attaching tracking
agent_idYesOwning agent id (required for authorization)
order_idYesOrder id to update
search_idNoOptional search_id for analytics correlation
tracking_idNoCarrier tracking id when recovering handoff
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed
handoff_endpointNoMerchant handoff/status endpoint URL for poll recovery
external_checkout_idNoMerchant checkout id to recover degraded handoff polling

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
errorNo
detailNo
statusNo
carrierNo
orderIdNo
quantityNo
trackingIdNo
continueUrlNo
handoffEndpointNo
merchantObservedNo
agentStatusLockedNo
externalCheckoutIdNo
Behavior3/5

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

Annotations already indicate readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false. The description adds a useful constraint about notes (required except cancelled) and authorization (agent_id required). However, it doesn't disclose other behaviors like impact on order state, whether changes are reversible, or any side effects. Given the annotations, the added value is moderate, so a 3 is appropriate.

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

Conciseness5/5

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

The description is extremely short, using two compact phrases to convey the core use cases and key requirements. It is front-loaded with the most critical information (when to use, note exception, agent_id requirement). No wasted words, every phrase earns its place.

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

Completeness2/5

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

This tool has 10 parameters, a complex use case (handoff recovery), and an output schema, yet the description is only a brief phrase. It does not explain the overall workflow, how to initiate a degraded handoff recovery (e.g., using endpoint/tracking IDs), or what the output will contain. The agent is left without enough context to understand the full scenario or make correct parameter choices, so it falls short of what is needed for a tool of this complexity.

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

Parameters3/5

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

The schema description coverage is 100%, so the description doesn't need to explain parameters. The description does restate the 'note required except cancelled' condition and agent_id requirement, which are already in the schema. It doesn't add new semantic meaning beyond the schema, so baseline 3 is correct.

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

Purpose4/5

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

The title clearly states 'Update order status', and the description adds specific contexts ('Agent manual correction or degraded handoff recovery'). However, the description itself does not directly state the verb+resource, relying on the title. It does distinguish from siblings by mentioning manual correction and handoff recovery, which are not covered by other order-related tools.

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

Usage Guidelines4/5

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

The description explicitly tells when to use the tool: 'Agent manual correction or degraded handoff recovery.' It also gives key requirements ('note required except cancelled', 'Owning agent_id required'), which help the agent know prerequisites. It doesn't explicitly mention alternatives, but the clear use cases imply when this tool is appropriate relative to other order tools.

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

payment_mandatePayment mandate (AP2)A
Destructive
Inspect

AP2 spend mandates. action=request (needs scope) → approval_url; list; update (mandate_id+scope); revoke (mandate_id). Widening needs human re-approval; narrowing applies immediately.

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNoSpend limits — required for action=request and action=update
actionYesrequest = create mandate (needs scope); list = enumerate; update = change scope (needs mandate_id+scope); revoke = revoke (needs mandate_id)
expiresNoOptional ISO-8601 expiry, e.g. 2026-12-31T00:00:00Z
agent_idYesOwning agent id
mandate_idNoMandate id required for update/revoke
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
errorNo
detailNo
statusNo
appliedNo
mandatesNo
mandateIdNo
approvalUrlNo
Behavior4/5

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

Annotations already mark destructiveHint=true and readOnlyHint=false, but the description adds valuable context: request returns an approval_url, and widening requires human re-approval while narrowing applies immediately. This goes beyond the structured annotations to explain the approval workflow.

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

Conciseness5/5

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

The description is extremely compact and front-loaded: it names the resource, summarizes actions with syntax-like notation, and adds the key behavioral rule in a single trailing sentence. No filler or redundancy.

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

Completeness5/5

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

Given the rich schema, output schema, and annotations, the description covers all essential operational aspects: the four actions, required parameters, approval flow, and the widening/narrowing nuance. It leaves nothing critical unexplained for an agent to select and invoke the tool correctly.

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

Parameters3/5

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

The schema already documents all six parameters with 100% coverage, so the baseline is 3. The description restates which params are needed per action, but the schema's action enum descriptions already encode the same requirements, adding little novel parameter meaning.

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

Purpose5/5

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

The description clearly identifies the resource as 'AP2 spend mandates' and enumerates the core actions (request, list, update, revoke) with their required inputs. This specificity distinguishes it from sibling tools like payment_methods or order_execute by focusing on the mandate lifecycle.

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

Usage Guidelines4/5

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

It gives action-level usage guidance: request needs scope, update needs mandate_id+scope, revoke needs mandate_id, and notes the differing approval behavior for widening vs narrowing. It does not explicitly name alternatives or exclusions, but the action breakdown provides clear context for when to use each mode.

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

payment_methodsPayment methodsAInspect

List or enable agent payment methods (action=list|enable) with friendly labels. Defaults: cod + x402. invoice (B2B) is coming_soon. bank_card is handoff-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
railNoRail key required when action=enable, e.g. x402 (not bank_card vault)
actionYeslist = enumerate rails; enable = turn on one rail
agent_idYesAgent id whose methods to list or enable
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
errorNo
labelNo
detailNo
statusNo
methodsNo
railKeyNo
approvalUrlNo
Behavior4/5

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

The description adds meaningful behavioral context beyond the annotations: it indicates that the tool is write-capable (enable), specifies default rails, and discloses that invoice is not yet available and bank_card is handoff-only. This helps the agent understand constraints and side effects without contradicting the readOnlyHint=false and 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.

Conciseness5/5

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

The description is compact, front-loaded with the primary purpose, and delivers extra details in a terse, structured list. Every sentence adds value and there is no wordiness.

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

Completeness4/5

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

Given the tool's complexity (4 parameters, output schema present) and the annotations provided, the description is quite complete. It covers the core actions, default states, and special rail behaviors. The only minor omission is an explicit note about side effects of enabling, but the output schema and annotations cover return values and safety, so this is acceptable.

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

Parameters3/5

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

All four parameters have descriptions in the schema, so the baseline is 3. The tool description mentions rail examples (cod, x402) and states the special status of invoice and bank_card, but the schema already provides rail examples and conditional requirements. The description adds only marginal value beyond the schema for parameter understanding.

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

Purpose4/5

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

The description clearly states the tool lists or enables agent payment methods with a specific action parameter, making the purpose evident. However, it does not explicitly distinguish itself from the sibling payment_mandate tool, so it misses the top score for sibling differentiation.

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

Usage Guidelines4/5

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

The description provides clear usage context by explaining the two actions (list vs enable) and giving default/availability states (cod + x402 defaults, invoice coming_soon, bank_card handoff-only). It does not explicitly mention when to avoid this tool or point to an alternative, but the context is sufficient for typical usage decisions.

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

supply_deliveryGet delivery estimateA
Read-onlyIdempotent
Inspect

Non-committing checkout probe for shipping ETA/cost. Uses agent default_destination, else linked org default address, or country override.

ParametersJSON Schema
NameRequiredDescriptionDefault
regionNoOptional region/state override
countryNoISO country override, e.g. US (else agent/org destination)
agent_idNoAgent id — uses agent destination else org default when country omitted
quantityNoUnits to price shipping for (default 1)
supply_idYesOffer supply id from supply_search / supply_details
postal_codeNoPostal/ZIP override for the probe destination
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
nextNo
noteNo
errorNo
detailNo
statusNo
countryNo
etaTextNo
optionsNo
currencyNo
supplyIdNo
availableNo
shippableNo
supply_idNo
postalCodeNo
paymentRailsNo
shippingCostNo
needsInteractionNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable behavioral context by explaining the destination resolution precedence (agent default → linked org default → country override) and reinforces that it's non-committing. No contradiction with annotations, and the added context goes beyond what annotations offer.

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

Conciseness5/5

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

The description is a single 25-word sentence that front-loads the core purpose ('Non-committing checkout probe') and follows with a concise precedence rule. Every word earns its place; there is no filler or repetition.

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

Completeness4/5

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

Given the rich annotations, a full output schema, and detailed per-parameter schema descriptions, the description covers the essential behavioral nuance (non-committing) and the destination resolution logic. It doesn't need to explain return values because the output schema exists. A small gap is the lack of mention of how quantity affects the estimate, but this is reasonably implied and covered by the schema.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds integrated meaning by explaining the fallback chain for destination resolution, which ties together agent_id, country, and postal_code. It doesn't detail quantity or session_token, but the schema already covers those well. The added precedence logic is a clear value-add beyond the schema.

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

Purpose5/5

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

The description uses a specific verb+resource: 'Non-committing checkout probe for shipping ETA/cost.' This clearly distinguishes it from siblings like supply_details (product details) and order_execute (place an order) by emphasizing a non-committing probe. The title and first clause make the tool's scope unmistakable.

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

Usage Guidelines3/5

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

The usage is implied through the phrase 'checkout probe' — it should be used before completing an order to obtain shipping estimates. However, it does not explicitly name alternatives (e.g., 'use supply_details for product info') or state when not to use it. The context is clear but the guidance is not explicit.

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

supply_detailsGet supply detailsA
Read-onlyIdempotent
Inspect

Full normalized product detail from search cache. For shipping ETA/cost use supply_delivery. Re-run supply_search if offer_not_in_cache.

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idNoAgent id to refresh badge/action for mandate state
search_idNosearch_id from supply_search for correlation
supply_idYesOffer supply id from supply_search results
session_tokenNoSession token from agent_authenticate — required whenever agent_id is passed

Output Schema

ParametersJSON Schema
NameRequiredDescription
aesNo
hintNo
nextNo
badgeNo
errorNo
titleNo
actionNo
detailNo
currencyNo
supplierNo
supplyIdNo
supply_idNo
unitPriceNo
priceTotalNo
paymentRailsNo
deliveryOptionsNo
Behavior4/5

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

Annotations declare readOnlyHint and idempotentHint; description adds that data comes from search cache (potentially stale) and mentions 'offer_not_in_cache' failure condition, which is beyond annotation scope.

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

Conciseness5/5

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

Two sentences, each informative; front-loaded purpose and immediate alternatives/fallback.

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

Completeness5/5

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

With output schema present and rich annotations, description adequately covers purpose, alternatives, and error recovery; no critical gaps.

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

Parameters3/5

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

Schema covers all 4 params with descriptions (100% coverage), so baseline 3; description doesn't add parameter-specific semantics, but schema does the heavy lifting.

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

Purpose5/5

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

Description uses specific verb 'Get' plus resource 'supply details' from 'search cache', and explicitly differentiates from supply_delivery and supply_search, making purpose crystal clear.

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

Usage Guidelines5/5

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

Explicitly states when to use alternatives: 'For shipping ETA/cost use supply_delivery' and instructs to re-run supply_search if offer_not_in_cache, providing clear usage guidance.

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

Discussions

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

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources