具有远程 SSH 支持的记忆库 MCP 🧠
用于管理记忆库的模型上下文协议 (MCP) 服务器,允许 AI 助手跨会话存储和检索信息。现已提供远程服务器支持!
概述📋
记忆库服务器为 AI 助手提供了一套与记忆库交互的工具和资源。记忆库是结构化的信息存储库,有助于维护上下文并跟踪多个会话的进度。
Related MCP server: Memory Bank MCP
特色✨
存储库管理:初始化、查找和管理存储库
文件操作:读取和写入存储库中的文件
进度跟踪:跟踪进度并更新记忆库文件
决策记录:记录重要决策的背景和替代方案
主动上下文管理:维护和更新主动上下文信息
模式支持:检测并使用 .clinerules 文件实现特定模式的行为
UMB 命令:使用 UMB 命令临时更新存储库文件
强大的错误处理:优雅地处理错误并在可能的情况下继续操作
状态前缀系统:立即了解存储库的运行状态
远程服务器支持:使用 SSH 将存储库存储在远程服务器上
目录结构📁
默认情况下,记忆库使用项目根目录中的memory-bank目录。当您使用--path选项指定项目路径时,记忆库将在<project_path>/memory-bank中创建或访问。
您可以使用--folder选项自定义记忆库文件夹的名称。例如,如果您设置了--folder custom-memory ,则记忆库将在<project_path>/custom-memory下创建或访问。
有关自定义文件夹名称的更多详细信息,请参阅自定义存储库文件夹名称。
最近的改进🛠️
远程服务器支持:通过 SSH 将您的记忆库存储在远程服务器上
可自定义文件夹名称:您现在可以为存储库指定自定义文件夹名称
一致的目录结构:Memory Bank 现在始终使用项目根目录中配置的文件夹名称
增强初始化:即使 .clinerules 文件不存在,存储库现在也能工作
更好的路径处理:改进了绝对路径和相对路径的处理
改进的目录检测:更好地检测现有的存储库目录
更强大的错误处理:优雅地处理与 .clinerules 文件相关的错误
有关更多详细信息,请参阅存储库错误修复。
安装🚀
与 npx 一起使用
您可以使用 npx 直接运行 Memory Bank MCP,无需安装:
有关使用 npx 的更多详细信息,请参阅npx-usage.md 。
使用远程服务器模式🌐
记忆库 MCP 现支持通过 SSH 将记忆库存储到远程服务器。这样您就可以:
集中管理你的记忆库:将所有项目记忆保存在一个地方
共享存储库:多个用户可以访问同一个存储库
持久存储:即使本地机器被擦除,您的存储库仍会保留
远程服务器要求
SSH 访问远程服务器
SSH密钥认证设置(不支持密码认证)
具有足够的权限来创建/修改指定目录中的文件
SSH 密钥设置
要为远程服务器设置 SSH 密钥认证:
生成新的 SSH 密钥对(如果您还没有):
# Using modern Ed25519 algorithm (recommended) ssh-keygen -t ed25519 -C "your_email@example.com" # OR using RSA if required for compatibility ssh-keygen -t rsa -b 4096 -C "your_email@example.com"启动 SSH 代理并添加您的密钥:
# Start the agent eval "$(ssh-agent -s)" # Add your key ssh-add ~/.ssh/id_ed25519 # or ~/.ssh/id_rsa if you used RSA将您的公钥复制到远程服务器:
# Easiest method (if available) ssh-copy-id username@your-remote-host.com # Alternative: manually copy your public key cat ~/.ssh/id_ed25519.pub # copy the output然后将密钥粘贴到远程服务器上的
~/.ssh/authorized_keys文件中。测试您的连接:
ssh username@your-remote-host.com您应该能够无需密码登录。
有关更详细的 SSH 密钥设置说明,请参阅我们的SSH 密钥指南。
远程服务器配置
要使用远程服务器模式,您需要提供以下参数:
默认情况下,SSH 密钥位于~/.ssh/your_ssh_key 。您可以使用--ssh-key选项指定其他密钥。
远程服务器示例
在 Cursor 中配置
Cursor 是一款 AI 驱动的代码编辑器,支持模型上下文协议 (MCP)。要在 Cursor 中配置内存条 MCP,请执行以下操作:
将存储库 MCP 与 npx 结合使用:
无需全局安装包。您可以直接使用 npx:
# Verify npx is working correctly npx @aakarsh-sasi/memory-bank-mcp --help打开光标设置:
前往“设置”(⚙️) > 扩展程序 > MCP
点击“添加 MCP 服务器”
配置 MCP 服务器:
名称:记忆库 MCP
命令:npx
参数:
@aakarsh-sasi/memory-bank-mcp --mode code(或根据需要的其他模式)
对于远程服务器:
参数:
@aakarsh-sasi/memory-bank-mcp --mode code --remote --remote-user username --remote-host example.host.com --remote-path /home/username/memory-bank
保存并激活:
点击“保存”
启用 MCP 服务器
验证连接:
在 Cursor 中打开一个项目
记忆库 MCP 现在应该处于活动状态并可用于你的 AI 交互
有关 Cursor 的详细说明和高级用法,请参阅cursor-integration.md 。
与 Cursor 一起使用
配置完成后,您可以通过 AI 命令与 Cursor 中的 Memory Bank MCP 进行交互:
初始化内存库:
/mcp memory-bank-mcp initialize_memory_bank path=./memory-bank跟踪进度:
/mcp memory-bank-mcp track_progress action="Feature Implementation" description="Implemented feature X"日志决策:
/mcp memory-bank-mcp log_decision title="API Design" context="..." decision="..."切换模式:
/mcp memory-bank-mcp switch_mode mode=code
MCP 模式及其用法
Memory Bank MCP 支持不同的操作模式,以优化特定任务的 AI 交互:
可用模式
代码模式👨💻
重点:代码实施和开发
用法:
npx @aakarsh-sasi/memory-bank-mcp --mode code最适合:编写、重构和优化代码
建筑师模式🏗️
重点:系统设计和架构
用法:
npx @aakarsh-sasi/memory-bank-mcp --mode architect最适合:规划项目结构、设计组件和制定架构决策
提问模式❓
重点:回答问题并提供信息
用法:
npx @aakarsh-sasi/memory-bank-mcp --mode ask最适合:获取解释、澄清和信息
调试模式🐛
重点:故障排除和问题解决
用法:
npx @aakarsh-sasi/memory-bank-mcp --mode debug最适合:查找和修复错误,分析问题
测试模式✅
重点:测试和质量保证
用法:
npx @aakarsh-sasi/memory-bank-mcp --mode test最适合:编写测试、测试驱动开发
切换模式
您可以通过多种方式切换模式:
启动服务器时:
npx @aakarsh-sasi/memory-bank-mcp --mode architect在会话期间:
memory-bank-mcp switch_mode mode=debug在光标处:
/mcp memory-bank-mcp switch_mode mode=test使用 .clinerules 文件:在您的项目中创建一个
.clinerules-[mode]文件,以便在检测到该文件时自动切换到该模式。
记忆库 MCP 的工作原理
Memory Bank MCP 基于模型上下文协议 (MCP) 构建,该协议使 AI 助手能够与外部工具和资源进行交互。其工作原理如下:
核心组件🧩
记忆库:以 markdown 文件形式存储的结构化信息存储库:
product-context.md:项目总体信息和目标active-context.md:当前状态、正在进行的任务和后续步骤progress.md:项目更新和里程碑的历史记录decision-log.md:记录重要决策的背景和理由system-patterns.md:项目中使用的架构和代码模式
MCP 服务器:为 AI 助手提供与记忆库交互的工具和资源:
作为独立进程运行
通过MCP协议与AI助手进行通信
提供一套用于管理存储库的工具
模式系统:支持不同的操作模式:
code:关注代码实现ask:专注于回答问题architect:专注于系统设计debug:专注于调试问题test:专注于测试
数据流
初始化:AI助手连接到MCP服务器并初始化记忆库
工具调用:AI助手调用MCP服务器提供的工具来读取/写入Memory Bank文件
上下文维护:记忆库在会话期间维护上下文,使人工智能能够回忆以前的决策和进展
记忆库结构📂
记忆库使用标准化结构来组织信息:
产品背景:项目概述、目标、技术和架构
活动上下文:当前状态、正在进行的任务、已知问题和后续步骤
进度:按时间顺序记录项目更新和里程碑
决策日志:记录重要决策的背景、替代方案和后果
系统模式:架构模式、代码模式和文档模式
高级功能🚀
UMB 命令:在会话期间临时更新存储库文件,但不提交更改
模式检测:根据用户输入自动检测和切换模式
文件迁移:在不同文件命名约定之间迁移的工具
语言标准化:所有记忆库文件均以英文生成,以保持一致性
版本控制📌
该项目遵循语义化版本控制,并使用约定式提交来记录提交信息。当更改合并到主分支时,版本会自动升级,并根据提交信息生成变更日志。
当发生重大更改时,主要版本会被提升(提交带有
BREAKING CHANGE或!:的消息)添加新功能时,次要版本会升级(提交带有
feat:或feat(scope):的消息)补丁版本因所有其他更改(错误修复、文档等)而提升。
有关更改的完整历史记录,请参阅CHANGELOG.md文件。
用法📝
作为命令行工具💻
作为图书馆📚
贡献👥
请参阅CONTRIBUTING.md了解我们的行为准则和提交拉取请求的流程的详细信息。
许可证📄
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。
记忆库状态系统🚦
存储库 MCP 实现了状态前缀系统,可以立即查看存储库的运行状态:
状态指示器
使用 Memory Bank MCP 的 AI 助手的每一个响应都以以下状态指示器之一开始:
[MEMORY BANK: ACTIVE]:记忆库可用并用于提供情境感知响应[MEMORY BANK: INACTIVE]:存储库不可用或配置不正确[MEMORY BANK: UPDATING]:存储库当前正在更新(在 UMB 命令执行期间)
该系统确保用户始终知道 AI 助手是在完全情境感知下还是在有限信息下运行。
好处
透明度:用户始终知道人工智能是否有权访问完整的项目上下文
故障排除:当存储库配置不正确时,立即显现出来
语境意识:帮助用户理解为什么某些回应可能缺乏历史背景
有关详细信息,请参阅存储库状态前缀系统。
Appeared in Searches
- Tools and Tips for Managing Files on a Computer
- Tools and frameworks for development environment memory-bank with GitHub Copilot compatibility
- Methods and Tools for Operating Remotely
- Designing a memory system for persona-based agents to improve user experience
- Securely Upload Local Files to Hosting Server via FTP Using WinSCP