记忆 MCP 服务器是一个专为大型语言模型 (LLMs) 打造的长期记忆存储系统,它遵循 Model Context Protocol (MCP) 标准。该系统能助力 LLMs 记住整个项目历史中的上下文信息,即便跨越多个会话也能轻松实现。借助语义搜索和嵌入式向量技术,它可提供过去交互和决策的相关上下文。
nomic-embed-text 模型npm install
npm run build
.env:OLLAMA_HOST=http://localhost:11434
DB_PATH=memory.db
以开发模式启动服务器:
npm run dev
这将:
通过标准输入输出与 Cursor 兼容连接
首先,克隆项目仓库到本地。
在项目根目录下,执行以下命令安装所需依赖:
npm install
安装完依赖后,构建项目:
npm run build
创建配置文件 .env,并添加以下内容:
OLLAMA_HOST=http://localhost:11434
DB_PATH=memory.db
安装并配置完成后,以开发模式启动服务器:
npm run dev
nomic store-dev-memory --content "这是一个测试记忆" --tags test,example
nomic list-dev-memories
nomic search --query example
系统使用 SQLite,包含以下表:
projects:项目信息和元数据memories:存储各种开发上下文的记忆条目embeddings:语义搜索的嵌入式向量(768 维度)tags:记忆组织标签memory_tags:记忆与标签之间的多对多关系memory_relationships:记忆条目之间的有向关系以下工具通过 MCP 协议可用:
store-dev-memory:创建新的开发记忆,包含:
list-dev-memories:列出现有记忆,可选标签过滤get-dev-memory:通过 ID 获取特定记忆search:语义搜索,跨记忆使用嵌入式向量在开发时,执行以下命令:
npm run dev
这将:
关键依赖:
@modelcontextprotocol/sdk@^1.7.0:MCP 协议实现better-sqlite3@^9.4.3:SQLite 数据库接口node-fetch@^3.3.2:Ollama API 的 HTTP 客户端zod@^3.22.4:运行时类型检查和验证memory-mcp-server/
├── src/
│ ├── db/
│ │ ├── init.ts # 数据库初始化
│ │ └── service.ts # 数据库服务层
│ ├── memory.js # 记忆管理逻辑
│ └── search.js # 语义搜索功能
├── package.json # 依赖管理和脚本
└── .env # 环境变量配置
本系统采用 Model Context Protocol (MCP) 标准,利用语义搜索和嵌入式向量技术,为大型语言模型 (LLMs) 提供长期记忆存储功能。系统使用 SQLite 数据库来存储记忆和相关元数据,通过 Ollama 的 nomic-embed-text 模型进行语义搜索的嵌入式向量生成。在开发过程中,使用 TypeScript 进行编码,并通过 npm 管理依赖。同时,系统提供了一系列 MCP 工具,方便用户进行记忆的管理和搜索。
文档中未提及许可证相关信息。
nomic-embed-text 模型已加载。memory.db) 会在项目目录中创建,用于存储记忆数据。在使用过程中,可根据项目需求合理设置记忆的标签和类型,以便更高效地管理和搜索记忆。同时,定期备份数据库文件,防止数据丢失。
欢迎贡献!请参考 CONTRIBUTING.md 参与开发。