ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

Proxmox Ops

โดย derdennis1012รุ่น 0.1.0i★ –iรันบนเครื่อง
ชื่อใน registryio.github.derdennis1012/proxmox-ops-mcp

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Proxmox VE diagnostics, backup audits, maintenance planning and guarded VM operations.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: อื่น ๆ
  • ต้องใส่ค่าเหล่านี้: PROXMOX_HOST, PROXMOX_TOKEN_ID, PROXMOX_TOKEN_SECRET

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

  • ผลตรวจเบื้องต้น: ผ่าน 1 จาก 1 ข้อ
  • รันในเครื่องคุณด้วยสิทธิ์ของผู้ใช้คุณ (ไฟล์ อินเทอร์เน็ต แอปต่าง ๆ)
  • ค่าที่คุณต้องใส่เอง: PROXMOX_HOST, PROXMOX_TOKEN_ID, PROXMOX_TOKEN_SECRET, PROXMOX_ACCESS_TIER, PROXMOX_TLS_FINGERPRINT, PROXMOX_CA_BUNDLE

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • PyPIติดตั้ง uv ของ Python (มีคำสั่ง uvx) ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "proxmox-ops": {
      "command": "uvx",
      "args": [
        "proxmox-ops-mcp"
      ],
      "env": {
        "PROXMOX_HOST": "ใส่ค่าของคุณ",
        "PROXMOX_TOKEN_ID": "ใส่ค่าของคุณ",
        "PROXMOX_TOKEN_SECRET": "ใส่ค่าของคุณ",
        "PROXMOX_ACCESS_TIER": "ใส่ค่าของคุณ",
        "PROXMOX_TLS_FINGERPRINT": "ใส่ค่าของคุณ",
        "PROXMOX_CA_BUNDLE": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add proxmox-ops --env PROXMOX_HOST='ใส่ค่าของคุณ' --env PROXMOX_TOKEN_ID='ใส่ค่าของคุณ' --env PROXMOX_TOKEN_SECRET='ใส่ค่าของคุณ' --env PROXMOX_ACCESS_TIER='ใส่ค่าของคุณ' --env PROXMOX_TLS_FINGERPRINT='ใส่ค่าของคุณ' --env PROXMOX_CA_BUNDLE='ใส่ค่าของคุณ' -- uvx proxmox-ops-mcp

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "proxmox-ops": {
      "command": "uvx",
      "args": [
        "proxmox-ops-mcp"
      ],
      "env": {
        "PROXMOX_HOST": "ใส่ค่าของคุณ",
        "PROXMOX_TOKEN_ID": "ใส่ค่าของคุณ",
        "PROXMOX_TOKEN_SECRET": "ใส่ค่าของคุณ",
        "PROXMOX_ACCESS_TIER": "ใส่ค่าของคุณ",
        "PROXMOX_TLS_FINGERPRINT": "ใส่ค่าของคุณ",
        "PROXMOX_CA_BUNDLE": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "proxmox-ops": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "proxmox-ops-mcp"
      ],
      "env": {
        "PROXMOX_HOST": "ใส่ค่าของคุณ",
        "PROXMOX_TOKEN_ID": "ใส่ค่าของคุณ",
        "PROXMOX_TOKEN_SECRET": "ใส่ค่าของคุณ",
        "PROXMOX_ACCESS_TIER": "ใส่ค่าของคุณ",
        "PROXMOX_TLS_FINGERPRINT": "ใส่ค่าของคุณ",
        "PROXMOX_CA_BUNDLE": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • PROXMOX_HOST จำเป็น env
    Hostname or IP of any cluster node
  • PROXMOX_TOKEN_ID จำเป็น env
    API token id, user@realm!tokenname
  • PROXMOX_TOKEN_SECRET ความลับ จำเป็น env
    API token secret
  • PROXMOX_ACCESS_TIER env
    read_only, operator or admin
  • PROXMOX_TLS_FINGERPRINT env
    SHA-256 fingerprint to pin the node certificate (optional)
  • PROXMOX_CA_BUNDLE env
    CA bundle for the cluster certificate (optional)

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub derdennis1012 ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด อื่น ๆi

  • ดาวมากกว่า 0% ของอีก 18594 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 78% ของอีก 18594 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 18594 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Proxmox Ops ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: PROXMOX_HOST, PROXMOX_TOKEN_ID, PROXMOX_TOKEN_SECRET

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.0) เข้า registry 11 วันที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv), Docker ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Commonly

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Spec Driven Development

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

โดย formulahendryเริ่มต้น↓ 66/สัปดาห์★ 440อัปเดต 14 เดือนที่ผ่านมา

รันบนเครื่อง

Remote Desktop Commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

โดย desktop-commanderกำลังโต★ 211อัปเดต 3 วันที่ผ่านมา

รันบนคลาวด์✓ desktopcommander.app

Commonly

Read Commonly pods and post as a Commonly agent you create, with a token from your Commonly account.

โดย Team-Commonlyกำลังโต↓ 4.9K/สัปดาห์อัปเดต วันนี้

รันบนเครื่อง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

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.

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:

Proxmox VE 9.2, single node, ZFS, two backup storagesall read tools, all write tools (on a throwaway VM in a dedicated pool)
Multi-node clusters, HA, Cephunit and integration tests with realistic payloads only
Proxmox VE 8, Proxmox Backup Server storagesnot tested live yet; reports welcome

The live tests found three things the API documentation doesn't mention, and the server handles each of them:

  • PVE 9 reports cpu and wait as 0 in the node status call.
  • Backup listings come back empty, without an error, when the token lacks privileges.
  • /cluster/resources lags a few seconds behind the real guest state.

Install

uvx proxmox-ops-mcp --version          # run without installing (uv)

pipx install proxmox-ops-mcp # or as a CLI tool docker pull ghcr.io/derdennis1012/proxmox-ops-mcp

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:

pveum user add mcp@pve

pveum acl modify / --users mcp@pve --roles PVEAuditor pveum user token add mcp@pve ops --privsep 1 # prints the secret once pveum acl modify / --tokens 'mcp@pve!ops' --roles PVEAuditor

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.

$ export PROXMOX_HOST=pve1.example.com PROXMOX_TOKEN_ID='mcp@pve!ops' PROXMOX_TOKEN_SECRET=…

$ uvx proxmox-ops-mcp check OK connected to pve1.example.com:8006 as mcp@pve!ops Proxmox VE 9.2.5 (release 9.2) 3 node(s) visible, access tier: read_only

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 mcp add proxmox-ops \

-e PROXMOX_HOST=pve1.example.com \ -e PROXMOX_TOKEN_ID='mcp@pve!ops' \ -e PROXMOX_TOKEN_SECRET=… \ -- uvx proxmox-ops-mcp

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

ToolTier
cluster_healthread_onlyQuorum, offline nodes, CPU/memory, storage fill levels, HA errors
ceph_healthread_onlyCeph health checks with hints, OSD and PG state, monitor quorum, capacity
compare_nodesread_onlyI/O wait, load, swap, memory/I/O pressure (PSI), version drift between nodes
backup_auditread_onlyMissing, stale and unscheduled backups; failed jobs; PBS verification
recent_task_failuresread_onlyFailed tasks in a time window
storage_healthread_onlyZFS pool state, device and data errors, scrub age, SMART, SSD wear
node_maintenance_statusread_onlyPending Proxmox updates, needed reboots, expiring node certificates
recommend_placementread_onlyWhere a new guest fits, with a score and the reason for every node
plan_node_evacuationread_onlyCan a node be drained, what blocks it, and the commands to do it
list_nodes, list_guests, get_guest, get_task_statusread_onlyInventory, guest config (secrets redacted), task logs
guest_poweroperatorstart, shutdown, reboot; stop needs admin
create_snapshotoperatorSnapshot before a risky change
migrate_guestadminLive migration for VMs, restart migration for containers

Parameters and all finding codes: docs/tools.md.

Example, plan_node_evacuation(node="pve1"), shortened:

{

"feasible": true, "summary": "pve1 can be drained: 3 guests to 2 target nodes, 1 container(s) with a brief restart.", "guests": [ { "vmid": 100, "name": "db01", "mode": "ha-managed", "target": "pve3" }, { "vmid": 101, "name": "web01", "mode": "live-with-local-disks", "target": "pve2", "warnings": ["local disks will be copied: scsi0@local-lvm"] }, { "vmid": 200, "name": "dns01", "mode": "restart", "target": "pve3" } ], "steps": [ "ceph osd set noout # prevent rebalancing while the node is down", "ha-manager crm-command node-maintenance enable pve1 # HA moves its guests automatically", "qm migrate 101 pve2 --online --with-local-disks", "pct migrate 200 pve3 --restart", "# perform maintenance on pve1, reboot, verify it rejoined the cluster", "ha-manager crm-command node-maintenance disable pve1", "ceph osd unset noout" ] }

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:

  1. Called normally, it checks the request against the live guest state and returns a preview of what would happen, plus a confirmation token.
  2. 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

make install   # uv sync + pre-commit

make check # ruff, mypy --strict, pytest

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.

ถาม PopNx