
Proxmox Ops
io.github.derdennis1012由 GitHub 账号 derdennis1012 发布v0.1.0更新于 Oct 29, 2026
Proxmox VE diagnostics, backup audits, maintenance planning and guarded VM operations.
概览
面向 Proxmox VE 运维的 MCP 服务器:集群诊断、备份审计、维护规划以及受控的虚拟机操作。
- 可以做什么
- 检查集群、Ceph、存储与节点健康状况,包括仲裁、ZFS 池、SMART 数据和版本差异
- 审计备份,找出缺失、过期或未排程的客户机与失败任务,并查看待装更新和即将过期的证书
- 规划维护:为新客户机评分推荐落点,并判断节点能否被清空、列出阻碍项与相应命令
- 列出节点、客户机和任务,读取客户机配置(敏感信息已遮蔽)
- 可选地启动、关机、重启、创建快照或迁移客户机,每次都需要第二次确认调用
- 适用场景
- 适合需要让助手回答 Proxmox VE 集群运维问题的场景,例如哪些客户机缺少昨晚的备份、某个节点能否停机维护,而不必自行拼凑大量原始 API 调用。
- 运行要求
- 以本地 Python 包方式运行(需 Python 3.11 或更高版本),可通过 uvx、pipx 或 Docker 启动。需要 Proxmox API 令牌对应的 PROXMOX_HOST、PROXMOX_TOKEN_ID 和 PROXMOX_TOKEN_SECRET,并能通过网络访问节点的 8006 端口。可选 PROXMOX_ACCESS_TIER,以及用于证书处理的 PROXMOX_CA_BUNDLE 或 PROXMOX_TLS_FINGERPRINT。
安装
在 SourceWeft 中
- 打开 控制台中的 Proxmox Ops,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
proxmox-ops-mcp
An MCP server for Proxmox VE, built for operations work: finding out what is wrong with a cluster, whether the backups are actually there, and whether a node can be taken down for maintenance. Write access exists, but it is off by default and every change needs an explicit second call.
[CI] [codecov] [PyPI] [License: MIT]
Why another Proxmox MCP server
The existing ones mostly expose the API endpoint by endpoint. That is fine for "start
VM 104", but questions like "which guests have no backup from last night?" then need
a dozen calls, and the model has to know Proxmox well enough to combine them correctly.
It usually doesn't. For example, it won't know that a token without VM.Backup gets an
empty backup list instead of an error.
This server puts that knowledge into the tools. backup_audit reads the backup volumes,
applies the same guest selection as vzdump jobs and checks whether the token is even
allowed to see the volumes. The model gets a list of findings back, each with a stable
code and a recommendation.
Status
Version 0.1, usable but young. What has been tested where:
The live tests found three things the API documentation doesn't mention, and the server handles each of them:
- PVE 9 reports
cpuandwaitas 0 in the node status call. - Backup listings come back empty, without an error, when the token lacks privileges.
/cluster/resourceslags a few seconds behind the real guest state.
Install
Python 3.11 or newer. From source: git clone … && uv sync && uv run proxmox-ops-mcp.
Setup
1. Create an API token. Read-only to start with:
With only this role, backup_audit cannot see backups. Higher tiers need more
privileges, and Proxmox's ACL rules have a few traps. Both are covered in
docs/proxmox-setup.md.
2. Check the connection.
If this fails with SSLError, the node certificate probably does not cover the address
you use. That is common when connecting over a VPN. check prints the command to pin
the certificate instead.
3. Add it to your client. Claude Code:
Claude Desktop, Cursor, VS Code, OpenAI Codex, Gemini CLI, Hermes Agent, OpenClaw and Docker: see docs/clients.md. It also covers what to watch out for when an autonomous agent uses the server.
Tools
Parameters and all finding codes: docs/tools.md.
Example, plan_node_evacuation(node="pve1"), shortened:
Write access
PROXMOX_ACCESS_TIER is read_only unless you change it, and tools above the tier are
not registered at all. A write tool works in two steps:
- Called normally, it checks the request against the live guest state and returns a preview of what would happen, plus a confirmation token.
- Called again with the same arguments and that token, it executes.
The token works once, expires after five minutes and is bound to the exact parameters. That includes the node, so a guest that migrated in between invalidates it. Writes can additionally be limited to named pools or VMIDs and capped per hour. Every preview, execution and rejection is written to an audit log.
The token makes sure that what runs is what was previewed. It does not prove that a person approved it, because the model sees the token. Keep tool approval switched on in your MCP client for the write tools. There are no tools that delete anything.
The details, including the HTTP transport defaults, are in docs/security-model.md.
Configuration
Environment variables with the PROXMOX_ prefix: HOST, TOKEN_ID and TOKEN_SECRET
are required. Optional are ACCESS_TIER, CA_BUNDLE or TLS_FINGERPRINT, AUDIT_LOG
and a few more. A .env file is only read when passed with --env-file. The full list
is in docs/configuration.md.
Development
The diagnostic logic in src/proxmox_ops_mcp/analysis/ is plain functions over API
payloads and is tested without a cluster. tests/live/ runs read-only checks against a
real one if you point it at an env file. docs/architecture.md
explains the layout, and CONTRIBUTING.md explains how to contribute.
Documentation site: https://derdennis1012.github.io/proxmox-ops-mcp/. Planned next: direct Proxmox Backup Server checks (garbage collection, prune and verify jobs), replication jobs, guest snapshot hygiene.
License
MIT. Proxmox is a trademark of Proxmox Server Solutions GmbH; this project is not affiliated with it.
来源:README.md,提交 ad39dd7
工具
0版本历史
1- v0.1.0最新Oct 29, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分