✨ 核心功能
- 知识图谱存储:维护实体及其关系的持久化图谱
- 实体管理:创建、检索、更新和删除具有自定义类型的实体
- 关系追踪:以主动语态定义和管理实体之间的关系
- 观察系统:随时间添加和删除关于实体的观察
- 强大搜索:通过名称、类型或观察内容查找相关节点
- 持久存储:数据以简单JSON格式在会话间持久保存
- 灵活传输模式:支持stdio(标准输入/输出)和SSE(服务器发送事件)两种传输模式
- 跨平台:可在Linux、macOS和Windows上运行
🛠️ 可用工具
create_entities
- 在知识图谱中创建多个新实体create_relations
- 在实体间创建多个新关系add_observations
- 向现有实体添加新观察delete_entities
- 删除多个实体及其关联关系delete_observations
- 从实体中删除特定观察delete_relations
- 从知识图谱中删除多个关系read_graph
- 读取整个知识图谱search_nodes
- 基于查询搜索知识图谱中的节点open_nodes
- 按名称打开特定节点
🌟 适用场景
- AI助手的长期记忆:使AI助手能够记住用户偏好、过去的交互和重要事实
- 知识管理:组织关于人、地点、事件和概念的信息
- 关系追踪:维护实体之间的关系网络
- 上下文持久性:在多个会话中保留重要上下文
- 日志和日常记录:维护事件、活动和反思的结构化记录,便于按时间顺序检索和关联过去的经历
📦 安装教程
选项1:下载预构建二进制文件
从GitHub Releases页面下载适用于您平台的最新预构建二进制文件。
macOS安装示例(Apple Silicon):
bash
curl -L https://github.com/okooo5km/memory-mcp-server-go/releases/latest/download/memory-mcp-server-go-macos-arm64.zip -o memory-mcp-server.zip
unzip memory-mcp-server.zip
chmod +x memory-mcp-server-go
xattr -d com.apple.quarantine memory-mcp-server-go
mkdir -p ~/.local/bin
mv memory-mcp-server-go ~/.local/bin/
rm memory-mcp-server.zip
Linux安装示例(x86_64):
bash
curl -L https://github.com/okooo5km/memory-mcp-server-go/releases/latest/download/memory-mcp-server-go-linux-amd64.tar.gz -o memory-mcp-server.tar.gz
tar -xzf memory-mcp-server.tar.gz
chmod +x memory-mcp-server-go
mkdir -p ~/.local/bin
mv memory-mcp-server-go ~/.local/bin/
rm memory-mcp-server.tar.gz
选项2:从源代码构建
-
克隆仓库:
bash
git clone https://github.com/okooo5km/memory-mcp-server-go.git
cd memory-mcp-server-go -
构建项目(推荐使用Make):
bash
make -
安装二进制文件:
bash
mkdir -p ~/.local/bin
cp memory-mcp-server-go ~/.local/bin/
🔧 调试方式
命令行参数
-t, --transport
:指定传输类型(stdio或sse,默认为stdio)-m, --memory
:自定义知识图谱存储路径(可选)-p, --port
:SSE传输的端口号(默认为8080)
示例用法:
```bash
使用默认设置(stdio传输,默认内存文件)
memory-mcp-server-go
指定自定义内存文件位置
memory-mcp-server-go --memory /path/to/your/memory.json
在特定端口上使用SSE传输
memory-mcp-server-go --transport sse --port 9000
```
内存文件存储路径
memory.json
文件用于存储知识图谱数据。服务器按以下优先级规则确定其位置:
1. 命令行参数:如果使用-m
或--memory
标志提供路径,则使用此路径
2. 环境变量:如果未提供命令行参数,服务器检查MEMORY_FILE_PATH
环境变量
3. 默认位置:如果上述均未指定,服务器默认为可执行文件所在目录中的memory.json
开发要求
- Go 1.20或更高版本
- github.com/mark3labs/mcp-go
知识图谱结构
- 实体:图中的节点,具有名称、类型和观察列表
- 关系:实体之间的边,具有主动语态的关系类型
- 观察:与实体相关的事实或细节
知识图谱以行分隔的JSON文件形式持久化到磁盘,每行是一个实体或关系对象。