
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 分