OMEGA Memory MCP 服务器实现

使用说明

  • 项目简介
    • 该仓库实现了一个面向 MCP 客户端的后端服务器,用于向大模型客户端提供资源数据、工具调用能力以及可自定义的 Prompt 模板渲染,帮助 LLM 在与外部系统交互时获得一致、可扩展的上下文与功能。
  • 主要功能点
    • 资源与数据访问:后端提供统一的资源存储与查询接口,便于 LLM 客户端读取、写入和管理资源。
    • 工具注册与执行:支持注册并暴露一组工具,让 LLM 客户端能够通过 MCP 调用外部功能。
    • Prompt 模板管理与渲染:提供可定制的 Prompt 模板,便于不同交互模式下渲染对话上下文。
    • JSON-RPC 协议对接:通过统一的 JSON-RPC 进行请求/响应通信,支持请求读取资源、调用工具、获取 Prompt 等能力。
    • 会话管理与能力声明:服务器端负责维护会话状态,声明自身能力,并对外暴露可用功能。
    • 多传输协议支持:实现对 STDIO、SSE、WebSocket 等传输协议的支持,便于不同客户端场景接入。
    • 插件/扩展能力:具备插件体系,便于扩展 Tool、Handler、Prompts 等能力。
  • 安装步骤
    • 最简方式(推荐):
      • 安装服务器端扩展:pip3 install omega-memory[server]
      • 命令行初始化与自配置:omega setup
    • 从源码安装(适合开发者):
      • git clone https://github.com/omega-memory/omega-memory.git
      • cd omega-memory
      • pip3 install -e ".[server,dev]"
      • omega setup
  • 服务器配置(给 MCP 客户端使用的配置示例)
    • 说明:MCP 客户端需要一个配置描述,包含服务器名称、启动命令及参数等信息,用于与 MCP 服务器建立连接。以下 JSON 用于 MCP 客户端的注册配置,列出服务器名称、执行命令及参数注释,便于直观理解。
    • 示例配置(JSON): { "mcpServers": { "omega-memory": { "name": "omega-memory", "command": "python3", "args": ["-m", "omega.server.mcp_server"] } // 如需添加更多传输入口,可在此对象继续追加 } // 说明: // - server name: omega-memory // - command: 启动 MCP 服务器的可执行程序 // - args: 上述命令的参数,这里指定通过模块 omega.server.mcp_server 启动 // MCP 客户端不需要额外的服务端实现细节,只需要以上信息即可与服务器建立通信 }
  • 基本使用方法
    • 启动与对接
      • 使用 MCP 客户端(如 Claude Code、Cursor、Windsurf、Zed 等)配置上述 MCP 服务器信息后,客户端将通过 JSON-RPC 与服务器进行交互,实现读取资源、执行工具、获取 Prompt 等操作。
    • 运行与调试
      • 通过 omega setup 完成初始配置后,MCP 服务器将以指定命令启动,客户端连接后即可发起请求(如资源读取、工具调用、Prompt 获取等)。
    • 开发与扩展
      • 服务器端提供协议核心能力、工具注册表、Prompts 渲染逻辑等模块,支持插件化扩展,便于接入自定义工具与资源。

服务器信息