使用说明
存储库MCP
Memory Bank MCP
Structured project knowledge management for LLMs via Model Context Protocol (MCP)
注: 这不是一个传统的Node.js应用程序。存储库MCP是 MCP服务器--组件中 模型上下文协议 生态系统。它使用标准化协议将项目知识暴露给LLM驱动的代理和工具,实现与AI客户端的无缝集成(例如,Claude Desktop、IDE或自定义LLM代理)。
什么是模型上下文协议(MCP)?
MCP是一个开放协议,它规范了应用程序如何向LLM提供上下文。将MCP视为AI的USB-C端口:它提供了一种通用的方式,将AI模型连接到本地和远程的数据源和工具。MCP启用:
- 即插即用集成 在LLM、数据和工具之间
- LLM提供商之间的切换 摩擦最小
- 安全的模块化架构 用于构建人工智能工作流程
了解更多: MCP简介
关于存储库MCP
存储库MCP是 MCP服务器 这有助于团队创建、管理和访问结构化的项目文档。它生成并维护相互关联的Markdown文档,捕获项目知识的各个方面,从高级目标到技术细节和日常进度。它被设计为由MCP兼容客户端和LLM代理访问。
特性
- 人工智能生成的文档:使用Gemini API生成和更新项目文档
- 结构化知识体系:在层次结构中维护六种核心文档类型
- MCP服务器:实现与LLM代理和工具集成的模型上下文协议
- 可定制的存储:选择创建内存库目录的位置
- 文档模板:项目简介、产品背景、系统模式等的预定义模板。
- 人工智能辅助更新:手动更新文档或使用AI重新生成文档
- 高级查询:使用上下文感知相关性排名搜索所有文档
安装
# Clone the repository
git clone https://github.com/tuncer-byte/memory-bank-mcp.git
cd memory-bank-mcp
# Install dependencies
npm install
# (Optional) Create .env file with your Gemini API key
echo "GEMINI_API_KEY=your_api_key_here" > .env
用法
注: Memory Bank MCP旨在作为MCP服务器运行,而不是作为独立应用程序运行。您通常将其作为MCP工作流的一部分启动,并从MCP兼容的客户端(如Claude Desktop或您自己的LLM代理)连接到它。
开发模式
npm run dev
生产模式
npm run build
npm run start
MCP集成
要将内存库MCP连接到MCP客户端,请在您的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 使用构建文件的绝对路径,并在需要时添加Gemini API密钥。
存储库暴露的MCP工具
存储体MCP通过模型上下文协议提供以下工具:
initialize_memory_bank
使用所有文档模板创建新的内存库结构。
参数:
goal(字符串):项目目标描述(最少10个字符)geminiApiKey(字符串,可选):用于生成文档的Gemini API密钥location(string,可选):创建内存库文件夹的绝对路径
例子:
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
更新记忆库中的特定文档。
参数:
documentType(enum):以下之一:projectbrief,productContext,systemPatterns,techContext,activeContext,progresscontent(字符串,可选):文档的新内容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(字符串):搜索查询(最少5个字符)
例子:
await callTool({
name: "query_memory_bank",
arguments: {
query: "system architecture components"
}
});
export_memory_bank
导出所有内存库文档。
参数:
format(枚举,默认值:“文件夹”):导出格式,可以是“json”或“文件夹”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):记录已完成的工作、里程碑和项目历史
许可证
麻省理工学院