JiKiME-MCP 内存服务端

使用说明(Markdown 格式)

  • 项目简介

    • JiKiME-MCP 内存服务端是围绕 MCP 协议构建的后端服务,专门为 LLM 客户端提供对“内存”和历史上下文的标准化访问能力。它把内存检索、读取、加载、保存、统计与重新索引等操作封装成 MCP 工具,供客户端通过 JSON-RPC 调用。
    • 服务器运行在 Go 语言环境中,使用 Model Context Protocol 的标准服务器框架进行实现,支持 STDIO 传输模式,便于与 Claude Code 等客户端进行对接。
  • 主要功能点

    • 提供 6 个 MCP 工具:memory_search、memory_get、memory_load、memory_save、memory_stats、memory_reindex。
    • 通过 JSON-RPC 形式与客户端通信,返回标准化的 JSON-RPC 响应。
    • 具备内存管理与索引能力:查询、读取、加载上下文、保存新内存、查看统计、重新建立索引等。
    • 与内存与索引结构耦合,支持嵌入式向量检索(若有嵌入提供者时)和文本匹配的混合检索。
    • 服务器端实现了会话和能力声明,并通过 STDIO 传输与客户端交互,方便在本地开发与集成测试。
  • 安装与运行

    • 本仓库的 MCP 服务端实现位于 cmd/mcpcmd/serve.go,构建后执行服务器命令即可启动 MCP 服务器(默认以 STDIO 传输提供服务)。
    • 构建与运行的常见方式(示例,不作为代码提供;具体执行请在实际环境中按工程构建步骤执行):
      • 使用 go 构建并执行:在仓库根目录执行 go build,然后运行生成的可执行文件,带上相应子命令 mcp serve。
      • 使用已有的二进制:直接执行 jikime-adk mcp serve(前提是已安装并在 PATH 可用)。
    • 运行成功后,服务器将监听并响应来自 MCP 客户端的 JSON-RPC 请求,客户端需要配置连接方式(下方给出示例配置)。
  • 服务器配置(MCP 客户端所需的配置示例) 说明:MCP 客户端需要至少知道服务器启动命令和参数,以及一个服务器名称,用于在客户端侧识别并建立连接。以下 JSON 为示例配置,真实使用时请将 server_name、command、args 调整为你的部署信息。 { "server_name": "jikime-memory-mcp", "command": ["jikime-adk", "mcp", "serve"], "args": [] // 说明:command 为启动 MCP 服务器的可执行文件及其主命令,args 为附加参数。此处以仓库中的实现为例,运行时请替换为实际部署路径与启动方式。 }

  • 基本使用方法

    • 启动服务
      • 构建并运行 MCP 服务器(如使用本仓库实现),确保工作环境中已安装 Go 及依赖。
      • 运行后,服务器通过 MCP 协议接收客户端请求,进行内存相关操作,并返回结果。
    • 客户端交互
      • 客户端通过 MCP 提供的 JSON-RPC 方式请求内存搜索、读取、加载、保存、统计或重建索引等功能,并解析返回的数据。
      • 该服务端封装的工具具体输入输出定义见 MemorySearchInput/Output、MemoryGetInput/Output、MemoryLoadInput/Output、MemorySaveInput/Output、MemoryStatsOutput、MemoryReindexOutput 的结构说明。
    • 监控与扩展
      • 服务器支持对内存系统进行扩展,如果需要添加新的 MCP 工具,可在 mcpcmd/serve.go 的注册流程中扩展 handleMemoryXxx 的实现并注册到服务器。
  • 备注

    • 该实现明确包含服务器端代码、MCP 交互工具、以及对内存系统(索引、嵌入、检索等)的整合,符合 MCP 服务器的核心职责。

服务器信息