Open-source B2B and marketplace ecommerce; new stores include an MCP server for AI agents.
Commercebridge
概要
作者による説明(英語の原文)
Remote MCP connector for eBay, Shopify, Best Buy & Etsy marketplace data via the Commerce API
PopNx MCPの3つの柱
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
- 利用者の声iレビューはまだありませんレビューは今後のステップで、アカウント機能と一緒に始まります
- 私たちの基本チェックi1項目中1項目に合格公開情報からチェック。コードはまだスキャンしていません
- 利用状況i未計測★ –
できること
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
- 接続方法: クラウドで動く
- トランスポート: Streamable HTTP
- カテゴリ: ネットショップ・決済
インストール
使っているAIアプリを選んで、設定をコピーしてください。
インストールの前に
- 基本チェック:1項目中1項目に合格
- 作者のサーバーで動きます。あなたが頼んだ内容は、作者のサーバーを通ります。
- レジストリには、入力が必要なキーは載っていません。
必要なもの
- クラウドで動くインストール不要。インターネット経由でつながります
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
ウェブ、デスクトップ、モバイルのClaudeで使えます:
- Settings → Connectors を開く
- Add custom connector を押す
- 下のアドレスを貼り付けて Add を押す
- サインインを求められたら、作者のサービスにサインインする
https://commercebridge-isaiahduprees-projects.vercel.app/api/mcpターミナルでこれを実行します
claude mcp add --transport http commercebridge https://commercebridge-isaiahduprees-projects.vercel.app/api/mcpまたは、設定を自分でコピーする
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"commercebridge": {
"url": "https://commercebridge-isaiahduprees-projects.vercel.app/api/mcp"
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
または、設定を自分でコピーする
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"commercebridge": {
"type": "http",
"url": "https://commercebridge-isaiahduprees-projects.vercel.app/api/mcp"
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
ChatGPTがつなげるのは、インターネット上のサーバーだけです:
- ウェブ版のChatGPTを開き → Settings → Connectors (Apps)
- Create または Add を押す(プランによっては、先に Advanced で Developer mode をオンにする必要があります)
- 下のアドレスを貼り付け、名前を付けて保存する
- サインインを求められたら、作者のサービスにサインインする
https://commercebridge-isaiahduprees-projects.vercel.app/api/mcpメニューの名前は、プランや時期によって少し違うことがあります。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
できること
このサーバーのツール一覧はまだ読み取っていません。エンドポイントは順番にチェックしています。
基本チェックi
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月8日にチェック
- ✓ 合格
作者とリポジトリが一致
レジストリ名は、リポジトリを所有するGitHubアカウント IsaiahDupree で確認済みです
- … 未チェック
今もメンテナンスされている
このリポジトリはまだGitHubから読み取っていません
- … 未チェック
ライセンスがある
このリポジトリはまだGitHubから読み取っていません
- … 未チェック
エンドポイントが応答する
まだチェックしていません。エンドポイントは順番にチェックしています
- … 未チェック
OAuthでサインイン
まだチェックしていません。エンドポイントは順番にチェックしています
- … 未チェック
ツールの説明に隠れた指示がない
まだチェックしていません。エンドポイントをチェックするときにツール一覧を読み取ります
ネットショップ・決済のほかのサーバーとの比較i
- このカテゴリのほかの2543件のうち0%よりスターが多い
- このカテゴリのほかの2543件のうち22%より最近レジストリに公開
- 基本チェックの結果が、このカテゴリのほかの2543件のうち100%と同じかそれ以上
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
よくある質問
Commercebridgeは安全ですか?
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
どんなキーやコードが必要ですか?
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
パソコンで動きますか、それともクラウドですか?
作者のクラウドで動きます。インストール不要でインターネット経由でつながりますが、送った内容は作者のサーバーを通ります。
今もメンテナンスされていますか?
GitHubリポジトリの最終更新は–、最新バージョン(1.0.0)がレジストリに届いたのは3 か月前です。
どのアプリで使えますか?
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。
代わりに使えるものは?
同じカテゴリには:Spree Commerce: open-source B2B and marketplace ecommerce, Stripe MCP, MCP Cn Commerce
代わりの候補
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Stripe MCP
MCP server integrating with Stripe - tools for customers, products, payments, and more.
MCP Cn Commerce
8 read-only MCP platform entries; support is operation-specific; merchant live acceptance pending
作者のREADME
READMEを開く
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
CommerceBridge
A remote MCP server that wraps the live Commerce API — eBay, Shopify, Best Buy, and Etsy marketplace data behind one /v1 contract — as MCP tools any agent (Claude, ChatGPT, etc.) can call directly.
Live: https://commercebridge-isaiahduprees-projects.vercel.app/mcp (Vercel project commercebridge, team isaiahduprees-projects) — 14 tools, verified against real production data (Shopify live; eBay/Best Buy/Etsy honestly gated until their upstream app keys are provisioned). Naming note: the clean commercebridge.vercel.app alias is owned by an unrelated third-party product (a WhatsApp-commerce chatbot) — use the team-scoped URL above, same situation as commerce-api's alias collision.
CommerceBridge does no scraping and holds no data of its own: every tool is a thin, faithful fetch relay to the upstream Commerce API. Whatever that API returns comes back unmodified, including its errors.
Why Authentication: None
This connector's underlying data — eBay/Shopify/Best Buy/Etsy marketplace listings — is fully public and carries zero per-user state. There is no account to log into, nothing to authorize, and nothing to bill per-seat. So, deliberately, CommerceBridge has:
- No OAuth — no login flow, no token exchange, no
/.well-known/oauth-*endpoints - No Supabase — no user table, no session storage
- No billing — no plans, no usage metering, no upgrade gate
This is the same architectural call this org made for StoreBridge, its sibling connector over App Store/Google Play data: public read-only marketplace data gets the lean, stateless build. It is deliberately leaner than this org's OAuth-based Bridge-family connectors (RemindersBridge, MessagesBridge, etc.), which proxy a signed-in user's own private data and do need auth.
Tools
14 tools, one per Commerce API endpoint, grouped by marketplace/engine:
eBay — needs EBAY_CLIENT_ID / EBAY_CLIENT_SECRET on the upstream deployment
| Tool | Endpoint | What it does |
|---|---|---|
search_ebay | GET /v1/search | Search live eBay listings by keyword/category across 8 sites (US, GB, DE, AU, CA, FR, IT, ES) |
get_ebay_item | GET /v1/item | Get one eBay item's full detail by REST id or legacy id |
get_ebay_items | GET /v1/items | Bulk-fetch up to 20 eBay items in one call |
search_ebay_sold | GET /v1/sold | Sold/completed-item comps — needs eBay's separately-gated Marketplace Insights API |
Shopify — keyless, live right now
| Tool | Endpoint | What it does |
|---|---|---|
search_shopify_products | GET /v1/shopify/products | List any public Shopify store's catalog from its own /products.json |
get_shopify_product | GET /v1/shopify/product | Get one product by handle |
get_shopify_collections | GET /v1/shopify/collections | List a store's collections |
search_shopify | GET /v1/shopify/search | Keyword-filter a store's catalog (title/vendor/type/tags) |
Best Buy — not yet live upstream (route pending redeploy, then needs BESTBUY_API_KEY)
| Tool | Endpoint | What it does |
|---|---|---|
search_bestbuy | GET /v1/bestbuy/search | Search Best Buy's US catalog by keyword/category |
get_bestbuy_product | GET /v1/bestbuy/product | Get one product by SKU |
Etsy — not yet live upstream (route pending redeploy, then needs ETSY_KEYSTRING + ETSY_SHARED_SECRET)
| Tool | Endpoint | What it does |
|---|---|---|
search_etsy | GET /v1/etsy/search | Site-wide active-listing keyword search |
get_etsy_listing | GET /v1/etsy/listing | Get one listing (only endpoint where views is populated) |
get_etsy_shop | GET /v1/etsy/shop | Get one shop by shop_id or shop_name |
get_etsy_shop_listings | GET /v1/etsy/shop/listings | List a shop's active listings |
Every tool is annotated {readOnlyHint:true, destructiveHint:false, idempotentHint:true, openWorldHint:true} — read-only, non-destructive, idempotent, over an open/external data source.
Expected upstream errors — not a bug
Only Shopify is live today. Every other engine's tool call returns an MCP tool error (isError: true) whose text is the upstream's honest error envelope, verbatim — but the *exact* error differs by engine, because the upstream commerce-api production deployment currently lags its own source repo:
- eBay (
search_ebay*,get_ebay*) — the route is deployed, but app keys aren't provisioned, so you get:
credentials_required: eBay app credentials required — set EBAY_CLIENT_ID and EBAY_CLIENT_SECRET (free at developer.ebay.com). This API wraps eBay's free Browse API.
search_ebay_sold additionally always returns a 501 not_enabled gate regardless of eBay keys — that endpoint needs eBay's separately-approved Marketplace Insights API, which the base Browse API keys don't grant.
- Best Buy (
search_bestbuy,get_bestbuy_product) and Etsy (search_etsy*,get_etsy*) — as of this writing, the code for these engines exists in thecommerce-apisource repo but the live production deployment has not been redeployed to include it yet, so these routes 404 at the HTTP layer, verified live:
not_found: No route for GET /v1/bestbuy/search
not_found: No route for GET /v1/etsy/shop
Once `commerce-api` is redeployed, these will flip to `credentials_required` (`BESTBUY_API_KEY` / `ETSY_KEYSTRING`+`ETSY_SHARED_SECRET` missing) until those keys are provisioned, then to live data — with **zero changes needed here**.
CommerceBridge deliberately does not catch, hide, or fake around any of this — the tool handler passes whatever the upstream says straight through as {isError: true, content: [{type:'text', text: ' : '}]}, whether that's not_found, credentials_required, or eventually real data.
Configuration
| Env var | Default | Purpose |
|---|---|---|
COMMERCE_API_BASE_URL | https://commerce-api-isaiahduprees-projects.vercel.app | Upstream Commerce API base URL. Override to point at a staging/local Commerce API deployment. |
No other configuration. No secrets belong in this repo — API keys live only on the upstream commerce-api deployment.
Run locally
npm install
npm test # local smoke test — initialize, tools/list, 2x tools/call (see below)
Deploy
npx vercel --yes --prod
That's it — no environment variables are required for CommerceBridge itself (only the upstream commerce-api deployment needs its marketplace app keys). After deploy, point any MCP client at:
https://<your-deployment>.vercel.app/api/mcp
Local smoke test
npm test runs test/smoke.mjs, which connects a real MCP Client to buildServer() from lib/tools.js over an in-memory transport (the exact same server code api/mcp.js serves over HTTP) and checks:
- `initialize` — server identifies itself as
commercebridgev1.0.0 - `tools/list` — all 14 tools present, each with an object
inputSchemaand the expected RO annotations - `tools/call` → `search_shopify_products` (
store: "allbirds.com") — assertsisErroris false and real products come back withmarketplace: "shopify"— proves live data flows end-to-end - `tools/call` → `search_ebay` — asserts
isErroris true and the error text containscredentials_required— proves the upstream honest gate surfaces as a clean MCP tool error, not a crash
test/local-server.mjs is a second, thinner check that runs the actual api/mcp.js / api/health.js handlers behind a plain http.Server, to confirm the Vercel-shaped handlers themselves (GET/DELETE → 405, /api/health → {ok, service, upstream}) work outside of the SDK's in-memory transport.
Architecture
lib/tools.js — buildServer(): McpServer + all 14 tool registrations + upstream fetch relay
api/mcp.js — POST /api/mcp — stateless StreamableHTTPServerTransport, no auth api/health.js — GET /api/health — {ok, service, upstream} test/ — smoke.mjs (in-memory client/server), local-server.mjs (HTTP handler check)