🏪 ORO商务MCP服务器
 ](https://nodejs.org/) 
A. 动态模型上下文协议(MCP)服务器 提供与ORO Commerce的无缝集成。从您的ORO Commerce API架构自动生成工具,使您能够通过Claude等人工智能助手即时访问所有可用的端点。
✨ 特性
🚀 动态API集成
- 自动发现所有API终结点 根据您的ORO Commerce Swagger模式
- 全面覆盖API -每个端点都成为可用的MCP工具
- 自我更新 -新的API端点将自动可用
- 零硬编码API调用 -运行时生成的所有内容
🔧 智能刀具生成
- 智能端点选择 -首先关注最有用的API
- 自动参数验证 使用OpenAPI模式
- 全面的错误处理 以及响应格式
- 基于类别的组织 (账户、客户、产品等)
🏪 完整的ORO商业保险
- 账户与客户管理 -完整的B2B客户生命周期
- 产品目录和套件 -产品、类别、套件配置、自定义字段
- 订单处理 -订单、带有套件详细信息的行项目、状态跟踪
- 活动管理 -电话、电子邮件、笔记、任务
- 扩展实体 -自定义字段和实体扩展
- 关系和复杂操作 -所有API端点,包括高级功能
🔐 企业就绪
- OAuth2身份验证 具有自动令牌管理功能
- 默认情况下为只读 -对生产环境安全
- 可配置的端点过滤 -控制公开哪些API
- 综合录井 和调试支持
🚀 快速开始
1.安装
npm install -g oro-commerce-mcp-server或者在本地运行:
git clone https://github.com/clicktrend/oro-commerce-mcp-server.git
cd oro-commerce-mcp-server
npm install
npm run build2.配置ORO商务
在ORO Commerce后端创建OAuth应用程序:
- 首选 系统→ 集成→ OAuth应用程序
- 使用创建新应用程序 客户端凭据 授权类型
- 注意 客户端ID 和 客户端密钥
- 为要查询的实体授予API访问权限
3.更新API架构
生成并复制当前API架构:
在您的ORO Commerce服务器上:
# In your ORO Commerce application directory
console api:swagger:dump > oro_commerce_swagger_dump.json复制到您的MCP项目目录:
# Copy the file to where you'll run the MCP server
# Example: scp from remote server
scp user@oro-server:/path/to/oro_commerce_swagger_dump.json ./oro_commerce_swagger_dump.json
# Or: Copy from local ORO Commerce installation
cp /path/to/oro-commerce/oro_commerce_swagger_dump.json ./oro_commerce_swagger_dump.json注: 这 oro_commerce_swagger_dump.json 文件必须位于启动MCP服务器的同一目录中。
4.启动服务器
# Set environment variables
export ORO_SHOP_URL="https://your-oro-commerce.com"
export ORO_CLIENT_ID="your_client_id"
export ORO_CLIENT_SECRET="your_client_secret"
# For local/development with self-signed certificates:
export NODE_ENV=development
# OR use this for production with self-signed certs:
export DISABLE_SSL_VERIFY=true
# Start server
npm start5.MCP检验员测试(开发)
对于开发和测试,您可以使用MCP检查器:
# Install and run MCP Inspector in the project directory
npx @modelcontextprotocol/inspector
# In the browser interface:
# - Command: "node"
# - Arguments: "dist/index.js"
# - Click "Connect"这允许您在部署到Claude Desktop/Code之前以交互方式测试所有工具。
SSL证书处理:
- 开发/本地: 集
NODE_ENV=development自动忽略SSL证书错误 - 具有自签名证书的生产: 集
DISABLE_SSL_VERIFY=true禁用SSL验证 - 持有有效证书的生产: 无需额外配置
5.与克劳德桌面或克劳德代码一起使用
Claude桌面配置:
添加到您的Claude Desktop配置中:
{
\"mcpServers\": {
\"oro-commerce\": {
\"command\": \"oro-commerce-mcp-server\",
\"env\": {
\"ORO_SHOP_URL\": \"https://your-oro-commerce.com\",
\"ORO_CLIENT_ID\": \"your_client_id\",
\"ORO_CLIENT_SECRET\": \"your_client_secret\",
\"NODE_ENV\": \"development\"
}
}
}
}Claude代码配置:
对于Claude Code项目,复制示例配置:
# Copy example configuration
cp .mcp.json.example .mcp.json
# Edit with your credentials
nano .mcp.json或创建 .mcp.json 在项目根目录中手动:
{
\"mcpServers\": {
\"oro-commerce\": {
\"command\": \"oro-commerce-mcp-server\",
\"env\": {
\"ORO_SHOP_URL\": \"https://your-oro-commerce.com\",
\"ORO_CLIENT_ID\": \"your_client_id\",
\"ORO_CLIENT_SECRET\": \"your_client_secret\",
\"NODE_ENV\": \"development\"
},
\"description\": \"Dynamic ORO Commerce API integration\"
}
}
}注: 这 .mcp.json 文件在重新启动时由Claude Code自动加载,并添加到 .gitignore 以防止凭证暴露。
🛠️ 可用工具
服务器提供 30+动态生成的工具:
核心工具(4)
configure_oro_connection-设置API连接test_connections-验证API连接list_dynamic_tools-浏览所有可用工具get_dynamic_tool_info-获取详细的工具文档
动态工具(26+)
从您的ORO Commerce API自动生成:
账户管理(15个工具)
accounts_get-列出所有帐户accounts_id_get-获取特定帐户详细信息accounts_id_contacts_get-获取帐户联系人accounts_id_b2bcustomers_get-获取B2B客户- 以及更多与帐户相关的端点。..
B2B客户管理(11+工具)
b2bcustomers_get-列出B2B客户b2bcustomers_id_get-获取客户详细信息b2bcustomers_id_orders_get-获取客户订单- 以及更多与客户相关的端点。..
其他类别
- 产品与目录管理
- 订单处理和跟踪
- 库存和定价
- 活动管理(电话、电子邮件、任务)
- 自定义实体扩展
📖 使用示例
基础数据查询
// List all accounts
{
\"name\": \"accounts_get\",
\"arguments\": {}
}
// Get specific customer details
{
\"name\": \"b2bcustomers_id_get\",
\"arguments\": { \"id\": \"123\" }
}
// Search tools by category
{
\"name\": \"list_dynamic_tools\",
\"arguments\": { \"category\": \"accounts\" }
}高级集成
// Get comprehensive account data
{
\"name\": \"accounts_id_get\",
\"arguments\": {
\"id\": \"1\",
\"include\": \"contacts,addresses,activities\"
}
}
// Filter B2B customers by criteria
{
\"name\": \"b2bcustomers_get\",
\"arguments\": {
\"filter[name]\": \"Acme Corp\",
\"page[limit]\": 10
}
}⚙️ 配置
环境变量
# Required
ORO_SHOP_URL=https://your-oro-commerce.com
ORO_CLIENT_ID=your_oauth_client_id
ORO_CLIENT_SECRET=your_oauth_client_secret
# Optional
DEBUG=mcp:*
NODE_ENV=development
DISABLE_SSL_VERIFY=true保持架构最新
重要提示: 定期更新您的API架构,以确保所有工具反映您当前的ORO商务设置:
# Update schema after:
# - Installing new ORO Commerce bundles
# - Adding custom entities/fields
# - Upgrading ORO Commerce versions
# - Modifying API configurations
# On ORO Commerce server:
console api:swagger:dump > oro_commerce_swagger_dump.json
# Copy to MCP project directory and restart server:
cp oro_commerce_swagger_dump.json /path/to/mcp-project/
# Restart MCP server to reload tools🏗️ 建筑
动态工具生成
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ ORO Commerce │───▶│ Swagger Schema │───▶│ MCP Tools │
│ API Endpoints │ │ oro_commerce_ │ │ (Generated │
│ (3500+ total) │ │ swagger_dump.json│ │ Automatically) │
└─────────────────┘ └──────────────────┘ └─────────────────┘智能端点选择
服务器智能地选择最有用的端点:
- 热门实体 (账户、客户、订单、产品)
- 只读操作 (安全生产)
- 记录良好的端点 参数明确
- 按类别筛选 避免用户不堪重负
🔧 发展
项目结构
src/
├── index.ts # Main MCP server
├── oro-client.ts # ORO Commerce OAuth2 client
├── swagger-parser.ts # Dynamic schema parser
├── dynamic-client.ts # API execution engine
└── types.ts # TypeScript definitions从源头构建
git clone https://github.com/clicktrend/oro-commerce-mcp-server.git
cd oro-commerce-mcp-server
npm install
npm run build
npm start扩展服务器
// Add more endpoint categories in swagger-parser.ts
getEndpointsByTags([
'products', 'orders', 'categories',
'inventory', 'prices', 'promotions'
])🚀 用例
电子商务管理
- 客户关系管理 -访问完整的客户资料
- 订单处理 -跟踪订单、行项目和履行情况
- 产品目录管理 -查询产品、属性、类别
- 库存监控 -检查库存水平和可用性
商业智能
- 业务销售分析 -分析订单模式和客户行为
- 客户洞察 -了解客户生命周期和偏好
- 产品性能 -跟踪畅销书和库存周转率
- 账户管理 -监控B2B客户关系
集成与自动化
- 数据同步 -确保外部系统与ORO Commerce保持同步
- 报告生成 -从ORO Commerce数据创建自定义报告
- 工作流程自动化 -根据ORO Commerce事件触发行动
- 人工智能驱动的洞察力 -使用AI助手分析业务数据
🤝 贡献
我们欢迎捐款!请看 贡献.md 作为指导方针。
快速贡献指南
- 分叉 存储库
- 创建 特征分支:
git checkout -b feature/amazing-feature - 提交 变化:
git commit -m 'Add amazing feature' - 推 分支机构:
git push origin feature/amazing-feature - 打开 拉取请求
📋 需求
- Node.js 18+ -运行时环境
- TypeScript 5.3+ -发展依赖性
- ORO商务实例 -启用API访问
- OAuth2凭据 -ORO Commerce的客户ID和机密
🐛 故障排除
常见问题
身份验证失败:
# Test OAuth2 credentials manually
curl -X POST https://your-oro-commerce.com/oauth2-token \\
-d \"grant_type=client_credentials&client_id=YOUR_ID&client_secret=YOUR_SECRET\"缺少工具:
# Update your API schema
console api:swagger:dump > oro_commerce_swagger_dump.json
# Restart the server
npm restart连接问题:
# Enable debug logging
DEBUG=mcp:* npm start获取帮助
- 问题:
- 讨论:
- 文档: 维基
📄 许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
🙏 致谢
- ORO商业 -提供全面的API文件
- 模型上下文协议 -用于启用AI助手集成
- 人物克劳德 -用于激发API智能交互
______________________________________________________________________
由以下材料制成❤️ 靠近 点击趋势\ 内置于 克劳德·艾 协助
*将您的ORO Commerce数据转化为AI可访问的见解*
