使用说明
项目简介
Cline Memory Bank Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为 AI 辅助开发工具(特别是 Cline VSCode 扩展)提供持久化的项目上下文管理。它可以帮助 AI 助手在不同的开发会话中保持对项目信息的记忆,从而提供更连贯和高效的辅助。
主要功能点
- 持久化上下文记忆: 跨会话保持项目上下文,AI 助手不会在每次启动 VSCode 时遗忘项目信息。
- 结构化工具: 提供 'initialize_memory_bank', 'update_context', 'record_decision', 'track_progress' 等工具,用于管理项目上下文、记录决策和跟踪进度。
- 标准化资源访问: 通过 'memory://project/context', 'memory://active/context', 'memory://progress', 'memory://decisions' 等资源 URI,以标准化的方式向 AI 助手提供项目上下文信息。
- 自动集成 Cline: 专为 Cline VSCode 扩展设计,配置简单,无缝集成。
- Markdown 文件存储: 项目上下文信息以 Markdown 格式存储在项目目录中,易于查看和编辑。
安装步骤
-
前提条件:
- 安装 Node.js (v16 或更高版本)
- 安装 VS Code 和 Cline 扩展
- (可选)安装 TypeScript (用于开发)
-
安装服务器: 打开终端,执行以下命令:
# 克隆仓库 git clone https://github.com/dazeb/cline-mcp-memory-bank cd cline-mcp-memory-bank # 安装依赖 npm install # 构建服务器 npm run build # 可选:全局链接,方便在任何地方启动 npm link -
配置 Cline 扩展: 打开 VS Code 的设置 (Settings),搜索 'Cline MCP Settings',点击 'Edit in settings.json'。 在 'cline_mcp_settings.json' 文件中,添加以下 JSON 配置到 'mcpServers' 字段中:
{ "mcpServers": { "memory-bank": { "command": "node", "args": [ "/path/to/cline-memory-bank/build/index.js" // 将 "/path/to/cline-memory-bank" 替换为你的 cline-mcp-memory-bank 仓库的实际路径 ], "disabled": false, "autoApprove": [] } } }注意: 请将 '/path/to/cline-memory-bank' 替换为你本地 'cline-mcp-memory-bank' 仓库的绝对路径。
服务器配置
上述 Cline 扩展配置是连接 Memory Bank Server 的关键。配置项说明如下:
- '"memory-bank"': 服务器名称,在 Cline 扩展中引用时使用。
- '"command": "node"': 启动服务器的命令,这里使用 Node.js 运行。
- '"args"': 启动命令的参数,指向编译后的 'index.js' 文件路径。
- '"/path/to/cline-memory-bank/build/index.js"': 请务必替换为你的实际路径,确保指向 'cline-mcp-memory-bank/build/index.js' 文件。
- '"disabled": false': 确保服务器启用。
- '"autoApprove": []': 自动批准的请求列表,默认为空。
基本使用方法
-
初始化 Memory Bank: 在 VS Code 中,打开你的项目,在 Cline 聊天框中输入并执行:
use_mcp_tool('memory-bank', 'initialize_memory_bank', { projectPath: process.cwd() });这将在你的项目根目录下创建一个 'memory-bank' 文件夹,并初始化项目上下文文件。
-
访问项目上下文资源: 在 Cline 聊天框中,可以使用以下命令访问 Memory Bank 提供的资源:
access_mcp_resource('memory-bank', 'memory://project/context'); // 访问项目概览和技术栈 access_mcp_resource('memory-bank', 'memory://active/context'); // 访问当前会话状态和任务 access_mcp_resource('memory-bank', 'memory://progress'); // 访问项目进度 access_mcp_resource('memory-bank', 'memory://decisions'); // 访问决策日志 -
更新会话上下文:
use_mcp_tool('memory-bank', 'update_context', { projectPath: process.cwd(), content: { currentSession: { date: new Date().toISOString().split('T')[0], mode: '开发', // 例如:开发、调试、测试 task: '当前正在进行的功能开发' // 当前任务描述 } } }); -
记录技术决策:
use_mcp_tool('memory-bank', 'record_decision', { projectPath: process.cwd(), decision: { title: 'API 鉴权方案', description: '决定采用 JWT (JSON Web Token) 进行 API 鉴权', rationale: 'JWT 具有良好的扩展性和无状态性,更适合当前微服务架构', alternatives: ['基于 Session 的鉴权', 'OAuth 2.0'] } }); -
跟踪项目进度:
use_mcp_tool('memory-bank', 'track_progress', { projectPath: process.cwd(), progress: { completed: ['完成用户注册功能', '数据库模型设计'], inProgress: ['API 接口开发'], blocked: ['等待前端联调'] } });
更多详细用法和高级配置,请参考仓库 README 文档。
信息
分类
开发者工具