mcpField
S
SonicWall MCP

SonicWall MCP

本地服务
github.com/servosity安全64今天更新

关于 SonicWall MCP

SonicWall MCP 是面向管理 SonicWall 设备群的社区 MCP 服务和 CLI,适用于 MSP。它按防火墙评估与保险相关的安全状况并记录变化,同时会屏蔽文档标记的机密字段;当前版本不建议使用 HTTP 传输。

主要功能

  1. 01逐台防火墙状况评级
  2. 02公告与 SSL-VPN 暴露检查
  3. 03MFA 与许可证审计
  4. 04固件差异报告
  5. 05发现 MySonicWall 盲点
  6. 06本地状况变化历史

适用场景

  1. 01为保险续保整理防火墙状况
  2. 02查找受 SonicWall 公告影响的设备
  3. 03识别缺少一次性密码的管理员或 VPN 用户
  4. 04检查固件落后情况和许可证到期时间

MCP 相关

通过 MCP 服务向 AI 客户端提供 SonicWall 设备群操作,也提供 CLI。README 建议使用 stdio 传输,并避免在当前版本使用 HTTP 模式。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库
安装包
mcpbsonicwall-mcp.mcpb0.1.3

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

SonicWall + AI - 适用于 ChatGPT、Claude、GitHub Copilot、Microsoft 365 Copilot、Gemini 以及任何支持 MCP 的 Agent

非官方。由社区构建的 Claude Code Skill 和 SonicWall API MCP 服务。与 SonicWall Inc. 无关,也未获其认可或赞助。

SonicWall 演示 - 动态预览

▶ 观看 30 秒演示 - 演示数据为模拟数据;展示的每条命令都存在于真实的 CLI 中。

全面掌握整个 SonicWall 设备群的网络保险安全状况:固件、安全公告、MFA、SSL-VPN 暴露情况和许可证,每台防火墙一行。可与您现有的 AI 配合使用 - ChatGPT(Plus/Pro+,此连接器重新发布前暂停使用;参见 mcp-install.md)、Claude Desktop、Codex、Claude Code、Claude Cowork 和 GitHub Copilot,还可通过远程方式使用 Microsoft 365 Copilot / Copilot Studio 和 Google Gemini。免费、开源,可在您的笔记本电脑上运行。专为 MSP 所有者打造。无需编写代码。

适用于您的 Agent

安全提示(此连接器重新发布前)。 请勿使用 HTTP 模式 (--transport http),即使是在 localhost 上也不行。此版本会检查令牌,但 早于修复版,尚无请求大小和时间限制。MCP 工具也可能使用您的凭据执行更改。请使用默认的 stdio 传输。如果 您为远程 Agent 设置了隧道,请将其关闭。修复版即将推出。

MSP 所有者实际使用的六种 Agent(可自行安装,目前可用):

您的 AI Agent如何安装 SonicWall Skill
Claude Desktop运行安装程序,然后前往 Settings > Extensions 注册 sonicwall-mcp(无需编辑 JSON)。
ChatGPT(付费套餐)此连接器重新发布前暂停使用:ChatGPT 需要 HTTP 模式,而此版本的该模式会检查令牌,但尚无请求大小和时间限制。请参阅 mcp-install.md 中的安全提示。
Codex CLI粘贴下方的安装提示词。
Claude Code粘贴下方的安装提示词。
Claude Cowork粘贴下方的安装提示词。
GitHub Copilot(VS Code)运行安装程序,在 mcp.json 的 servers 键下添加 sonicwall-mcp,然后选择 Agent 模式。

ChatGPT 需要远程 HTTPS 服务,因此需要使用此连接器的 HTTP 模式;在连接器重新发布前,该模式暂停使用:此版本的该模式会检查令牌,但尚无请求大小和时间限制。请参阅 mcp-install.md 中的安全提示。

Microsoft 和 Google 技术栈也适用

用户基数很大,但需要如实提醒:这些属于远程/企业接入方式,不是你刚安装的本地二进制文件。

Agent所需条件
Microsoft 365 Copilot / Copilot Studio暂停使用,直到重新发布此连接器:Copilot Studio 需要使用 HTTP 模式,而此版本中的该模式会检查令牌,但尚无请求大小或时间限制。请参阅 mcp-install.md 中的安全说明。
Google GeminiGemini CLI 是本地运行的,和 Claude Code 一样。Gemini 应用是远程服务,需要使用与 ChatGPT 相同的暂停 HTTP 模式。请参阅 mcp-install.md。

