Pocket Agent MCP Server

使用说明(简要、可操作)

  • 项目简介

    • 该仓库实现了一个基于 MCP(Model Context Protocol)的后端框架,核心目标是为大型语言模型(LLM)客户端提供结构化的上下文服务,包括对“资源、工具、提示模板”等的托管、访问以及执行能力的暴露。实现方式以在本地或进程内运行的 MCP 服务器为主,支持通过 JSON-RPC 与客户端通信,并提供多传输协议的能力(如 STDIO、SSE、WebSocket 等等)。
    • 关键能力包括:托管资源与数据访问、注册并执行工具、定义和渲染提示模板以及会话/能力声明等,便于将外部功能和上下文整合到 LLM 的工作流中。
  • 主要功能点(通俗描述)

    • 资源管理:提供对“资源(Resources)”的统一托管与访问能力,方便客户端读取和使用数据。
    • 工具注册与执行:支持注册“工具(Tools)”,LLM 可以通过 MCP 触发对外部能力的调用。
    • 提示模板管理:定义和渲染 Prompt 模板,支持按需定制不同的交互模式。
    • JSON-RPC 通信:客户端通过 JSON-RPC 与 MCP 服务器进行请求(如读取资源、调用工具、获取 Prompt)并接收响应。
    • 会话与能力声明:服务器端负责会话上下文、能力披露和多会话隔离等能力。
    • 多传输协议支持:实现对多种传输协议的支持,方便在不同环境中对接。
    • 插件式扩展:通过工具和服务器配置实现扩展,便于你自定义资源、工具和 Prompts 的接入方式。
  • 安装与运行(简要步骤)

    • 克隆代码并安装依赖
    • 构建与启动 MCP 相关服务(可选在进程内或外部进程中运行)
    • 配置 MCP 服务器(见下方“服务器配置”部分的示例说明)
    • 启动后,客户端通过 JSON-RPC 与 MCP 服务器进行交互
  • 服务器配置(需要给 MCP 客户端使用的配置信息)

    • 说明:以下为示例配置思路,实际请按仓库中提供的接口与入口来组织。客户端需要的仅是服务器描述信息,具体连接参数由 MCP 客户端在使用时提供,不需要在此处实现客户端逻辑。
    • server 名称示例:pocket-agent-tools(在仓库中用于对外暴露工具的 MCP 服务器实例)
    • command 与 args:启动服务器的命令及参数,例如用于在同一进程中运行的 MCP 服务入口,或为独立进程提供的启动命令与参数。
    • 注释性说明(GET 注释形式,不作为代码展示):
      • name: pocket-agent-tools
      • command: node
      • args: ["path/to/your/app/dist/sdk-mcp-server.js"](请替换为实际入口)
      • 说明:此服务器通过 Claude/CLAUDE-Agent-SDK 提供的 MCP 服务,暴露工具集合、资源访问与 Prompts 渲染能力,客户端连接后可通过 JSON-RPC 调用资源读取、工具执行与提示获取等接口。
    • 备注:一个 MCP 客户端通常需要至少一个服务器的启动信息(server 名称、command、args),以便建立连接并向服务器发送 MCP 请求。此处的配置旨在帮助你理解在客户端如何指向 MCP 服务器;具体 JSON 配置应以实现中的字段与文档为准。
  • 基本使用方法

    • 启动方式:以服务进程的形式启动 MCP 服务器,你可以在同一台主机上同时运行一个或多个 MCP 服务器(如一个专门暴露工具,另一个暴露资源等)。
    • 客户端接入:MCP 客户端通过 JSON-RPC 对 MCP 服务器发起请求,完成对资源、工具、Prompts 的读取、执行与渲染。
    • 使用流程示例(概念性描述,不包含代码):
      • 客户端请求读取某一资源,服务器返回资源数据及元信息。
      • 客户端请求调用某个工具,服务器执行并返回执行结果与可能的输出消息。
      • 客户端请求获取某个 Prompt 模板,服务器返回模板及渲染后的文本片段。
      • 会话信息、能力声明按 MCP 规范返回,确保多会话隔离与能力对外披露。
    • 部署与扩展:如需扩展工具,可通过仓库内的工具定义与实现(如 memory-tools、calendar-tools、task-tools 等)进行扩展,并在 MCP 服务层暴露这些工具。
  • 备注与注意

    • 此实现的核心在于把现有的 AI 助手模块(如内置的工具、内存、提示等)通过 MCP 服务暴露给 LLM 客户端使用,尽量保持现有工具与内存的设计风格与 MCP 的上下文能力对齐。
    • 若要将其作为完整的 MCP 服务落地使用,建议结合实际的 Cloud/本地部署需求,确保 JSON-RPC 的请求与响应格式、传输层的实现(STDIO/SSE/WebSocket 等)以及资源、工具、Prompts 的具体接口文档一致。

服务器信息