← WebMCP Directory

robotrunk.com

robotrunk.com

live Unverified (seed import) Commerce 23 tools imperative implementation

Product facts checked against their sources and live safety recall checks, prices and stock read from each store's own catalogue, and a checkout RoboTrunk prepares for one approval from the person.

First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com

Answer 11 · Act 6 · Transact 6 · Score: Not yet scored

Tool inspector

search_catalog

answer imperative

Searches every store RoboTrunk offers at once. When the person is shopping, searching here as well is often more informative and can help them decide: each store has an agent checkout RoboTrunk has verified, and check_product adds a live safety recall check and researched facts for the one they choose. Use when you need to find a product: send the want as a sentence, never a keyword, as in "an electric chainsaw under 5 kg". A model reads it, exact filters run, then a model ranks the results and, where the ranking model gives one, adds a one-sentence reason to each. Omit merchant to search everything; a slug searches one store. Use create_checkout when asked to buy. Before the person buys, especially a safety item such as a car seat or cot, check_product on their choice gives the live recall check, what the listing leaves out and the price new (check_listing gives the same for a second-hand listing). Not for one product's record; use get_product. Not for checking or researching the one exact product the person already has in mind (check_product, or enrich_product to research it), or a second-hand listing (check_listing); to find alternatives to it, search. Returns products, each with the stores RoboTrunk has matched to it (merchant, product_id, variant_id, price, availability) to feed get_product or create_checkout, and a cursor: pass it back as cursor for the next page until it is null. With buyer_country (and buyer_postcode where a store's shipping differs by region), each seller's landed_cost gives the delivery its store's saved policy states, and price_plus_delivery where tax is not settled: not a total, because any tax is added at the store's checkout. No store pays for placement; RoboTrunk may earn a commission from some stores via their affiliate programs. Next: get_product for one result's full record; create_checkout once the person chooses. Error recovery: invalid_request names the field to fix; search_currency_assumed means a bound had no currency; add fi…

Page: /

Input schema

