Skip to content
Facet logo

Facet MCP server

Which servers in the official MCP registry are Facet's own, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.

read 2026-10-20

← Back to Facet

Whose server it is
  • Registry namellc.facet/ucp-shoppingverified in the MCP registry

The registry name sits under facet.llc. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.

When we asked itchecked 2026-10-20
  • Stateanswerschecked 2026-10-20
  • Tools23
  • Server calls itselffacet-ucp-shopping
  • Server version2026-08-25
  • Protocol version2025-06-18

On 2026-10-20 the server answered initialize and tools/list without a sign-in. First answer in 1227 ms.

Should an agent connect itNot proven either way yet
  • Whether its tools do the product's job has not been judged yet.
  • Checked on 3 of the 7 days it takes to judge reliability.

Once connected

  • Keep approval on for wishlist_remove, cancel_checkout, cancel_cart: they delete, send or pay without saying so.
  • post_delivery_refund, wishlist_add, wishlist_remove, create_checkout, update_checkout change data without a sign-in: anyone with the address can call them.

Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.

Measured dailydaily checks: 3, the first on 2026-10-20
  • INITE MCP scoreafter a weeka score needs 7 daily checks: 3 so far
  • Answeredmeasuring3 of the 7 daily checks it takes to print a share
  • Median first answer900 ms
  • Space in an agent's context≈ 4,281 tokensthe definitions of all its tools (23), which an agent carries on every turn
  • Tool definitionsB · 81 of 100
  • Typed results0 of 23 toolsdeclared outputSchema: results come typed, read once
  • Parameters without a description: in 3 of 23
  • Not saying whether it only reads or can destroy: 23 of 23

What an agent can do with it

  • not sure · list a store catalog so AI agents can discover it
  • not sure · accept agent checkouts settled in USDC or card
  • cannot · issue signed receipts for agent-placed orders

Each of the product's use cases, put to Jev against this server's tool list: can an agent do it with these tools?

Worth a look

  • Tools that delete, send or pay without telling the client so: wishlist_remove, cancel_checkout, cancel_cart
  • Tools that change data, on a server that answers without a sign-in: post_delivery_refund, wishlist_add, wishlist_remove, create_checkout, update_checkout

A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (30%), doing the product's job (25%), definitions (20%), context (10%) and use (15%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →

Tools it offers23 tools · read 2026-10-20
  • search_catalog

    Search the merchant catalog for products matching a free-text query.

  • lookup_catalog

    Look up one or more products or variants by identifier (batch).

  • get_product

    Get full product detail by product or variant identifier.

  • discover_businesses

    Find businesses in the Facet Universal Business Index that an agent can transact with. Returns `featured` (claimed merchants with a live `terminal_url` — point your catalog and checkout calls there) and `results` (the wider directory)…

  • discover_products

    Search products ACROSS every merchant in the Facet network that has opted into cross-merchant discovery. Returns matches each carrying the selling merchant's `terminal_url` (point your catalog and checkout calls there). Filter by…

  • get_quote

    Get the real landed cost of a product from this merchant: goods + shipping + tax for a specific destination, plus a signed `quote_token` the payment path binds to. Call this before paying — the token is what makes the price the…

  • get_payment_capabilities

    Which settlement rails this merchant actually accepts (e.g. coin/boson-escrow for escrowed funds that release on fulfilment, coin/usdc-base for direct). Call before get_payment_requirements so you pass a rail_id this merchant registers…

  • get_payment_requirements

    Turn a `quote_token` from get_quote into a seller-signed payment offer to authorize. Returns `requirements` (escrow address, asset, exact atomic amount, network) — sign it LOCALLY with your own wallet (e.g. @bosonprotocol/x402-client…

  • get_order

    Read back one of YOUR orders on this merchant: status, amount, settlement state. Use the order_id returned when you paid. You can only read orders your own agent identity placed — another agent's order returns FORBIDDEN. REQUIRES…

  • list_orders

    List YOUR order history on this merchant, newest first. Scoped to your own agent identity — you never see another agent's orders. REQUIRES IDENTITY: Facet KYA as `Authorization: Bearer <kya>`.

  • post_delivery_refund

    Request a refund or return on a DELIVERED order you placed on this merchant. Opens a merchant-approved refund ticket (status `requested`); it moves NO money on its own. The merchant reviews and approves it, and only then does the…

  • wishlist_add

    Save a product to YOUR wishlist on this merchant for later. Idempotent: saving the same product again updates its note and keeps the original save time. Scoped to your own agent identity. REQUIRES IDENTITY: Facet KYA as `Authorization…

  • wishlist_list

    List YOUR saved items (wishlist) on this merchant, newest first. Scoped to your own agent identity, so you never see another agent's list. REQUIRES IDENTITY: Facet KYA as `Authorization: Bearer <kya>`.

  • wishlist_remove

    Remove a product from YOUR wishlist on this merchant. Idempotent: removing something not on your list succeeds with removed:false. Scoped to your own agent identity. REQUIRES IDENTITY: Facet KYA as `Authorization: Bearer <kya>`.

  • create_checkout

    Open a checkout session for one or more catalog line items (or promote a cart with `cart_id`). Returns the session plus server-resolved `payment_handlers` (rail, pay_to, exact amount) to satisfy: the price and pay_to are the MERCHANT's…

  • complete_checkout

    Complete a checkout you created and place the order by submitting the buyer-signed payment credential. This is the MONEY-MOVING leg: funds capture on-chain to the merchant's pay_to (x402) or into escrow (Boson). The amount is re-derived…

  • get_checkout

    Read back one of YOUR checkout sessions by id: status, totals, line items, payment_handlers. Owner-scoped, so another agent's id returns not_found. REQUIRES IDENTITY on a signature-required Terminal.

  • update_checkout

    Return a checkout's CURRENT sealed snapshot. Facet seals price and items at create, so this is a no-op that reports the session plus a note: to change line items, update the cart and start a new checkout with create_checkout(cart_id)…

  • cancel_checkout

    Cancel a checkout session before completion, releasing its inventory hold. Idempotent, owner-scoped, and moves no money (distinct from an escrow refund). REQUIRES IDENTITY plus an Idempotency-Key on a signature-required Terminal.

  • create_cart

    Create a pre-checkout cart from catalog line items. A cart is a mutable scratchpad: it moves no money and holds no inventory, so it carries estimated (server-derived) totals and NO payment_handlers. Assemble it, then…

  • get_cart

    Read back one of YOUR carts by id: line items and estimated totals. Owner-scoped, so another agent's id returns not_found. REQUIRES IDENTITY on a signature-required Terminal.

  • update_cart

    Replace a cart's line items (full replacement), re-priced server-side. Owner-scoped. REQUIRES IDENTITY on a signature-required Terminal.

  • cancel_cart

    Cancel a cart. Idempotent, owner-scoped, and moves no money. REQUIRES IDENTITY plus an Idempotency-Key on a signature-required Terminal.

How to connect

Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:

{
  "mcpServers": {
    "ucp-shopping": {
      "type": "http",
      "url": "https://api.facet.llc/ucp/mcp"
    }
  }
}

Add it

Claude Code, in a terminal

claude mcp add --transport http facet https://api.facet.llc/ucp/mcp

Add to CursorAdd to VS Code

claude.ai, ChatGPT and other clients: add https://api.facet.llc/ucp/mcp as a custom connector in the settings.

Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.