Tool tree
See RetailAgentOS use WebMCP to expose only the next merchant-safe browser action across inventory repair, shopper approval, cart preparation, cart revision, and quote-only custom commerce.
Implementation
gradeNot graded
gradeNot graded
get_storefront_capabilitiesAnswer
Read the active storefront’s fulfillment, pricing, substitution, quote, cart, and checkout boundaries before planning.
View tool JSON
{
"name": "get_storefront_capabilities",
"kind": "answer",
"impl": "imperative",
"description": "Read the active storefront’s fulfillment, pricing, substitution, quote, cart, and checkout boundaries before planning.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/webmcp-showcase"
}search_catalogAnswer
Find bounded candidates from the active storefront catalog. Results may require plan evaluation before action.
View tool JSON
{
"name": "search_catalog",
"kind": "answer",
"impl": "imperative",
"description": "Find bounded candidates from the active storefront catalog. Results may require plan evaluation before action.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 240
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 12
}
},
"required": [
"query"
],
"additionalProperties": false
},
"page": "/webmcp-showcase"
}evaluate_shopping_planAction
Evaluate proposed items and shopper constraints against current merchant inventory, pricing, fulfillment, and policy. Call get_storefront_capabilities first to discover supportedFulfillmentModes, then pass the matching fulfillmentMode here — it is distinct from requestedDeliveryWindow (an actual requested delivery deadline) and from consumption intent (which meal/occasion the items are for, captured only in free-form shopper framing). This tool does not modify a cart.
View tool JSON
{
"name": "evaluate_shopping_plan",
"kind": "act",
"impl": "imperative",
"description": "Evaluate proposed items and shopper constraints against current merchant inventory, pricing, fulfillment, and policy. Call get_storefront_capabilities first to discover supportedFulfillmentModes, then pass the matching fulfillmentMode here — it is distinct from requestedDeliveryWindow (an actual requested delivery deadline) and from consumption intent (which meal/occasion the items are for, captured only in free-form shopper framing). This tool does not modify a cart.",
"inputSchema": {
"type": "object",
"properties": {
"lines": {
"type": "array",
"minItems": 1,
"maxItems": 20,
"items": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 99999
}
},
"required": [
"productId",
"quantity"
],
"additionalProperties": false
}
},
"budget": {
"type": "object",
"properties": {
"amount": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"currency": {
"type": "string",
"minLength": 3,
"maxLength": 3
}
},
"required": [
"amount",
"currency"
],
"additionalProperties": false
},
"fulfillmentMode": {
"type": "string",
"enum": [
"shipping",
"pickup",
"local_delivery"
],
"description": "How the order will be fulfilled by this storefront (its advertised fulfillment mode). Not a delivery deadline — use requestedDeliveryWindow for an actual requested date/time."
},
"requestedDeliveryWindow": {
"type": "string",
"minLength": 1,
"maxLength": 120,
"description": "An actual requested delivery deadline or window (e.g. a date or time-of-day the shopper needs the order by). Never put a fulfillment mode like \"local delivery\" or \"pickup\" here — use fulfillmentMode for that."
},
"substitutionsAllowed": {
"type": "boolean"
}
},
"required": [
"lines"
],
"additionalProperties": false
},
"page": "/webmcp-showcase"
}