使用说明
- 项目简介
- Arivu 提供一个实现 MCP(Model Context Protocol)的后端服务器组件,核心职责是以标准化的 JSON-RPC 方式向 LLM 客户端暴露资源(Resources)、工具(Tools)以及提示模板(Prompts)的访问与执行能力。该服务器通过一个汇总的连接器注册表,聚合多个连接器的能力,实现统一的上下文服务框架。
- 主要功能点
- 资源管理:托管并提供来自各连接器的数据资源,支持读取与列举资源。
- 工具注册与执行:向 LLM 客户端注册各连接器的工具,允许客户端通过 JSON-RPC 调用外部功能。
- 提示模板:定义和渲染可定制的 Prompt 模板,支持渲染与渲染格式协定。
- 会话与能力声明:服务器端维护会话上下文与能力声明,方便客户端对接与资源计量。
- 多传输扩展:当前实现通过标准输入输出(StdioTransport)进行通信,后续可扩展到 SSE、WebSocket、StdIo 等传输方式。
- 安装与运行
- 构建 MCP 服务器(包含完整连接器特性集):
- 使用 Cargo 构建 arivu_mcp 二进制:cargo build --release -p arivu_mcp --features full
- 或直接运行:cargo run --bin arivu_mcp --features full
- 启动后,MCP 服务器默认为通过标准输入输出(stdio)与客户端进行通信。服务器会注册所有在此构建环境中启用的连接器能力,并对接客户端的初始化、资源、工具等请求。
- 构建 MCP 服务器(包含完整连接器特性集):
- 服务器配置(MCP 客户端所需的启动信息)
MCP 客户端需要通过配置告诉服务器如何启动与连接。下面给出一个示例配置,供 Claude Desktop 等 MCP 客户端使用,描述服务器名称、启动命令以及启动参数(若无参数则为空列表),以及必要的环境变量注释。
{
"serverName": "arivu",
"command": "/path/to/arivu_mcp",
"args": [],
"env": {
"GITHUB_TOKEN": "<GitHub 访问令牌,用于某些连接器的授权>",
"SLACK_BOT_TOKEN": "<Slack Bot 令牌(若你计划连接 Slack)>"
}
}
- 说明
- serverName: MCP 服务器在客户端配置中的唯一标识名称,需与 Claude 及其他 MCP 客户端中的标识保持一致(示例中为 "arivu")。
- command: 启动 MCP 服务器的命令路径,在实际部署中应指向 arivu_mcp 二进制的可执行路径。
- args: 启动命令的附加参数,若无,请留空。
- env: 启动时注入的环境变量(如需授权的令牌、密钥等),仅在需要时配置。
- 说明
- 基本使用方法
- 通过 MCP 客户端(如 Claude Desktop)与 Arivu 的 MCP 服务器建立连接后,可发起以下类型的请求:
- initialize:初始化 MCP 会话、获取服务器能力与服务器信息。
- resources/list / resources/read:枚举与读取资源数据。
- tools/list / tools/call:注册并调用各连接器提供的工具。
- prompts/list / prompts/get:查询或获取 Prompt 模板信息。
- 通信协议:服务器与客户端之间使用 JSON-RPC 形式的请求/响应,传输以 JSON 行为单位的消息(当前实现通过 stdio)。
- 注意事项:在生产环境中,推荐通过稳定的传输层(如 SSE/WebSocket)替代 stdio,但现有实现可快速本地验证 MCP 的基本工作流。
- 通过 MCP 客户端(如 Claude Desktop)与 Arivu 的 MCP 服务器建立连接后,可发起以下类型的请求:
信息
分类
网页与API