使用说明

项目简介

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 格式存储在项目目录中,易于查看和编辑。

安装步骤

  1. 前提条件:

    • 安装 Node.js (v16 或更高版本)
    • 安装 VS Code 和 Cline 扩展
    • (可选)安装 TypeScript (用于开发)
  2. 安装服务器: 打开终端,执行以下命令:

    # 克隆仓库
    git clone https://github.com/dazeb/cline-mcp-memory-bank
    cd cline-mcp-memory-bank
    
    # 安装依赖
    npm install
    
    # 构建服务器
    npm run build
    
    # 可选:全局链接,方便在任何地方启动
    npm link
  3. 配置 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": []': 自动批准的请求列表,默认为空。

基本使用方法

  1. 初始化 Memory Bank: 在 VS Code 中,打开你的项目,在 Cline 聊天框中输入并执行:

    use_mcp_tool('memory-bank', 'initialize_memory_bank', { projectPath: process.cwd() });

    这将在你的项目根目录下创建一个 'memory-bank' 文件夹,并初始化项目上下文文件。

  2. 访问项目上下文资源: 在 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');       // 访问决策日志
  3. 更新会话上下文:

    use_mcp_tool('memory-bank', 'update_context', {
      projectPath: process.cwd(),
      content: {
        currentSession: {
          date: new Date().toISOString().split('T')[0],
          mode: '开发',  // 例如:开发、调试、测试
          task: '当前正在进行的功能开发' // 当前任务描述
        }
      }
    });
  4. 记录技术决策:

    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']
      }
    });
  5. 跟踪项目进度:

    use_mcp_tool('memory-bank', 'track_progress', {
      projectPath: process.cwd(),
      progress: {
        completed: ['完成用户注册功能', '数据库模型设计'],
        inProgress: ['API 接口开发'],
        blocked: ['等待前端联调']
      }
    });

更多详细用法和高级配置,请参考仓库 README 文档。

信息

分类

开发者工具