使用说明
电子商务MCP服务器
一种模型上下文协议(MCP)服务器,使AI聊天界面能够与电子商务MySQL数据库进行交互。
特性
产品工具
- 搜索产品 -带过滤器的全文搜索(类别、价格、评级、畅销书)
- get_product_details -获取特定产品的详细信息
- 按类别浏览产品 -浏览具有排序选项的产品
- 列表_类别 -列出所有有产品数量的类别
- get_best_seller -获得最畅销的产品
推荐工具
- get_product_recommendations -基于产品的类似产品推荐
- get_personalized_表彰 -基于客户历史的个性化建议
- get_deas_and_discours -查找有折扣的产品
客户工具
- get_customer_by_email -通过电子邮件查找客户
- 创建_客户 -创建新客户帐户
- get_customer_order_history -查看客户的订单历史记录
订购工具
- 创建订单 -下新订单
- 获取订单详情 -获取订单信息
- update_order_status -更新订单状态
- 取消订单 -取消待处理订单
分析工具
- get_sales_summary -一段时间内的销售指标
- 获取_渲染_产品 -近期热门产品
设置
1.安装依赖项
pip install -r requirements.txt
2.配置数据库
设置数据库连接的环境变量:
export DB_HOST=localhost
export DB_PORT=3306
export DB_USER=root
export DB_PASSWORD=your_password
export DB_NAME=my_store
3.初始化数据库
运行架构SQL以创建数据库:
mysql -u root -p < doc/schema.sql
4.配置MCP客户端
添加到您的Claude Code MCP设置中(~/.claude/claude_code_config.json):
{
"mcpServers": {
"ecommerce": {
"command": "python",
"args": ["/path/to/ecommerce_mcp_server.py"],
"env": {
"DB_HOST": "localhost",
"DB_PORT": "3306",
"DB_USER": "root",
"DB_PASSWORD": "your_password",
"DB_NAME": "my_store"
}
}
}
}
或者选择Claude Desktop(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):
{
"mcpServers": {
"ecommerce": {
"command": "python",
"args": ["/path/to/ecommerce_mcp_server.py"],
"env": {
"DB_HOST": "localhost",
"DB_PORT": "3306",
"DB_USER": "root",
"DB_PASSWORD": "your_password",
"DB_NAME": "my_store"
}
}
}
}
用法示例
配置后,您可以通过自然语言与商店交互:
搜索产品:
“给我找100美元以下至少4星级的无线耳机”
获取建议:
“根据产品ID 42,您会推荐哪些产品?”
创建订单:
“为客户5创建订单,购买2个产品123”
检查订单状态:
“789号订单的状态如何?”
查看分析:
“显示过去30天的销售摘要”
工具参考
搜索产品
Arguments:
query: str - Search terms
category: str? - Category filter
min_price: float? - Minimum price
max_price: float? - Maximum price
min_stars: float? - Minimum rating
best_seller_only: bool - Only best sellers (default: false)
limit: int - Max results (default: 10, max: 50)
创建订单
Arguments:
customer_id: int - Customer ID
product_id: int - Product ID
quantity: int - Quantity (default: 1)
shipping_address: str? - Address (uses customer address if not provided)
payment_method: str - Payment method (default: credit_card)
update_order_status
Arguments:
order_id: int - Order ID
new_status: str - One of: pending, processing, shipped, delivered, cancelled