这是一个基于本地知识图谱的持久化内存基础实现,能让Claude在多次对话中记住用户信息。
实体是知识图谱中的主要节点。每个实体包含:
示例:
{
"name": "John_Smith",
"entityType": "person",
"observations": ["能说流利的西班牙语"]
}

关系定义实体之间的有向连接。它们始终以主动语态存储,描述实体如何交互或关联。
示例:
{
"from": "John_Smith",
"to": "Anthropic",
"relationType": "works_at"
}

观察记录是关于实体的离散信息片段。它们具有以下特点:
示例:
{
"entityName": "John_Smith",
"observations": [
"能说流利的西班牙语",
"2019年毕业",
"喜欢晨间会议"
]
}

create_entities
entities
(对象数组)
name
(字符串):实体标识符entityType
(字符串):类型分类observations
(字符串数组):关联观察记录create_relations
relations
(对象数组)
from
(字符串):源实体名称to
(字符串):目标实体名称relationType
(字符串):主动语态的关系类型add_observations
observations
(对象数组)
entityName
(字符串):目标实体contents
(字符串数组):要添加的新观察记录delete_entities
entityNames
(字符串数组)delete_observations
deletions
(对象数组)
entityName
(字符串):目标实体observations
(字符串数组):要删除的观察记录delete_relations
relations
(对象数组)
from
(字符串):源实体名称to
(字符串):目标实体名称relationType
(字符串):关系类型read_graph
search_nodes
query
(字符串)open_nodes
names
(字符串数组)将以下内容添加到你的claude_desktop_config.json中:
{
"mcpServers": {
"memory": {
"command": "docker",
"args": ["run", "-i", "-v", "claude-memory:/app/dist", "--rm", "mcp/memory"]
}
}
}

{
"mcpServers": {
"memory": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-memory"
]
}
}
}

服务器可以通过以下环境变量进行配置:
{
"mcpServers": {
"memory": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-memory"
],
"env": {
"MEMORY_FILE_PATH": "/path/to/custom/memory.json"
}
}
}
}

MEMORY_FILE_PATH
:内存存储JSON文件的路径(默认:服务器目录中的memory.json
)要快速安装,请使用下面的任一一键安装按钮:
对于手动安装,请将以下JSON块添加到VS Code的用户设置(JSON)文件中。你可以通过按Ctrl + Shift + P
并输入Preferences: Open Settings (JSON)
来执行此操作。
或者,你可以将其添加到工作区中的.vscode/mcp.json
文件中。这将允许你与他人共享配置。
注意:在
.vscode/mcp.json
文件中不需要mcp
键。
{
"mcp": {
"servers": {
"memory": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-memory"
]
}
}
}
}

{
"mcp": {
"servers": {
"memory": {
"command": "docker",
"args": [
"run",
"-i",
"-v",
"claude-memory:/app/dist",
"--rm",
"mcp/memory"
]
}
}
}
}

使用记忆的提示取决于使用场景。更改提示将帮助模型确定创建记忆的频率和类型。
以下是一个用于聊天个性化的示例提示。你可以在Claude.ai项目的"自定义指令"字段中使用此提示。
按照以下步骤进行每次交互: 1. 用户识别: - 你应该假设你正在与default_user交互 - 如果你尚未识别default_user,请主动尝试识别。 2. 记忆检索: - 始终以"正在回忆..."开始你的聊天,并从你的知识图谱中检索所有相关信息 - 始终将你的知识图谱称为你的"记忆" 3. 记忆: - 在与用户交谈时,注意任何属于以下类别的新信息: a) 基本身份(年龄、性别、位置、职位、教育水平等) b) 行为(兴趣、习惯等) c) 偏好(沟通风格、首选语言等) d) 目标(目标、指标、抱负等) e) 关系(个人和专业关系,最多3度分离) 4. 记忆更新: - 如果在交互过程中收集到任何新信息,请按以下方式更新你的记忆: a) 为经常出现的组织、人物和重要事件创建实体 b) 使用关系将它们连接到当前实体 c) 将关于它们的事实作为观察记录存储
Docker:
docker build -t mcp/memory -f src/memory/Dockerfile .
此MCP服务器根据MIT许可证授权。这意味着你可以在MIT许可证的条款和条件下自由使用、修改和分发该软件。有关详细信息,请参阅项目存储库中的LICENSE文件。