原生支持 Skill 的 Agent(也涵盖在内): Hermes 和 OpenClaw 会直接读取此 Skill 的 SKILL.md,并且支持 MCP——请参阅下方的安装章节。也可通过 MCP 与 Cursor、Windsurf、Cline、Continue.dev 和 Zed 搭配使用。各工具的完整接入说明:docs/which-agent.md。

要使用多个 Agent? 运行一条命令,即可在所有 51 种以上受支持的 Agent 中安装:npx skills add Servosity/msp-skills@latest(需要 Node.js,然后运行每个 Skill 的安装程序来安装 CLI/MCP 二进制文件)。请参阅 docs/which-agent.md。

60 秒内完成安装

Claude Desktop 最快捷的方式——一键安装 .mcpb

下载 SonicWall MCP (.mcpb),然后打开 Claude Desktop > Settings > Extensions 并选择该文件。一键完成,无需 JSON,也无需 shell。(在发布页面查看所有 SonicWall 版本。)

更喜欢 Claude Code 插件?添加一次市场,然后安装即可——立即生效,无需列出目录:

/plugin marketplace add Servosity/msp-skills
/plugin install sonicwall@msp-skills
方式 A——向 AI Agent 粘贴一条提示词(推荐)

将以下内容复制到 Claude Code、Codex CLI 或 Claude Cowork 中:

在此 Agent 工作区中安装 Servosity/msp-skills 中的 SonicWall Skill 和 MCP 服务。如果此工作区使用 POSIX shell(macOS、Linux、WSL 或 Bash),请运行 bash <(curl -fsSL https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/sonicwall/install.sh)。如果使用 Windows PowerShell,请运行 iwr -useb https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/sonicwall/install.ps1 | iex。然后按照 README 完成身份验证,并运行 sonicwall-cli --help 进行探索。

任何能够运行 shell 的 Agent 都可以使用同一条提示词。

方式 B——自行运行安装程序

Windows(PowerShell):

iwr -useb https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/sonicwall/install.ps1 | iex

macOS / Linux:

bash <(curl -fsSL https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/sonicwall/install.sh)

安装程序会将 sonicwall-cli(CLI)和 sonicwall-mcp(MCP 服务)安装到用户的 bin 路径中。Claude Code、Codex 和 Cowork 会通过此目录中的 SKILL.md 发现该 Skill。

验证:

sonicwall-cli --version
升级到最新版本

安装程序始终获取当前版本,重新运行即可升级:

macOS / Linux:

bash <(curl -fsSL https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/sonicwall/install.sh)

Windows(PowerShell):

iwr -useb https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/sonicwall/install.ps1 | iex

Claude Desktop .mcpb 用户:下载最新的 .mcpb(见本节顶部),然后在 Settings > Extensions 中重新选择该文件。Claude Code 插件用户:/plugin update sonicwall@msp-skills。

添加到 Claude Desktop、GitHub Copilot、Gemini CLI、Microsoft 365 Copilot 或其他 MCP 客户端

安装程序运行后,请参阅 mcp-install.md 和 docs/which-agent.md,查看各 Agent 的接入说明——每个 Agent 各有一个章节,包括 GitHub Copilot 的 servers 键,以及远程 Microsoft 365 Copilot / Copilot Studio 接入方式。Claude Desktop 的 Settings > Extensions 面板是最简单的方式;mcp-install.md 中也记录了 MCP 配置块(适合偏好编辑 JSON 的用户)。

为 Hermes 安装

在 Hermes CLI 中:

hermes skills install servosity/msp-skills/skills/sonicwall --force

在 Hermes 聊天会话中:

/skills install servosity/msp-skills/skills/sonicwall --force

Hermes 原生支持 MCP,因此也可以直接使用 sonicwall-mcp 服务——安装方式和环境变量相同。

为 OpenClaw 安装

告诉你的 OpenClaw Agent(复制此内容):

从 https://github.com/servosity/msp-skills/tree/main/skills/sonicwall 安装 sonicwall 技能。该技能定义了如何通过 openclaw: frontmatter 块安装其所需的 CLI(sonicwall-cli)。

