
VMware NSX Security
io.github.vmware-skills由 GitHub 账号 vmware-skills 发布v1.17.1更新于 Oct 24, 2026
VMware NSX security: DFW policies and exclusions, groups, tags, Traceflow, IDPS — 22 MCP tools.
概览
面向 VMware NSX 安全的本地 MCP 服务器:让助手管理分布式防火墙策略、规则、安全组、虚拟机标签、Traceflow 与 IDPS。
- 可以做什么
- 列出、查看、创建、更新和删除 DFW 策略及其规则,读取规则统计和 DFW 排除列表,并提示成员是否被防火墙排除。创建和删除安全组,列出、应用或移除虚拟机标签。运行 Traceflow 数据包追踪,读取逐跳结果和 DFW 命中摘要。列出 IDPS 配置文件,查看签名状态与设置。
- 适用场景
- 适合让助手协助运维 NSX 微分段:审阅或修改分布式防火墙策略、按标签划分工作负载、确认某台虚拟机是否真正受 DFW 保护、追踪数据包路径,或在 NSX 4.x 与 9.x 环境中检查 IDPS 状况。
- 运行要求
- 以 Python 包形式在本地运行,用 uv tool install 安装(或用 uvx,每次启动需访问 PyPI),通过 mcp 子命令启动。需要在配置文件中填写 NSX Manager 主机地址,路径由 VMWARE_NSX_SECURITY_CONFIG 指定(默认 ~/.vmware-nsx-security/config.yaml),NSX 密码须通过环境变量提供而非写入配置文件。可选的 HTTPS 服务还需证书、私钥和 bearer 令牌。
安装
在 SourceWeft 中
- 打开 控制台中的 VMware NSX Security,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
VMware NSX Security
Author: Wei Zhou, VMware by Broadcom — [email protected] This is a community-driven project by a VMware engineer, not an official VMware product. For official VMware developer tools see developer.broadcom.com.
VMware NSX DFW microsegmentation and security MCP skill — 22 tools for distributed firewall policies/rules, security groups, VM tags, the DFW exclusion list, Traceflow packet tracing, and IDPS.
Companion skills: vmware-nsx (networking), vmware-aiops (VM lifecycle), vmware-monitor (monitoring)
Quick Start
Offline / Air-Gapped Install (from source)
This project uses the modern PEP 517 build system (hatchling), so there is no
setup.py by design — that is expected, not a missing file. If you cloned the
source and hit ERROR: File "setup.py" or "setup.cfg" not found ... editable mode currently requires a setuptools-based build, your pip is older than 21.3 and
cannot do an editable (-e) install with a non-setuptools backend. Editable
mode is a developer convenience, not needed to run the tool — do one of:
For a truly air-gapped host, build the wheels on a connected machine and copy them over — the target then needs no network:
What It Does
Total: 22 MCP tools (11 read-only + 11 write)
DFW exclusion list
A VM on the NSX distributed-firewall exclusion list has no DFW in its datapath: the rules that
name it exist and none of them applies. On a VCF estate the management VMs (vCenter, VCF
Operations, NSX managers) are commonly on it — one real NSX 9.1 fabric had 10 of 12 VMs excluded.
list_dfw_exclusions shows the list, and list_vm_tags / get_group / list_dfw_policies say
when a member is excluded, so "protected by DFW policy" is never reported for a VM the DFW does
not see. dfw_excluded: null means the list could not be read — which is not false.
MCP Server Setup
After uv tool install vmware-nsx-security, start the MCP server with one command (v1.5.15+):
Add to ~/.claude.json:
Alternative: uvx (no install) or legacy entry point
Behind a corporate TLS proxy? uvx may fail with
invalid peer certificate: UnknownIssuer. Use the recommendedvmware-nsx-security mcpform above (no network needed), or setUV_NATIVE_TLS=true.
Common Workflows
Microsegment an Application
Tag a VM
Trace a Packet
Output reports operation_state (IN_PROGRESS/FINISHED/FAILED),
hop-by-hop observations discriminated by resource_type (Dropped*
entries carry reason + acl_rule_id), and a dfw_hits summary.
Safety
- Dependency checks: Cannot delete a policy with active rules, or a group referenced by DFW or gateway-firewall rules/scopes or by a parent group; group deletion aborts if the reference scan fails
- Audit logging: All write ops logged to
~/.vmware-nsx-security/audit.log - Input validation: IDs validated; all API text sanitized against prompt injection
- Dry-run mode: All CLI write commands support
--dry-run - MCP delete preview:
delete_dfw_policy,delete_dfw_ruleanddelete_grouppreview by default — withoutconfirm=Truethey returnblast_radius(what would be removed,blockers,unmeasured) and delete nothing;confirm=Trueis refused while a blocker remains or a read failed - Credential safety: Passwords only from env vars, never in config files
Companion Skills
Version Compatibility
Official Broadcom References
- SDKs: https://developer.broadcom.com/sdks — VMware NSX for Python SDK (future migration target)
- REST APIs: https://developer.broadcom.com/xapis — NSX-T Data Center REST API
- CLI Tools: https://developer.broadcom.com/tools — VCF PowerCLI 9.1
Remote access (HTTPS) and limiting tools
By default vmware-nsx-security mcp speaks stdio to one local client and offers every tool. Two options change that
(vmware-policy ≥ 1.21.0).
Serve over HTTPS so clients on other machines can connect. Every caller needs a bearer token:
Connect a client (Claude Code shown; any MCP client that supports streamable HTTP and custom headers works):
- The server will not start without a token, refuses Host/Origin values outside
--public-name, and checks before it binds that unauthenticated requests get 401. Use a certificate your clients trust for those names. - Behind a TLS-terminating reverse proxy on the same machine use
--transport http --host 127.0.0.1 --public-name mcp.example.comand pass theAuthorizationheader through. - Behind a load balancer or gateway on another machine, keep
--transport https(a self-signed certificate is fine), list in--public-namethe host name the balancer sends asHost, and have it forwardAuthorization. Its health probe can useGET /healthz, which needs no token and returns only{"status": "ok"}(vmware-policy ≥ 1.23.0). - Send
traceparentorX-Request-IDwith each request to have it stored on the audit row;vmware-audit log --correlation-id IDthen finds the calls behind one platform request. - The audit log records each caller as
token:<name>. Calls run side by side, with or without a target: each target keeps up toVMWARE_MCP_POOL_SIZEsessions (default 2), and each session is a login on the target. A call that finds them all busy waits at most 300 s for one. - Everyone who can reach the endpoint acts with this server's account. Tokens identify callers; they grant nothing on the platform. Run one endpoint per privilege level.
- Several people or roles on one endpoint: run
vmware-audit roles enableonce, then give each token a role (vmware-audit token create NAME --role reader, or a role inroles.yamlnaming tools and targets; vmware-policy ≥ 1.24.0). A role limits what the token may call on this endpoint; it cannot grant more than the account has. See vmware-policy's README, "Roles for network callers".
Offer only read tools, plus the writes you choose:
Tools not offered do not appear in the client's tool list. A bad value or an unknown write tool stops the server (exit 2). This limits what clients are offered; it is not authorization, so the account itself should be least-privilege.
Details: skills/vmware-nsx-security/references/setup-guide.md ("Serving MCP over HTTPS", "Limiting which tools are offered").
License
MIT
来源:README.md,提交 7e8871b
工具
0版本历史
8- v1.17.1最新Oct 18, 2026
- v1.17.0Oct 16, 2026
- v1.16.0Oct 15, 2026
- v1.15.0Oct 15, 2026
- v1.14.0Oct 15, 2026
- v1.13.0Sep 20, 2026
- v1.12.0Sep 19, 2026
- v1.11.1Sep 16, 2026
评分
已满足适用检查项的 40%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
请在仓库或注册中心条目中声明许可证。