io. github. IsaiahDupree/ commercebridge
by IsaiahDupree · remote · no sign-in to list tools · v1.0.0 · published by GitHub user IsaiahDupree
Remote MCP connector for eBay, Shopify, Best Buy & Etsy marketplace data via the Commerce API
14 tools: 14 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things0Claude Code: ask
- Only reads14Claude Code: allow: see these tools
2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http commercebridge https://commercebridge-isaiahduprees-projects.vercel.app/api/mcpFindings
Matches of fixed checks, with the text they matched.
- Infoget_ebay_item
The description mentions "credentials".
What this check looks forMatched text
description: "...il the upstream deployment has eBay app credentials provisioned."
- Infoget_ebay_items
The description mentions "credentials".
What this check looks forMatched text
description: "...il the upstream deployment has eBay app credentials provisioned."
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
14 tools
Only reads 14Claude Code: allow
get_bestbuy_productGet one Best Buy product by SKU, full detail.No findings
Why it is in this group
- The name "get_bestbuy_product" says "get": a word for reading.
Description, as the server wrote it Get one Best Buy product by SKU, full detail. Errors honestly until this engine is fully live upstream: currently returns `not_found` (route not yet redeployed on the production commerce-api), then `credentials_required` once deployed without BESTBUY_API_KEY provisioned.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_ebay_itemGet one eBay item's full detail — description, brand/MPN/GTIN, color, item specifics, images, return terms, availability, item end date — by REST item id or legacy numeric id.1 finding
Why it is in this group
- The name "get_ebay_item" says "get": a word for reading.
Findings
- Info
The description mentions "credentials".
What this check looks forMatched text
description: "...il the upstream deployment has eBay app credentials provisioned."
Description, as the server wrote it Get one eBay item's full detail — description, brand/MPN/GTIN, color, item specifics, images, return terms, availability, item end date — by REST item id or legacy numeric id. Returns an honest `credentials_required` error until the upstream deployment has eBay app credentials provisioned.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_ebay_itemsBulk-fetch full item detail for up to 20 eBay items in a single call, given comma-separated item ids.1 finding
Why it is in this group
- The name "get_ebay_items" says "get": a word for reading.
Findings
- Info
The description mentions "credentials".
What this check looks forMatched text
description: "...il the upstream deployment has eBay app credentials provisioned."
Description, as the server wrote it Bulk-fetch full item detail for up to 20 eBay items in a single call, given comma-separated item ids. Returns an honest `credentials_required` error until the upstream deployment has eBay app credentials provisioned.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_etsy_listingGet one Etsy listing by id, full detail — the only endpoint where Etsy's API populates `views` (search and shop-listings results always have `views: null`, since Etsy doesn't carry…No findings
Why it is in this group
- The name "get_etsy_listing" says "get": a word for reading.
Description, as the server wrote it Get one Etsy listing by id, full detail — the only endpoint where Etsy's API populates `views` (search and shop-listings results always have `views: null`, since Etsy doesn't carry that field there). Errors honestly until this engine is fully live upstream: currently returns `not_found` (route not yet redeployed on the production commerce-api), then `credentials_required` once deployed without ETSY_KEYSTRING/ETSY_SHARED_SECRET provisioned.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_etsy_shopGet one Etsy shop by shop_id or shop_name — name, listing counts, favorites, total sold, aggregate review count/average.No findings
Why it is in this group
- The name "get_etsy_shop" says "get": a word for reading.
Description, as the server wrote it Get one Etsy shop by shop_id or shop_name — name, listing counts, favorites, total sold, aggregate review count/average. Errors honestly until this engine is fully live upstream: currently returns `not_found` (route not yet redeployed on the production commerce-api), then `credentials_required` once deployed without ETSY_KEYSTRING/ETSY_SHARED_SECRET provisioned.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_etsy_shop_listingsList one Etsy shop's active listings, optionally keyword-filtered within the shop.No findings
Why it is in this group
- The name "get_etsy_shop_listings" says "get": a word for reading.
Description, as the server wrote it List one Etsy shop's active listings, optionally keyword-filtered within the shop. Errors honestly until this engine is fully live upstream: currently returns `not_found` (route not yet redeployed on the production commerce-api), then `credentials_required` once deployed without ETSY_KEYSTRING/ETSY_SHARED_SECRET provisioned.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_shopify_collectionsList a public Shopify store's collections (id, handle, title, product count, image) — keyless, live now.No findings
Why it is in this group
- The name "get_shopify_collections" says "get": a word for reading.
Description, as the server wrote it List a public Shopify store's collections (id, handle, title, product count, image) — keyless, live now.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_shopify_productGet one product from a public Shopify store by its handle (slug), from that store's own /products.json — keyless, live now.No findings
Why it is in this group
- The name "get_shopify_product" says "get": a word for reading.
Description, as the server wrote it Get one product from a public Shopify store by its handle (slug), from that store's own /products.json — keyless, live now.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
search_bestbuySearch Best Buy's US product catalog by keyword and/or category, built on Best Buy's official Products API.No findings
Why it is in this group
- The name "search_bestbuy" says "search": a word for reading.
Description, as the server wrote it Search Best Buy's US product catalog by keyword and/or category, built on Best Buy's official Products API. Returns sku, title, sale/regular price, rating, manufacturer/model, image, online/in-store availability, and UPC per product. Errors honestly until this engine is fully live upstream: currently returns `not_found` (route not yet redeployed on the production commerce-api), then `credentials_required` once deployed without BESTBUY_API_KEY provisioned.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
search_ebaySearch live eBay listings by keyword and/or category across 8 sites (US, GB, DE, AU, CA, FR, IT, ES), built on eBay's official Browse API.No findings
Why it is in this group
- The name "search_ebay" says "search": a word for reading.
Description, as the server wrote it Search live eBay listings by keyword and/or category across 8 sites (US, GB, DE, AU, CA, FR, IT, ES), built on eBay's official Browse API. Returns id, title, price, condition, seller feedback, shipping, image, categories, and URL per listing. Returns an honest `credentials_required` error until the upstream deployment has EBAY_CLIENT_ID/EBAY_CLIENT_SECRET provisioned.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
search_ebay_soldSold/completed-item price comps.No findings
Why it is in this group
- The name "search_ebay_sold" says "search": a word for reading.
Description, as the server wrote it Sold/completed-item price comps. This needs eBay's Marketplace Insights API, which is a limited-release approval separate from the base Browse API. Until that is enabled on the upstream deployment, this always returns a 501 `not_enabled` gate rather than a fabricated result — that is expected, honest behavior, not a bug.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
search_etsySearch Etsy's site-wide active listings by keyword, built on Etsy's official Open API v3 (app-only, no OAuth).No findings
Why it is in this group
- The name "search_etsy" says "search": a word for reading.
Description, as the server wrote it Search Etsy's site-wide active listings by keyword, built on Etsy's official Open API v3 (app-only, no OAuth). Returns title, description, price, quantity, tags/materials, favorites, images, and shop per listing. Errors honestly until this engine is fully live upstream: currently returns `not_found` (route not yet redeployed on the production commerce-api), then `credentials_required` once deployed without ETSY_KEYSTRING/ETSY_SHARED_SECRET provisioned.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
search_shopifyFilter a public Shopify store's catalog by keyword across title, vendor, product type, and tags — keyless, live now.No findings
Why it is in this group
- The name "search_shopify" says "search": a word for reading.
Description, as the server wrote it Filter a public Shopify store's catalog by keyword across title, vendor, product type, and tags — keyless, live now.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
search_shopify_productsList any public Shopify store's product catalog straight from that store's own /products.json — no keys, no auth, works today.No findings
Why it is in this group
- The name "search_shopify_products" says "search": a word for reading.
Description, as the server wrote it List any public Shopify store's product catalog straight from that store's own /products.json — no keys, no auth, works today. Returns title, vendor, product type, tags, price range, variants, images, and URL per product. Pass a bare storefront domain, e.g. `allbirds.com`.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http commercebridge https://commercebridge-isaiahduprees-projects.vercel.app/api/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__commercebridge__search_ebay",
"mcp__commercebridge__get_ebay_item",
"mcp__commercebridge__get_ebay_items",
"mcp__commercebridge__search_ebay_sold",
"mcp__commercebridge__search_shopify_products",
"mcp__commercebridge__get_shopify_product",
"mcp__commercebridge__get_shopify_collections",
"mcp__commercebridge__search_shopify",
"mcp__commercebridge__search_bestbuy",
"mcp__commercebridge__get_bestbuy_product",
"mcp__commercebridge__search_etsy",
"mcp__commercebridge__get_etsy_listing",
"mcp__commercebridge__get_etsy_shop",
"mcp__commercebridge__get_etsy_shop_listings"
],
"ask": [],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as commercebridge. Review it before you use it.
