JaguarClaw MCP 服务器端

使用说明(简要概览,旨在帮助理解该项目是否能作为 MCP 服务器,以及如何对接 MCP 客户端):

  • 项目简介 JaguarClaw 将一个本地化的 AI 助手平台落地为可独立运行的 MCP 服务器,核心职责是通过 MCP 协议向 LLM 客户端提供上下文信息和能力。该实现包含资源管理、工具注册与执行、提示模板渲染等能力,且具备会话管理与能力声明,为 LLM 客户端提供安全、可扩展的上下文服务框架。

  • 主要功能点

    1. 资源管理:后端可托管、查询以及访问用于上下文的信息资源(如文档、数据等)。
    2. 工具注册与执行:可注册工具,LLM 客户端调用外部功能并获得结果。
    3. 提示模板(Prompts):支持可定制的提示模板,支撑不同的对话模式与上下文渲染。
    4. MCP 协议实现:遵循 Model Context Protocol,支持通过 JSON-RPC 进行资源读取、工具调用、提示获取等请求的交互。
    5. 会话与能力管理:后端负责维护会话、能力声明,以及对多种传输协议的支持。
    6. 多传输协议支持:STDIO、SSE、HTTP 等,以适配不同的客户端接入方式。
  • 安装与运行

    1. 构建后端 Jar:
      • 使用 Maven 构建后端应用:mvn clean package -DskipTests
    2. 启动后端服务器:
      • 运行打包后的 JAR,例如:java -jar target/jaguarclaw-*.jar --spring.profiles.active=sqlite
      • 该后端一般包含嵌入式数据库(如 SQLite),并通过 Spring Boot 提供 MCP 服务入口。
    3. 与 MCP 客户端对接:
      • MCP 客户端需要配置服务器的启动命令和参数,以建立与 MCP 服务器的通信。服务器通常通过端口暴露 JSON-RPC 接口,客户端通过端口向服务器发送资源读取、工具调用、Prompts 获取等请求。
    4. 配置示例(MCP 客户端需要的最小信息,便于对接):
      • serverName: JaguarClaw-MCP
      • command: java
      • args: ["-jar", "/path/to/resources/app.jar", "--spring.profiles.active=sqlite", "--server.port=${PORT}"]
      • workingDir: /path/to/project
      • env: { "JAGUAR_RUNTIME_HOME": "/path/to/runtime" }
      • notes: 该配置用于在 MCP 客户端启动时提供服务器执行入口,端口由客户端在运行时分配并注入到命令参数中。
  1. 如需在桌面环境中搭建,请参照仓库中的前后端分工与打包脚本,确保 Java 运行环境、JRE/JDK 以及所需依赖就绪。
  • 基本使用方法

    • 启动后端并对接 MCP 客户端后:
      • 客户端可通过 JSON-RPC 请求读取资源、执行工具、获取 Prompts,服务器返回标准的 JSON-RPC 响应。
      • 服务器负责维护会话上下文、工具调用结果、以及对远程 LLM 客户端的能力声明。
  • 重要注意

    • MCP 客户端的具体请求路径、方法名与请求参数,需参照本实现的 MCP 端点定义(通常会暴露如资源读取、工具执行、Prompts 获取等 RPC 方法)。
    • 本项目还包含前端和桌面端封装,便于本地化运行与管理 MCP 服务器及相关能力。

服务器信息