The agent handles routine orders. The seller keeps authority.
AutoShop lets a seller give a browser agent a live numerical mandate. Orders inside it can proceed; exceptions stop for exact, visible human approval; every successful decision leaves a receipt. The tiny synthetic marketplace is the deterministic test harness that makes this seller boundary easy to inspect.
6 units requested → mandate allows 5 → APPROVAL_REQUIRED → seller approves one exact action → immutable receipt
fig. 1 — the authority circuitamber line = human decides
How it works
One seller decision, proved end to end
The buyer portal creates a reproducible workload. The seller control plane is the product: the agent acts inside the merchant's mandate, while every exception remains visible and human-controlled.
01BrowseThe agent inspects seeded stock and prices.Agent scope
02Choose scopeAsk or Auto decides whether it may change the cart.Agent scope
03ConfirmYou review the exact cart and authorize the order once.Human decision
What makes it trustworthy
Small surface. Sharp edges.
Every feature exists to make the authority boundary legible within seconds — to a judge, a buyer, a seller, or the agent itself.
Role-scoped WebMCP tools
Three buyer tools and four seller tools, each with a strict input schema. Seller tools are registered only after sign-in and removed on logout, expiry, or leaving the page.
Ask or Auto scope
Ask keeps cart changes human-driven. Auto lets the agent browse and change the cart. Neither mode can submit until the buyer visibly confirms the exact order.
Visible buyer confirmation
Confirmation mints a one-time token bound to the exact cart version. Change the cart and authorization is cancelled; no order can be submitted until the buyer confirms again.
Numerical seller mandate
Items per order, total, discount, and minimum remaining stock are versioned limits. Orders that fit are eligible for agent acceptance; the rest are not.
Exceptional approval, once
An out-of-mandate action becomes a pending item. A human reviews the exact action ID, ticks the confirmation, and commits it exactly once with an idempotency key.
Immutable receipts, honest data
Every commit changes synthetic stock and issues a receipt that cannot be edited. Buyer-authored text is rendered as text, never as markup, and never authorizes anything.
Tool contracts
Seven tools. Nothing hidden.
What an agent connected through WebMCP can see on each page. Read-only tools never change state; mutating tools are marked and bounded.
/buyer3 tools · always registered
browse_products
Find up to 8 parts by an optional 80-character query. Read-only.
manage_cart
Add, set, or remove one bounded quantity. Changes cart state only.
submit_order
Submit one visibly confirmed order; private authorization never enters the tool input.
Seller tools are unavailable on this page.
/seller4 tools · after sign-in only
get_mandate
Read the current numerical mandate. Read-only.
list_orders
Read up to 5 order summaries. Buyer content is flagged untrusted.
accept_order
Accept a bounded quantity with an idempotency key — or get APPROVAL_REQUIRED.
commit_action
Commit one visibly approved action; private authorization never enters the tool input.
Removed on logout, session expiry, or leaving the page.
Seeded catalogue
Three parts, deterministic stock
The demo ships with a small seeded inventory so every run starts from the same numbers. The seller portal can reset it at any time.
10 in stock
Ryzen 5 7600
$189.00 cpu-1
12 in stock
16GB DDR5 Kit
$49.00 ram-1
8 in stock
1TB NVMe SSD
$69.00 ssd-1
Try it
Pick a side of the counter
Open a portal in a WebMCP-capable browser to let an agent work with you, or drive everything by hand — the boundaries hold either way.