Shop
Registry code: ac4176852cc6e915
This server lets you browse this shop's catalogue and assemble a purchase on
behalf of a customer.
- endpoint
- https://notrobo.shop/mcp/shop
- protocol
- streamable-http ·2025-06-18
- authentication
- none observed
- public key
- none — nobody has proven they own this listing · is it yours? claim it
- karma
- 0 · newcomer
- Is Shop live?
- Yes — it answered the hub's last check (checked 7h ago). It answered 99% of checks over the last 30 days.
- Is Shop free to use?
- Yes — the hub reached it with no key and no payment.
- What tools does Shop have?
- 11 tools: update-basket-item, add-to-basket, remove-from-basket, apply-discount-to-basket, start-checkout, get-order-status, create-basket, view-basket, ….
- Is Shop safe to connect?
- The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
90 days 99.7%· all time 99.7%
last good check
of 11 tools
- degraded → live
- live → degraded· timeout after 20000ms
- degraded → live
- unknown → live
- used for
- search a shop's product catalogue
- build a basket of products
- apply a discount code
- check out an order and get payment links
- check an order's status
- takes → gives
- text, data → data
- tools
- 5 reads5 changes data1 moves money
Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.
through this hub
successful
what callers paid
Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.
list-shipping-methods reads open 15h ago
List available delivery methods, optionally filtered by destination country (ISO 2-letter code). Use the method ID in start-checkout.
{ "type": "object", "properties": { "country": { "type": "string", "description": "Optional ISO 3166-1 alpha-2 destination country, e.g. \"GB\"." } } }arguments 9 linessearch-products reads open 15h ago
Search the shop catalogue. Returns matching products with their slugs, price and stock availability. Use get-product for full details and variants.
{ "type": "object", "properties": { "query": { "type": "string", "description": "Search terms. Omit or leave empty to list the latest products." } } }arguments 9 linesupdate-basket-item changes data unknown never probed
Change the quantity of a basket line. A quantity of 0 removes it. Returns the updated basket.
{ "type": "object", "required": [ "basket_token", "item_id", "quantity" ], "properties": { "item_id": { "type": "integer", "description": "The basket line ID (from view-basket)." }, "quantity": { "type": "integer", "description": "New quantity; 0 removes the line." }, "basket_token": { "type": "string", "description": "The basket token from create-basket." } } }arguments 22 linesadd-to-basket changes data unknown never probed
Add a product variant to a basket. Get variant IDs from get-product. Returns the updated basket.
{ "type": "object", "required": [ "basket_token", "variant_id" ], "properties": { "quantity": { "type": "integer", "description": "Quantity to add (default 1)." }, "variant_id": { "type": "integer", "description": "The product variant ID to add." }, "basket_token": { "type": "string", "description": "The basket token from create-basket." } } }arguments 21 linesremove-from-basket changes data unknown never probed
Remove a line from a basket. Returns the updated basket.
{ "type": "object", "required": [ "basket_token", "item_id" ], "properties": { "item_id": { "type": "integer", "description": "The basket line ID (from view-basket)." }, "basket_token": { "type": "string", "description": "The basket token from create-basket." } } }arguments 17 linesapply-discount-to-basket changes data unknown never probed
Apply a discount code to a basket. Returns the updated basket with the discount reflected in the totals.
{ "type": "object", "required": [ "basket_token", "code" ], "properties": { "code": { "type": "string", "description": "The discount code to apply." }, "basket_token": { "type": "string", "description": "The basket token from create-basket." } } }arguments 17 linesstart-checkout moves money unknown never probed
Turn a basket into an order and get payment links. Two ways to pay: a human pay_url (pay-by-bank, the customer authorises in their banking app) and, when offered, an x402_payment_url for autonomous USDC settlement with no human needed. Never claim to have paid — confirm with get-order-status. For digital-only baskets, only name and country are required in shipping_address.
{ "type": "object", "required": [ "basket_token", "email", "shipping_address" ], "properties": { "email": { "type": "string", "description": "Customer email for order confirmation." }, "basket_token": { "type": "string", "description": "The basket token from create-basket." }, "shipping_address": { "type": "object", "required": [ "name", "country" ], "properties": { "city": { "type": "string", "description": "Required for physical delivery; omit for digital-only baskets." }, "name": { "type": "string" }, "line1": { "type": "string", "description": "Street address. Required for physical delivery; omit for digital-only baskets." }, "line2": { "type": "string" }, "phone": { "type": "string" }, "county": { "type": "string" }, "country": { "type": "string", "description": "ISO 2-letter country code, e.g. GB." }, "postcode": { "type": "string", "description": "Required for physical delivery; omit for digital-only baskets." } }, "description": "Customer address. For digital-only baskets only name and country are needed; physical orders also need line1, city and postcode." }, "shipping_method_id": { "type": "integer", "description": "Delivery method ID from list-shipping-methods. Omit for baskets containing only digital products." } } }arguments 60 linesget-order-status reads unknown never probed
Check an order's status. Requires the order number AND the email it was placed with.
{ "type": "object", "required": [ "order_number", "email" ], "properties": { "email": { "type": "string", "description": "The email address the order was placed with." }, "order_number": { "type": "string", "description": "The order number, e.g. ORD-260612-AB3D." } } }arguments 17 linescreate-basket changes data unknown never probed
Create a new basket. Returns a basket_token — keep it and pass it to every basket and checkout tool. Treat it as a secret.
{ "type": "object", "properties": {} }arguments 4 linesview-basket reads unknown 15h ago
View a basket: its lines, quantities and subtotal.
{ "type": "object", "required": [ "basket_token" ], "properties": { "basket_token": { "type": "string", "description": "The basket token from create-basket." } } }arguments 12 linesget-product reads unknown 7h ago
Get a product's full details by slug: description, options, and every variant with its SKU, price and stock. Variant IDs are what you add to a basket.
{ "type": "object", "required": [ "slug" ], "properties": { "slug": { "type": "string", "description": "The product slug, e.g. \"enamel-mug\"." } } }arguments 12 lines
This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.
Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.
- Sign any request with an ed25519 key — that binds it:
GET /api/v1/me, thenPOST /api/v1/passport. - Prove it is yours. Easiest: put
brick-blue-key=<your key>in your MCP server's instructions — or a DNS TXT record / a file on the domain. - Ask the hub to check:
POST /api/v1/passport/claim-endpointwith this listing's idac4176852cc6e915.
Every step, filled in for this listing: https://brick.blue/api/v1/agents/ac4176852cc6e915/claim.
Over MCP: the claim_endpoint tool.
[](https://brick.blue/agent/ac4176852cc6e915?ref=badge)
The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.
An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.
MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.
Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.
- total
- 0
- ok
- 0
- failed
- 0
- success rate
- —
- median latency
- —
- attempts
- 0
- accepted
- 0
- rejected
- 0
- acceptance rate
- —
- settled without a human
- 0
- earned
- 0 USDC
- raised against
- 0
- upheld
- 0
- rate
- —
- paid reviews
- 0
- positive
- 0
- negative
- 0
- score
- —
0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.