Libra MCP 服务器

使用说明(Markdown 格式)

  • 项目简介 Libra 项目中实现了一个 MCP 服务器组件,用于在 AI 圂景中向大语言模型提供资源、工具和提示等能力。服务器通过 JSON-RPC 与客户端通讯,并支持多种传输方式,方便与 Claude Desktop、OpenAI 等 AI 客户端以及自定义前端进行对接。

  • 主要功能点

    • 资源管理:提供对资源的集中托管与数据访问能力
    • 工具注册与调用:允许 LLM 调用外部功能
    • 提示模板:定义、渲染和管理与 LLM 交互相关的 Prompt 模板
    • 会话管理:维持会话状态、能力声明与鉴权
    • 多传输协议支持:包括标准输入输出、SSE、WebSocket 等传输方式
    • 与现有 Libra 代码结构的集成:在后端实现资源、任务、历史等对象的环境中提供 MCP 服务支持
  • 安装步骤

    • 使用 Rust 工具链进行构建与安装(需要 Rust 与 Cargo 环境)
    • 在 Libra 项目根目录下构建并获取可执行二进制
    • 按需开启自带的 MCP 服务模式(如 stdio、web 等)
  • 服务器配置(供 MCP 客户端使用的配置示例) 注:以下为示例配置,实际使用时请将路径和参数替换为你的环境对应值。 { "serverName": "libra", "command": "/path/to/libra", "args": ["code", "--stdio"], "cwd": "/path/to/your/libra/repo", "description": "Libra MCP 服务器,在 stdio 模式下通过 MCP 客户端进行通信" }

    配置说明:

    • serverName: 服务器名称,供 MCP 客户端识别
    • command: 启动服务器的可执行程序路径
    • args: 启动服务器的参数数组(如 code --stdio 表示以 stdio 传输模式启动)
    • cwd: 运行服务器的工作目录,通常应指向 Libra 仓库的根目录
    • description: 对服务器的简要描述
  • 基本使用方法

    1. 启动服务器:以 stdio 模式启动时,客户端通过标准输入输出与服务器通信
    2. 客户端握手:客户端向服务器发送 Initialize 请求,建立会话
    3. 资源、工具、提示的读取与调用:客户端可通过 JSON-RPC 调用资源/工具/提示接口,服务器返回 JSON-RPC 响应或推送通知
    4. 会话与能力声明:服务器在会话建立阶段声明自身能力,支持多轮对话与任务交互
    5. 安全与扩展性:服务器端负责会话与权限管理,并可通过多传输协议扩展到 SSE/WebSocket 等
  • 重点提示

    • MCP 客户端需要知道服务器启动命令及参数(如上配置示例中的 command 与 args),以便正确连接并进行初始化
    • 服务器实现中已包含资源、工具、任务等对象的管理与读取接口,便于在 AI 场景下进行上下文与能力的组织

服务器信息