WinForensics MCP 服务器

使用说明(Markdown 格式)

  • 项目简介

    • WinForensics MCP 服务器是一个完整的 MCP 服务器实现,基于 mcp 框架提供资源、工具与提示的注册和执行能力。通过 JSON-RPC 与客户端进行交互,支持将取证分析能力以可扩展的工具集、资源访问和 Prompt 渲染提供给 LLM 客户端。
  • 主要功能点

    • 资源与数据访问:提供对取证 artifact 的访问、解析与查询能力(EVTX、注册表、MFT、USN、SRUM、Prefetch、Amcache、PCAP、浏览器历史等)。
    • 工具注册与执行:暴露大量可调用的执行工具(如事件日志查询、YARA 扫描、病毒威胁情报查询、PCAP 流量分析、DiE 检测、MFT/USN 等分析工具)。
    • Prompt 与对话模板:支持渲染和选择 Prompt 模板以适应不同的 LLM 交互模式。
    • JSON-RPC 通信:统一的请求/响应格式,便于 LLM 客户端以标准化方式交互。
    • 会话与能力声明:服务器端维护会话信息与能力声明,支持多种传输协议(如 Stdio、SSE、WebSocket,按 MCP 规范扩展)。
    • 安全与可扩展性:纯 Python 实现,尽量避免外部依赖,提供缓存、截断输出等安全机制,便于扩展新的工具与数据源。
  • 安装步骤

    • 需求准备:Python 环境就绪,遵循仓库中的安装说明(可选使用 uv 作为包管理和虚拟环境工具)。
    • 安装方式(示例):
      • 克隆仓库并进入目录
      • 使用 uv 安装并安装依赖,或通过传统 pip 安装
    • 启动服务器:
      • 直接运行:uv run --directory /path/to/winforensics-mcp python -m winforensics_mcp.server
      • 或直接 python -m winforensics_mcp.server(在合适的环境中)
    • 测试运行:在终端中启动后,Ctrl+C 结束,可以确认是否能正常初始化 MCP 服务。
  • 服务器配置(MCP 客户端不需要,这里提供服务器侧配置说明,用于集成到 CLAUDE CLI 等工具)

    • server name: winforensics-mcp
    • command: uv
    • args: ["run","--directory","/path/to/winforensics-mcp","python","-m","winforensics_mcp.server"]
    • 说明:以上配置用于 Claude CLI 等客户端将该 MCP 服务器注册到客户端配置中,命令字段用于启动服务器,directory 指向仓库根目录在运行环境中的实际路径,确保服务器进程可访问代码与依赖。客户端在使用时只需要知道服务器名称和启动命令,便能连接 MCP 服务器并发起请求。
    • 备注:实际部署时请根据运行环境调整路径、端口及传输方式(如 STDIO、SSE、WebSocket 等),以及需要的安全认证配置。
  • 基本使用方法

    • 启动后客户端通过 MCP 协议向服务器发起请求,获取工具列表、读取资源、执行工具、渲染 Prompts 等。
    • 通过 Claude CLI 等工具可以注册该 MCP 服务器,随后在对话中按需调用工具完成自动化取证分析、威胁情报查询、PCAP 和 EVTX 的分析等任务。
    • 使用场景举例:向 MCP 服务器发起“读取 EVTX 文件统计信息”、“对某个哈希进行 VirusTotal 查找”或“在指定目录执行 YARA 扫描”等请求,服务器返回标准化的 JSON-RPC 响应,LLM 客户端据此进行策略化推理与信息整合。

服务器信息