mcpField
B
Bigcommerce Api Mcp

Bigcommerce Api Mcp

ローカル
github.com/isaacgounton開発ツール54 週間前に更新

Bigcommerce Api Mcp について

Bigcommerce Api Mcpは、AIアシスタントをBigCommerce REST APIに接続し、商品、顧客、注文データを扱います。読み取りは標準で利用でき、書き込みツールは明示的に有効化した場合のみ登録されます。

主な機能

  1. 01商品の一覧表示と絞り込み
  2. 02商品バリエーションと画像の取得
  3. 03顧客と注文の検索
  4. 04注文の商品明細の確認
  5. 05商品・顧客・注文の任意更新

活用シーン

  1. 01店舗の商品カタログの確認
  2. 02顧客や注文記録の検索
  3. 03書き込み有効時の店舗データ変更

MCP 対応

MCPサーバーはBigCommerceの商品、顧客、カテゴリ、ブランド、注文を読み取るツールを提供します。任意の書き込みツールで商品や顧客の作成・更新、注文の更新ができます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

BigCommerce MCP サーバー

BigCommerce REST API 用の MCP サーバーです。AI アシスタントがカタログ、顧客、注文を読み取れるようにします。また、有効にすると、それらを変更することもできます。

ツール

読み取り

ツール機能
get_all_productsフィルタリング、並べ替え、ページネーションを使って商品を一覧表示します
get_productID で商品を 1 件取得します。オプションでバリエーションや画像も含められます
get_all_customersID、メールアドレス、名前、会社名、期間で顧客を一覧表示します
get_all_orders顧客、ステータス、期間、合計金額で注文を一覧表示します
get_orderID で注文を 1 件取得します
get_order_products注文の明細項目(実際に購入された商品)を取得します
list_categories商品フィルターで必要となる ID にカテゴリ名を対応付けます
list_brands商品フィルターで必要となる ID にブランド名を対応付けます

書き込み — BIGCOMMERCE_ENABLE_WRITES=true が必要です

ツール機能
create_productカタログに商品を作成します
update_product価格、在庫、公開状態、カテゴリなどを更新します
create_customer顧客レコードを作成します
update_customer顧客情報を更新します
update_orderステータス、スタッフ用メモ、顧客向けメッセージを変更します

書き込みツールは有効にしない限り登録されないため、デフォルトのデプロイでは、誰かがエンドポイントにアクセスできてもストアを変更できません。

npm run list-tools を実行すると、現在設定されているツールとパラメーターが表示されます。

セットアップ

Node 20 以降が必要です。

git clone https://github.com/isaacgounton/bigcommerce-api-mcp.git
cd bigcommerce-api-mcp
npm install
cp .env.example .env

次に、.env に入力します。

BIGCOMMERCE_STORE_HASH=your_store_hash_here
BIGCOMMERCE_API_KEY=your_api_key_here

どちらも BigCommerce 管理画面 → Settings → API accounts → Create API account から取得します。Products、Orders、Customers の権限を付与してください。書き込みを有効にする予定がなければ、読み取り専用にします。.env.example に、サポートされているすべての変数が記載されています。

実行

npm start          # stdio — Claude Desktop, Cline, local clients
npm run start:http # streamable HTTP — remote clients and agent runtimes

HTTP モードでは POST /mcp に加えて、認証不要の GET /health と GET /info を提供します。

SSE トランスポートは、MCP 仕様で置き換えられた Streamable HTTP に移行するため廃止されました。引き続き /sse を使用しているクライアントは、接続先を /mcp に変更してください。

Claude Desktop

claude_desktop_config.json で設定します(絶対パスを使用してください。which node で確認できます)。

{
  "mcpServers": {
    "bigcommerce": {
      "command": "/absolute/path/to/node",
      "args": ["/absolute/path/to/bigcommerce-api-mcp/mcpServer.js"],
      "env": {
        "BIGCOMMERCE_STORE_HASH": "your_store_hash",
        "BIGCOMMERCE_API_KEY": "your_api_key"
      }
    }
  }
}
HTTP 経由
curl -X POST http://127.0.0.1:3000/mcp \
  -H "Authorization: Bearer $MCP_AUTH_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

セキュリティ

/mcp を呼び出せるユーザーは、ストアの API 認証情報を使って操作できます。

  • HOST — デフォルトでは 127.0.0.1 にバインドされます。公開する意図がある場合に限り 0.0.0.0 に設定し、その場合はプロキシまたはファイアウォールの背後に配置してください。
  • MCP_AUTH_TOKEN — 設定すると、すべての /mcp リクエストに Authorization: Bearer <token> が必要です。比較にはタイミングセーフな処理を使用します。サーバーが localhost の外部からアクセス可能な場合は、必ず設定してください。
  • ALLOWED_ORIGINS — Origin ヘッダーを含むリクエストは、ここに記載されていない限り拒否されます。これにより、アクセスしたページからローカルサーバーを操作する DNS リバインディング攻撃を防げます。ブラウザー以外のクライアントは Origin を送信しないため、影響を受けません。
  • BIGCOMMERCE_ENABLE_WRITES — アシスタントが読み取りのみを行う場合は、無効のままにしてください。
  • スコープ — API アカウントには、動作に必要な最小限のスコープを付与してください。読み取り専用トークンは、このサーバーのバグによって書き込み可能になることはありません。

Docker

docker build -t bigcommerce-mcp .
docker run --rm -p 3000:3000 --env-file .env bigcommerce-mcp

イメージでは HOST=0.0.0.0 が設定されるため、公開ポートにアクセスできます。コンテナを公開する前に MCP_AUTH_TOKEN を設定してください。

開発

npm test           # protocol, auth, origin, discovery and spec conformance — no credentials needed
npm run test:live  # smoke-test read tools against a real store (needs .env)
npm run sync-spec  # refresh the query-parameter fixture from BigCommerce's OpenAPI specs

npm test では、ツールが宣言するすべてのクエリパラメーターを、BigCommerce が公開している仕様と照合します。BigCommerce は不明なクエリパラメーターを拒否せず無視するため、これは重要です。存在しないフィルターを指定すると、エラーになる代わりにフィルターなしのデータが黙って返され、より深刻な問題になります。

ツールを追加するには、tools/bigcommerce/<group>/ に apiTool をエクスポートするファイルを追加します。自動的に検出されます。lib/bigcommerce.js が認証情報、クエリの構築、エラー処理、解析を担当するため、通常、ツールに必要なのはパスとスキーマだけです。tools/bigcommerce/catalog/list-brands.js をコピーしてください。ストアを変更するツールには writes: true を設定します。

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。