Buywhere MCP vs Store Builder
A side-by-side look at the Buywhere MCP and Store Builder MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Buywhere MCP for e-commerce work as a local process; choose Store Builder for e-commerce as a local process. You can also run both side by side in one mcpServers block.
Which MCP server should you choose?
Choose Buywhere MCP when
- You need dedicated capabilities in the E-Commerce domain.
- You prefer a local stdio subprocess transport.
- Its auth model fits you: API key required.
- You have the keys it needs:
BUYWHERE_API_KEY. - You want tools like
search_products, get_product, compare_products.
Choose Store Builder when
- You need dedicated capabilities in the E-Commerce domain.
- You prefer a local stdio subprocess transport.
- Its auth model fits you: API key required.
- You have the keys it needs:
SB_TOKEN. - You want tools like
sb_connect, sb_site_list, sb_api_find.
Feature & specification comparison
Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | E-Commerce | E-Commerce |
| Quality signal | 67/100 · Great | 64/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | API key required | API key required |
| Pricing | Free | Not declared |
| Required env vars | BUYWHERE_API_KEY | SB_TOKEN |
| Verified owner | Community listing | Community listing |
| GitHub stars | 15 | 0 |
| Directory activity | 4 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 13 | 37 |
| Full listing | View Buywhere MCP | View Store Builder |
Tools & capabilities
Buywhere MCP tools 13
search_productsSearch the BuyWhere product catalog by keyword. Treat deliver_to as REQUIRED for buyer-facing use (ISO-3166 country of the end user); it takes precedence over country_code/country and prevents all-market scans. Returns product records with title, description, image, price, and merchant information. Covers e-commerce platforms across Singapore, Malaysia, Indonesia, Thailand, Vietnam, and US. Use compact=true for agent-optimized responses with structured_specs, comparison_attributes, and normalized_price_usd fields. BUY-74597 degraded contract: when the catalog query cannot complete inside the user-facing timeout, this tool returns a 200-OK envelope with `meta.status="degraded"`, `meta.emptiness_reason="api_error"` with `meta.degraded_kind="timeout"` (or `"partial_timeout"` / `"auth_failure"`), `meta.confidence="low"`, and `meta.diagnostic.timed_out_stage` naming the failed stage (catalog_search / offer_aggregation / merchant_join). It never returns an unqualified empty result when the cause is timeout, auth failure, upstream exception, or circuit breaker. Agents should branch on `meta.degraded === true` (or `meta.status === "degraded"`) instead of treating empty `data` as no_match.get_productGet a specific product by its ID, including full details and current price.compare_productsCompare multiple products side-by-side. Returns price, brand, rating, and category for each.get_dealsGet discounted products sorted by discount percentage. Returns schema.org/Product entities with schema.org/Offer properties: price, priceCurrency, availability, originalPrice, and discountPercentage. Covers Singapore, Malaysia, Indonesia, Thailand, Vietnam, and US e-commerce. Supports currency, region (sea, us, eu, au) and country (SG, US, VN, MY, ...) filters. BUY-74597 degraded contract: when the discount-index scan cannot complete inside the user-facing timeout, this tool returns a 200-OK envelope with `meta.status="degraded"`, `meta.emptiness_reason="api_error"` with `meta.degraded_kind="timeout"` (or `"partial_timeout"` / `"auth_failure"`), `meta.confidence="low"`, and `meta.diagnostic.timed_out_stage` (typically `offer_aggregation`). It never returns an unqualified empty result when the cause is timeout, auth failure, upstream exception, or circuit breaker. Branch on `meta.degraded === true` or `meta.status === "degraded"`.list_categoriesList top-level product categories available in the BuyWhere catalog.find_best_priceUse this whenever a user asks about prices, wants to find the cheapest option, or asks "what's the best price for X" or "where can I buy X for the lowest price". Returns schema.org/Product entities with schema.org/AggregateOffer (lowPrice, offerCount, priceCurrency) across all merchants. BUY-74597 degraded contract: when the candidates query cannot complete inside the user-facing timeout, this tool returns a 200-OK envelope with `meta.degraded=true`, `meta.status="degraded"`, `meta.emptiness_reason="api_error"` with `meta.degraded_kind="timeout"` (or `"partial_timeout"` / `"auth_failure"`), `meta.confidence="low"`, and `meta.diagnostic.timed_out_stage="catalog_search"`, with `best_price=null` and `alternatives=[]`. It never returns an unqualified empty result when the cause is timeout, auth failure, upstream exception, or circuit breaker.find_similarFind products similar to a given product using vector similarity. Returns up to 10 nearest neighbours by semantic meaning (title+description embedding). Useful for "more like this" recommendations.ingest_productsIngest (upsert) a batch of products into the BuyWhere catalog. Use this to add or update product listings from any merchant/source. Requires a valid API key with ingest permissions. Accepts up to 1000 products per call with source, SKU, title, price, URL, and optional metadata.search_products_v2REQUIRED deliver_to. Search the BuyWhere product catalog by keyword. The deliver_to parameter is REQUIRED (ISO country code, e.g. "SG", "US") — it takes precedence over country_code/country and prevents all-market scans. Always pass deliver_to="SG" (or your buyer's country). Returns product records with title, description, image, price, and merchant information. Covers e-commerce platforms across Singapore, Malaysia, Indonesia, Thailand, Vietnam, and US. Use compact=true for agent-optimized responses with structured_specs, comparison_attributes, and normalized_price_usd fields.get_product_v2REQUIRED deliver_to. Get a specific product by its ID, including full details and current price. Always pass deliver_to="SG" (or your buyer's country). Response includes a resolved outbound_url (https://…) that routes the buyer through the BuyWhere click tracker when the product has merchant offers.compare_products_v2REQUIRED deliver_to. Compare multiple products side-by-side. Always pass deliver_to="SG" (or your buyer's country). Returns price, brand, rating, category, and a resolved outbound_url per product for the buyer market.get_deals_v2REQUIRED deliver_to. Get discounted products sorted by discount percentage. Always pass deliver_to="SG" (or your buyer's country). Returns schema.org/Product entities with schema.org/Offer properties: price, priceCurrency, availability, originalPrice, and discountPercentage. Covers Singapore, Malaysia, Indonesia, Thailand, Vietnam, and US e-commerce. Supports currency, region (sea, us, eu, au) and country (SG, US, VN, MY, ...) filters.- +1 more on the listing page
Store Builder tools 37
sb_connectLog in and list the sites this account can operate. Call this first. Reads SB_EMAIL and SB_PASSWORD from the environment unless you pass them.sb_site_listList the sites this account can operate.sb_api_findFind API operations by intent (query), or get a call sheet (id): parameters, credential, body fields and handler caveats. Reaches all 892 operations.sb_api_callCall an operation from sb_api_find (id), or a route the catalog lacks (method+path); dry run by default. pick selects fields, max_items caps lists, item_offset skips items. Lists over 60 KB say so.sb_page_openOpen a page for editing and return its outline. Call before any sb_add / sb_set / sb_move / sb_remove. Find page ids with sb_api_find "list pages". Or form_id: edit that form's field document (fields, specials.formRules on its root).sb_page_repairRename a page root that is not "ROOT" (sppro_1, rt_<hex> — left by older seeds) to ROOT, for one page or, without page_id, every page on the site. Draft only; a published page is listed for re-publishing. dry_run (default true) lists what would change.sb_outlineThe open page as a compressed tree — id, type, name, child count, band, and whether a node is a shared global or a site overlay. Never the raw document: a real page is hundreds of KB of JSON.sb_node_readOne node in full — style, config, specials, per-breakpoint overrides, bindings.sb_catalog_searchFind an element type by what it does — or OMIT query to browse every type, the only way to meet one you would not have searched for. detail:true adds the AI hints, as does sb_traits_for. query "icon:<word>" lists icon names.sb_traits_forThis element's INSPECTOR, as a person sees it: tabs, groups, and every control name — with what each DECLARED control writes, and the AI hints for using the element. Read this before styling an element; pass control to read one control in full.sb_addAdd an element — or a whole NESTED subtree — under a parent. One call builds a complete section: pass children rather than calling this once per node.sb_setWrite style, config or specials keys on one node, or on many through edits (one save, one live frame). Per BREAKPOINT by default; base:true writes the fallback layer, right for a value that should not vary.- +25 more on the listing page
Ready-to-paste client configs
Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
Buywhere MCP
{
"mcpServers": {
"buywhere-buywhere-mcp": {
"command": "npx",
"args": [
"-y",
"@buywhere/mcp-server"
],
"env": {
"BUYWHERE_API_KEY": "YOUR_BUYWHERE_API_KEY_HERE"
}
}
}
}
Store Builder
{
"mcpServers": {
"store-builder": {
"command": "npx",
"args": [
"-y",
"sbuilder-mcp"
],
"env": {
"SB_TOKEN": "YOUR_SB_TOKEN_HERE"
}
}
}
}
Frequently asked questions
Buywhere MCP is categorized under E-Commerce and uses a local stdio subprocess. Store Builder belongs to E-Commerce and uses a local stdio subprocess. Pick Buywhere MCP for e-commerce work and Store Builder for e-commerce.
Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.
Buywhere MCP is listed as free. Auth: api key required. Store Builder has no declared pricing — check the project's own site. Auth: api key required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.
Yes. MCP clients support multiple servers: add buywhere-buywhere-mcp and store-builder as separate keys in the same mcpServers object, and your assistant will call tools from either one.
On AllMCPs, Buywhere MCP has a quality signal of 67/100 (Great) with 4 views, 0 installs and 15 GitHub stars. Store Builder has 64/100 (Good) with 1 views, 0 installs and 0 GitHub stars.