MCP App Store
by KeenEthics

Overview

WEM answers one question an assistant cannot answer on its own: is this actually the price you should pay? Ask for a product — by name, by barcode, or by pasting a WEM product link — and WEM returns every retailer offer it can verify for that exact item, cheapest first, with the 90-day price low so you can tell a real discount from a repackaged one. Identity is resolved by GS1 barcode rather than by matching titles, so the offers you see are the same product, not a lookalike, an accessory, or a different size. WEM compares live prices from authorised partner feeds and marketplace APIs it is licensed to use. It ranks on price and on the priorities you state — never on what any retailer pays WEM. It carries no advertisements, and affiliate commission is not an input to comparison ranking. Checkout for compared products happens on the retailer's own site, at the retailer's price — WEM never handles payment, your card or your personal details for those purchases. WEM is free to use and funded by disclosed affiliate commission, disclosed on the card itself and at wem3.ai/disclosure. What it will not do is guess. When WEM cannot verify a second price, it says so instead of inventing one.

Tools

compare_offers

ChatGPT
Lists the retailer offers WEM's catalogue holds for one product, current prices first and each group cheapest first, with WEM's 90-day price low (null when the product is held only in another currency). The product is found by barcode, catalogue slug or wem3.ai/pl/ URL, WEM ID, or a title (a model name, ASIN, MPN or merchant SKU) that must pass a relevance check; there is no live retailer search. A barcode, slug or WEM ID match is the product itself; a title match is inferred and marked so in identity. A marketplace offer priced far below the product's other offers is withheld and counted in filtered. When WEM does not hold the product, found is false and nextTool names search_products with a query.

compare_products

ChatGPT
Lays 2 to 5 listings from earlier search results side by side in comparison: each listing's price and currency, and its rating, shipping and features where the retailer source supplies them (many listings carry none). Each item needs the listing's provider and its id as product_id. Listings that cannot be found are left out, and fewer than two found is an error. Prices stay in each listing's own currency.

find_lowest_price

ChatGPT
Picks one listing for a kind of product within the shopper's constraints, from WEM's catalogue and a live retailer search (a current catalogue match answers without the live search). Candidates are first filtered to plausible matches, so an accessory, another size, an out-of-stock listing or one priced far below the product's other offers is not picked. With no priorities, or with cheapest first, the lowest price wins; best_rated, free_shipping and fastest (has a delivery estimate) are weighed in the order given, where listings carry ratings or delivery details, and can outrank a lower price. WEM's commission is not a factor. recommendation is null with a reason when nothing matched confidently, when the matches differ in size, or when only stale prices remain; when coverage.kind is marketplace_only it is null but alternatives still lists the listings. recommendation.verified is true when WEM has recently observed that price at the retailer.

get_categories

ChatGPT
Lists the six broad shopping categories WEM covers (electronics, fashion, beauty, home, sports, collectibles), each with example products, the shops WEM has read a price from in the last 14 days (busiest first, with how many shops there are in all) and the default currency (GBP). Use it to help a shopper narrow a vague request. It returns no prices, the category names are labels for the shopper, not filter values, and a shop on the list is not a promise that WEM holds a given product there: compare_offers says which shops WEM has for one product.

get_evidence_receipt

ChatGPT
Fetches an evidence receipt by its id (wem-evr- followed by 32 hex characters), as issued with a verify_offer result. Returns the receipt's fields: verdict, observed_at, source, amount, currency and amount_minor, identity_method, verifier, standardVersion and issuedAt, with signed true and an HMAC signature when WEM signed it. It holds the citation, not the product's offers. A receipt issued moments ago may not be fetchable yet.

get_product

ChatGPT
Returns one product's details. Given provider and product_id from a search result, it returns that listing as its retailer source supplies it (title, price and link, with rating, shipping or features where the source has them); when the source cannot be reached it falls back to WEM's catalogue record of the listing, and an unknown listing is an error. Given wem_id, it returns that catalogue product with the retailer offers WEM holds for it.

lookup_products

ChatGPT
Looks up to 20 product identifiers in one call: barcodes (EAN/UPC/GTIN), Amazon ASINs, WEM IDs, catalogue slugs or wem3.ai/pl URLs. Each row has a status: found (WEM's catalogue holds it; the row gives its number of retailer offers, the lowest current price at a named retailer in the shopper's currency, a marketplace low where there is one, and a link to WEM's product page), not_found (WEM does not hold it yet, which says nothing about whether it exists or has a price), unrecognised (not an identifier, such as a product name) or not_checked (not reached in this call, so not a miss). Identifiers beyond 20 are counted in overLimit.

search_products

ChatGPT
Searches WEM's catalogue and its connected retailer sources for products matching a query. The query can be a product name or an identifier: a barcode (EAN/UPC/GTIN), an Amazon ASIN, an MPN, a merchant SKU that names one catalogue product, a WEM ID or a wem3.ai/pl/{slug} URL, and several identifiers may be comma-separated. When the query identifies a product WEM holds, a catalogMatch block (catalogMatches for several) gives that product's retailer offers; a barcode, ASIN, WEM ID or URL match skips the live retailer search, so products then holds catalogue offers only. Barcode, ASIN and slug matches are identity-resolved; MPN, SKU and title matches are inferred. Accessories, bundles, other models and listings priced far below the product's other offers are withheld and counted by reason in filtered.

search_promotions

ChatGPT
Lists current promotions (sales and offers) that retailers in WEM's Awin affiliate programmes have published, for the shopper's market. Filter by merchant or by words in the offer. Each row gives the offer, its dates and a tracked link. A promotion is not a price, and it is not a discount on a product unless its terms say it covers that product. Checkout codes are shown only where the retailer's programme lets WEM publish them; other matching promotions are counted by reason in withheld, and a withheld code may still exist. An empty result covers only these programmes, not every offer a retailer runs.

verify_offer

ChatGPT
Checks a price someone has claimed for a product against the prices WEM has itself observed at retailers (recent readings, within a small tolerance; not a live quote), and reports the cheapest observed offer. Identify the product by gtin (strongest), slug, wem_id, provider + externalId, or title (weakest, relevance-checked). retailer names the shop the claim is about; without it the nearest observed price at any shop is checked. Only offers in the claim's currency are compared. Verdicts: confirmed (WEM observed that price there), price_moved (WEM last observed a different price there), not_at_retailer (WEM has no observed price there, though it may hold a feed price), no_claim (no price given; the offers are returned), unknown_product (the product could not be resolved, or WEM holds no observed price for it in that currency). unknown_product means the claim could not be checked, not that it is false. lastConfirmedAt says when WEM last observed a price in the answer, or is null. Each call records an evidence receipt, whose id can be cited later.

Capabilities

InteractiveWrites

Example Prompts

Click any prompt to copy it.

App Stats

11

Tools

3

Prompts

ChatGPT

Platforms

Works with

ChatGPT

Data refreshed daily