此项目为MCP团队提供的记忆服务器增添了新功能,允许用户创建并管理一个知识图谱,用于捕获通过语言模型(LLM)进行的交互。
通过Smithery可自动安装适用于Claude桌面的知识图谱记忆服务器:
npx -y @smithery/cli install @BRO3886/mcp-memory-custom --client claude
git clone git@github.com:BRO3886/mcp-memory-custom.git
cd mcp-memory-custom
npm install
在运行服务器前,可设置MEMORY_FILE_PATH环境变量来指定内存文件的路径。若未设置,服务器默认使用与脚本相同目录下的memory.json。
在claude_desktop_config.json / .cursor/mcp.json文件中添加以下内容:
{
"mcpServers": {
"memory": {
"command": "node",
"args": ["/path/to/mcp-memory-custom/dist/index.js"]
}
}
}
系统提示更改:
遵循以下步骤进行每次交互:
1. 该项目的记忆文件路径为 /path/to/memory/project_name.json - 在所有记忆文件操作中始终传递此路径(例如创建实体、关系或检索记忆等)
2. 用户标识:
- 假设你与 default_user 进行交互
- 如果尚未标识 default_user,请主动尝试这样做
3. 记忆检索:
- 总是从“Remembering...”开始,仅回复“Remembering...”,然后从你的知识图谱中检索所有相关信息
- 将你的知识图谱始终称为“记忆”
4. 记忆内容:
- 在与用户交流时,请注意任何属于以下类别的新信息:
a) 基本人格(年龄、性别、位置、职位、教育水平等)
b) 行为(兴趣、习惯等)
c) 偏好(沟通风格、首选语言等)
d) 其他相关信息
5. 记忆管理:
- 请确保所有记忆内容都清晰、准确,并且与当前对话相关
- 避免包含无关或重复的信息
6. 回应格式:
- 使用清晰简洁的语言进行回复
- 在复杂情况下,分点列出信息以提高可读性
在终端中运行以下命令启动服务器:
npm start
以下是使用curl命令对知识图谱进行操作的示例:
curl -X POST http://localhost:3000/create-graph \
-H "Content-Type: application/json" \
-d '{"graphName":"用户信息图谱","description":"存储用户相关的信息"}'
curl -X POST http://localhost:3000/query-graph \
-H "Content-Type: application/json" \
-d '{"graphName":"用户信息图谱","query":"查询用户的年龄和位置"}'
curl -X PUT http://localhost:3000/update-graph \
-H "Content-Type: application/json" \
-d '{"graphName":"用户信息图谱","updates":{"年龄":"28","位置":"北京"}}'
curl -X DELETE http://localhost:3000/delete-graph \
-H "Content-Type: application/json" \
-d '{"graphName":"用户信息图谱"}'
发送一个 POST 请求到:
http://localhost:3000/create-graph
请求体:
{
"graphName": "string", // 知识图谱的名称
"description": "string" // 可选,知识图谱的描述
}
发送一个 POST 请求到:
http://localhost:3000/query-graph
请求体:
{
"graphName": "string", // 知识图谱的名称
"query": "string" // 查询的具体内容
}
发送一个 PUT 请求到:
http://localhost:3000/update-graph
请求体:
{
"graphName": "string", // 知识图谱的名称
"updates": { // 要更新的内容
"property1": "新值1",
"property2": "新值2"
}
}
发送一个 DELETE 请求到:
http://localhost:3000/delete-graph
请求体:
{
"graphName": "string" // 要删除的知识图谱名称
}
借助此项目,用户可轻松创建、查询、更新和删除知识图谱,实现高效的交互式记忆管理。