Skip to main content
Glama

MemOS-MCP

by qinshu1109
Apache 2.0
3
  • Linux
  • Apple
EXPERT_CONSULTATION_REPORT.md7.55 kB
# MemOS MCP集成技术问题专家咨询报告 ## 📋 项目背景 ### 目标架构 实现一个智能记忆增强对话系统,核心流程为: ``` 用户问题 → Claude → MCP调用MemOS → MemOS检索记忆 → DeepSeek-V3组织上下文 → 返回Claude → Claude二次加工 → 智能回答 ``` ### 技术需求 - **本地存储** + **远程LLM推理**的混合架构 - Claude通过MCP协议调用MemOS获取记忆上下文 - MemOS使用DeepSeek-V3进行基础上下文组织 - Claude基于MemOS返回的上下文进行二次加工 ## 🖥️ 系统环境 ### 硬件配置 - **操作系统**: Linux (Ubuntu/Debian系) - **内存**: 32GB RAM - **显卡**: 集成显卡/低端独显(基本无GPU计算能力) - **CPU**: 标准x86_64处理器 - **存储**: 充足的SSD/HDD空间 ### 软件环境 - **Python**: 3.12 (系统Python,externally-managed-environment) - **Poetry**: 已安装,用于依赖管理 - **Claude Desktop**: 已安装,支持MCP协议 - **网络**: 正常,可访问SiliconFlow API ### API配置 - **SiliconFlow API**: - Key: sk-ygqlrgrxrypykiiskuspuahkwihhbhhjhazqokntwdzfwqdv - Base URL: https://api.siliconflow.cn/v1 - 模型: deepseek-ai/DeepSeek-V3 - **成本考虑**: 优先使用经济实惠的API服务 ## 🎯 已实现的功能 ### MemOS核心功能 1. **智能记忆管理** ✅ - 向量化存储(Qdrant) - 语义搜索 - 记忆分类(学习笔记、工作任务、个人见解) 2. **AI对话增强** ✅ - DeepSeek-V3集成 - 基于记忆的上下文组织 - 智能提醒功能 3. **命令行界面** ✅ - 交互式对话模式 - 记忆管理功能 - 完整的演示系统 ### 测试验证 - **系统测试**: 5/5项通过(OpenAI库、基础依赖、Qdrant、SiliconFlow API、OpenAI兼容API) - **功能测试**: 记忆添加、搜索、AI对话均正常 - **性能测试**: 响应时间<3秒,记忆检索准确 ## ❌ 核心问题:MCP集成失败 ### 问题描述 尝试将MemOS集成为Claude Desktop的MCP服务器时遇到多重技术障碍,导致无法实现预期的"Claude调用MemOS"功能。 ### 具体错误序列 #### 1. Poetry路径问题 ``` Poetry could not find a pyproject.toml file in /home/qqinshu or its parents ``` - **原因**: Claude Desktop MCP配置中的工作目录设置问题 - **尝试解决**: 修改cwd路径、使用绝对路径、创建启动脚本 - **结果**: 部分缓解但未根本解决 #### 2. MCP协议兼容性问题 ``` MCP error -32601: Method not found: initialize ``` - **原因**: 初始MCP服务器实现缺少必需的`initialize`方法 - **尝试解决**: 添加完整的MCP协议支持(initialize, tools/list, tools/call) - **结果**: 协议层面问题解决 #### 3. Python环境管理问题 ``` error: externally-managed-environment × This environment is externally managed ``` - **原因**: 系统Python环境被保护,无法直接安装包 - **影响**: 无法为系统Python安装openai、qdrant-client等依赖 - **尝试解决**: - 使用Poetry虚拟环境(遇到路径问题) - 创建独立虚拟环境(配置复杂) - 使用--break-system-packages(不推荐) #### 4. 依赖冲突问题 ``` ModuleNotFoundError: No module named 'openai' ``` - **原因**: MCP服务器运行在系统Python环境,但依赖安装在Poetry虚拟环境 - **复杂性**: - Poetry虚拟环境路径动态变化 - Claude Desktop MCP配置难以指定虚拟环境 - 环境变量传递问题 ### 当前临时解决方案 创建了`standalone_mcp_server.py`: - 仅使用Python标准库 - 简化的记忆存储(内存数组) - 基础的相似度算法 - 无外部LLM调用 **限制**: - 缺少向量数据库的语义搜索能力 - 无DeepSeek-V3的智能上下文组织 - 记忆不持久化 - 搜索质量大幅下降 ## 🔍 技术难点分析 ### 1. Python环境隔离问题 - **现状**: Poetry管理的虚拟环境 vs 系统Python环境 - **挑战**: Claude Desktop MCP需要稳定的Python路径 - **复杂性**: 虚拟环境激活、路径解析、权限管理 ### 2. 依赖管理复杂性 MemOS完整功能需要的关键依赖: ``` openai==1.77.0 # LLM API调用 qdrant-client==1.12.1 # 向量数据库 sentence-transformers # 文本向量化(可选) fastapi==0.115.6 # Web框架 pydantic==2.11.7 # 数据验证 ``` ### 3. MCP协议集成挑战 - **标准化要求**: 严格的JSON-RPC 2.0格式 - **生命周期管理**: initialize → tools/list → tools/call流程 - **错误处理**: 完整的错误码和消息格式 - **性能要求**: 低延迟响应,稳定连接 ### 4. 架构设计矛盾 - **理想架构**: 完整MemOS功能 + MCP集成 - **现实约束**: 环境隔离 + 依赖冲突 + 协议复杂性 - **权衡**: 功能完整性 vs 集成简单性 ## 🎯 专家咨询问题 ### 核心问题 **如何在Linux系统的externally-managed Python环境下,实现MemOS(包含openai、qdrant-client等依赖)与Claude Desktop MCP的稳定集成?** ### 具体技术问题 1. **Python环境管理**: - 如何让Claude Desktop MCP正确调用Poetry虚拟环境中的Python? - 是否有更好的依赖隔离方案? - 如何处理虚拟环境路径的动态性? 2. **MCP服务器部署**: - 推荐的MCP服务器部署架构? - 如何确保服务器的稳定性和性能? - 是否需要独立的服务进程? 3. **依赖管理策略**: - 在受保护的系统Python环境下的最佳实践? - 如何平衡功能完整性和环境安全性? - 是否考虑Docker容器化部署? 4. **替代方案评估**: - 是否有其他方式实现Claude与本地AI系统的集成? - WebSocket、HTTP API等替代协议的可行性? - 轻量化实现vs完整功能的权衡建议? ### 期望的专家建议 1. **技术路线建议**:最适合当前环境的实现方案 2. **工程实践**:生产级部署的最佳实践 3. **性能优化**:在32GB内存、无GPU环境下的优化策略 4. **故障排除**:常见问题的诊断和解决方法 ## 📁 相关文件和代码 ### 项目结构 ``` /home/qqinshu/视频/MemOS/ ├── pyproject.toml # Poetry配置 ├── .env # 环境变量 ├── simple_test.py # 系统测试 ├── usage_examples.py # 基础功能演示 ├── advanced_examples.py # 高级功能演示 ├── memos_mcp_server.py # 完整MCP服务器(有依赖问题) ├── standalone_mcp_server.py # 简化MCP服务器(当前可用) └── test_standalone_mcp.py # MCP测试脚本 /home/qqinshu/视频/~/mcp-template-main/ ├── claude-desktop-final.json # Claude Desktop配置 ├── SETUP_INSTRUCTIONS.md # 配置说明 └── FINAL_SETUP.md # 最终配置指南 ``` ### 关键配置 - **Claude Desktop MCP配置**: `/home/qqinshu/视频/~/mcp-template-main/claude-desktop-final.json` - **MemOS环境配置**: `/home/qqinshu/视频/MemOS/.env` - **Poetry项目配置**: `/home/qqinshu/视频/MemOS/pyproject.toml` ## 🎯 期望结果 实现完整的MemOS MCP集成,包括: - ✅ Claude Desktop可以调用MemOS工具 - ✅ MemOS使用完整的向量数据库和LLM功能 - ✅ 稳定的服务器运行和错误恢复 - ✅ 良好的性能和用户体验 --- **联系方式**: 如需更多技术细节或日志文件,请告知。 **紧急程度**: 中等 - 项目核心功能受阻,但有临时解决方案。

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/qinshu1109/memos-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server