Magento 2 MCP Server について
Magento 2 MCP Server は Magento 2 REST API に接続する MCP サーバーで、Claude などの MCP クライアントからストアの商品、顧客、注文データを照会できます。自然言語でストアの状況を確認したい EC 運営担当者を想定しています。
主な機能
- 01SKU または ID による商品情報の照会
- 02フィルタリングとソートを使った高度な商品検索
- 03在庫と属性の取得
- 04日付範囲別の注文件数と売上の集計
- 05国別の売上フィルター
- 06顧客が注文した商品の一覧取得
活用シーン
- 01自然言語による商品の在庫とカテゴリーの確認
- 02指定期間の注文件数と売上の集計
- 03国別の売上状況の分析
MCP 対応
本プロジェクトは Magento 2 REST API の機能を MCP ツールとして公開する MCP サーバーで、Claude Desktop などの MCP クライアントから利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Magento 2 MCP サーバー
これは Magento 2 REST API に接続する Model Context Protocol(MCP)サーバーで、Claude やその他の MCP クライアントが Magento ストアの商品情報を照会できるようにします。
機能
商品機能
- SKU または ID で商品情報を照会
- さまざまな条件で商品を検索
- 商品カテゴリーを取得
- 関連商品を取得
- 商品の在庫情報を取得
- 商品属性を取得
- 属性コードと値を指定して商品属性を更新
- フィルタリングと並べ替えによる高度な商品検索
顧客機能
- メールアドレスで顧客の注文済み商品をすべて取得
注文と売上の機能
- 指定した期間の注文数を取得
- 指定した期間の売上を取得
- 指定した期間の国別売上を取得
- 販売数量や売れ筋商品を含む商品販売統計を取得
- 「today」、「yesterday」、「last week」、「this month」、「YTD」などの相対的な日付表現に対応
- 国コードと国名の両方による国のフィルタリングに対応
前提条件
- Node.js(v14 以降)
- REST API にアクセスできる Magento 2 インスタンス
- Magento 2 インスタンスの API トークン
インストール
- このリポジトリをクローンします
- 依存関係をインストールします:
npm install
使用方法
サーバーを直接実行する
node mcp-server.js
テストクライアントでテストする
node test-mcp-server.js
Claude Desktop で使用する
which nodeで node のパスを確認します- Developer settings に移動し、「Edit config」をクリックします。JSON ファイルが開きます。
mcpServers内に次のスニペットを追加します:
"magento2": {
"command": "/path/to/your/node",
"args": ["/path/to/mcp-server.js"],
"env": {
"MAGENTO_BASE_URL": "https://YOUR_DOMAIN/rest/V1",
"MAGENTO_API_TOKEN": "your-api-token"
}
}
- 手順 1 で確認したパスに
/path/to/your/nodeを置き換えます - このリポジトリをクローンした場所のパスに
/path/to/mcp-server.jsを置き換えます - API トークンは Magento 管理画面の System > Integrations から取得できます
- Claude Desktop を再起動します。
- これで、Magento ストアの商品について Claude に質問できるようになります。
利用可能なツール
サーバーは次のツールを公開します:
商品ツール
get_product_by_sku:SKU で商品に関する詳細情報を取得search_products:Magento の検索条件を使用して商品を検索get_product_categories:SKU で特定商品のカテゴリーを取得get_related_products:SKU で特定商品に関連する商品を取得get_product_stock:SKU で商品の在庫情報を取得get_product_attributes:SKU で商品のすべての属性を取得get_product_by_id:ID で商品に関する詳細情報を取得advanced_product_search:高度なフィルタリングオプションで商品を検索update_product_attribute:SKU で商品の特定の属性を更新
顧客ツール
get_customer_ordered_products_by_email:メールアドレスで顧客の注文済み商品をすべて取得
注文と売上のツール
get_order_count:指定した期間の注文数を取得get_revenue:指定した期間の総売上を取得get_revenue_by_country:指定した期間の国別売上を取得get_product_sales:指定した期間に販売された商品の数量に関する統計を取得
Claude への質問例
MCP サーバーを Claude Desktop に接続すると、次のような質問をできます:
商品に関する質問
- 「シャツの商品はありますか?」
- 「SKU SKU-xxx の商品について教えてください」
- 「商品 SKU-xxx はどのカテゴリーに属していますか?」
- 「SKU-SKU-xxx に関連する商品はありますか?」
- 「商品 SKU-xxx の在庫状況はどうなっていますか?」
- 「価格順に並べたすべての商品を表示してください」
- 「商品 SKU-xxx の価格を $49.99 に更新してください」
- 「商品 ABC-123 の説明を変更して、耐水性があることを記載してください」
- 「商品 XYZ-456 のステータスを 'enabled' に設定してください」
顧客に関する質問
- 「顧客 [email protected] はどの商品を注文しましたか?」
- 「メールアドレスが [email protected] の顧客について、注文履歴と商品を表示してください」
注文と売上に関する問い合わせ
- 「今日の注文数はいくつですか?」
- 「先週の注文数はいくつですか?」
- 「昨日の売上はいくらでしたか?」
- 「先月の総売上はいくらでしたか?」
- 「今年の年初から現在までのオランダでの売上はいくらですか?」
- 「先週のドイツでの売上はいくらですか?」
- 「今月の米国とカナダの売上を比較してください」
- 「今月の完了した注文の平均注文額はいくらですか?」
- 「先月は商品を何点販売しましたか?」
- 「今年の売れ筋商品は何ですか?」
- 「注文あたりの商品数の平均はいくつですか?」
- 「前四半期にドイツで商品 XYZ-123 を何個販売しましたか?」
- 「今月、米国で最も売上を上げた商品はどれですか?」
開発
SSL 証明書の検証
開発目的で、サーバーは SSL 証明書の検証をスキップするように設定されています。本番環境では、適切な SSL 証明書を使用し、callMagentoApi 関数から httpsAgent の設定を削除してください。
新しいツールの追加
新しいツールを追加するには、既存のコードのパターンに従ってください。各ツールは次の要素で定義します。
- 一意の名前
- 説明
- Zod による検証を含む入力パラメーター
- リクエストを処理してレスポンスを返す非同期ハンドラー関数
ライセンス
ISC
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。