项目简介
Magento 2 Context Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在连接 Magento 2 电商平台的 REST API,为 Claude 和其他兼容 MCP 协议的客户端提供上下文数据访问能力。通过此服务器,用户可以使用自然语言与 Claude 等 LLM 对接,查询 Magento 2 商店中的商品信息、客户订单、销售数据等,从而实现更智能的电商数据分析和应用。
主要功能点
- 商品数据查询: 支持通过商品 SKU 或 ID 查询商品详细信息,进行关键词搜索,获取商品分类、关联商品、库存信息和属性等。
- 客户数据查询: 允许通过客户邮箱地址查询客户的订单商品信息。
- 订单与销售数据分析: 提供订单数量、销售额统计,并支持按日期范围、国家/地区进行筛选,以及获取商品销售统计数据。
- 灵活的日期范围: 支持如 "今天"、"昨天"、"上周"、"本月"、"年初至今" 等相对日期表达式,以及自定义日期范围查询。
- 国家/地区筛选: 销售数据查询支持通过国家代码或国家名称进行筛选。
安装步骤
-
克隆仓库:
git clone https://github.com/boldcommerce/magento2-mcp.git cd magento2-mcp -
安装依赖: 确保已安装 Node.js (v14 或更高版本),然后运行以下命令安装项目依赖:
npm install
服务器配置
要将此 MCP 服务器与 MCP 客户端(例如 Claude Desktop)连接,您需要配置客户端以启动和连接到此服务器。以下是 Claude Desktop 客户端的配置示例,您需要在 Claude Desktop 的开发者设置中 "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" } }
配置参数说明:
- server name (magento2): 服务器名称,您可以自定义,用于在客户端中标识此服务器连接。
- command (/path/to/your/node): Node.js 的可执行文件路径。您可以使用 'which node' 命令在终端中查找您的 Node.js 路径,并替换 '/path/to/your/node'。
- args (["/path/to/mcp-server.js"]): 启动 MCP 服务器的参数,这里指定了 'mcp-server.js' 脚本的路径。请将 '/path/to/mcp-server.js' 替换为您克隆仓库后 'mcp-server.js' 文件的实际路径。
- env (环境变量): 用于配置 Magento 2 API 连接所需的环境变量。
- MAGENTO_BASE_URL (https://YOUR_DOMAIN/rest/V1): 您的 Magento 2 商店的 REST API 基础 URL。请将 'https://YOUR_DOMAIN/rest/V1' 替换为您的 Magento 2 商店域名和 API 路径。
- MAGENTO_API_TOKEN (your-api-token): 用于访问 Magento 2 REST API 的 API Token。您可以在 Magento 后台 "System > Integrations" 中创建 Integration 并获取 API Token,然后将 'your-api-token' 替换为您的 API Token。
配置完成后,重启 MCP 客户端(如 Claude Desktop)即可连接到 Magento 2 Context Server。
基本使用方法
成功连接后,您可以使用 MCP 客户端的界面或命令,通过自然语言查询 Magento 2 商店的数据。以下是一些示例查询,您可以根据需要进行修改:
商品查询示例:
- "你们有哪些衬衫产品?"
- "告诉我 SKU 为 SKU-xxx 的商品信息"
- "SKU-xxx 商品属于哪些分类?"
- "SKU-SKU-xxx 有哪些相关商品?"
- "SKU-xxx 商品的库存状态如何?"
- "展示所有商品,按价格排序"
- "将 SKU-xxx 商品的价格更新为 $49.99"
- "将 ABC-123 商品的描述更改为防水的"
- "将 XYZ-456 商品的状态设置为启用"
客户查询示例:
- "邮箱为 [email protected] 的客户订购了哪些商品?"
- "展示邮箱为 [email protected] 的客户的订单历史和商品"
订单与销售查询示例:
- "我们今天有多少订单?"
- "上周的订单数量是多少?"
- "昨天我们产生了多少收入?"
- "上个月的总收入是多少?"
- "今年迄今为止,我们在荷兰的收入是多少?"
- "上周在德国的收入是多少?"
- "比较本月美国和加拿大的收入"
- "本月已完成订单的平均订单价值是多少?"
- "上个月我们卖出了多少商品?"
- "今年最畅销的商品是什么?"
- "平均每个订单包含多少商品?"
- "上季度我们在德国售出了多少件 XYZ-123 商品?"
- "本月在美国,哪些商品产生的收入最多?"
请注意,您需要将示例中的 SKU、邮箱等信息替换为您 Magento 2 商店中的实际数据。
信息
分类
商业系统