代理记忆服务器

A-MEM MCP Server是一个基于类脑记忆技术的内存服务,用于Claude Code,支持自动记忆链接、记忆进化和语义搜索。

  • by Questi0nM4rk
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Questi0nM4rk/amem-mcp

使用说明

A-MEM MCP服务器

Claude Code的类脑记忆基于NeurIPS 2025论文“A-MEM:LLM代理的代理记忆”。

特性

  • 自动内存链接:新记忆会自动连接到相关的现有记忆
  • 记忆进化:新信息更新了现有记忆的背景
  • 元数据:自动生成的关键字、上下文和标签
  • 全局存储器:在所有项目中共享 ~/.codeagent/memory/
  • 后备模式:使用简单的关键字匹配,在没有A-MEM库的情况下工作

工具

工具 说明
store_memory 通过自动链接和进化来存储知识
search_memory 跨所有记忆的语义搜索
read_memory 按ID读取具有完整元数据的特定内存
list_memories 使用筛选功能列出最近的记忆
update_memory 更新现有内存(触发重新进化)
delete_memory 删除内存
get_memory_stats 内存系统的统计信息

哲学

基于 A-MEM (2024)-“LLM代理的代理记忆”。

关键洞察记忆应该表现得像大脑,而不是数据库。新的记忆会自动链接到相关的记忆(Zettelkasten风格),当新的信息到来时,现有的记忆会进化。

安装

基本(回退模式-JSON存储)

pip install git+https://github.com/Questi0nM4rk/amem-mcp.git

完整(ChromaDB+语义搜索)

pip install "git+https://github.com/Questi0nM4rk/amem-mcp.git[full]"

注意:完整安装需要:

  • OPENAI_API_KEY 元数据生成的环境变量
  • OR Ollama在当地跑步

使用Claude代码

claude mcp add amem -- python -m amem_mcp.server

用法

# Store a memory
store_memory(content="JaCore uses repository pattern with Unit of Work")

# Search memories
search_memory(query="data access patterns")

# Read specific memory
read_memory(memory_id="mem_0001")

运作原理

  1. 商店:分析内容,提取关键字,并找到类似的记忆
  2. 链接:在相关记忆之间创建双向链接
  3. 进化:用新信息更新现有记忆的上下文
  4. 搜索:矢量相似度+链接遍历,获得全面结果

后端

功能 全模式 回退模式
存储 ChromaDB JSON文件
搜索 语义向量 关键字匹配
依赖关系 chromadb,句子转换 无
精度 高 低
  • 完整模式:使用ChromaDB进行矢量存储和语义搜索
  • 后备模式:基于关键字匹配的JSON文件(仍然有效!)

环境变量

变量 必填 描述
OPENAI_API_KEY 对于完整模式 LLM用于元数据生成
CODEAGENT_HOME 可选 覆盖默认值 ~/.codeagent

存储

存储在以下位置的记忆: ~/.codeagent/memory/

  • ChromaDB(全模式): ~/.codeagent/memory/chromadb/
  • JSON(回退): ~/.codeagent/memory/memories.json