mcpField
M
MCP Memory Server

MCP Memory Server

本地服务
github.com/sdimitrov记忆与知识6484 周前更新

关于 MCP Memory Server

这是一个基于 PostgreSQL 与 pgvector 的 MCP 记忆服务,为 AI 助手提供长期记忆能力,参照 mem0 的设计思路。它支持向量相似度检索、标签筛选和置信度评分,适合需要跨会话保存经验与知识的开发者。

主要功能

  1. 01基于 PostgreSQL 与 pgvector 的向量相似度检索
  2. 02使用 BERT 自动生成 384 维嵌入向量
  3. 03支持按类型与标签检索记忆
  4. 04记忆带有置信度评分
  5. 05通过 SSE 推送记忆创建与更新事件

适用场景

  1. 01为 Cursor 中的 AI 助手保存跨会话的学习记录
  2. 02按语义与标签检索过往经验
  3. 03通过 RESTful 接口管理记忆数据

MCP 相关

该服务提供兼容 Cursor MCP 协议的接口,Cursor 可通过 ~/.cursor/mcp.json 启动它;同时通过 HTTP 与 SSE 端点向客户端提供记忆的创建、搜索和列表功能。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP 记忆服务

此服务基于 mem0 原则,使用 PostgreSQL 和 pgvector 实现 AI 助手的长期记忆能力,从而高效地进行向量相似度搜索。

特性

  • 使用 PostgreSQL 和 pgvector 进行向量相似度搜索
  • 使用 BERT 自动生成嵌入
  • 用于记忆操作的 RESTful API
  • 语义搜索能力
  • 支持不同类型的记忆(学习、经历等)
  • 基于标签检索记忆
  • 记忆置信度评分
  • 用于实时更新的服务器发送事件(SSE)
  • 兼容 Cursor MCP 协议

前置条件

  1. 已安装 pgvector 扩展的 PostgreSQL 14+:
# In your PostgreSQL instance:
CREATE EXTENSION vector;
  1. Node.js 16+

设置

  1. 安装依赖:
npm install
  1. 配置环境变量: 将 .env.sample 复制为 .env 并调整相应值:
cp .env.sample .env

.env 配置示例:

# With username/password
DATABASE_URL="postgresql://username:password@localhost:5432/mcp_memory"
PORT=3333

# Local development with peer authentication
DATABASE_URL="postgresql:///mcp_memory"
PORT=3333
  1. 初始化数据库:
npm run prisma:migrate
  1. 启动服务:
npm start

开发时启用自动重新加载:

npm run dev

在 Cursor 中使用

在 Cursor 中添加 MCP 服务

要将记忆服务添加到 Cursor,需要修改位于 ~/.cursor/mcp.json 的 MCP 配置文件。在 mcpServers 对象中添加以下配置:

{
  "mcpServers": {
    "memory": {
      "command": "node",
      "args": [
        "/path/to/your/memory/src/server.js"
      ]
    }
  }
}

将 /path/to/your/memory 替换为记忆服务安装的实际路径。

例如,如果你将代码仓库克隆到了 /Users/username/workspace/memory,配置如下:

{
  "mcpServers": {
    "memory": {
      "command": "node",
      "args": [
        "/Users/username/workspace/memory/src/server.js"
      ]
    }
  }
}

需要时,Cursor 会自动启动该服务。你可以通过以下方式验证其是否正常运行:

  1. 打开 Cursor
  2. Cursor 启动时会自动启动记忆服务
  3. 访问 http://localhost:3333/mcp/v1/health,检查服务状态
可用的 MCP 端点
SSE 连接
  • 端点:GET /mcp/v1/sse
  • 查询参数:
    • subscribe:要订阅的事件列表,多个事件以逗号分隔(可选)
  • 事件:
    • connected:初始连接时发送
    • memory.created:创建新记忆时发送
    • memory.updated:更新现有记忆时发送
记忆操作
  1. 创建记忆
POST /mcp/v1/memory
Content-Type: application/json

{
  "type": "learning",
  "content": {
    "topic": "Express.js",
    "details": "Express.js is a web application framework for Node.js"
  },
  "source": "documentation",
  "tags": ["nodejs", "web-framework"],
  "confidence": 0.95
}
  1. 搜索记忆
GET /mcp/v1/memory/search?query=web+frameworks&type=learning&tags=nodejs
  1. 列出记忆
GET /mcp/v1/memory?type=learning&tags=nodejs,web-framework
健康检查
GET /mcp/v1/health
响应格式

所有 API 响应均遵循标准 MCP 格式:

{
  "status": "success",
  "data": {
    // Response data
  }
}

错误响应示例:

{
  "status": "error",
  "error": "Error message"
}

记忆架构

  • id:唯一标识符
  • type:记忆类型(学习、经历等)
  • content:实际记忆内容(JSON)
  • source:记忆来源
  • embedding:内容的向量表示(384 维)
  • tags:相关标签数组
  • confidence:置信度评分(0-1)
  • createdAt:记忆创建时间
  • updatedAt:记忆最近更新时间

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。