🛒 WooCommerce MCP服务器| Python版
使用 Model Context Protocol 连接 WooCommerce 商店的简单高效解决方案
🇺🇸 英文版 | 🇮🇱 中文版本
📌 那是什么?
模型上下文协议(MCP)服务器,可通过WordPress REST API与WooCommerce商店完全集成。该库提供了全面的工具来管理产品,订单,客户,运输,税收,折扣和商店配置的各个方面。
🚀 快速安装
复制 # שלב 1: שכפל את הרפוזיטורי
git clone https://github.com/yourusername/woocommerce-mcp-server.git
cd woocommerce-mcp-server
# שלב 2: התקן תלויות
pip install -r requirements.txt
# שלב 3: הגדר משתני סביבה (ראה הסבר בהמשך)
☁️ 发布在Railway
服务器已准备好立即在平台上部署 铁路 :
复制 # שלב 1: שכפל את הרפוזיטורי לחשבון GitHub שלך
# שלב 2: היכנס ל-Railway והתחבר עם חשבון GitHub
# https://railway.app/
# שלב 3: לחץ על "New Project" ובחר "Deploy from GitHub repo"
# שלב 4: בחר את הרפוזיטורי המשוכפל
# שלב 5: הגדר את משתני הסביבה הבאים:
# - WORDPRESS_SITE_URL
# - WOOCOMMERCE_CONSUMER_KEY
# - WOOCOMMERCE_CONSUMER_SECRET
# - WORDPRESS_USERNAME (אופציונלי)
# - WORDPRESS_PASSWORD (אופציונלי)
# - MCP_HOST=0.0.0.0
# - MCP_PORT=8000
# שלב 6: המתן לסיום הבנייה והפריסה
铁路的优势:
🔄 自动从GitHub发布
🔒 自动 SSL
📊 内置监控和逻辑
🔍 内置免费域名(railway.app子域名)
⚡ 根据需要自动缩放
⚙️ 配置
必须创建文件 .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
环境变量
变化
描述
需要
WORDPRESS_SITE_URL
您的网站地址(WooCommerce是WordPress插件)
✅
WOOCOMMERCE_CONSUMER_KEY 使用 WooCommerce REST API✅
WOOCOMMERCE_CONSUMER_SECRET WooCommerce REST API功能✅
WORDPRESS_USERNAME
具有相应权限的WordPress用户名
⚠️ *
WORDPRESS_PASSWORD WordPress密码验证⚠️ *
* 只需要WordPress API方法
🔐 验证选项
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 更新Post的元数据
create_post_meta 创建Post的元数据
delete_post_meta 删除Post的元数据
WooCommerce 产品
方法
描述
get_products 获取产品列表。
get_product 按标识符获取单个产品。
create_product 创建一个新产品。
update_product 更新已有产品
delete_product 删除产品。
get_product_meta 获取产品元数据。
create_product_meta 创建/更新产品元数据
update_product_meta 更新产品元数据
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 删除产品变体。
batch_update_product_variations 更新一组产品变体。
订单评论
方法
描述
get_order_notes 订购评论。
get_order_note 收到单个订单。
create_order_note 创建一个新的订单。
delete_order_note 删除订单注释。
退回订单
方法
描述
get_order_refunds 收回订单。
get_order_refund 单个订单退款。
create_order_refund 创建一个新的订单。
update_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_zone_shipping_methods
获取区域交付方式
get_zone_shipping_method
获取特定区域的送货方式
create_zone_shipping_method 创建一个新的交付方式。
update_zone_shipping_method 更新送货方式。
delete_zone_shipping_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 取消课税。
batch_update_tax_rates 更新税率。
折扣/优惠券
方法
描述
get_coupons 获取优惠券。
get_coupon 获得单一优惠券。
create_coupon 创建一个新的优惠券。
update_coupon 更新优惠券。
delete_coupon 删除优惠券。
batch_update_coupons 更新一组优惠券。
支付网关
方法
描述
get_payment_gateways 收到付款门户。
get_payment_gateway 单一支付门户。
update_payment_gateway 更新付款门户
报告
方法
描述
get_sales_report 收到销售报告。
get_products_report 收到产品报告。
get_customers_report 接收客户报告。
get_stock_report 收到库存报告。
设置
方法
描述
get_settings 获取所有设置。
get_setting_option 具体设置选项。
update_setting_option 更新设置选项。
batch_update_settings 更新组设置。
系统状态
方法
描述
get_system_status 获取系统状态。
get_system_status_tools 获取系统状态工具。
execute_system_status_tool 启动系统状态工具。
数据
方法
描述
get_countries 获取国家数据。
get_country_states
接受州/国家的国家
get_currencies 获取货币数据。
get_currency 获取特定货币的详细信息。
get_current_currency 现在的货币。
💻 使用范例
启动 MCP 服务器
复制 import os
from dotenv import load_dotenv
from woocommerce_mcp import initialize
# טעינת משתני סביבה מקובץ .env
load_dotenv()
# אתחול שרת MCP
mcp = initialize()
# הפעלת השרת
async def main():
mcp.run()
if __name__ == "__main__":
import asyncio
asyncio.run(main())
产品采购示例
复制 import asyncio
from woocommerce_mcp.products import get_products
async def list_products():
# קבלת המוצרים האחרונים
products = await get_products({
"per_page": 20,
"page": 1,
"status": "publish"
})
for product in products:
print(f"מוצר: {product['name']}, מחיר: {product['price']}")
# הפעלת הפונקציה
asyncio.run(list_products())
创建产品示例
复制 import asyncio
from woocommerce_mcp.products import create_product
async def add_new_product():
product_data = {
"name": "חולצת פרימיום",
"type": "simple",
"regular_price": "99.99",
"description": "חולצת כותנה נוחה, זמינה במגוון מידות וצבעים.",
"short_description": "חולצת פרימיום באיכות גבוהה.",
"categories": [
{
"id": 19
}
],
"images": [
{
"src": "http://example.com/wp-content/uploads/2022/06/t-shirt.jpg"
}
]
}
result = await create_product(product_data)
print(f"נוצר מוצר חדש עם מזהה: {result['id']}")
# הפעלת הפונקציה
asyncio.run(add_new_product())
📋 函数参数
除了以下可选参数之外,所有函数都接收其特定的 API 操作参数:
site_url(如果在环境变量中设置,则可选) WordPress网站地址
consumer_key(如果在环境变量中设置,则可选) WooCommerce消费者密钥
consumer_secret(如果在环境变量中设置,则可选) WooCommerce消费者秘密
对于WordPress方法: username 还有…password (如果在环境变量中设置,则可选)
🔒 安全说明
要访问WooCommerce REST API,您需要创建API密钥。它们可以在WordPress控制面板下创建 WooCommerce → 设置 → 高级 → REST API.
📦 系统要求
Python 3.9 及以上
WordPress网站安装WooCommerce插件
WooCommerce 的 REST API
Python 套件: mcp-server, httpx, python-dotenv
📄 许可证
MIT License - 查看 LICENSE 文件以了解更多详情
🛒 WooCommerce MCP服务器| Python版
使用模型上下文协议连接WooCommerce商店的简单有效的解决方案
🇮🇱 希伯来语版本 | 🇺🇸 英文版
📌 这是怎么一回事?
用于WooCommerce集成的模型上下文协议(MCP)服务器,与WordPress REST API兼容。该库提供了全面的工具,用于管理产品、订单、客户、运输、税务、折扣和商店配置的各个方面。
🚀 快速安装
复制 # Step 1: Clone the repository
git clone https://github.com/yourusername/woocommerce-mcp-server.git
cd woocommerce-mcp-server
# Step 2: Install dependencies
pip install -r requirements.txt
# Step 3: Configure environment variables (see below)
☁️ 铁路部署
服务器已准备好立即部署到 铁路 平台:
复制 # Step 1: Clone the repository to your GitHub account
# Step 2: Log in to Railway and connect with your GitHub account
# https://railway.app/
# Step 3: Click on "New Project" and select "Deploy from GitHub repo"
# Step 4: Select the cloned repository
# Step 5: Configure the following environment variables:
# - WORDPRESS_SITE_URL
# - WOOCOMMERCE_CONSUMER_KEY
# - WOOCOMMERCE_CONSUMER_SECRET
# - WORDPRESS_USERNAME (optional)
# - WORDPRESS_PASSWORD (optional)
# - MCP_HOST=0.0.0.0
# - MCP_PORT=8000
# Step 6: Wait for the build and deployment to complete
铁路部署的好处:
🔄 从GitHub自动部署
🔒 自动SSL
📊 内置监控和日志记录
🔍 railway.app上的免费子域
⚡ 根据需求自动缩放
⚙️ 配置
创建一个 .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
环境变量
变量
描述
必填
WORDPRESS_SITE_URL
您的WordPress网站URL(WooCommerce是一个WordPress插件)
✅
WOOCOMMERCE_CONSUMER_KEY
WooCommerce REST API消费者密钥
✅
WOOCOMMERCE_CONSUMER_SECRET
WooCommerce REST API消费者秘密
✅
WORDPRESS_USERNAME
具有适当权限的WordPress用户名
⚠️ *
WORDPRESS_PASSWORD
用于身份验证的WordPress密码
⚠️ *
*仅适用于WordPress API方法
🔐 身份验证选项
WooCommerce身份验证
WooCommerce API访问需要消费者密钥,您可以在WooCommCommerce下的WordPress仪表板中生成这些密钥→ 设置→ 高级→ 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
更新产品元数据(创建别名)
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
删除产品变体
batch_update_product_variations
批量更新产品变体
产品评论
方法
说明
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
更新订单元数据(创建别名)
delete_order_meta
删除订单元数据
订单备注
方法
说明
get_order_notes
检索订单备注
get_order_note
获取一张订单单
create_order_note
创建新订单说明
delete_order_note
删除订单说明
订单退款
方法
说明
get_order_refunds
检索订单退款
get_order_refund
获得单笔订单退款
create_order_refund
创建新订单退款
update_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_zone_shipping_methods
获取某个区域的配送方式
get_zone_shipping_method
获取特定区域的运输方式
create_zone_shipping_method
为区域创建新的运输方式
update_zone_shipping_method
更新区域的配送方式
delete_zone_shipping_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
删除税率
batch_update_tax_rates
批量更新税率
折扣/优惠券
方法
说明
get_coupons
取回优惠券
get_coupon
获得一张优惠券
create_coupon
创建新优惠券
update_coupon
更新优惠券
delete_coupon
删除优惠券
batch_update_coupons
批量更新优惠券
支付网关
方法
说明
get_payment_gateways
检索支付网关
get_payment_gateway
获取单一支付网关
update_payment_gateway
更新支付网关
报告
方法
说明
get_sales_report
检索销售报告
get_products_report
检索产品报告
get_customers_report
检索客户报告
get_stock_report
检索库存报告
设置
方法
说明
get_settings
检索所有设置
get_setting_option
检索特定设置选项
update_setting_option
更新设置选项
batch_update_settings
批量更新设置
系统状态
方法
说明
get_system_status
检索系统状态
get_system_status_tools
检索系统状态工具
execute_system_status_tool
运行系统状态工具
数据
方法
说明
get_countries
检索国家数据
get_country_states
检索一个国家的州/省
get_currencies
检索货币数据
get_currency
获取特定货币的详细信息
get_current_currency
获取当前货币
💻 使用示例
初始化MCP服务器
复制 import os
from dotenv import load_dotenv
from woocommerce_mcp import initialize
# Load environment variables from .env
load_dotenv()
# Initialize the MCP server
mcp = initialize()
# Run the server
async def main():
mcp.run()
if __name__ == "__main__":
import asyncio
asyncio.run(main())
获取产品示例
复制 import asyncio
from woocommerce_mcp.products import get_products
async def list_products():
# Get latest products
products = await get_products({
"per_page": 20,
"page": 1,
"status": "publish"
})
for product in products:
print(f"Product: {product['name']}, Price: {product['price']}")
# Run the function
asyncio.run(list_products())
创建产品的示例
复制 import asyncio
from woocommerce_mcp.products import create_product
async def add_new_product():
product_data = {
"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"
}
]
}
result = await create_product(product_data)
print(f"Created new product with ID: {result['id']}")
# Run the function
asyncio.run(add_new_product())
📋 功能参数
所有函数都接受API操作的特定参数,以及以下可选参数:
site_url:(如果在env中设置,则可选)WordPress站点URL
consumer_key:(如果在env中设置,则可选)WooCommerce消费者密钥
consumer_secret:(如果在env中设置,则可选)WooCommerce消费者机密
对于WordPress方法: username 和 password (如果在env中设置,则可选)
🔒 安全说明
对于WooCommerce REST API访问,您需要生成API密钥。您可以在WooCommerce下的WordPress仪表板中创建它们→ 设置→ 高级→ REST API。
📦 系统要求
Python 3.9或更高版本
安装了WooCommerce插件的WordPress网站
WooCommerce REST API密钥
Python包: mcp-server, httpx, python-dotenv
📄 许可证
MIT许可证-有关详细信息,请参阅许可证文件