使用说明

项目简介

Redis Agent Memory Server 是一个专为AI Agent和应用设计的内存服务器,它基于Redis构建,旨在管理对话上下文和长期记忆。该项目提供RESTful API 和 MCP (Model Context Protocol) 服务器接口,方便AI Agent进行记忆存储、检索和管理,从而提升Agent的对话能力和长期知识的积累。

主要功能点

  • 短期记忆: 存储会话消息、Token计数、上下文和元数据,自动递归地总结对话,并能感知客户端模型Token限制。
  • 长期记忆: 跨会话存储长期记忆,支持语义搜索和高级过滤,包括按会话、命名空间、主题、实体和时间戳过滤。
  • RESTful API: 提供完善的RESTful API,用于健康检查、会话管理、记忆读写和搜索等操作。
  • MCP 服务器接口: 提供基于FastMCP实现的MCP服务器接口,支持工具注册,方便MCP客户端调用长期记忆管理功能。
  • 命名空间支持: 支持命名空间,实现会话和长期记忆的隔离。
  • 自动摘要: 自动且递归地总结对话内容,减少上下文Token长度。
  • 语义搜索: 支持短期和长期记忆的语义搜索,并提供高级过滤系统。
  • 主题建模和实体识别: 使用BERTopic进行主题建模,使用BERT进行实体识别,增强记忆的组织和检索能力。

安装步骤

  1. 下载仓库: 从GitHub仓库 'https://github.com/redis-developer/agent-memory-server' 下载代码。
  2. 安装依赖: 进入项目根目录,使用pip安装项目依赖(推荐在虚拟环境中操作):
    pip install -e .
    或者,如果安装了 'uv',可以使用 'uv sync' 命令:
    uv sync

服务器配置

Agent Memory Server 提供了 MCP 服务器接口,用于与支持 MCP 协议的客户端(如 Claude、Cursor 等)连接。MCP 客户端需要配置 MCP 服务器的启动命令 (command) 及其参数 (args) 或服务器URL (url) 才能建立连接。

1. 基于命令和参数配置 (适用于 Claude, Cursor 等客户端 Command 配置)

以下是 Claude 和 Cursor 客户端的 MCP 服务器配置示例,你需要根据你的实际环境进行调整:

Claude 客户端配置示例 (JSON):

{
  "mcpServers": {
    "redis-memory-server": {
      "command": "uv",
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/TO/REPO/DIRECTORY/agent-memory-server",  // 替换为你的 agent-memory-server 仓库的绝对路径
        "run",
        "python",
        "-m",
        "agent_memory_server.mcp",
        "stdio"
      ]
    }
  }
}

参数说明:

  • 'command': 启动 MCP 服务器的命令,这里使用 'uv'(如果已安装 uv)。如果未安装 uv,可以尝试直接使用 'python' 命令,并调整 'args' 中的路径。
  • 'args': 命令参数列表。
    • '--directory': 指定工作目录为 'agent-memory-server' 仓库的绝对路径。请务必替换 '/ABSOLUTE/PATH/TO/REPO/DIRECTORY/agent-memory-server' 为你本地仓库的实际绝对路径。
    • 'run python -m agent_memory_server.mcp stdio': 运行 'agent_memory_server.mcp' 模块,并使用 'stdio' 模式启动 MCP 服务器。'stdio' 模式适用于 Claude 等客户端。

Cursor 客户端配置示例 (JSON, Command 模式): 与 Claude 类似,command 配置模式的 Cursor 配置如下:

{
  "mcpServers": {
    "redis-memory-server": {
      "command": "uv",
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/TO/REPO/DIRECTORY/agent-memory-server",  // 替换为你的 agent-memory-server 仓库的绝对路径
        "run",
        "python",
        "-m",
        "agent_memory_server.mcp",
        "stdio"
      ]
    }
  }
}

参数说明: 与 Claude 客户端配置的参数说明一致。

2. 基于 URL 配置 (适用于 Cursor 等客户端 URL 配置, SSE 模式)

Cursor 客户端也支持通过 URL 连接 SSE 模式的 MCP 服务器。你需要先启动 SSE 模式的 MCP 服务器,然后在 Cursor 客户端中配置服务器 URL。

启动 SSE 模式 MCP 服务器:

python -m agent_memory_server.mcp sse

或者,如果使用 'uv':

uv run python -m agent_memory_server.mcp sse

Cursor 客户端配置示例 (JSON, URL 模式):

{
  "mcpServers": {
    "redis-memory-server": {
      "url": "http://localhost:9000/sse" // SSE 模式 MCP 服务器的 URL,默认为 http://localhost:9000/sse
    }
  }
}

参数说明:

  • 'url': SSE 模式 MCP 服务器的 URL。默认情况下,Agent Memory Server 的 MCP 服务器 SSE 模式运行在 'http://localhost:9000/sse'。

环境变量配置 (可选):

你还可以通过环境变量配置 Agent Memory Server 的行为,例如 Redis 连接、模型选择等。 详细环境变量请参考仓库 README.md 的 Configuration 章节。

基本使用方法

  1. 启动服务器: 根据你的需求选择启动 REST API 服务器和/或 MCP 服务器。具体启动命令请参考仓库 README.md 的 Getting Started 章节。
  2. 配置 MCP 客户端: 在支持 MCP 协议的客户端(如 Claude, Cursor)中,根据上述 “服务器配置” 部分的说明配置 MCP 服务器连接信息。
  3. 使用 MCP 工具: 配置完成后,客户端即可通过 MCP 协议调用 Agent Memory Server 提供的工具,例如 'create_long_term_memories' (创建长期记忆), 'search_long_term_memory' (搜索长期记忆), 'hydrate_memory_prompt' (根据记忆生成 Prompt) 等。具体工具的使用方法请参考仓库 README.md 和 'agent_memory_server/mcp.py' 文件中工具函数的文档注释。
  4. 使用 REST API: 你可以使用任何 HTTP 客户端与 REST API 进行交互,进行会话管理、记忆操作和搜索等。API 文档可以通过访问 'http://localhost:8000/docs' (如果使用默认端口) 查看。

信息

分类

数据库与文件