返回市场
MCP-内存

MCP-内存

作者:Puliczek98 星标更新:2025-04-24

项目介绍

<div align="center">🤝 如果你喜欢这个内容,请给一个⭐️表示支持</div>

MCP 内存

MCP 内存 是一个 MCP 服务器,它赋予 MCP 客户端(如 Cursor、Claude、Windsurf 等) 在多个对话中记住用户信息(偏好、行为)的能力。它使用向量搜索技术根据意义而非仅仅是关键词来查找相关记忆。它是用 Cloudflare Workers、D1、Vectorize(RAG)、持久对象、Workers AI 和代理框架构建的。

📺 视频

<a href="https://www.youtube.com/watch?feature=player_embedded&v=qfFvYERw2TQ" target="_blank"> <img src="https://github.com/Puliczek/mcp-memory/blob/main/video.png?raw=true" alt="观看视频" width="800" height="450" border="10" /> </a>

🚀 尝试一下

https://memory.mcpgenerator.com/

🛠️ 如何部署自己的 MCP 内存

选项 1:一键部署到 Cloudflare

部署到 Cloudflare

创建 Vectorize 部分选择:

  • 维度:1024
  • 度量:余弦

点击 “创建并部署” 按钮

在 Cloudflare 控制台中,转到 "Workers & Pages" 并点击访问

访问 MCP 内存

选项 2:使用此模板

  1. 点击此仓库顶部的“使用此模板”按钮
  2. 克隆你的新仓库
  3. 按照下面的设置说明进行操作

选项 3:使用 CloudFlare CLI 创建

npm create cloudflare@latest --git https://github.com/puliczek/mcp-memory

🔧 设置(仅适用于选项 2 和 3)

  1. 安装依赖项:
npm install
  1. 创建 Vectorize 索引:
npx wrangler vectorize create mcp-memory-vectorize --dimensions 1024 --metric cosine
  1. 安装 Wrangler:
npm run dev
  1. 部署 worker:
npm run deploy

🧠 工作原理

MCP 内存架构

  1. 存储记忆

    • 你的文本通过 Cloudflare Workers AI 使用开源 @cf/baai/bge-m3 模型生成嵌入
    • 文本及其向量嵌入存储在两个地方:
      • Cloudflare Vectorize:存储向量嵌入以进行相似性搜索
      • Cloudflare D1:存储原始文本和元数据以实现持久化
    • 持久对象(MyMCP)管理状态并确保一致性
    • 代理框架处理 MCP 协议通信
  2. 检索记忆

    • 你的查询通过 Workers AI 使用相同的 @cf/baai/bge-m3 模型转换为向量
    • Vectorize 执行相似性搜索以找到相关记忆
    • 结果按相似性得分排序
    • D1 数据库提供与匹配向量对应的原始文本
    • 持久对象协调检索过程

这种架构实现了:

  • 通过 Vectorize 实现快速向量相似性搜索
  • 使用 D1 实现持久存储
  • 通过持久对象实现有状态操作
  • 通过 Workers AI 实现标准化的人工智能交互
  • 通过代理框架实现协议合规性

即使确切的词语不匹配,系统也能找到概念上相关的信息。

🔒 安全性

MCP 内存实施了多项安全措施以保护用户数据:

  • 每个用户的记忆存储在 Vectorize 中的 隔离命名空间内,以实现数据分离
  • 内置的 速率限制防止滥用(每分钟 100 次请求 - 你可以在 wrangler.jsonc 中更改)
  • 身份验证基于 userId
    • 虽然由于速率限制,这足以提供基本保护
    • 如果需要,可以轻松添加额外的身份验证层(如 API 密钥或 OAuth)
  • 所有数据都存储在 Cloudflare 的安全基础设施中
  • 所有通信都通过行业标准的 TLS 加密(由 Cloudflare 的 SSL/TLS 证书自动提供)

💰 成本信息 - 大多数用户免费

对于正常使用水平,MCP 内存是免费使用的:

  • 免费层级允许每月 1,000 条记忆和约 28,000 次查询
  • 使用 Cloudflare 的免费配额用于 Workers、Vectorize、Worker AI 和 D1 数据库

有关 Cloudflare 定价的更多详情,请参阅:

❓ 常见问题

  1. 我可以使用 memory.mcpgenerator.com 存储我的记忆吗?

    • 是的,你可以使用 memory.mcpgenerator.com 来存储和检索你的记忆
    • 该服务是免费的
    • 你的记忆被安全地存储,并且只能由你自己访问
    • 我不能保证该服务总是可用
  2. 我可以托管它吗?

    • 是的,你可以免费在 Cloudflare 上托管你自己的 MCP 内存实例
    • 你需要一个 Cloudflare 账户以及以下服务:
      • Workers
      • Vectorize
      • D1 数据库
      • Workers AI
  3. 我可以在本地运行它吗?

    • 是的,你可以为了开发目的在本地运行 MCP 内存
    • 使用 wrangler dev 在本地运行 worker
    • 你需要为 Cloudflare 服务设置本地开发凭证
    • 注意一些特性如向量搜索或 workers AI 需要连接到 Cloudflare 的服务
  4. 我可以使用其他托管吗?

    • 不,MCP 内存特别设计用于 Cloudflare 的基础设施
  5. 你为什么要构建它?

    • 我想要一个开源解决方案
    • 对我自己的数据拥有控制权对我来说很重要
  6. 我可以为多个人使用它吗?

    • 是的,MCP 内存可以集成到你的应用中,为所有用户提供服务
    • 每个用户都有自己的隔离记忆空间
  7. 我可以用来存储除了记忆之外的东西吗?

    • 是的,MCP 内存可以存储任何形式的基于文本的信息
    • 一些实用的例子:
      • 知识库:存储技术文档、程序和故障排除指南
      • 用户行为:跟踪用户如何与功能互动及常见使用模式
      • 项目笔记:决策和项目更新
    • 向量搜索将帮助找到相关项目,无论内容类型如何

🤝 表达支持

<div>🤝 如果你喜欢这个内容,请给一个⭐️表示支持</div>