OpenClaw 目前尚未普遍开放;frontmatter 配置已预先提供,并会在 OpenClaw 发布时立即启用。

进行身份验证

创建 MySonicWall API 密钥(最好使用 NSM 角色为只读的账户),然后用它生成 NSM 会话令牌并进行检查:

export SONICWALL_MSW_API_KEY=<your MySonicWall API key>
export SONICWALL_REGION=eucentral   # EU NSM portals only; the default is uswest
sonicwall-cli nsm-login
sonicwall-cli doctor

nsm-login 会用该密钥换取 NSM 会话令牌并保存(绝不会打印出来)。令牌有效期为 8 小时,空闲超时为 15 分钟,因此每当 NSM 命令以 4 退出时,都要重新运行 nsm-login。随后,doctor 会执行一次经过身份验证的 NSM 读取操作(GET /tenants),因此它报告的是令牌是否实际有效,而不只是是否已设置。许可证检查和 blind-spots 也会使用同一密钥读取 MySonicWall。

此技能的功能

MSP 经常提出的问题命令
每个客户端防火墙对应一行保险态势数据:固件、支持状态、安全公告、许可证、管理员 TOTP、SSL-VPNsonicwall-cli posture
哪些防火墙受到 CVE-2024-40766 安全公告影响?哪些防火墙在 WAN 区域启用了 SSL-VPN?sonicwall-cli exposure "SNWLID-2024-0015"
我的机群中,哪些 SonicWall 安全公告影响的防火墙最多?sonicwall-cli exposure
哪些管理员和本地 SSL-VPN 用户没有一次性密码?sonicwall-cli mfa-audit
哪些防火墙的固件落后于最新版本?升级会解决哪些问题?sonicwall-cli firmware drift --behind-only
哪些许可证将在未来 90 天内到期?哪些设备应该直接更换?sonicwall-cli licenses renewals --days 90
哪些防火墙已在 MySonicWall 注册,却无法在 NSM 中看到?sonicwall-cli blind-spots
与上周相比,哪些情况变糟了?sonicwall-cli posture changes --fleet --since 7d

完整命令参考:guide.md。有关 AI Agent 操作约定(--agent、--dry-run、何时在执行变更前确认),请参阅 AGENTS.md。

有何不同

GTalksTech/sonicwall-mcp 是一个面向 NSM SaaS 的只读 Python MCP 服务,提供 46 个工具,用于查看设备清单、固件、安全公告、许可证状态、各站点的 SSL-VPN 配置和配置历史。

这个项目是一个既可用作 CLI,也可用作 MCP 服务的单一二进制文件,专为 MSP 在 SonicWall 发布安全公告当天早上以及保险续保时会遇到的问题而构建。posture 通过 NSM 的 SonicOS 透传功能读取 NSM 租户中的每台防火墙,并根据固件、停止支持状态、安全公告、许可证到期时间、管理员 TOTP 和 SSL-VPN 暴露情况,将每台防火墙评为通过、警告、失败或未知。mfa-audit 会列出所有没有一次性密码的本地 SSL-VPN 用户;blind-spots 会找出已在 MySonicWall 注册、但 NSM 无法看到的防火墙;每次运行 posture 都会在本地保存结果,因此 posture changes 可以显示自上周以来哪些情况变差了。无法读取的防火墙状态为未知,绝不会判为通过。SonicWall 自身的 API 架构文档中提到的机密字段(本地用户和设备密码、注册码和验证码、SNMP 团体名称、MySonicWall API 密钥)会在输出、缓存或交给 Agent 前清空。

SonicWall 的 SAMI 是 SonicWall 统一管理控制台中的助手,可回答设备群问题并执行固件升级等任务。本项目可从你已在使用的 AI Agent 中运行,绝不会更改防火墙,并会逐台评估保险公司所关注的安全状态。

它解决的问题

