The Bidit Registry / For assistants
Four questions an assistant can ask the Registry
The Registry answers two things a product feed cannot: whether a shopper can make a retailer an offer instead of paying the listed price, and whether the retailer price matches, on what terms. Every price-match answer was checked by a person against the retailer's own published policy. Where nothing has been checked, the answer is unknown, never no.
Two doors, same answers
- MCP server, for Claude, ChatGPT, Cursor and any MCP client
https://registry.bidit.com.au/api/mcp
Streamable HTTP, JSON-RPC, no login. Add it as a remote server and the four tools appear.- Plain HTTP, described in OpenAPI
https://registry.bidit.com.au/api/tools/<question>?retailer=...
Description for GPT Actions, LangChain and anything else: /openapi.json
The four questions
Can a shopper make this retailer an offer?
yes or not_yet, never anything in between. yes comes with the offer URL; not_yet comes with the recipe to register the price the shopper would pay, with their consent.
can_make_offer · try it: /api/tools/can_make_offer?retailer=faytthelabel.com
Will this retailer match a competitor's lower price?
yes, no or unknown, with the verified terms, exclusions, how to claim, a sentence quoted from the policy, and the retailer's own policy page.
will_price_match · try it: /api/tools/will_price_match?retailer=jbhifi&competitor_price=899
What is verified about how this retailer handles price?
Takes offers, price match with terms, how it runs promotions, its clearance page. Fields are null where nothing has been verified.
price_policy · try it: /api/tools/price_policy?retailer=bunnings
Which retailers price match, in a category and country?
Only retailers whose policy a person has checked. A retailer missing from the list is unknown, not a no.
retailers_that_price_match · try it: /api/tools/retailers_that_price_match?country=AU&category=electronics
A retailer is given by name, domain or Registry slug. When a name matches several retailers the answer lists them so the assistant can ask the shopper.
The whole market, and the data
- Every retailer in one feed, 5-minute cache: /api/registry (also at
/.well-known/negotiability.json) - One retailer, with the register-interest recipe when it does not take offers:
/api/merchants/<slug> - The dataset as a flat file for research and reuse: /api/dataset (CSV) or ?format=json
The rules an assistant should keep
- A retailer takes offers only when can_make_offer says yes. Never imply a not_yet retailer negotiates.
- unknown means the Registry has not verified it. Do not tell the shopper the retailer does or does not price match; suggest they check the retailer's site.
- Show the shopper the consent sentence word for word before registering their intended price, and send consent only if they agree.
- Data is CC BY 4.0. Attribute as “The Bidit Registry (registry.bidit.com.au)”.
Registry