MCP Server Memo

MCP Server Memo

site icon
2025.04.15 0
TypeScript会话管理本地存储其它
MCP Server Memo 是一个轻量级的 MCP(Model Context Protocol)服务器,专为管理大型语言模型(如 Claude)的会话摘要和备忘录而设计。它使用本地文件系统提供持久化存储,支持会话历史版本跟踪,并提供存储、检索和列出摘要的工具。
View on GitHub

Overview

基本能力

产品定位

MCP Server Memo 是一个为大型语言模型(LLMs)设计的记忆助手,通过 MCP 工具接口存储和检索详细的会话记录。

核心功能

  • 历史保留:保留会话的所有历史版本,而不仅仅是最新版本。
  • 时间排序:多个会话版本按时间顺序组织,便于跟踪会话发展。
  • 本地存储:使用本地文件系统,无需外部数据库。
  • MCP 兼容:遵循 Model Context Protocol 规范提供工具接口。
  • 性能优化:针对文件 I/O 和并发操作进行了优化。
  • 最小依赖:设计简洁,易于维护和扩展。

适用场景

  • 需要为 LLMs 提供会话记忆功能的应用程序。
  • 需要跟踪和管理会话历史版本的项目。
  • 需要本地存储解决方案而不依赖外部数据库的场景。

工具列表

  1. upsertSummary:创建会话摘要的新版本,保留所有历史版本。
  2. getSummaryTool:检索特定会话摘要的最新版本。
  3. listSummariesTool:列出可用的摘要(每个会话的最新版本),支持过滤、排序和分页。
  4. updateMetadata:更新会话的元数据(标题和标签),不影响内容或时间戳。
  5. appendSummary:向会话摘要追加内容,创建包含新内容的新版本。
  6. listAllSummariesTool:列出所有可用的摘要(每个会话的最新版本)。
  7. getSessionHistory:检索特定会话的所有历史版本,按从新到旧排序。

常见问题解答

  • 如何生成 sessionId:建议使用 UUID(版本 4)库生成唯一 ID,并在会话期间重复使用。
  • 如何设置存储目录:通过环境变量 MCP_SUMMARY_DIR 设置存储目录,默认为 ./summaries/

使用教程

使用依赖

  • Node.js(>= 18.0.0)
  • MCP SDK(1.9.0)

安装教程

# 克隆仓库
git clone https://github.com/doggybee/mcp-server-memo.git
cd mcp-server-memo

# 安装依赖
npm install

# 构建项目
npm run build

配置

通过环境变量设置存储目录:

export MCP_SUMMARY_DIR="/path/to/summaries"

运行服务器

# 标准启动
npm start

# 开发模式(自动重载)
npm run dev

# 启动并记录日志
npm run start:log

调试方式

使用客户端示例代码进行调试,确保会话 ID 生成正确,并验证工具调用是否成功。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。