从 2025 年 7 月起,Akira 勒索软件运营者开始攻击 SonicWall SSL-VPN 账户(BleepingComputer)。SonicWall 将这波攻击与 CVE-2024-40766 以及第 6 代迁移到第 7 代时“沿用本地用户密码”的情况联系起来,并要求管理员将固件更新到 7.3.0、重置本地 SSL-VPN 密码并强制启用 MFA(SonicWall);面向 MSP 的 SmarterMSP 公告也提出了相同要求。要在当天完成这些工作,就必须了解每个客户的哪些防火墙运行着旧固件、哪些防火墙在 WAN 区域启用了 SSL-VPN,以及哪些本地用户没有一次性密码。这些设置分散在每台防火墙上,而保险公司每次续保都会询问相同的问题。

  • sonicwall-cli exposure "SNWLID-2024-0015" - 列出受 CVE-2024-40766 安全公告影响的所有防火墙,以及 SSL-VPN 是否位于 WAN 区域。
  • sonicwall-cli mfa-audit - 查看每台防火墙的管理员 TOTP,以及所有没有一次性密码的本地 SSL-VPN 用户。
  • sonicwall-cli posture - 为每台防火墙生成一行通过、警告、失败或未知状态,并保存结果以供 posture changes 使用。
  • sonicwall-cli licenses renewals --days 90 - 生成一份续保清单,无需再维护电子表格。

更完整的介绍请参阅 pain-point.md。

常见问题

这能与 ChatGPT 配合使用吗?

当前版本不行。ChatGPT(Plus、Pro、Team、Business、Enterprise 和 Education 方案;Free 目前尚不支持 Developer Mode)只能通过 HTTPS 连接到远程 MCP 服务,这意味着必须以 HTTP 模式运行 SonicWall MCP 服务。在当前版本中,HTTP 模式会检查令牌,但尚未限制请求大小或请求时长,因此在连接器重新发布之前,请勿运行它,也不要将其置于隧道后面。mcp-install.md 中的安全说明解释了原因。在此之前,请使用 Claude Desktop、Claude Code 或 Codex。

这能与 Codex、Cursor、Windsurf、Cline、Copilot 或 Gemini 配合使用吗?

可以 - 它们都支持 MCP。跨工具安装命令见上方的矩阵,详细说明请参阅 docs/which-agent.md。

我需要会编程吗?

不需要。推荐的安装方式是将一句话粘贴到 Claude Code 或 Codex 中——你的 Agent 会读取 SKILL.md 并完成安装。备用方式是每种操作系统对应的一行安装程序(bash 或 PowerShell)。这两种方式都不需要编写代码。你只需输入一次 MySonicWall API 密钥,然后运行 sonicwall-cli nsm-login。

我的 SonicWall 数据安全吗?

你的数据会保留在自己的计算机上。CLI 和 MCP 服务都是本地二进制程序。SQLite 镜像保存在你用户帐户下的目录中。AI Agent 只能看到 CLI 返回的内容——通常是查询结果,而不是原始批量数据。凭据从你的环境或 Agent 配置中读取;MSP Skills 绝不会将凭据打包进此代码库或传输到任何地方。

它需要哪些凭据?

需要一个 MySonicWall API 密钥,并将其设置为 SONICWALL_MSW_API_KEY。sonicwall-cli nsm-login 会用它换取 NSM 会话令牌并保存;该令牌有效期为 8 小时,空闲超时为 15 分钟,因此当 NSM 命令以状态码 4 退出时,请再次运行 nsm-login。欧盟门户还需设置 SONICWALL_REGION=eucentral。请使用 NSM 角色为只读的 MySonicWall 帐户;NSM 本身也会拒绝任何写入操作。

它能更改我的 SonicWall 防火墙吗?

不能。它会读取 NSM、通过 NSM 的 SonicOS 直通功能访问的防火墙,以及 MySonicWall。唯一的 POST 请求是以读取方式进行的 MySonicWall 查询和令牌交换(nsm-login、nsm-session、msw-tenants access-code)。SonicWall 自有 API 架构中记录的机密字段(例如本地用户和设备密码、注册码和身份验证码、SNMP 团体名称以及 MySonicWall API 密钥)会在任何内容被打印、缓存、同步或交给 Agent 之前,从每个响应中清除。SONICWALL_MCP_READ_ONLY=1 会隐藏可能更改 NSM、MySonicWall 或防火墙状态的 MCP 工具;保留的工具仍会写入本地状态(响应缓存、posture 快照和学习条目)。

它能看到未加入 NSM 的防火墙吗?

