Structured Memory Engine MCP 服务器

使用说明(Markdown格式)

  • 项目简介

    • 结构化内存引擎(SME)的 MCP 服务器端实现,提供资源管理、工具注册、Prompt 渲染等核心能力,供 LLM 客户端通过 MCP 的 JSON-RPC 风格进行上下文服务交互。
  • 主要功能点

    • 资源/资源管理:托管和管理 Resources(如内存、文件、片段等数据源),提供对数据的读取与查询能力。
    • 工具注册与调用:注册多种 Tools(如 sme_query、sme_context、sme_remember、sme_index 等),LLM 客户端可通过 JSON-RPC 调用外部功能。
    • Prompt 模板与上下文渲染:定义并渲染 Prompts,提供可定制的 LLM 交互模式与上下文注入能力。
    • JSON-RPC API:以 MCP 规范的请求/响应形式暴露能力,便于与各类 LLM 客户端对接。
    • 会话管理与能力声明:支持会话、能力声明和跨会话的上下文服务能力。
    • 多传输协议扩展:默认通过 Stdio 进行通信,后续可扩展为 SSE/WebSocket 等传输协议。
  • 安装步骤

    • 直接在本地环境中获取源码后,安装依赖并运行 MCP 服务器入口文件:
      • npm install
      • node lib/mcp-server.js
    • 启动后,服务器将对外提供 MCP 端点,供 MCP 客户端通过配置连接。
  • 服务器配置(MCP 客户端配置信息示例)

    • 说明:以下 JSON 配置用于 MCP 客户端对接本 MCP 服务器,客户端本身不需要你修改;这是对接服务器所需的配置信息示意,若需在代码中使用,请将其以 JSON 形式提供给客户端。
    • 配置示例(说明性文本,不含代码块): { "serverName": "sme", "command": "node", "args": ["path/to/你的/mcp-server入口文件.js"], // 例如 "lib/mcp-server.js" "env": { "SME_WORKSPACE": "/absolute/path/to/你的工作区" // 指定工作区目录,服务器会在该工作区加载配置与数据 }, "transports": ["stdio"] // 可以扩展为 ["stdio", "sse", "websocket"],当前实现以 stdio 为默认传输 } 说明:
    • serverName:在客户端注册的 MCP 服务器名称,便于区分与管理。
    • command/args:启动 MCP 服务的命令及参数,客户端需要知道如何启动服务器。
    • env:启动时需要的环境变量,例如工作区路径。
    • transports:支持的传输协议(此实现以 stdio 为核心,未来可扩展为 SSE/WebSocket)。
  • 基本使用方法

    • 启动:在服务端运行 MCP 服务器入口文件(如 node lib/mcp-server.js),服务器启动后将对外提供 MCP 服务接口。
    • 客户端接入:将上述 JSON 配置提供给 MCP 客户端(如 Claude Code 等),使其通过 MCP 协议与服务器进行资源查询、工具调用和 Prompt 获取等操作。
    • 调用示例(简述,不包含代码):
      • 客户端通过 JSON-RPC 请求调用 sme_query,获取内存中匹配结果。
      • 客户端通过 sme_context 获取自定义上下文(自动注入到对话中)。
      • 客户端通过 sme_remember 保存新的记忆片段,触发重新索引与嵌入更新(若嵌入功能可用)。
    • 兼容性与扩展:
      • 支持多工具注册、Prompts 定义、以及对外暴露的 API,方便将记忆、工具及模板在 LLM 运行时复用。
      • 通过 bin/sme-hook.js、扩展插件等实现与外部系统(如 OpenClaw)更紧密的集成。
  • 关键词 资源管理, 工具注册, JSON-RPC, 本地离线, 上下文服务

  • 分类 6

服务器信息