用途:在多厂商防火墙策略变更前做规则校验,或对既有策略集做整洁度审计与跨厂商一致性分析。核心是判断候选规则是否与现有规则集重叠、被高优先级规则完全遮蔽、与其他规则行为冲突(允许/拒绝不一致)或功能重复。
主要能力:提供三个工具。analyze_firewall_rule_overlap 将候选规则与现有规则集按源/目的区域、源/目的地址、服务端口、协议、动作、应用六个维度做集合交叠,识别重叠、遮蔽、冲突与重复;parse_policy 将厂商原生配置转换为标准化 JSON,便于查看规则数量、对象解析与地址展开结果;list_supported_vendors 列出支持的厂商、别名、配置格式,并说明如何用规范化 JSON 绕过厂商解析器。
使用方式:作为 MCP Server 以 stdio 传输运行。仓库为 AutomateIP/fwrule-mcp,安装可用 git clone 后 uv sync,或 pip install -e .;依赖 fastmcp>=2.0、pydantic>=2.0、Python 3.11+,无需环境变量。输入有两种模式:模式一传厂商原生配置文本,需提供 vendor 标识、ruleset_payload、candidate_rule_payload,可选 os_version 与 context_objects;模式二直接传已规范化的 JSON,使用 existing_rules 与 candidate_rule。厂商解析器为尽力而为,结果异常时建议改用模式二。
适用场景:新增规则前的策略校验、跨平台规则审计、策略集清理(找出永不命中的遮蔽规则、重复项与内部冲突)。可与 FMC、Panorama、pyATS、FortiManager 等检索类技能配合,也可结合变更流程与审计记录使用。
限制:三个工具均为只读分析,不修改防火墙;不需要凭据,也不通过 API 连接设备,仅基于配置文本或 JSON。FortiOS 解析器由第三方贡献,上游 PR 未合并,需从 fork 安装:pip install git+https://github.com/akshaysiddaram/fwrule-mcp.git。具体收费与价格信息暂未提供。