使用 posture、exposure、mfa-audit 或 firmware drift 时看不到:这些功能只能查看已接入 NSM SaaS 的防火墙。运行 sonicwall-cli blind-spots,即可列出已在 MySonicWall 注册但 NSM 无法看到的防火墙,以及适用于其已注册固件的公告。

它如何判断 SSL-VPN 是否暴露在互联网上?

它会读取每台防火墙的 SSL-VPN 区域设置,并在 SSL-VPN 已在名称包含 WAN 的区域上启用时,将其标记为暴露。名称自定义且不含 WAN、但面向互联网的区域无法被识别,因此此处通过应理解为“未在名称包含 WAN 的区域上启用”。

费用是多少?

免费。采用 Apache-2.0 许可证。你只需为所用的 AI Agent(Claude、ChatGPT、Codex 等)付费,费用由你的 AI 提供商收取,而不是我们。

安全模型

层级示例建议的 Agent 策略
读取posture、posture changes、exposure、mfa-audit、firmware drift、licenses renewals、blind-spots;devices、device-groups、firmware、licenses、vulnerabilities、tenants、alerts 和 nsm-system 下的所有 list / get / count;config-audit count;firewall 中除敏感读取项下四项以外的读取操作;msw-products、msw-licenses、msw-system,以及 msw-tenants 中除 access-code 以外的读取操作;对本地存储执行 search,以及导出除 config_audit 和 msw_users 以外的任何资源(仅本地写入:已保存的态势检查运行结果、响应缓存、export --output 文件)允许
原始读取(应急通道)nsm-get(仅限供应商文档中说明的 GET 路由;拒绝凭据和更改状态的路由;对形似凭据的值进行脱敏)允许;审查不熟悉的路径
敏感读取config-audit list / diff(NSM 返回的配置文本,不会逐字段脱敏)、firewall local-users、firewall local-groups、firewall user-auth、firewall sslvpn-sessions、msw-users、msw-activity、export config_audit / export msw_users、sync / workflow archive(这些操作会将 config-audit 配置文本及 firewall 本地用户和组复制到本地存储,search 和 MCP sql / search 工具可以读取这些内容),以及对 config_audit 或 msw_users 执行 tail需人工参与;将输出和本地存储保持私密
凭据nsm-login、nsm-session refresh / sso、msw-tenants access-code、import、auth set-token、auth logout仅限人工参与
数据外传--deliver webhook:<url>、feedback --send,以及设置了 SONICWALL_FEEDBACK_ENDPOINT 且 SONICWALL_FEEDBACK_AUTO_SEND=true 时的 feedback需人工参与

MCP sonicwall_execute 工具可以按 ID 调用任何经过筛选的端点:每次调用都遵循上述层级。它的 POST 请求包括凭据层级的令牌交换,以及四项只读式 MySonicWall 查询(msw-activity export、msw-licenses、msw-products list、msw-users groups);设置 SONICWALL_MCP_READ_ONLY=1 时,所有 POST 请求都会被拒绝。没有任何命令会更改防火墙、NSM 或 MySonicWall 配置。

最强有力的控制措施是使用 NSM 角色为只读的 MySonicWall 账户——NSM 会拒绝其他所有操作。锁定账户的详细信息见 governance.md。

状态

Beta 版,等待实际环境验证。命令集是 SonicWall 自行发布的 API 规范(NSM API Gateway 和 SonicOS passthrough Swagger 文件,以及 MySonicWall API)中经过筛选的子集;设备群命令也已通过针对模拟 NSM 和 MySonicWall 响应的单元测试。但目前还没有 MSP 在生产租户上运行并反馈,因此这里的任何内容都尚未经过真实防火墙验证。如果你在自己的环境中运行,填写“可正常运行”表单后,我们就能为此添加徽章。MSP 会在每周的 Build Sessions 中全面测试这类连接器——请在 compoundingteams.com/build-sessions RSVP。


标准。 符合开放的 Agent Skills 规范(Anthropic,2025 年 12 月;支持 40 多种 Agent)。兼容 MCP,可与任何支持 MCP 的 Agent 配合使用,包括 Hermes。支持 OpenClaw(frontmatter 已预先配置,等待 OpenClaw 发布)。

由 Servosity 维护。采用 Apache-2.0 许可。使用 CLI Printing Press 构建。上次更新:2026-10-15。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。