项目简介

DocuMCP 是一个强大的 MCP 服务器,专注于解决开源项目文档部署和维护的痛点。它提供了一系列智能工具,可以深入分析项目仓库结构、推荐最佳静态站点生成器(SSG)、自动生成符合 Diataxis 框架的文档结构和内容,并自动化 GitHub Pages 部署流程。通过标准化的 JSON-RPC 协议与 LLM 客户端通信,为 AI 助手提供了调用外部功能、获取项目上下文的关键能力。

主要功能点

  • 仓库深度分析: 全面分析项目文件、依赖、语言和结构,理解文档需求。
  • SSG 智能推荐: 根据项目特点,智能推荐 Jekyll, Hugo, Docusaurus, MkDocs 或 Eleventy 等静态站点生成器。
  • Diataxis 结构生成: 自动创建符合 Diataxis 框架的清晰、分层的文档结构(教程、操作指南、参考、解释)。
  • 内容智能填充: 根据项目分析结果,自动填充文档内容,减少手动编写工作量。
  • GitHub Pages 自动化部署: 生成优化的 GitHub Actions 工作流,实现文档的自动化部署。
  • 部署验证与故障排除: 检查部署设置,提供详细的验证报告和故障排除建议。
  • 文档质量评估: 评估 README 文件健康状况、文档链接完整性和内容合规性。
  • 文档缺口检测: 分析现有文档,识别缺失内容和改进点。

安装步骤

  1. 克隆仓库: 在命令行中运行 'git clone https://github.com/tosin2013/documcp.git' 将项目克隆到本地。
  2. 进入项目目录: 运行 'cd documcp' 进入项目根目录。
  3. 安装依赖: 运行 'npm install' 安装所有必要的 Node.js 依赖。
  4. 构建项目: 运行 'npm run build' 编译 TypeScript 代码并构建项目。

服务器配置 (供MCP客户端使用)

MCP 客户端需要通过 JSON-RPC 协议与 DocuMCP 服务器通信。以下是一个示例 JSON 配置,用于告知 MCP 客户端如何启动和连接到 DocuMCP 服务器。

{
  "name": "documcp",
  "description": "DocuMCP 文档智能助手,自动化文档部署、分析和优化。",
  "command": "node",
  "args": [
    "./node_modules/documcp/dist/index.js"
  ],
  "installInstructions": "首先,请确保您的系统中已安装 Node.js (20.0.0或更高版本) 和 npm。然后,可以通过以下命令全局安装 DocuMCP:\n\n```bash\nnpm install -g documcp\n```\n\n如果您希望从源代码运行,请参照项目 README 中的安装步骤。",
  "capabilities": {
    "tools": {
      "analyze_repository": "分析仓库结构、依赖和文档需求",
      "recommend_ssg": "根据项目分析推荐静态站点生成器 (SSG)",
      "generate_config": "为选定的 SSG 生成配置文件",
      "setup_structure": "创建符合 Diataxis 框架的文档结构",
      "deploy_pages": "设置 GitHub Pages 部署工作流",
      "verify_deployment": "验证和排查 GitHub Pages 部署问题",
      "populate_diataxis_content": "智能填充 Diataxis 文档内容",
      "validate_diataxis_content": "验证 Diataxis 文档的准确性、完整性和合规性",
      "validate_content": "验证通用内容质量(如死链、代码语法)",
      "detect_documentation_gaps": "检测文档缺口",
      "test_local_deployment": "本地测试文档部署",
      "evaluate_readme_health": "评估 README 文件健康状况",
      "readme_best_practices": "根据最佳实践分析 README 并生成改进模板",
      "check_documentation_links": "全面检查文档链接(外部、内部、锚点)"
    },
    "prompts": {
      "analyze-and-recommend": "完整的仓库分析和 SSG 推荐工作流",
      "setup-documentation": "创建全面的文档结构并应用最佳实践",
      "troubleshoot-deployment": "诊断和修复 GitHub Pages 部署问题",
      "validate-content-quality": "对应用程序代码和文档进行全面的内容验证"
    },
    "resources": {
      "documcp://analysis/": "仓库分析结果",
      "documcp://config/": "生成的配置文件",
      "documcp://structure/": "文档结构模板",
      "documcp://deployment/": "GitHub Actions 工作流",
      "documcp://templates/": "可复用模板",
      "documcp://workflows/": "文档工作流指南"
    }
  }
}

请注意:上述 'command' 和 'args' 假定 'documcp' 已通过 'npm install -g documcp' 全局安装,或者客户端在 'documcp' 仓库的根目录运行。在实际环境中,'command' 和 'args' 需要根据服务器的实际部署路径和启动方式进行调整。如果从源代码运行,'args' 可能是 '["node", "./dist/index.js"]' (在 'documcp' 目录内)

基本使用方法

DocuMCP 服务器通过接收来自 MCP 客户端的 JSON-RPC 请求来执行其功能。通常,您会通过一个支持 MCP 协议的 AI 助手或命令行工具来与 DocuMCP 交互,而无需直接手动调用 'node dist/index.js'。

例如,一个 MCP 客户端可能会向 DocuMCP 发送请求来执行 'analyze_repository' 工具:

客户端发送 (JSON-RPC 请求):

{
  "jsonrpc": "2.0",
  "method": "tool.call",
  "params": {
    "name": "analyze_repository",
    "arguments": {
      "path": "/path/to/your/repo",
      "depth": "standard"
    }
  },
  "id": 1
}

DocuMCP 服务器将处理此请求并返回一个 JSON-RPC 响应,其中包含仓库分析结果。

信息

分类

AI与计算