使用说明
项目简介
McpDoc 是一个基于 Model Context Protocol (MCP) 的服务器实现,专注于为现有代码库自动生成文档。它通过预定义的 MCP 提示 (Prompts) 和工具 (Tools),结合文件系统操作,能够自动遍历代码目录,为每个包含源代码的目录生成 'README.McpDoc.md' 文件和 C4 组件图,并在代码库根目录汇总生成 C4 上下文图和容器图,从而提供多层次、结构化的代码文档。
主要功能点
- 自动化 README 生成: 针对每个包含源代码的目录,自动生成 'README.McpDoc.md' 摘要文档,快速了解模块内容。
- C4 架构图生成: 在每个包含源代码的目录生成 'C4Component.McpDoc.md' 组件图,直观展示模块内部结构。
- 汇总 C4 图生成: 在代码库根目录汇总生成 'C4Context.McpDoc.md' 上下文图和 'C4Container.McpDoc.md' 容器图,提供系统全局概览。
- Mermaid.js 支持: 生成的 C4 架构图使用 Mermaid.js 语法,方便渲染和嵌入 Markdown 文档。
- Mermaid 图校验与预览: 提供工具校验 Mermaid 语法,并支持在浏览器中预览架构图,确保图表质量。
安装步骤
-
克隆仓库
git clone https://github.com/jonverrier/McpDoc.git cd McpDoc -
安装依赖
npm install -
构建项目
npm run build -
安装文件系统 MCP 服务器
- 你需要安装 Anthropic filesystem MCP server 作为 McpDoc 的依赖,以便 McpDoc 可以访问和操作文件系统。
- 按照该仓库的 README 指示完成安装和构建。
服务器配置
为了让 MCP 客户端(如 Cursor 或 Claude)能够连接到 McpDoc 服务器和文件系统服务器,你需要配置 'mcpServers'。以下是示例配置,你需要根据你的实际代码根目录进行调整:
{ "mcpServers": { "mcp-documenter": { "command": "node", "args": ["YourCodeRoot/McpDoc/dist/src/index.js"] // command: 启动 McpDoc 服务器的命令,这里使用 node // args: 启动命令的参数,指向 McpDoc 服务器的入口文件 index.js // 需要将 "YourCodeRoot" 替换为 McpDoc 仓库在你本地的绝对路径 }, "mcp-filesystem": { "command": "node", "args": ["YourCodeRoot/McpFS/dist/index.js", "YourCodeRoot"] // command: 启动文件系统服务器的命令,这里使用 node // args: 启动命令的参数,第一个参数指向文件系统服务器的入口文件 index.js,第二个参数是你的代码根目录 // 需要将两个 "YourCodeRoot" 都替换为你的实际代码根目录的绝对路径,文件系统服务器将基于此目录提供文件访问能力 } } }
注意:
- 'YourCodeRoot/McpDoc' 需要替换为 McpDoc 仓库在你本地的绝对路径。
- 'YourCodeRoot/McpFS' 需要替换为 文件系统 MCP 服务器 仓库在你本地的绝对路径。
- 最后的 'YourCodeRoot' 需要替换为你想要生成文档的代码仓库的根目录的绝对路径。
基本使用方法
-
启动 MCP 服务器: 确保 'mcp-documenter' 和 'mcp-filesystem' 服务器都已成功启动。
-
配置 MCP 客户端: 在你的 MCP 客户端(如 Cursor 或 Claude)中配置 'mcpServers',使用上述提供的 JSON 配置,并替换正确的路径。
-
使用 MCP 提示:
- 生成目录 README: 使用 'generate_readmes' 提示,并设置 'RootDirectory' 参数为你想要生成文档的代码仓库根目录的绝对路径。
- 生成目录 C4 组件图: 使用 'generate_component_mermaid_C4_diagrams' 提示,并设置 'RootDirectory' 参数。
- 生成汇总 C4 图: 使用 'generate_rollup_mermaid_C4_diagram' 提示,设置 'RootDirectory' 参数和 'C4Type' 参数 (例如 "C4Context", "C4Container"),指定要生成的汇总 C4 图类型。
-
查看文档: 文档生成后,可以在代码仓库的相应目录中找到 'README.McpDoc.md' 和 'C4Component.McpDoc.md' 文件,以及根目录下的汇总 C4 图文件。
示例提示 (在 MCP 客户端中使用):
-
生成根目录下所有子目录的 README 文档:
{ "prompt": "generate_readmes", "arguments": { "RootDirectory": "/path/to/your/code/root" } } -
生成根目录下所有子目录的 C4 组件图:
{ "prompt": "generate_component_mermaid_C4_diagrams", "arguments": { "RootDirectory": "/path/to/your/code/root" } } -
生成根目录的 C4 上下文图:
{ "prompt": "generate_rollup_mermaid_C4_diagram", "arguments": { "RootDirectory": "/path/to/your/code/root", "C4Type": "C4Context" } }
注意: '/path/to/your/code/root' 需要替换为你实际的代码仓库根目录的绝对路径。
信息
分类
开发者工具