使用说明
项目简介
mcp-mem0 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为 AI Agent 提供长期记忆功能。它集成了 Mem0 记忆库,允许 AI Agent 存储、检索和搜索记忆,从而增强 Agent 的上下文理解和持久学习能力。该项目是一个实用的 MCP 服务器模板,可以作为构建自定义 MCP 服务器的参考。
主要功能点
- 记忆存储 (save_memory): 允许 AI Agent 将信息存储到长期记忆中,并进行语义索引,以便后续检索。
- 全量记忆检索 (get_all_memories): 提供检索所有已存储记忆的功能,帮助 Agent 获取完整的上下文信息。
- 语义记忆搜索 (search_memories): 支持使用自然语言查询进行语义搜索,快速找到相关记忆,提升信息检索效率。
安装步骤
使用 uv (推荐 Python 3.12+ 环境):
- 安装 uv:
pip install uv - 克隆仓库:
git clone https://github.com/coleam00/mcp-mem0.git cd mcp-mem0 - 安装依赖:
uv pip install -e . - 创建 .env 配置文件: 复制 '.env.example' 文件并重命名为 '.env',然后根据需要配置环境变量,例如数据库连接信息、LLM API 密钥等。
使用 Docker:
- 构建 Docker 镜像:
docker build -t mcp/mem0 --build-arg PORT=8050 . - 创建 .env 配置文件: 复制 '.env.example' 文件并重命名为 '.env',然后配置环境变量。
服务器配置 (MCP 客户端配置)
stdio 传输配置 (Python 命令):
{ "mcpServers": { "mem0": { "command": "your/path/to/mcp-mem0/.venv/Scripts/python.exe", // Python 解释器路径,请替换为实际路径 "args": ["your/path/to/mcp-mem0/src/main.py"], // MCP 服务器启动脚本路径,请替换为实际路径 "env": { "TRANSPORT": "stdio", // 传输协议,固定为 stdio "LLM_PROVIDER": "openai", // LLM 提供商,支持 openai, openrouter, ollama "LLM_BASE_URL": "https://api.openai.com/v1", // LLM API 基础 URL,根据 LLM 提供商配置 "LLM_API_KEY": "YOUR-API-KEY", // LLM API 密钥,请替换为你的 API 密钥 "LLM_CHOICE": "gpt-4o-mini", // 使用的 LLM 模型名称 "EMBEDDING_MODEL_CHOICE": "text-embedding-3-small", // 使用的 Embedding 模型名称 "DATABASE_URL": "YOUR-DATABASE-URL" // PostgreSQL 数据库连接字符串,用于存储记忆,请替换为你的数据库连接信息 } } } }
stdio 传输配置 (Docker 命令):
{ "mcpServers": { "mem0": { "command": "docker", "args": ["run", "--rm", "-i", "-e", "TRANSPORT", // 传输协议,固定为 stdio "-e", "LLM_PROVIDER", // LLM 提供商 "-e", "LLM_BASE_URL", // LLM API 基础 URL "-e", "LLM_API_KEY", // LLM API 密钥 "-e", "LLM_CHOICE", // 使用的 LLM 模型名称 "-e", "EMBEDDING_MODEL_CHOICE", // 使用的 Embedding 模型名称 "-e", "DATABASE_URL", // PostgreSQL 数据库连接字符串 "mcp/mem0"], // Docker 镜像名称 "env": { "TRANSPORT": "stdio", // 传输协议,固定为 stdio "LLM_PROVIDER": "openai", // LLM 提供商,支持 openai, openrouter, ollama "LLM_BASE_URL": "https://api.openai.com/v1", // LLM API 基础 URL,根据 LLM 提供商配置 "LLM_API_KEY": "YOUR-API-KEY", // LLM API 密钥,请替换为你的 API 密钥 "LLM_CHOICE": "gpt-4o-mini", // 使用的 LLM 模型名称 "EMBEDDING_MODEL_CHOICE": "text-embedding-3-small", // 使用的 Embedding 模型名称 "DATABASE_URL": "YOUR-DATABASE-URL" // PostgreSQL 数据库连接字符串,用于存储记忆,请替换为你的数据库连接信息 } } } }
SSE 传输配置:
首先需要启动 MCP 服务器 (具体启动方式请参考仓库 README 文档),然后 MCP 客户端可以通过以下配置连接到服务器:
{ "mcpServers": { "mem0": { "transport": "sse", // 传输协议,固定为 sse "url": "http://localhost:8050/sse" // MCP 服务器 SSE Endpoint URL,默认为 http://localhost:8050/sse,请根据实际情况修改 } } }
注意: 如果使用 Windsurf 客户端,请将 'url' 替换为 'serverUrl'。 如果使用 n8n 客户端且服务器运行在宿主机,请将 'localhost' 替换为 'host.docker.internal'。
基本使用方法
- 配置 MCP 客户端: 根据你选择的传输方式 (stdio 或 sse),将上述相应的 JSON 配置添加到你的 MCP 客户端配置中。
- 启动 MCP 服务器 (SSE 传输): 如果使用 SSE 传输,请根据仓库 README 文档中的 "Running the Server" 章节启动 mcp-mem0 服务器。
- 在 MCP 客户端中使用工具: 在你的 AI Agent 应用中,可以通过 MCP 客户端调用 'save_memory', 'get_all_memories', 'search_memories' 等工具来操作长期记忆。
例如,在提示词中可以指示 AI Agent 使用 'search_memories' 工具来检索相关信息,或者使用 'save_memory' 工具来存储重要信息。
信息
分类
AI与计算