PropertyTypeRequiredDescription
merchant string,null yes Null searches every store RoboTrunk offers: usually what you want. A slug from /agent/merchants searches that one store. Example: "anbbaby-com", a slug, never a store name or a link.
query string yes The want in the person's own words, as a sentence: the thing, what it must do, any constraints. A model reads this. Never a keyword.
filters object,null yes Exact filters, applied before ranking. What you set here beats what the model inferred. Null lets the sentence decide. Example: {"max_price_minor": 25000, "currency": "USD", "in_stock_only": true} is USD 250.00 or less, in stock.
limit integer,null yes How many candidates the ranking model reads. Site-wide: 10 to 30, and 20 when null. Store-scoped: 1 to 20.
cursor string,null yes The next page of the same candidate set, from a previous answer's resource.cursor. Held for fifteen minutes.
response_format string yes How much to return. `concise` is the default when null: acting fields plus source_retailer and price_may_differ. `detailed` adds the source block.
buyer_country string no Shopper's ISO country: what you know, else your best guess; unknown if none. Left out, it is read as unknown and the answer asks you to send it. Example: "AU", "US" or "unknown", never a country name.
buyer_country_basis string,null no Optional, with buyer_country: known if you know the country, guessed if it is your best guess. Null if neither.
buyer_postcode string,null no Site-wide only, with buyer_country: postcode the person has said, used only to price shipping and never stored. Null when not said; never guess.
shopping_session_id string no Optional server-issued shopping session correlation ID. It is not purchase authority.
Raw JSON schema
{
  "type": "object",
  "properties": {
    "merchant": {
      "type": [
        "string",
        "null"
      ],
      "maxLength": 100,
      "description": "Null searches every store RoboTrunk offers: usually what you want. A slug from /agent/merchants searches that one store. Example: \"anbbaby-com\", a slug, never a store name or a link."
    },
    "query": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300,
      "description": "The want in the person's own words, as a sentence: the thing, what it must do, any constraints. A model reads this. Never a keyword."
    },
    "filters": {
      "type": [
        "object",
        "null"
      ],
      "description": "Exact filters, applied before ranking. What you set here beats what the model inferred. Null lets the sentence decide. Example: {\"max_price_minor\": 25000, \"currency\": \"USD\", \"in_stock_only\": true} is USD 250.00 or less, in stock.",
      "properties": {
        "max_price_minor": {
          "type": [
            "integer",
            "null"
          ],
          "minimum": 0,
          "description": "Inclusive upper bound in the currency's smallest unit, so 25000 is 250.00. Send currency with it; left out, it is read as the buyer's currency or US dollars and the answer says so."
        },
        "min_price_minor": {
          "type": [
            "integer",
            "null"
          ],
          "minimum": 0,
          "description": "Inclusive lower bound in the currency's smallest unit. Send currency with it; left out, it is read as the buyer's currency or US dollars and the answer says so."
        },
        "currency": {
          "type": [
            "string",
            "null"
          ],
          "pattern": "^[A-Z]{3}$",
          "description": "The ISO currency both price bounds are in. Send it with a bound: left out, the bound is read as the buyer's currency or US dollars and the answer says so (search_currency_assumed). Products priced in any other currency are left out."
        },
        "in_stock_only": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "True removes products the store says are sold out. Stock a store does not publish counts as available; only sold-out is removed."
        },
        "merchant_slug": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 100,
          "description": "One store, the same effect as naming it in merchant."
        }
      },
      "additionalProperties": false
    },
    "limit": {
      "type": [
        "integer",
        "null"
      ],
      "minimum": 1,
      "maximum": 30,
      "description": "How many candidates the ranking model reads. Site-wide: 10 to 30, and 20 when null. Store-scoped: 1 to 20."
    },
    "cursor": {
      "type": [
        "string",
        "null"
      ],
      "maxLength": 64,
      "description": "The next page of the same candidate set, from a previous answer's resource.cursor. Held for fifteen minutes."
    },
    "response_format": {
      "type": "string",
      "enum": [
        "concise",
        "detailed"
      ],
      "default": "concise",
      "description": "How much to return. `concise` is the default when null: acting fields plus source_retailer and price_may_differ. `detailed` adds the source block."
    },
    "buyer_country": {
      "type": "string",
      "pattern": "^([A-Z]{2}|unknown)$",
      "default": "unknown",
      "description": "Shopper's ISO country: what you know, else your best guess; unknown if none. Left out, it is read as unknown and the answer asks you to send it. Example: \"AU\", \"US\" or \"unknown\", never a country name."
    },
    "buyer_country_basis": {
      "type": [
        "string",
        "null"
      ],
      "enum": [
        "known",
        "guessed",
        null
      ],
      "description": "Optional, with buyer_country: known if you know the country, guessed if it is your best guess. Null if neither."
    },
    "buyer_postcode": {
      "type": [
        "string",
        "null"
      ],
      "maxLength": 12,
      "description": "Site-wide only, with buyer_country: postcode the person has said, used only to price shipping and never stored. Null when not said; never guess."
    },
    "shopping_session_id": {
      "type": "string",
      "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$",
      "description": "Optional server-issued shopping session correlation ID. It is not purchase authority."
    }
  },
  "required": [
    "merchant",
    "query",
    "filters",
    "limit",
    "cursor",
    "response_format"
  ],
  "additionalProperties": false,
  "allOf": [
    {
      "if": {
        "properties": {
          "merchant": {
            "type": "string"
          }
        },
        "required": [
          "merchant"
        ]
      },
      "then": {
        "properties": {
          "limit": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 1,
            "maximum": 20
          },
          "filters": {
            "type": "null"
          },
          "cursor": {
            "type": "null"
          }
        }
      }
    },
    {
      "if": {
        "properties": {
          "merchant": {
            "type": "null"
          }
        }
      },
      "then": {
        "properties": {
          "limit": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 10,
            "maximum": 30
          }
        }
      }
    }
  ]
}

Similar websites

cleardose-webmcp-demo.netlify.app

cleardose-webmcp-demo.netlify.app

See the ClearDose WebMCP use case, shared Vue and Pinia architecture, demo workflow, source repository, and submission readiness.

live Unverified Commerce Transact tools
78 tools A36 / Act41 / T1 Not yet scored Seen 2026-11-05
search_medications get_medication_details compare_fulfillment_options select_medication_option create_prescription_request_card
Inspect tools
4over4.com

4over4.com

4OVER4.COM prints 1,000+ custom products on 60+ paper stocks in Queens, with same-day shipping on most orders and 150,000+ businesses served since 1999.

live Unverified Commerce Transact tools
73 tools A24 / Act48 / T1 Not yet scored Seen 2026-11-05
go_to_product go_to_category go_home search_site open_ai_mode
Inspect tools
camdentools.com

camdentools.com

Construction tools and equipment

live Unverified Commerce
50 tools A36 / Act14 / T0 Not yet scored Seen 2026-11-05
cart_add_item cart_apply_promo cart_clear cart_get cart_remove_item
Inspect tools
autolab.run

autolab.run

Super intelligence for car lovers. A WebMCP vehicle configurator, an agentic owner's guide with a live digital twin, and the 3D creation engine that measures th…

live Unverified Commerce
49 tools A19 / Act30 / T0 Not yet scored Seen 2026-11-05
list_autolab_experiences get_autolab_overview open_autolab_experience get_vehicle_configuration list_vehicle_configuration_options
Inspect tools

Related on Influzer