MCP Memory

by ddkang1
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Uses OpenAI's embedding models and LLMs for memory management, with configurable model selection through environment variables.

MCP内存

模型上下文协议 (MCP) 服务器通过高效的知识图谱功能为数据丰富的应用程序实现内存解决方案。

概述

此 MCP 服务器为数据丰富的应用程序实现了内存解决方案,这些应用程序需要从多个来源(包括上传的文件)搜索信息。它内部使用 HippoRAG 通过高效的知识图谱来管理内存。HippoRAG 是此软件包的必需依赖项。

特征

  • 基于会话的内存:为特定聊天会话创建和管理内存
  • 高效知识图谱:使用 HippoRAG 进行内存管理
  • 多传输支持:可与 stdio 和 SSE 传输配合使用
  • 搜索功能:从各种来源搜索信息,包括上传的文件
  • 自动资源管理:基于 TTL 的会话和内存实例清理

安装

从 PyPI 安装:

pip install mcp-mem hipporag

或者从源安装:

git clone https://github.com/ddkang1/mcp-mem.git cd mcp-mem pip install -e . pip install hipporag

注意:HippoRAG 是 mcp-mem 运行所必需的依赖项。

用法

您可以直接运行 MCP 服务器:

mcp-mem

默认情况下,它使用 stdio 传输。要使用 SSE 传输:

mcp-mem --sse

您还可以为 SSE 传输指定主机和端口:

mcp-mem --sse --host 127.0.0.1 --port 3001

配置

基本配置

要在 Windsurf 中将此工具与 Claude 一起使用,请将以下配置添加到您的 MCP 配置文件中:

"memory": { "command": "/path/to/mcp-mem", "args": [], "type": "stdio", "pollingInterval": 30000, "startupTimeout": 30000, "restartOnFailure": true }

command字段应指向您使用 pip 安装 python 包的目录。

环境变量配置

您可以通过环境变量配置 mcp-mem 使用的 LLM 和嵌入模型:

  • EMBEDDING_MODEL_NAME :要使用的嵌入模型的名称(默认值:“text-embedding-3-large”)
  • EMBEDDING_BASE_URL :嵌入 API 的基本 URL(可选)
  • LLM_NAME :要使用的 LLM 模型的名称(默认值:“gpt-4o-mini”)
  • LLM_BASE_URL :LLM API 的基本 URL(可选)
  • OPENAI_API_KEY :OpenAI API 密钥(必需)

内存管理配置

该服务器包括自动资源管理功能:

  • 会话 TTL :在指定天数不活动后自动删除会话目录。使用session_ttl_days配置参数设置(默认值:None - 禁用)。
  • 实例 TTL :在指定的非活动时间后,自动从内存中卸载 HippoRAG 实例。使用instance_ttl_minutes配置参数设置(默认值:30 分钟)。此功能通过卸载非活动实例并保留底层数据来帮助管理内存使用情况。当再次访问已卸载的实例时,它将自动从磁盘重新加载。

使用示例:

EMBEDDING_MODEL_NAME="your-model" LLM_NAME="your-llm" mcp-mem

为了方便起见,您可以使用提供的示例脚本:

./examples/run_with_env_vars.sh

可用工具

MCP 服务器提供以下工具:

  • create_memory :为给定的聊天会话创建新的记忆
  • store_memory :向特定会话添加内存
  • 检索内存:从特定会话中检索内存

发展

开发安装

git clone https://github.com/ddkang1/mcp-mem.git cd mcp-mem pip install -e ".[dev]"

运行测试

pytest

代码风格

该项目使用 Black 进行格式化,使用 isort 进行导入排序,使用 flake8 进行 linting:

black src tests isort src tests flake8 src tests

贡献

欢迎贡献代码!欢迎提交 Pull 请求。

执照

该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。

-
security - not tested
A
license - permissive license
-
quality - not tested

MCP 服务器使用 HippoRAG 为数据丰富的应用程序实现内存解决方案,以实现高效的知识图谱功能,从而能够跨多个来源(包括上传的文件)进行搜索。

  1. Overview
    1. Features
      1. Installation
        1. Usage
          1. Configuration
            1. Basic Configuration
            2. Environment Variable Configuration
            3. Memory Management Configuration
          2. Available Tools
            1. Development
              1. Installation for Development
              2. Running Tests
              3. Code Style
            2. Contributing
              1. License
                ID: 48906n13st