open-context MCP 服务器

使用说明 (Markdown 格式)

  • 项目简介

    • open-context 提供一个 MCP 服务器,用于在本地管理可供 LLM 客户端访问的资源、注册并执行工具,以及定义和渲染提示模板(Prompts)。服务器通过 MCP 标准的 JSON-RPC 与客户端通信,具备会话管理和多种传输方式的能力(本仓库实现以 stdio 传输为主,亦可通过容器或开发模式运行)。
  • 主要功能点

    • MCP 服务器核心功能:实现多种工具(如 save_context、recall_context、list_contexts、update_context、delete_context、search_contexts、create_bubble、list_bubbles、get_bubble 等),用于向 LLM 客户端暴露上下文管理能力,所有操作通过 JSON-RPC 请求/响应格式进行。
    • 资源与存储:本地 JSON 存储(contexts.json、bubbles 等)实现持久化,支持自定义存储路径 OPENCONTEXT_STORE_PATH。
    • 弹性运行与部署:可通过 Node 直接运行、Docker 容器运行,或在开发模式下通过 DEV 命令快速接入;能够与 Claude Code/桌面等客户端配合使用,持久化上下文。
    • 配置与集成:提供将 MCP 服务器注册到客户端的示例配置,客户端通过指定 server 名称、启动命令和参数来建立连接。
    • 安全与本地化:数据以本地存储为主,尽可能避免外部调用,确保上下文信息的私密性与本地化处理。
  • 安装步骤

      1. 克隆仓库并安装依赖
      1. 构建 TypeScript 代码(CLI + HTTP 服务 + MCP 部署)
      1. 选择部署方式:本地开发/Docker/原生 MCP 传输
      1. 将 MCP 客户端指向服务器(参见下方“服务器配置”和 README 中的接入示例)
  • 服务器配置(MCP 客户端需要的最小字段配置,供接入时参考)

    • server 名称: open-context
    • command: node
    • args: ["/path/to/opencontext/dist/mcp/index.js"]
    • 说明:此配置用于在客户端(如 Claude Code/ Claude Desktop)启动并连接到 MCP 服务器。实际路径要指向你部署后的 MCP 服务器可执行入口。若在本地开发阶段直接使用 TypeScript 源码,可以使用 tsx/npx 等方式执行,具体要按你的运行环境选择合适的命令和参数。
  • 基本使用方法

    • 启动方式一(生产/容器化):
      • 将 MCP 服务器容器化后启动,确保上下文存储在持久卷中,Cliente 通过标准输入输出(stdio)与服务器通信。
    • 启动方式二(本地开发/源码直接运行):
      • 构建后使用 node 来启动 dist/mcp/index.js,确保传输通道为 stdio。
    • 集成步骤(客户端接入要点):
      • 在客户端的 MCP 设置中添加一个新服务器,指定服务器名称、启动命令及参数,使客户端能通过 MCP 协议向你的 open-context 服务器发起 JSON-RPC 请求。
    • 基本工作流程:
      • 客户端发送请求(如保存记忆、检索上下文、列出上下文等),服务器根据请求调用内部的存储、工具实现逻辑并返回 JSON-RPC 风格的响应。
  • 其他说明

    • 服务器默认存储路径位于用户主目录的 .opencontext/contexts.json,可通过 OPENCONTEXT_STORE_PATH 指定自定义路径。
    • README 与源码中提供了多种接入示例(包括 Claude Code/ Claude Desktop 集成的配置示例),请按实际运行环境选择最合适的接入方式。

服务器信息