shareMCP
开发文档
开发文档
shareMCP

最大的MCP服务器和客户端集合,轻松搜索和发现

资源

  • 文档
  • 指南
  • API

社区

  • 博客
  • github

关于

  • 关于我们
  • 隐私政策
  • 服务条款

© 2025 shareMCP. 保留所有权利。

    mem0-mcp

    pinkpixel-dev/mem0-mcp
    ppinkpixel-dev
    更新于 6/3/2025
    首页mem0-mcp

    ✨ mem0 Memory System:构建AI的记忆体系

    概述

    mem0-mcp是由pinkpixel-dev创建的一个现代化记忆管理系统,专为AI应用而设计。这个系统以其灵活的提供商支持,能够与OpenAI、Ollama等进行无缝整合,且通过MCP协议实现AI代理的长期记忆存储。mem0可以作为简单易用的API接口,也可以以MCP服务器的形式直接嵌入AI应用中。

    功能特性

    多提供商支持

    • 开放性选择:mem0支持多种AI提供商,包括OpenAI、Anthropic、Google、DeepSeek、OpenRouter以及本地使用的Ollama。
    • 嵌入灵活性:用户可以选择在OpenAI、HuggingFace或Ollama之间进行嵌入操作。

    本地存储与配置

    • 本地化存储:mem0支持通过ChromaDB和SQLite进行本地化的记忆存储。
    • 可配置性强:用户可以根据需求自定义数据目录、模型和参数。

    记忆管理自主性

    • 自动化管理:无需显式命令,系统能够自动提取、存储和检索用户信息。
    • 用户隔离:支持多用户使用,每个用户均有独立的记忆空间。

    双重集成方式

    • 服务器集成方式(MCP):提供RESTful API,便于与支持MCP协议的应用集成。
    • 直接库集成方式:可直接嵌入到应用中,免去单独服务器运行的负担。

    安装说明

    方法一:手动安装

    1. 克隆仓库并导航至目录:

      git clone https://github.com/pinkpixel-dev/mem0-mcp.git
      cd mem0-mcp
      
    2. 安装依赖:

      pip install -r requirements.txt
      
    3. 创建.env配置文件:
      cp .env.example .env
      
    4. 编辑.env文件并填写API密钥和设置(详见环境配置指南)。

    方法二:使用安装脚本

    项目提供了便捷的安装脚本,自动化设置流程:

    ./install.sh
    

    安装脚本功能包括:

    • 创建Python虚拟环境
    • 安装所有依赖项
    • 配置环境设置
    • 提供带有视觉反馈的指导安装体验

    可自定义安装选项:

    # 快速非交互式安装
    ./install.sh --quick
    
    # 指定自定义环境目录
    ./install.sh --env-dir ./custom_env
    
    # 使用特定安装方法(pip, uv, 或 conda)
    ./install.sh --method pip
    

    服务器运行

    方法一:直接运行Python脚本

    用默认设置启动服务器:

    python server.py
    

    若端口8000被占用,服务器将自动查找下一个可用端口。

    或使用命令行参数自定义:

    python server.py --host 127.0.0.1 --port 8080 --provider ollama --embedding-provider ollama --data-dir ./custom_memory_data
    

    可选项:

    # 禁用自动端口查找
    python server.py --no-auto-port
    
    # 开启开发自动重载
    python server.py --reload
    

    方法二:使用运行服务器脚本

    借助提供的shell脚本可以更方便地运行服务器:

    ./run_server.sh
    

    此脚本支持与Python脚本相同的选项:

    # 自定义主机和端口
    ./run_server.sh --host 127.0.0.1 --port 8080
    
    # 指定提供商
    ./run_server.sh --provider openai --embedding ollama
    
    # 设置自定义数据目录
    ./run_server.sh --data-dir ~/mem0_data
    

    方法三:支持MCP的应用程序启动器

    如果需要与使用MCP协议的命令行应用程序整合,使用launch脚本:

    python start_mem0_server.py
    

    此脚本专为MCP集成设计,并以MCP客户端预期的格式输出服务器信息。支持与前述方法相同的选项:

    # 自定义设置
    python start_mem0_server.py --host 127.0.0.1 --port 8080 --provider ollama
    
    # 静默模式(减少输出)
    python start_mem0_server.py --quiet
    

    集成方法

    方法一:MCP服务器(用于MCP兼容应用)

    MCP服务器提供RESTful API,任何支持机器通信协议(MCP)的应用程序均可使用。

    API端点

    端点方法描述
    /configurePOST配置记忆提供商
    /memory/addPOST添加记忆
    /memory/searchPOST搜索记忆
    /memory/chatPOST使用记忆进行对话
    /memory/{memory_id}GET通过ID获取记忆
    /memory/{memory_id}DELETE删除特定ID的记忆
    /memoriesDELETE清空所有记忆
    /healthGET健康检查
    /providersGET列出可用提供商

    使用客户端

    from client import Mem0Client
    
    # 初始化客户端
    client = Mem0Client(base_url="http://localhost:8000")
    
    # 配置记忆提供商
    client.configure(
        provider="openai",
        embedding_provider="openai",
        data_dir="./memory_data"
    )
    
    # 添加记忆
    memory_id = client.add_memory(
        content="这是需要记住的重要事实",
        user_id="user123"
    )
    
    # 搜索记忆
    results = client.search_memories(
        query="重要的事实",
        user_id="user123"
    )
    
    # 使用记忆环境进行聊天
    response = client.chat(
        message="你有什么重要的信息?",
        user_id="user123"
    )
    
    print(response)
    

    MCP兼容应用集成步骤

    1. 使用启动器脚本启动mem0 MCP服务器:

      python start_mem0_server.py
      
    2. 脚本将以MCP客户端预期的格式输出服务器信息:

      {"name": "mem0", "capabilities": ["memory"], "url": "http://0.0.0.0:8000", "version": "1.0.0"}
      
    3. 配置应用程序使用MCP服务器URL

    4. 通过应用程序界面使用记忆功能

    详细步骤请参考MCP集成指南。

    方法二:直接库集成(适用于任何应用)

    无需运行单独的服务器,你可以直接将记忆系统嵌入到自己的应用中:

    from mem0.memory import MemoryManager
    from mem0.providers import OpenAIProvider, OllamaEmbeddingProvider
    
    # 初始化记忆管理器
    memory_manager = MemoryManager(
        provider=OpenAIProvider(api_key="your_openai_api_key"),
        embedding_provider=OllamaEmbeddingProvider(),
        data_dir="./memory_data"
    )
    
    # 添加记忆
    memory_id = memory_manager.add_memory(
        content="这是需要记住的重要事实",
        user_id="user123"
    )
    
    # 搜索记忆
    results = memory_manager.search_memories(
        query="重要的事实",
        user_id="user123"
    )
    
    # 通过ID获取记忆
    memory = memory_manager.get_memory(memory_id)
    
    # 删除记忆
    memory_manager.delete_memory(memory_id)
    
    # 清除用户的所有记忆
    memory_manager.clear_memories(user_id="user123")
    
    详细步骤请参考直接集成指南。

    自主记忆系统

    mem0记忆系统有独特的自主记忆功能,其特点包括:

    1. 自动提取 用户交互中的关键信息。
    2. 无需命令地存储记忆。
    3. 必要时检索相关记忆以提供上下文。
    4. 通过注入记忆增强AI的响应能力。

    这种自动化的记忆管理使得AI能够自然地记住用户细节,而不需要显式的记忆命令。

    尝试自主记忆示例

    仓库中包括一个自主记忆系统的示例:

    python examples/autonomous_memory.py
    

    此示例演示了:

    • 个人信息的自动提取
    • 记忆的上下文检索
    • 自然地将记忆融入响应中

    环境配置

    mem0记忆系统可以通过环境变量或.env文件进行配置:
    # LLM提供商配置
    MEM0_PROVIDER=openai
    OPENAI_API_KEY=your_openai_api_key
    
    # 嵌入提供商配置
    MEM0_EMBEDDING_PROVIDER=openai
    
    # 存储配置
    MEM0_DATA_DIR=~/mem0_memories
    
    # 服务器配置
    MEM0_HOST=0.0.0.0
    MEM0_PORT=8000
    
    关于完整的配置选项,请参阅环境配置指南。

    贡献

    欢迎贡献!请随时提交Pull Request。

    开源许可

    本项目基于MIT许可证授权,详细信息请查看LICENSE文件。

    致谢

    • 感谢ChromaDB在向量存储方面的支持
    • 感谢LangChain对项目的启发
    • 感谢Ollama在本地LLM支持方面的贡献

    由 Pink Pixel 倾情打造 | GitHub
    关于 mem0-mcp
    提供灵活的AI应用记忆系统,支持多内存提供者,并通过简单API或MCP协议实现长期记忆。

    部署安装命令:

    { "mcpServers": { "pinkpixel-dev-mem0-mcp": { "env": { "OPENAI_API_KEY": "" }, "args": [ "start_mem0_server.py" ], "command": "python" } } }

    服务统计

    1599查看次数
    142使用人数
    91质量评分
    有状态服务
    安装难度: 复杂
    部署环境: 云端/本地
    服务特性
    内存系统
    AI集成
    MCP协议

    相关MCP

    查看更多

    暂无相关MCP