项目简介

Mem0 MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,它集成了 Mem0.ai 的功能,为大型语言模型 (LLM) 提供持久化记忆能力。该服务器允许 AI 智能体跨会话存储和检索信息,增强 LLM 的上下文理解和长期记忆能力。

主要功能点

  • 记忆存储 (add_memory): 允许 LLM 将文本内容作为记忆存储到 Mem0.ai 中,并关联用户和会话信息。
  • 记忆检索 (search_memory): 允许 LLM 基于自然语言查询在 Mem0.ai 中搜索和检索相关的记忆内容。
  • 用户和会话管理: 支持通过 'userId' 和 'sessionId' 参数对记忆进行用户和会话级别的隔离和管理。

安装步骤

  1. 安装 npm 包 (推荐快速使用): 打开终端,全局安装 '@pinkpixel/mem0-mcp' 包:

    npm install -g @pinkpixel/mem0-mcp
  2. 或从仓库克隆运行: 如果你希望从克隆的仓库运行,请先克隆仓库并安装依赖:

    git clone https://github.com/pinkpixel-dev/mem0-mcp
    cd mem0-mcp
    npm install
    npm run build

服务器配置

在你的 MCP 客户端配置中 (例如 Claude Desktop, Cursor, Cline, Roo Code 等),添加以下服务器配置。你需要根据你的安装方式选择对应的配置:

1. 使用 'npx' 启动 (推荐):

{
  "mcpServers": {
    "mem0-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@pinkpixel/mem0-mcp"
      ],
      "env": {
        "OPENAI_API_KEY": "YOUR_OPENAI_API_KEY_HERE"  // 替换为你的 OpenAI API Key
      },
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

2. 使用 'node' 启动 (从克隆仓库运行):

{
  "mcpServers": {
    "mem0-mcp": {
      "command": "node",
      "args": [
        "/path/to/your/cloned/mem0-mcp/build/index.js" // 替换为你的仓库 build 目录下的 index.js 文件的绝对路径
      ],
      "env": {
        "OPENAI_API_KEY": "YOUR_OPENAI_API_KEY_HERE"  // 替换为你的 OpenAI API Key
      },
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

重要:

  • 请将 '"YOUR_OPENAI_API_KEY_HERE"' 替换为你实际的 OpenAI API Key。Mem0 MCP Server 内部使用 OpenAI API 进行记忆的嵌入和处理。
  • 如果你选择从克隆仓库运行,请将 '"/path/to/your/cloned/mem0-mcp/build/index.js"' 替换为你克隆的 'mem0-mcp' 仓库中 'build/index.js' 文件的绝对路径

可选配置: 默认用户 ID

为了方便测试或单用户场景,你可以设置 'DEFAULT_USER_ID' 环境变量。如果设置了该变量,并且在调用 'search_memory' 工具时省略了 'userId' 参数,服务器将使用 'DEFAULT_USER_ID' 的值作为默认用户 ID。

例如,在 'npx' 启动的配置中添加 'DEFAULT_USER_ID' 环境变量:

{
  "mcpServers": {
    "mem0-mcp": {
      // ... 其他配置 ...
      "env": {
        "OPENAI_API_KEY": "YOUR_OPENAI_API_KEY_HERE",
        "DEFAULT_USER_ID": "user" // 设置默认用户 ID 为 "user"
      },
      // ... 其他配置 ...
    }
  }
}

基本使用方法

配置完成后,你的 MCP 客户端 (如 Claude, Cursor 等) 即可连接到 Mem0 MCP Server。LLM 可以通过调用 'add_memory' 工具存储记忆,并通过 'search_memory' 工具检索记忆。

  • 存储记忆: LLM 可以调用 'add_memory' 工具,并提供 'content' (记忆内容) 和 'userId' (用户 ID) 作为参数。例如:
{
  "action": "call_tool",
  "tool_name": "add_memory",
  "arguments": {
    "content": "我在上次的会议中讨论了项目进展。",
    "userId": "用户123"
  }
}
  • 检索记忆: LLM 可以调用 'search_memory' 工具,并提供 'query' (查询语句) 和 'userId' (用户 ID,可选) 作为参数。例如:
{
  "action": "call_tool",
  "tool_name": "search_memory",
  "arguments": {
    "query": "上次会议讨论了什么?",
    "userId": "用户123"
  }
}

服务器会将检索到的记忆内容以 JSON 格式返回给 LLM。

信息

分类

AI与计算