使用说明

项目简介

Memory Bank系统旨在为AI助手提供结构化的项目知识库,以支持跨会话的上下文记忆和一致的代码规则应用。它通过数据库高效管理项目信息,并提供API接口供客户端(如LLM应用)访问和利用这些信息,从而提升AI助手在复杂项目中的工作效率和一致性。

主要功能点

  • 结构化知识存储: 使用数据库存储项目文档、任务、会话历史、错误日志等信息,实现高效检索和管理。
  • 会话上下文保持: 通过会话缓存机制和数据库持久化,确保AI助手在多次交互中能够保持上下文连贯性。
  • 任务管理: 支持多任务并行管理,跟踪任务状态、依赖关系和完成进度。
  • 代码规则集成: 内置代码规则文档,帮助AI助手遵循项目编码规范。
  • API接口: 提供API接口,允许LLM客户端读取项目资源、管理会话和执行特定操作。
  • 灵活的上下文加载: 支持分层级的上下文加载策略,优化Token使用,提升任务执行效率。

安装步骤

  1. 克隆仓库

    git clone https://github.com/space-cadet/memory-bank.git
    cd memory-bank
  2. 安装依赖 进入 'memory-bank/database' 目录,安装Node.js依赖 (如果MCP服务器使用Node.js构建,根据仓库结构推测):

    cd memory-bank/database
    npm install

    如果MCP服务器是Python或其他语言,请根据实际情况安装相应的依赖。

  3. 配置数据库

    • 检查 'memory-bank/database/schema.prisma' 文件,确认数据库schema定义。
    • 配置数据库连接。根据项目结构,可能需要在 'memory-bank/database/.env' 文件中设置数据库连接字符串(例如,SQLite数据库文件路径)。
  4. 运行数据库迁移和 Seed (可选) 在 'memory-bank/database' 目录下,运行Prisma迁移命令以创建数据库表结构:

    npx prisma migrate dev

    可选地,运行 Seed 脚本填充测试数据,方便初步体验:

    npx prisma db seed
  5. 启动 MCP 服务器 进入 MCP 服务器代码目录 (根据仓库结构推测,可能在 'memory-bank/database/mcp-server' 目录下),并启动服务器。具体的启动命令需要根据实际服务器实现确定。

    cd memory-bank/database/mcp-server  # 假设服务器代码在此目录
    node server.js  # 或者 python server.py, 根据实际情况

    请查阅 'memory-bank/database/mcp-server' 目录下的相关文件(如 'README.md' 或启动脚本)以获取更准确的服务器启动命令。

服务器配置

以下为 MCP 客户端连接 Memory Bank 服务器的配置信息示例 (JSON 格式):

{
  "serverName": "MemoryBankServer",
  "command": "node",
  "args": [
    "memory-bank/database/mcp-server/server.js"  //  MCP服务器启动脚本路径 (请根据实际路径调整)
  ],
  "transport": "stdio", //  假设使用标准输入输出流进行通信 (根据实际情况调整)
  "protocol": "json-rpc", //  MCP 协议通常使用 JSON-RPC
  "description": "Memory Bank MCP Server for project knowledge management"
}

参数注释:

  • 'serverName': MCP 服务器的名称,客户端用于标识和管理连接。
  • 'command': 启动 MCP 服务器进程的可执行命令。例如 'node' (Node.js 环境) 或 'python' (Python 环境)。
  • 'args': 传递给启动命令的参数列表。
    • '"memory-bank/database/mcp-server/server.js"': 示例参数,指向 MCP 服务器的启动脚本。请务必根据实际服务器脚本的路径进行调整。 如果服务器需要其他参数 (例如端口号、配置文件路径等),也需要添加到 'args' 列表中。
  • 'transport': 客户端与服务器通信的传输协议。示例中使用 'stdio' (标准输入输出流)。根据实际服务器实现,可能还支持 'sse' (Server-Sent Events)、'websocket' 等协议。
  • 'protocol': 通信协议,通常为 'json-rpc',符合 MCP 定义。
  • 'description': 服务器的简要描述,方便客户端用户理解其用途。

注意: 上述配置信息为示例, 实际配置需参考 'memory-bank/database/mcp-server' 目录下的服务器代码和文档, 特别是 'command' 和 'args' 字段,必须根据服务器的实际启动方式进行准确配置。

基本使用方法

  1. 启动 MCP 客户端: 配置并启动兼容 MCP 协议的客户端工具或应用。
  2. 连接服务器: 在 MCP 客户端中,使用上述提供的服务器配置信息建立与 Memory Bank MCP 服务器的连接。
  3. 发送 MCP 请求: 通过 MCP 客户端,向 Memory Bank 服务器发送符合 MCP 协议的请求,例如:
    • 请求读取项目资源 (例如,项目文档、任务列表)。
    • 请求调用工具 (例如,执行代码检查、更新项目进度)。
    • 请求获取 Prompt 模板 (用于生成特定任务的 Prompt)。
  4. 接收 MCP 响应和通知: MCP 客户端接收服务器返回的 JSON-RPC 响应,处理请求结果。服务器也可能主动推送通知 (例如,会话状态更新、错误信息)。
  5. 利用项目知识: 在 LLM 应用中,利用从 Memory Bank 服务器获取的项目知识和工具能力,实现更智能和上下文相关的交互体验。

具体 API 请求和工具调用方式需要参考 Memory Bank MCP 服务器提供的 API 文档 (如果仓库中包含)。 可以关注 '/memory-bank/database/mcp-server' 目录下是否包含API 接口定义或相关文档。

信息

分类

数据库与文件