AI Auditor MCP 服务器套件

使用说明

  • 项目简介

    • 该仓库实现了两台独立的 MCP 服务器:AI Auditor 的“扫描器服务器(Scanner MCP)”用于执行静态分析、依赖检查、代码审计等工具并输出聚合后的发现;以及“报告服务器(Reporter MCP)”用于基于发现生成合规报告(Markdown/SARIF),并可供 LLM 客户端调用。两台服务器通过 MCP 标准的 Request/Response 机制对接客户端,支持 ListTools 与 CallTool 等常见请求。
  • 主要功能点

    • 扫描器服务器:暴露工具集合,例如 run_sast_scan、run_dep_scan、run_dast_scan 等,执行 Semgrep、Trivy、DAST、Gitleaks、Evidence 等扫描并返回结构化结果。
    • 报告服务器:提供生成合规报告的工具,支持输出 Markdown 和 SARIF 格式,并按 CASA、CISSP、SOC2 等配置生成相应报告。
    • 支持 JSON-RPC 的请求/响应模式,便于与 LLM 客户端集成。
    • 集成了抗污染的结果聚合、去重与等级映射逻辑,提供可读性强的报告。
  • 安装步骤

    • 安装依赖并构建工作区(Monorepo),如项目根目录执行相应的安装与构建命令。
    • 分别启动两台 MCP 服务器:
      • Scanner MCP:在仓库内找到 mcp-scanner 模块的入口脚本,使用 Node 直接运行其 dist 产物(例如 node packages/mcp-scanner/dist/index.js)。
      • Reporter MCP:在仓库内找到 mcp-reporter 模块的入口脚本,使用 Node 直接运行其 dist 产物(例如 node packages/mcp-reporter/dist/index.js)。
    • 启动后两端通过 MCP 客户端配置进行连接与交互。
  • 服务器配置(MCP 客户端需要的配置信息,JSON 格式,包含 server name、command、args)
    说明:以下配置用于 MCP 客户端在本地通过标准输入输出(stdio)方式启动对应的 MCP 服务器进程并连接。每条配置对应一个服务器实例,serverName 与实际启动脚本路径需要按项目结构正确设置。

    • Scanner MCP 配置示例 { "serverName": "ai-auditor-scanner", "command": "node", "args": ["packages/mcp-scanner/dist/index.js"], "description": "AI Auditor 扫描器 MCP 服务器(用于执行 SAST/依赖/证据等扫描)" }

    • Reporter MCP 配置示例 { "serverName": "ai-auditor-reporter", "command": "node", "args": ["packages/mcp-reporter/dist/index.js"], "description": "AI Auditor 报告生成 MCP 服务器(根据发现生成 Markdown/SARIF 报告)" }

    注释说明

    • serverName 用于标识该 MCP 服务器的名称,clients 在对接时以该名称进行识别。
    • command 为启动服务器的命令,这里固定为 node。
    • args 指向 MCP 服务器入口脚本的相对路径,需指向 dist/index.js 产物(构建后的产物)。
    • 以上配置仅用于 MCP 客户端启动服务器的演示,实际使用中请将路径和名称调整为实际环境中的路径结构。
  • 基本使用方法

    • 在具备 Node.js 环境的前提下,先安装并构建整个工作区,然后分别启动 Scanner MCP 与 Reporter MCP。
    • 客户端(通常是集成在 LLM 应用中的 MCP 客户端)通过指定 serverName、对应的启动命令和参数来启动并连接到这两台 MCP 服务器,之后可以通过 ListTools 获取工具列表,通过 CallTool 调用具体的工具并获取结果,进而由 AI Auditor 的流程进行整合和报告生成。
    • 使用时可结合示例命令或集成脚本完成自动化对接与工作流编排。

服务器信息