io.suverse.versum/catalog · v1.6.2 · ecommerce
Versum is healthy: it completed an MCP handshake in 1838 ms and exposes 15 tools.
Find local US businesses: what they offer, prices from their own sites, and how to order or book.
Endpoint: https://versum.suverse.io/mcp/catalog (streamable-http)
Repository · Website · JSON · Add to my inventory
| Users (last 30 days) | 0 |
| Handshake | Healthy |
| Auth needed | None |
| Tool count | 15 |
| Latency | 1838 ms |
| Last checked (UTC) | 2026-11-08T22:10:21.144Z |
| Checked (UTC) | Status | Latency | Error |
|---|---|---|---|
| 2026-11-08T22:10:21.144Z | Healthy | 1838 |
list_niches | The trades (niches) this catalogue holds near a place, by key, with how many businesses are inside the radius (default 15 miles). Without `niche`: a compact list of keys. With `niche`: that trade in full — its tags, coverage and the conditions its businesses publish. A `niche` that is not a key come |
list_cards | Every business of ONE trade (`niche`: a key from list_niches, exactly) near `location`, default radius 15 miles, 20 a page. The order is fixed and is not a ranking: independent businesses, then chains, then marketplaces; inside each, by distance (a trade that comes to the customer: published service |
find_business | One business the user NAMED, matched by its name near `location` (default radius 15 miles); typos, word order and punctuation are tolerated. Not in the catalogue → `name_not_found`, and up to 5 nearby businesses that carry the name's distinctive word (never presented as the business asked for). `int |
search_catalog | Search by what is wanted (an item, a dish, a service, in any language) near `location`, default radius 15 miles, when the trade is not known. Each business shows its best-fitting items first; `match.fit` says how well: exact (the thing and every asked property), likely (the thing, a property not sta |
get_card | Free. One business in full, in the same shape for every trade: who it is (name, trade, address, telephone, e-mail, opening hours, time zone), everything it sells (60 offerings a page, cheapest first; `offerings_page` says how many there are and the next offset), the six actions with their links and |
get_offering | Free. One offering in full, with ONE live request to the shop asking for that item’s price and stock right now (`live_check`). Call it before you quote a price to a person: a catalogue read yesterday is yesterday’s price. One business is asked at most once every ten minutes however many of its offer |
get_product | SYNONYM of get_offering, kept for agents that already know this name. A «product» is just an offering whose kind is `product`; the same id works in both. Free. One offering in full, with ONE live request to the shop asking for that item’s price and stock right now (`live_check`). Call it before you |
get_business | SYNONYM of get_card, kept for agents that already know this name. Free. One business in full, in the same shape for every trade: who it is (name, trade, address, telephone, e-mail, opening hours, time zone), everything it sells (60 offerings a page, cheapest first; `offerings_page` says how many th |
quote_order | Prices ONE cart in the shop's own public cart (Shopify or WooCommerce) to ONE ZIP, with no personal data, and orders nothing: the cart is emptied afterwards. Answers the items, delivery options with their prices, the subtotal and what stays unknown (tax and fees at checkout; the delivery date unless |
check_availability | Only for a business whose card shows `live_data` (its items come from its connected Shopify or Square, not from a page read). For a product: the platform’s stock right now — `state: confirmed | refuted | unknown` (unknown = the platform does not track stock, which is not «no»). For a service on a pl |
place_order | 🔴 ACTS FOR THE USER: call it only after the user has explicitly agreed to this exact action (what, where, when, who) — never on your own judgement. For a business whose card shows an `order` action with method `connected`. Shopify: returns the shop’s own checkout link with these items and quantitie |
book_slot | 🔴 ACTS FOR THE USER: call it only after the user has explicitly agreed to this exact action (what, where, when, who) — never on your own judgement. For a service whose business’s card shows a `book` action with method `connected` and no `book` in its `cannot` (a door the platform refuses for this a |
order_status | The status of an `order_id` from place_order or book_slot, asked of the platform again when it is not final (paid? confirmed? declined by the owner?). A Shopify cart link answers `unknown` — payment is on Shopify’s side and the shop does not report it here. Free. Follow the server instructions «HOW |
request_to_owner | 🔴 ACTS FOR THE USER: call it only after the user has explicitly agreed to this exact action (what, where, when, who) — never on your own judgement. For a business that takes requests through Versum (a verified owner with Telegram, e-mail or WhatsApp). Sends what, when, how many, which branch and th |
request_status | Delivery (`sent` · `link_given` · `expired` · `failed`) and the owner’s outcome (`declined` · `other_time` + proposal · `available` = free but NOT booked · `confirmed` = booked). `confirmed: true` only when the owner booked it. `wait_seconds` (optional, default 0 = answer now; at most 45 s are used) |