项目简介
本项目是一个MCP(Model Context Protocol)服务器,它充当LLM(大型语言模型)客户端与Salesforce Commerce Cloud (SFCC) API之间的桥梁。通过此服务器,LLM客户端可以安全、便捷地调用SFCC Data API,获取电商数据,并利用SFCC的功能。服务器根据预定义的 'endpoints.json' 配置文件动态注册工具,每个工具对应一个SFCC API endpoint,使得LLM可以通过标准化的MCP协议访问SFCC的电商能力。
主要功能点
- SFCC API 访问能力: 基于Salesforce Commerce Cloud (SFCC) Data API,提供电商数据访问能力。
- 动态工具注册: 根据 'endpoints.json' 配置文件,自动将SFCC API endpoints 转换为 MCP 工具,无需手动编码。
- OCAPI 认证: 使用客户端凭据流(Client Credentials Flow)进行SFCC OCAPI (Open Commerce API) 认证,保证API访问的安全性。
- 参数自动处理: 自动处理API endpoint 的路径参数和查询参数,简化工具调用。
- 工具名称自动生成: 根据API endpoint路径自动生成易于理解且唯一的工具名称。
- 基于标准MCP协议: 遵循 Model Context Protocol 标准,易于与各种MCP客户端集成。
- Stdio 传输协议: 支持标准输入输出 (Stdio) 传输协议,方便部署和集成。
安装步骤
- 安装 Node.js 和 npm: 确保你的系统已安装 Node.js 和 npm (Node Package Manager)。
- 下载仓库代码: 从 GitHub 仓库 https://github.com/ZaUtre/sfcc-mcp-server 下载代码到本地。
- 安装依赖: 在项目根目录下打开终端,运行以下命令安装项目依赖:
npm install - 构建项目: 运行以下命令构建项目,将 TypeScript 代码编译为 JavaScript 代码:
npm run build - 配置环境变量: 在项目根目录下创建 '.env' 文件,并根据你的 SFCC 环境配置以下环境变量:
请替换 'your-instance.api.commercecloud.salesforce.com', 'your_site_id', 'your_admin_client_id' 和 'your_admin_client_secret' 为你实际的值。你需要提前在 SFCC Business Manager 中配置 OCAPI 客户端,并赋予相应的 API 权限。SFCC_API_BASE=https://your-instance.api.commercecloud.salesforce.com/ # 你的 SFCC 实例 API Base URL SFCC_SITE_ID=your_site_id # 可选,默认为 "RefArch",你的 SFCC Site ID SFCC_ADMIN_CLIENT_ID=your_admin_client_id # SFCC Admin API 客户端 ID SFCC_ADMIN_CLIENT_SECRET=your_admin_client_secret # SFCC Admin API 客户端密钥
服务器配置
MCP客户端需要配置以下 JSON 信息以连接到 SFCC API MCP服务:
{ "serverName": "sfcc-api-mcp-server", "command": "node", "args": ["build/index.js"] }
配置参数说明:
- 'serverName': 服务器名称,可以自定义,用于在MCP客户端中标识该服务器。例如 '"sfcc-api-mcp-server"'。
- 'command': 启动服务器的命令,这里使用 'node',因为服务器是 Node.js 应用。
- 'args': 启动命令的参数,这里指向编译后的服务器入口文件 'build/index.js'。
注意: 请确保 MCP客户端能够找到 'node' 命令,并且相对于客户端的工作目录,'build/index.js' 的路径是正确的。 通常情况下,MCP客户端会在与服务器相同的环境中运行,因此相对路径即可。
基本使用方法
-
启动服务器: 在项目根目录下打开终端,运行以下命令启动 SFCC API MCP 服务器:
node build/index.js服务器成功启动后,会监听 Stdio 输入,等待 MCP 客户端的请求。
-
配置 MCP 客户端: 在你的 MCP 客户端应用中,配置上述提供的服务器 JSON 信息,建立与 SFCC API MCP 服务器的连接。
-
调用工具: 使用 MCP 客户端,你可以调用服务器注册的工具来访问 SFCC API。 工具名称是根据 'endpoints.json' 中定义的 API endpoint 路径自动生成的。 例如,如果 'endpoints.json' 中定义了 '/catalogs/{id}/products' endpoint,则对应的工具名称可能是 'catalogs_by_id_products'。
你需要查阅 'endpoints.json' 文件,了解可用的 API endpoints 及其参数,并根据自动生成的工具名称在 MCP 客户端中调用相应的工具。 调用工具时,需要根据工具的参数定义,提供相应的参数值。 例如,对于 'catalogs_by_id_products' 工具,可能需要提供 'id' 参数来指定 catalog ID。
工具执行成功后,服务器会将从 SFCC API 获取的数据以 JSON 格式返回给 MCP 客户端。
信息
分类
商业系统