使用说明
-
项目简介
- Atlas CRM Headless MCP Server 是在 Atlas CRM Headless 体系内实现的 MCP 后端服务器,负责以标准化方式向 AI 助手提供上下文信息与能力,包括托管资源、注册与执行工具、定义和渲染 Prompt 模板等。服务器通过 JSON-RPC 协议与客户端通信,具备会话管理、能力声明,以及对多租户、多单位场景的支持,能够与多种传输协议(如 StdIO、SSE、WebSocket)配合使用,提供安全、可扩展的上下文服务。
-
主要功能点
- 资源管理与数据访问:提供对资源的统一访问与管理,以便 LLM 客户端查询和使用上下文数据。
- 工具注册与执行:注册多种工具,允许 LLM 通过 MCP 调用外部功能实现对外部系统的操作。
- 提示模板与渲染:定义、渲染并提供 Prompt 模板,支持可定制的 LLM 交互。
- MCP 与客户端通信:基于 JSON-RPC 的请求/响应模型,确保客户端与服务器之间的协议一致性。
- 会话与能力管理:支持会话状态、能力声明,以及对不同租户和单位的隔离。
- 多传输协议支持:可通过 Stdio、SSE、WebSocket 等通道与 LLM 客户端对话。
-
安装步骤
-
- 安装依赖
- 在仓库根目录执行依赖安装命令(使用 pnpm,基于项目采用的工作区结构)
-
- 配置环境
- 参考文档中的环境变量说明,确保 API 服务、数据库、缓存、向量数据库等依赖正确配置(如 MongoDB、Redis、Typesense、Qdrant、OpenAI API Key 等)。
-
- 启动 MCP 服务器
- 使用提供的脚本命令启动 MCP 服务器,例如运行 mcp 服务的命令:pnpm mcp
-
- 验证运行
- 通过日志输出确认 MCP 服务器已就绪,且支持 JSON-RPC 请求的处理与响应。
-
-
服务器配置(给 MCP 客户端的连接配置信息,JSON 格式,包含 server name、command、args 等)
- server_name: "atlas-mcp-server"
- command: "pnpm"
- args: ["mcp"]
- 注释:
- server_name 指定 MCP 服务器的唯一标识名称,便于客户端在多服务器场景中选择连接。
- command 与 args 指定启动 MCP 服务器的实际命令及其参数,客户端据此能够构建连接并发起 JSON-RPC 请求。
- 该配置不包含敏感访问密钥,密钥等鉴权信息通常通过独立的鉴权机制提供(如 JWT、API Key 等),客户端在连接时需提供有效凭证。
- 说明:
- MCP 客户端需要的仅是上述启动信息与服务器地址(onboarding 时由客户端读取服务器地址并建立连接)。
- 服务器端会暴露资源、工具、Prompts 的接口,客户端通过 JSON-RPC 调用对应方法。
-
基本使用方法
- 启动后,MCP 客户端通过 JSON-RPC 发送请求到服务器,包含读取资源、调用工具、获取 Prompt 的请求,服务器返回标准的 JSON-RPC 响应。
- 客户端可以通过以下路径与 MCP 服务器互动:
- 请求资源:读取受管控的资源集合与个体数据,用于给 LLM 提供上下文。
- 调用工具:请求执行预定义工具,获得外部系统的结果并将其注入对话上下文。
- 获取与渲染 Prompt:获取按需渲染的 Prompt 模板,适配当前对话场景。
- 安全与多租户:服务器端实现了会话管理、基于角色/范围的访问控制(RBAC)以及跨租户、单位的数据可见性控制,确保数据隔离与安全。
-
说明
- MCP 服务的客户端需要连接到服务器地址并使用 JSON-RPC 协议进行交互,具体请求参数和响应格式请参考项目文档中的 MCP Protol(文档中含有示例请求/响应格式)。
- 如遇需要自定义配置或扩展 Tool/Resource,请参考仓库中的 docs/guides/mcp-server.md 及相关配置文件。
-
运行注意
- 确保 MongoDB、Redis、Typesense、Qdrant 等依赖服务在可访问状态,环境变量正确配置。
- MCP 的运行与客户端的连接逻辑可能依赖具体实现版本,建议在正式生产前进行自测和对接测试。
信息
分类
AI与计算