Retail - agent-ready commerce (RMS)
Agent-ready retail commerce,
catalog to fulfillment.
Retail is one audited commerce record for merchants, orders, payments and fulfillment. People work it through a console; agents work it through MCP - the same record, the same rules, either way in.
- Buyer
- Office fit-out, 40 seats
- Merchant
- Northline Interiors
- Total
- $51,900
- Payment
- Authorization held
- 40Sit-stand desk, walnut$28,000
- 40Ergonomic task chair$18,400
- 1Acoustic panels + install$5,500

The whole store
Connect your storefront and back office.
Selling, running the store and serving buyers - each is a real, built surface on the same record. One short line each, no jargon.
Sell
Marketplace storefront
A buyer home, product detail and per-merchant microsites, with cart and checkout.
Run
Merchant console
One dashboard for catalog, the quote inbox, the fulfillment queue and daily operations.
B2B
Buyer portal + price lists
Business accounts shop a catalog repriced for them, with negotiated account price lists.
Sell
Promotions & coupons
A discount and coupon engine that evaluates and expires codes consistently at checkout.
Run
Shipping & tax
Rate-shop across land, sea and air bands, and resolve tax by class and jurisdiction.
Run
Returns & RMA
Inspection, restock and refunds against a per-merchant return policy, all recorded.
Care
Help & support
Support cases with a full lifecycle, help articles and dispute escalation on one record.
Stock
Replenishment
Min, max, reorder point and safety stock, owned here as the system of record.
The commerce loop
Trace every order from intent to fulfillment.
Every step writes to the same audited commerce record, so each role picks up where the last left off. Quotes move from submission to an accepted offer against durable account pricing, while payment authorization remains part of the recorded order flow.
01
Intent
Buyer requests a quote
02
Quote
QuoteRequest SUBMITTED
03
Offer accepted
Offer SUBMITTED -> ACCEPTED, single-shot
04
Order
OrderBooking CREATED -> CONFIRMED
05
Payment
Authorization held
06
Fulfillment
Picked, packed, shipped
07
Returns
RMA inspected, restocked, refunded
One record, two front doors
Commerce operations for people and agents.
- People work orders, catalog and fulfillment in a console
- Agents call the same operations as typed MCP tools
- Every write is scoped, idempotent and recorded, either way
ConsoleB2B pricing done right
B2B pricing that lives in the record, not a chat.
- Account price lists reprice the catalog per company
- Members and roles decide who browses, requests and approves
- Approvals are recorded, not verbal
B2BRMS in the commerce stack
One commerce record across every channel.
RMS brings marketplace, storefront and negotiated B2B commerce onto one audited record, with a scoped agent surface built into the same operating model.
Under the hood
Audited operations through REST and MCP.
The story above is the plain version. For evaluators, here is how it actually holds together - a React frontend and a Spring Boot backend on Java 17 and PostgreSQL, where the MCP tool catalog is a facade over the exact commerce service the console calls.
The same operation, either door
A person marks an order in the console over REST; an agent calls the matching MCP tool. Both hit one service method, one status guard and one audit record. Every write carries a single rms:* scope and an idempotency key, so a retry is a no-op, not a double order.
An operator opens the offer and accepts it. The console issues an authenticated REST call to the same commerce service the agent tool wraps.
scope rms:order:write . idempotent . audited
About 55 tools, one scope each
The tool catalog is served over the official Java MCP SDK on Streamable HTTP at /mcp. A ScopeGatedToolHandler binds each tool to exactly one rms:* scope, so an agent can only reach what its ICE-issued token grants. A representative slice:
- merchant.createrms:merchant:write
- catalog_import.ingestrms:catalog-item:write
- quote_request.createrms:quote-request:write
- offer.acceptrms:order:write
- payment_authorization.recordrms:payment-authorization:write
- fulfillment.updaterms:fulfillment:write
- return.approverms:returns:write
- account_price_list.createrms:account-pricing:write
- replenishment.order.createrms:replenishment:write
+ returns, support, tax, promotions and more - rms://orders/{id} resources readable too
The Arin replenishment loop
RMS owns replenishment as the system of record - min, max, reorder point, safety stock. Arin is a pure MCP client with no database access to RMS: it reads the record, and writes an approved reorder back over the tool catalog, mirroring the Arin and SCM po.approve pattern.
Use cases
See Retail run with agents.
See how Arin, PECO and Semorel turn retail context into governed, auditable action.
Retail walkthrough
Bring people and agents into your retail workflow.
Tell us about your storefront, marketplace or B2B operation. We will show you how Retail connects negotiated pricing, orders, fulfillment and agent actions on one audited commerce record.