记忆银行文档管理-MCP
一种MCP服务器,通过六种核心文档类型帮助团队创建、管理和访问结构化的项目文档,利用人工智能生成全面的项目知识管理。
服务介绍
Memory Bank MCP
Memory Bank 是一个 MCP 服务器,帮助团队创建、管理和访问结构化的项目文档。它生成并维护一组相互关联的 Markdown 文档,这些文档涵盖了从高层次目标到技术细节和日常进展的不同方面。
功能
- AI 生成的文档:利用 Gemini API 自动生成全面的项目文档
- 结构化知识系统:在层次结构中维护六种核心文档类型
- MCP 集成:实现 Model Context Protocol 以无缝集成 AI 助手
- 可自定义的位置:指定您希望创建 Memory Bank 目录的位置
- 文档模板:预定义的项目简介、产品上下文、系统模式等模板
- AI 辅助更新:手动更新文档或使用 AI 辅助重新生成
- 高级查询:跨所有文档进行具有上下文感知的相关性排名搜索
安装
# Clone the repository
git clone https://github.com/tuncer-byte/memory-bank-mcp.git
cd memory-bank-mcp
# Install dependencies
npm install
# Create .env file with your Gemini API key (optional)
echo "GEMINI_API_KEY=your_api_key_here" > .env
使用
开发模式
# Start in development mode
npm run dev
生产模式
# Build the project
npm run build
# Start in production mode
npm run start
MCP 配置
要将 Memory Bank 与 Model Context Protocol (MCP) 集成,请将以下配置添加到您的 mcp.json 文件中:
{
"memoryBank": {
"command": "node",
"args": ["/path/to/memory-bank-mcp/dist/index.js"],
"env": {
"GEMINI_API_KEY": "your_gemini_api_key_here"
}
}
}
将 /path/to/memory-bank-mcp/dist/index.js 替换为您的构建 index.js 文件的绝对路径,并添加您的 Gemini API 密钥(如果适用)。
示例:
{
"memoryBank": {
"command": "node",
"args": ["/Users/username/memory-bank-mcp/dist/index.js"],
"env": {
"GEMINI_API_KEY": "AIzaSyXXXXXXXXXXXXXXXXXXXXXXXX"
}
}
}
MCP 工具
Memory Bank MCP 通过 Model Context Protocol 提供以下工具:
initialize_memory_bank
使用所有文档模板创建一个新的 Memory Bank 结构。
参数:
goal(string):项目目标描述(至少 10 个字符)geminiApiKey(string, 可选):用于文档生成的 Gemini API 密钥location(string, 可选):memory-bank 文件夹将被创建的绝对路径
示例:
await callTool({
name: "initialize_memory_bank",
arguments: {
goal: "Building a self-documenting AI-powered software development assistant",
location: "/Users/username/Documents/projects/ai-assistant"
}
});
update_document
更新 Memory Bank 中的特定文档。
参数:
documentType(枚举):其中之一:projectbrief,productContext,systemPatterns,techContext,activeContext,progresscontent(string, 可选):文档的新内容regenerate(boolean, 默认: false):是否使用 AI 重新生成文档
示例:
await callTool({
name: "update_document",
arguments: {
documentType: "projectbrief",
content: "# Project Brief\n\n## Purpose\nTo develop an advanced and user-friendly AI..."
}
});
query_memory_bank
跨所有文档进行具有上下文感知的相关性排名搜索。
参数:
query(string):搜索查询(至少 5 个字符)
示例:
await callTool({
name: "query_memory_bank",
arguments: {
query: "system architecture components"
}
});
export_memory_bank
导出所有 Memory Bank 文档。
参数:
format(枚举,默认值: "folder"):导出格式,可以是 "json" 或 "folder"outputPath(字符串,可选):自定义导出路径
示例:
await callTool({
name: "export_memory_bank",
arguments: {
format: "json",
outputPath: "/Users/username/Documents/exports"
}
});
文档类型
知识库将项目知识组织成六种核心文档类型:
- 项目简介 (
projectbrief.md):定义项目目标、范围和愿景的核心文档 - 产品上下文 (
productContext.md):从用户角度记录产品的功能 - 系统模式 (
systemPatterns.md):建立系统架构和组件关系 - 技术上下文 (
techContext.md):指定技术栈和实现细节 - 活动上下文 (
activeContext.md):跟踪当前任务、开放问题和发展重点 - 进展 (
progress.md):记录已完成的工作、里程碑和项目历史
许可证
MIT