返回市场
内存-mcp-服务器

内存-mcp-服务器

作者:okooo5km102 星标更新:2025-04-16

项目介绍

内存MCP服务器

这是一个提供知识图谱管理能力的Model Context Protocol服务器。该服务器使LLMs能够在持久的知识图谱中创建、读取、更新和删除实体及关系,帮助AI助手在对话之间维持记忆。这是一个官方TypeScript内存MCP服务器的Swift实现。

注意: 此Swift版本需要macOS 14.0或更高版本。对于更广泛的平台支持(包括Windows、Linux和macOS 11.0+),请查看Go语言实现:memory-mcp-server-go

Swift平台 许可证

✨ 特性

  • 知识图谱存储:维护一个持久的实体及其关系图
  • 实体管理:创建、检索、更新和删除具有自定义类型的实体
  • 关系跟踪:定义并管理实体之间的主动语态关系
  • 观察系统:随着时间添加和移除关于实体的观察
  • 强大的搜索:通过名称、类型或观察内容找到相关节点
  • 持久存储:数据以简单的JSON格式在会话间持久保存

可用工具

  • 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 (数组,必需):要检索的实体名称数组

安装

方案1:单行安装(curl)

最简单的安装方式是使用单行安装程序,它会自动下载最新版本并将其安装到您家目录下的~/.local/bin

curl -fsSL https://raw.githubusercontent.com/okooo5km/memory-mcp-server/main/install.sh | bash

安装程序会:

  • 如果不存在,则创建~/.local/bin
  • 将此目录添加到您的PATH(在.zshrc或.bashrc中)
  • 下载并安装最新版本
  • 使二进制文件可执行

方案2:从源码构建

  1. 克隆仓库:

    git clone https://github.com/okooo5km/memory-mcp-server.git
    cd memory-mcp-server
    
  2. 构建项目:

    swift build -c release
    
  3. 安装二进制文件:

    # 安装到用户目录(推荐,无需sudo)
    mkdir -p ~/.local/bin
    cp $(swift build -c release --show-bin-path)/memory-mcp-server ~/.local/bin/
    

    确保~/.local/bin在您的PATH中,通过添加到您的shell配置文件:

    echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc  # 或 ~/.bashrc
    source ~/.zshrc  # 或 source ~/.bashrc
    

命令行参数

服务器支持以下命令行参数:

  • -h, --help:显示有关服务器、其用法和可用选项的帮助信息
  • -v, --version:显示memory-mcp-server的版本号

示例用法:

# 显示帮助信息
memory-mcp-server --help

# 显示版本信息
memory-mcp-server --version

配置

环境变量

服务器支持以下环境变量:

  • MEMORY_FILE_PATH:自定义存储知识图谱的路径(可选)
    • 如果未指定,默认为当前工作目录下的memory.json
    • 可以是绝对路径或相对于当前工作目录的相对路径

您可以在启动服务器时检查服务器日志中的配置文件路径。

export MEMORY_FILE_PATH="/path/to/your/memory.json"

针对Claude.app配置

添加到您的Claude设置:

"mcpServers": {
  "memory": {
    "command": "memory-mcp-server",
    "env": {
      "MEMORY_FILE_PATH": "/path/to/your/memory.json"
    }
  }
}

针对Cursor配置

在您的Cursor编辑器的Settings - mcp.json中添加以下配置:

{
  "mcpServers": {
    "memory": {
      "command": "memory-mcp-server",
      "env": {
        "MEMORY_FILE