SAP商务MCP服务器
此模型上下文协议(MCP)服务器与SAP Commerce Cloud的OCC API集成,通过Claude实现与产品数据的自然语言交互。
特性
- 产品搜索:使用自然语言查询搜索产品
- 高级搜索:按类别、价格范围等筛选产品
- 产品详情:获取特定产品的详细信息
- 库存可供率:检查产品库存水平和可用性
- 分类:按类别浏览和搜索产品
- 促销:获取有关活动促销的信息
- 评论:访问产品评论和评级
- 产品建议:获取个性化的产品推荐
- 购物车管理:全面的购物车操作支持
- 健康监测:实时服务健康跟踪
- 性能分析:历史绩效分析和见解
可用工具
search-products:支持分页的基本产品搜索
- 参数: - query:搜索查询字符串 - currentPage:(可选)页码 - pageSize:(可选)每页结果
search-products-advanced:使用过滤器进行高级产品搜索
- 参数: - query:(可选)搜索查询字符串 - categoryCode:(可选)类别代码过滤器 - minPrice:(可选)最低价格过滤器 - maxPrice:(可选)最高价格过滤器 - sort:(可选)排序顺序 - currentPage:(可选)页码 - pageSize:(可选)每页结果
get-product-details:获取详细的产品信息
- 参数: - productCode:产品代码/SKU
check-product-availability:检查产品库存水平
- 参数: - productCode:产品代码/SKU - location:(可选)仓库/商店位置代码
get-categories:浏览产品类别
- 参数: - categoryId:(可选)特定类别ID
get-products-by-category:获取某个类别中的产品
- 参数: - categoryId:类别ID - currentPage:(可选)页码 - pageSize:(可选)每页结果 - sort:(可选)排序顺序
get-promotions:获取促销信息
- 参数: - promotionId:(可选)特定促销ID
get-product-reviews:获取产品评论
- 参数: - productCode:产品代码/SKU
get-product-suggestions:获取产品推荐
- 参数: - productCode:参考产品代码/SKU - maxResults:(可选)建议的最大数量
create-cart:创建新的购物车
- 参数:无
get-cart:获取购物车详细信息
- 参数: - cartId:要检索的购物车ID
add-to-cart:将产品添加到购物车
- 参数: - cartId:购物车ID - productCode:产品代码/SKU - quantity:(可选)要添加的数量(默认值:1)
update-cart-entry:更新购物车中的产品数量
- 参数: - cartId:购物车ID - entryNumber:购物车中的条目编号 - quantity:新数量
remove-from-cart:从购物车中删除产品
- 参数: - cartId:购物车ID - entryNumber:要删除的条目编号
get-order-status:检查订单状态
- 参数: - orderId:订单ID
get-order-history:查看订单历史记录
- 参数: - userId:用户ID
check-service-health:获取当前服务运行状况
- 参数:无
analyze-performance:获取历史绩效见解
- 参数:无
配置
可以使用环境变量配置服务器:
# SAP Commerce Cloud Configuration
SAP_COMMERCE_URL=https://your-commerce-url/occ/v2
SAP_COMMERCE_SITE=your-site-name
SAP_COMMERCE_TIMEOUT=10000
SAP_COMMERCE_VALIDATE_SSL=false
# OAuth2 Authentication (optional)
SAP_COMMERCE_CLIENT_ID=your-client-id
SAP_COMMERCE_CLIENT_SECRET=your-client-secret
# Logging Configuration
LOG_LEVEL=info # debug, info, warn, or error设置
- 安装依赖项:
npm install- 构建项目:
npm run build- 启动服务器:
npm startClaude集成示例查询
- “搜索与‘hacendado’相关的所有产品”
- “查找500美元以下的电子产品”
- “获取代码为'ABC123'的产品的详细信息”
- “检查产品'XYZ789'的库存情况”
- “显示‘电子产品’类别中的所有产品”
- “目前有哪些促销活动?”
- “显示产品'ABC123'的评论”
- “推荐类似于‘ABC123’的产品”
- “创建新购物车”
- “将2件商品'ABC123'添加到我的购物车”
- “将购物车中商品1的数量更新为3”
- “从购物车中删除商品2”
- “显示我的购物车详细信息”
- “订单'ORD123456'的状态如何?”
- “显示我的订单历史记录”
- “检查服务的当前运行状况”
- “分析过去12小时的绩效”
- “向我展示性能见解”
- “获取今天的缓存命中率”
发展
该项目包括通过以下方式集成VS代码 .vscode/mcp.json 便于调试和开发。确保使用您的SAP Commerce实例详细信息更新配置。
以开发模式运行
对于开发,您可以使用:
npm run dev这将在监视模式下启动TypeScript,并在更改时重新编译。
性能监控
实时健康检查
该服务器包括实时健康监测,包括以下指标:
- API延迟
- 错误率
- 缓存命中率
- 服务状态(健康/降级/不健康)
历史分析
性能数据通过以下方式存储和分析:
- 24小时历史趋势
- P95延迟跟踪
- 错误率模式
- 缓存效率指标
- 自动化性能洞察
日志记录
日志存储在 logs 自动旋转目录:
- 错误日志:
logs/error-YYYY-MM-DD.log - 组合日志:
logs/combined-YYYY-MM-DD.log - 健康指标:
logs/health-YYYY-MM-DD.log
日志每天自动轮换,保存30天。
错误处理
该服务器包括针对常见SAP Commerce API问题的全面错误处理:
- 产品代码无效
- 网络连接问题
- 身份验证错误
- API速率限制
- 类别或促销ID无效
- 价格范围验证
- 排序参数验证
- 购物车操作失败
认证
服务器支持OAuth2客户端凭据流,用于向SAP Commerce发送经过身份验证的请求。在环境变量中配置客户端ID和secret,以启用经过身份验证的请求。
许可证管理
- 自动令牌刷新处理
- 令牌过期的缓冲时间(5分钟)
- 身份验证失败的巧妙回退
缓存
服务器通过以下方式实现智能缓存:
- 产品数据的5分钟TTL
- 自动缓存失效
- 缓存命中率监控
- 内存管理的删除策略
购物车会话管理
服务器为匿名用户维护购物车会话,具有以下功能:
- 自动创建购物车
- 持续跟踪购物车ID
- 购物车入口管理
- 购物车总计计算
- 产品可用性验证
安全说明
- 可以使用禁用SSL证书验证进行开发
SAP_COMMERCE_VALIDATE_SSL=false - 对于生产,确保配置了正确的SSL认证和身份验证
- 将敏感凭据(客户端ID/机密)存储在环境变量中,而不是代码中
- 建议对生产部署进行定期安全审计
- 购物车ID应被视为敏感信息
性能优化
服务器包括几个性能优化功能:
- 具有指数回退的自动请求重试
- 对频繁访问的数据进行响应缓存
- 请求批处理和限制
- 性能监控和警报
- 历史业绩分析
- 自动性能洞察和建议

