店铺经理MCP服务器
MCP(模型上下文协议)服务器,用于管理包含美发产品、香水和护肤品的商店数据库。该服务器允许AI助手与您的产品数据库交互,获取销售数据并管理库存。
特性
- 产品管理:添加、更新和删除产品
- 产品查询:按名称、类型或类别筛选和搜索产品
- 销售分析:获取每周销售报告和收入计算
- 成本分析:按产品类型计算平均成本
- SQLite数据库:轻量级、基于文件的数据库存储
数据库模式
产品存储在以下字段中:
id:唯一标识符(自动递增)name:产品名称(例如“洗发水Pro”)type:产品类型-以下之一:hair,perfume,skincategory:特定类别(例如。,shampoo,gucci,body_lotion)cost:产品成本(美元)sales_per_day:平均每天销售额created_at:添加产品的时间戳updated_at:上次更新产品的时间戳
可用工具
1. get_products
使用可选过滤器从数据库中获取产品。
参数:
name(可选):按产品名称筛选(部分匹配)type(可选):按类型筛选(hair,perfume,skin)category(可选):按特定类别筛选
例子:
{
"name": "get_products",
"arguments": {
"type": "hair"
}
}2. get_weekly_sales
通过收入计算获取每周销售数据。
参数:
type(可选):按产品类型筛选product_id(可选):获取特定产品的销售额
退货: 每周销售计数、每周收入和产品详细信息
3. get_avg_cost_by_type
获取按产品类型分组的平均成本统计数据。
参数: 无
退货: 每种类型的平均、最低、最高成本和每日总销售额
4. add_product
将新产品添加到数据库中。
参数(均为必填项):
name:产品名称type:hair,perfume,或skincategory:产品类别cost:成本(美元)sales_per_day:平均每天销售额
例子:
{
"name": "add_product",
"arguments": {
"name": "Premium Shampoo",
"type": "hair",
"category": "shampoo",
"cost": 19.99,
"sales_per_day": 25
}
}5. update_product
更新现有产品。仅提供要更新的字段。
参数:
id(必填):产品IDname,type,category,cost,sales_per_day(可选):要更新的字段
例子:
{
"name": "update_product",
"arguments": {
"id": 1,
"cost": 15.99,
"sales_per_day": 20
}
}6. delete_product
从数据库中删除产品。
参数:
id(必填):要删除的产品ID
例子:
{
"name": "delete_product",
"arguments": {
"id": 1
}
}安装
- 安装依赖项:
npm install- 服务器启动时,数据库将自动初始化。
运行服务器
npm start服务器在stdio上运行,并通过MCP协议进行通信。它将自动:
- 如果数据库不存在,则创建它
- 初始化架构
- 如果数据库为空,则添加示例产品
连接到克劳德桌面
要将此MCP服务器与Claude Desktop一起使用,请将以下内容添加到您的Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 窗户: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"shop-manager": {
"command": "node",
"args": [
"/absolute/path/to/mcp-shop/src/server.js"
],
"cwd": "/absolute/path/to/mcp-shop"
}
}
}替换 /absolute/path/to/mcp-shop 带有项目目录的实际路径。
样品数据
首次初始化时,服务器会自动添加示例产品:
- 护发产品:洗发水Pro、护发素Plus
- 香水:古琦布鲁姆、维多利亚的秘密天使
- 护肤品:身体乳、每日保湿霜
示例用例
- “向我展示所有护发产品”
- 用途 get_products 随着 type: "hair"
- “香水的每周销售量是多少?”
- 用途 get_weekly_sales 随着 type: "perfume"
- “每种产品的平均成本是多少?”
- 用途 get_avg_cost_by_type
- “添加一种名为‘豪华洗发水’的新洗发水,售价25美元,每天销售30瓶”
- 用途 add_product 包含所有必填字段
- “将产品ID 1的成本更新为18.99美元”
- 用途 update_product 随着 id 和 cost
- “删除产品ID 3”
- 用途 delete_product 随着 id
数据库位置
SQLite数据库存储在: mcp-shop/shop.db
您可以使用任何SQLite工具备份或检查数据库:
sqlite3 shop.db "SELECT * FROM products;"