WooCommerce MCP サーバー
WooCommerce 統合用の Model Context Protocol (MCP) サーバー。Windows、macOS、Linux と互換性があります。
概要
このMCPサーバーは、WordPress REST APIを介してWooCommerceストアとの連携を可能にします。JSON-RPC 2.0プロトコルを使用して、商品、注文、顧客、配送、税金、割引、ストア設定など、あらゆる側面を管理するための包括的なツールを提供します。
インストール
- リポジトリをクローンする
- 依存関係をインストールします:
- プロジェクトをビルドします。
構成
資格情報の環境変数を使用して、サーバーを MCP 設定ファイルに追加します。
{
"mcpServers": {
"woocommerce": {
"command": "node",
"args": ["path/to/build/index.js"],
"env": {
"WORDPRESS_SITE_URL": "https://your-wordpress-site.com",
"WOOCOMMERCE_CONSUMER_KEY": "your-woocommerce-consumer-key",
"WOOCOMMERCE_CONSUMER_SECRET": "your-woocommerce-consumer-secret",
"WORDPRESS_USERNAME": "your-wordpress-username",
"WORDPRESS_PASSWORD": "your-wordpress-password"
}
}
}
}
環境変数
WooCommerce API アクセスに必要なもの:
WORDPRESS_SITE_URL
: WordPress サイトの URL (WooCommerce は WordPress プラグインです)WOOCOMMERCE_CONSUMER_KEY
: WooCommerce REST API コンシューマーキーWOOCOMMERCE_CONSUMER_SECRET
: WooCommerce REST API コンシューマーシークレット
WordPress API メソッドにのみ必須:
WORDPRESS_USERNAME
: 適切な権限を持つWordPressユーザー名WORDPRESS_PASSWORD
: 認証用のWordPressパスワード
環境変数を使用したくない場合は、リクエストパラメータでこれらの資格情報を提供することもできます。
認証オプション
WooCommerce認証
WooCommerce API アクセスには、WordPress ダッシュボードの「WooCommerce」→「設定」→「詳細設定」→「REST API」で生成できるコンシューマー キーが必要です。
WordPress認証
WordPress 固有の方法 (投稿の管理など) の場合は、以下を提供する必要があります。
- 基本認証のユーザー名/パスワード資格情報
- WordPress REST APIがサイトで有効になっている必要があります
APIメソッド
サーバーはWordPressとWooCommerceの両方のAPIメソッドをサポートしています。利用可能なメソッドをカテゴリ別にまとめたリストを以下に示します。
WordPressコンテンツ管理
これらのメソッドでは WordPress のユーザー名/パスワードの資格情報が必要であり、WooCommerce API とは独立しています。
方法 | 説明 |
---|
create_post | 新しいWordPress投稿を作成する |
get_posts | WordPressの投稿を取得する |
update_post | 既存のWordPress投稿を更新する |
get_post_meta | 投稿のメタデータを取得する |
update_post_meta | 投稿のメタデータを更新する |
create_post_meta | 投稿メタデータを作成する |
delete_post_meta | 投稿のメタデータを削除する |
WooCommerce製品
方法 | 説明 |
---|
get_products | 製品リストを取得する |
get_product | IDで単一の製品を取得する |
create_product | 新しい製品を作成する |
update_product | 既存の製品を更新する |
delete_product | 製品を削除する |
get_product_meta | 製品のメタデータを取得する |
create_product_meta | 製品メタデータの作成/更新 |
update_product_meta | 製品メタデータの更新(create のエイリアス) |
delete_product_meta | 製品メタデータを削除する |
製品カテゴリー
方法 | 説明 |
---|
get_product_categories | 製品カテゴリを取得する |
get_product_category | 単一の製品カテゴリを取得する |
create_product_category | 新しい製品カテゴリを作成する |
update_product_category | 製品カテゴリを更新する |
delete_product_category | 商品カテゴリーを削除する |
製品タグ
方法 | 説明 |
---|
get_product_tags | 商品タグを取得する |
get_product_tag | 単一の商品タグを取得する |
create_product_tag | 新しい商品タグを作成する |
update_product_tag | 商品タグを更新する |
delete_product_tag | 商品タグを削除する |
製品属性
方法 | 説明 |
---|
get_product_attributes | 製品属性を取得する |
get_product_attribute | 単一の製品属性を取得する |
create_product_attribute | 新しい製品属性を作成する |
update_product_attribute | 製品属性を更新する |
delete_product_attribute | 製品属性を削除する |
get_attribute_terms | 属性用語を取得する |
get_attribute_term | 単一の属性用語を取得する |
create_attribute_term | 新しい属性用語を作成する |
update_attribute_term | 属性用語を更新する |
delete_attribute_term | 属性用語を削除する |
製品バリエーション
方法 | 説明 |
---|
get_product_variations | 商品のバリエーションを取得する |
get_product_variation | 単一の製品バリエーションを取得する |
create_product_variation | 新しい製品バリエーションを作成する |
update_product_variation | 商品のバリエーションを更新する |
delete_product_variation | 商品バリエーションを削除する |
製品レビュー
方法 | 説明 |
---|
get_product_reviews | 製品レビューを取得する |
get_product_review | 単一の製品レビューを取得する |
create_product_review | 新しい製品レビューを作成する |
update_product_review | 製品レビューを更新する |
delete_product_review | 製品レビューを削除する |
WooCommerce 注文
方法 | 説明 |
---|
get_orders | 注文リストを取得する |
get_order | IDで単一の注文を取得する |
create_order | 新しい注文を作成する |
update_order | 既存の注文を更新する |
delete_order | 注文を削除する |
get_order_meta | 注文メタデータを取得する |
create_order_meta | 注文メタデータの作成/更新 |
update_order_meta | 注文メタデータの更新(create のエイリアス) |
delete_order_meta | 注文メタデータを削除する |
注文メモ
方法 | 説明 |
---|
get_order_notes | 注文メモを取得する |
get_order_note | 単一の注文書を取得する |
create_order_note | 新しい注文メモを作成する |
delete_order_note | 注文メモを削除する |
注文の払い戻し
方法 | 説明 |
---|
get_order_refunds | 注文の払い戻しを取得する |
get_order_refund | 単一注文の払い戻しを受ける |
create_order_refund | 新しい注文の払い戻しを作成する |
delete_order_refund | 注文の払い戻しを削除する |
WooCommerceのお客様
方法 | 説明 |
---|
get_customers | 顧客リストを取得する |
get_customer | IDで単一の顧客を取得する |
create_customer | 新しい顧客を作成する |
update_customer | 既存の顧客を更新する |
delete_customer | 顧客を削除する |
get_customer_meta | 顧客メタデータを取得する |
create_customer_meta | 顧客メタデータの作成/更新 |
update_customer_meta | 顧客メタデータの更新(作成のエイリアス) |
delete_customer_meta | 顧客メタデータを削除する |
配送
方法 | 説明 |
---|
get_shipping_zones | 配送ゾーンを取得する |
get_shipping_zone | 単一の配送ゾーンを取得する |
create_shipping_zone | 新しい配送ゾーンを作成する |
update_shipping_zone | 配送ゾーンを更新する |
delete_shipping_zone | 配送ゾーンを削除する |
get_shipping_methods | 配送方法を取得する |
get_shipping_zone_methods | ゾーンの配送方法を取得する |
create_shipping_zone_method | ゾーンに新しい配送方法を作成する |
update_shipping_zone_method | ゾーンの配送方法を更新する |
delete_shipping_zone_method | ゾーンから配送方法を削除する |
get_shipping_zone_locations | 配送ゾーンの場所を取得する |
update_shipping_zone_locations | 配送ゾーンの場所を更新する |
税金
方法 | 説明 |
---|
get_tax_classes | 税金の区分を取得する |
create_tax_class | 新しい税金クラスを作成する |
delete_tax_class | 税金クラスを削除する |
get_tax_rates | 税率を取得する |
get_tax_rate | 単一の税率を取得する |
create_tax_rate | 新しい税率を作成する |
update_tax_rate | 税率を更新する |
delete_tax_rate | 税率を削除する |
割引/クーポン
方法 | 説明 |
---|
get_coupons | クーポンを取得する |
get_coupon | クーポンを1枚入手 |
create_coupon | 新しいクーポンを作成する |
update_coupon | クーポンを更新する |
delete_coupon | クーポンを削除する |
決済ゲートウェイ
方法 | 説明 |
---|
get_payment_gateways | 決済ゲートウェイを取得する |
get_payment_gateway | 単一の決済ゲートウェイを取得する |
update_payment_gateway | 支払いゲートウェイを更新する |
レポート
方法 | 説明 |
---|
get_sales_report | 売上レポートを取得する |
get_products_report | 製品レポートを取得する |
get_orders_report | 注文レポートを取得する |
get_categories_report | カテゴリレポートを取得する |
get_customers_report | 顧客レポートを取得する |
get_stock_report | 株価レポートを取得する |
get_coupons_report | クーポンレポートを取得する |
get_taxes_report | 税金レポートを取得する |
設定
方法 | 説明 |
---|
get_settings | すべての設定を取得する |
get_setting_options | 設定のオプションを取得する |
update_setting_option | 設定オプションを更新する |
システムステータス
方法 | 説明 |
---|
get_system_status | システムステータスの取得 |
get_system_status_tools | システムステータスツールを取得する |
run_system_status_tool | システムステータスツールを実行する |
データ
方法 | 説明 |
---|
get_data | 店舗データを取得する |
get_continents | 大陸データを取得する |
get_countries | 国データを取得する |
get_currencies | 通貨データを取得する |
get_current_currency | 現在の通貨を取得する |
すべてのメソッドは同様のパラメータ構造に従います。以下に例を示します。
siteUrl
: (env で設定されている場合オプション) WordPress サイトの URL
consumerKey
: (env で設定されている場合オプション) WooCommerce コンシューマーキーconsumerSecret
: (env で設定されている場合オプション) WooCommerce コンシューマー シークレット
username
: (envで設定されている場合オプション) WordPressユーザー名password
: (envで設定されている場合オプション) WordPressのパスワード
使用例
WordPress APIの例
{
"jsonrpc": "2.0",
"id": 1,
"method": "create_post",
"params": {
"siteUrl": "https://your-wordpress-site.com",
"username": "your-wordpress-username",
"password": "your-wordpress-password",
"title": "My New Blog Post",
"content": "This is the content of my new blog post.",
"status": "publish"
}
}
WooCommerce製品の例
{
"jsonrpc": "2.0",
"id": 1,
"method": "get_products",
"params": {
"perPage": 20,
"page": 1,
"filters": {
"category": 19,
"status": "publish"
}
}
}
製品例の作成
{
"jsonrpc": "2.0",
"id": 1,
"method": "create_product",
"params": {
"productData": {
"name": "Premium T-Shirt",
"type": "simple",
"regular_price": "29.99",
"description": "Comfortable cotton t-shirt, available in various sizes.",
"short_description": "Premium quality t-shirt.",
"categories": [
{
"id": 19
}
],
"images": [
{
"src": "http://example.com/wp-content/uploads/2022/06/t-shirt.jpg"
}
]
}
}
}
{
"jsonrpc": "2.0",
"id": 1,
"method": "create_product_meta",
"params": {
"productId": 456,
"metaKey": "_custom_product_field",
"metaValue": {
"special_attribute": "value",
"another_attribute": 42
}
}
}
{
"jsonrpc": "2.0",
"id": 1,
"method": "create_order_meta",
"params": {
"orderId": 789,
"metaKey": "_delivery_instructions",
"metaValue": "Leave package at the back door"
}
}
セキュリティに関する注意事項
WooCommerce REST APIにアクセスするには、APIキーを生成する必要があります。WordPressダッシュボードの「WooCommerce」→「設定」→「詳細設定」→「REST API」で作成できます。
要件
- Node.js 20.0.0以上
- WooCommerceプラグインがインストールされたWordPressサイト
- WooCommerce REST APIキー
ライセンス
MITライセンス - 詳細はLICENSEファイルを参照