Token导航 LogoToken导航TokenDH.com
MCP PVE logo
运维云端stdio官方级别未说明来源级核验

MCP PVE

MCP Server

@samik081/mcp-pve

一个用于管理Proxmox VE(虚拟环境)的服务器工具,支持通过自然语言操作虚拟机、容器、存储、网络和集群。

工具数

105

提示词数

0

GitHub Stars

7

资源数

0
TypeScriptClaude容器管理Claude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Samik081

提供方

Samik081

最后核验

2026/5/17 20:22

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx -y @samik081/mcp-pve

详细介绍

](https://www.npmjs.com/package/@samik081/mcp-pve) ](https://ghcr.io/samik081/mcp-pve) ![License: MIT](https://opensource.org/licenses/MIT) ](https://nodejs.org)

MCP-PVE

MCP服务器 Proxmox VE.通过Cursor、Claude Code和Claude Desktop中的自然语言管理虚拟机、容器、存储、网络和集群。

特性

  • 105工具 穿过 12个类别 覆盖Proxmox VE REST API
  • 三个访问层 (read-only, read-execute, full)用于粒度控制
  • 类别筛选 通过 PVE_CATEGORIES 仅公开您需要的工具
  • 零HTTP依赖 --使用本地 fetch (节点18+)
  • 自签名证书支持 通过 PVE_VERIFY_SSL=false
  • Docker镜像 为了 linux/amd64linux/arm64GHCR
  • 远程MCP 通过HTTP传输(MCP_TRANSPORT=http)使用流式HTTP协议
  • Types/ESM 具有全类型安全性

API兼容性

使用Proxmox VE进行测试 9.0.10.

快速开始

使用npx直接运行服务器:

PVE_BASE_URL="https://pve.example.com:8006" \
PVE_TOKEN_ID="root@pam!mcp" \
PVE_TOKEN_SECRET="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" \
npx -y @samik081/mcp-pve

服务器在启动时验证您的PVE连接,如果凭据丢失或无效,则立即失败并显示明确的错误。

码头工人

使用Docker运行(stdio传输,与npx相同):

docker run --rm -i \
  -e PVE_BASE_URL=https://pve.example.com:8006 \
  -e PVE_TOKEN_ID=root@pam!mcp \
  -e PVE_TOKEN_SECRET=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -e PVE_VERIFY_SSL=false \
  ghcr.io/samik081/mcp-pve

要作为具有HTTP传输的远程MCP服务器运行:

docker run -d -p 3000:3000 \
  -e MCP_TRANSPORT=http \
  -e PVE_BASE_URL=https://pve.example.com:8006 \
  -e PVE_TOKEN_ID=root@pam!mcp \
  -e PVE_TOKEN_SECRET=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -e PVE_VERIFY_SSL=false \
  ghcr.io/samik081/mcp-pve

MCP端点位于 http://localhost:3000 健康检查在 http://localhost:3000/health.

配置

Claude Code命令行界面(推荐):

# Using npx
claude mcp add --transport stdio pve \
  --env PVE_BASE_URL=https://pve.example.com:8006 \
  --env PVE_TOKEN_ID=root@pam!mcp \
  --env PVE_TOKEN_SECRET=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  --env PVE_VERIFY_SSL=false \
  -- npx -y @samik081/mcp-pve

# Using Docker
claude mcp add --transport stdio pve \
  --env PVE_BASE_URL=https://pve.example.com:8006 \
  --env PVE_TOKEN_ID=root@pam!mcp \
  --env PVE_TOKEN_SECRET=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  --env PVE_VERIFY_SSL=false \
  -- docker run --rm -i ghcr.io/samik081/mcp-pve

# Using remote HTTP (connect to a running Docker container or HTTP server)
claude mcp add --transport http pve http://localhost:3000

JSON配置 (与Claude Code合作 .mcp.json,克劳德桌面 claude_desktop_config.json,光标 .cursor/mcp.json):

{
  "mcpServers": {
    "pve": {
      "command": "npx",
      "args": ["-y", "@samik081/mcp-pve"],
      "env": {
        "PVE_BASE_URL": "https://pve.example.com:8006",
        "PVE_TOKEN_ID": "root@pam!mcp",
        "PVE_TOKEN_SECRET": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "PVE_VERIFY_SSL": "false"
      }
    }
  }
}

Docker(标准操作系统):

{
  "mcpServers": {
    "pve": {
      "command": "docker",
      "args": ["run", "--rm", "-i",
        "-e", "PVE_BASE_URL=https://pve.example.com:8006",
        "-e", "PVE_TOKEN_ID=root@pam!mcp",
        "-e", "PVE_TOKEN_SECRET=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "-e", "PVE_VERIFY_SSL=false",
        "ghcr.io/samik081/mcp-pve"
      ]
    }
  }
}

远程MCP (连接到正在运行的Docker容器或HTTP服务器):

{
  "mcpServers": {
    "pve": {
      "type": "streamable-http",
      "url": "http://localhost:3000"
    }
  }
}

访问层

使用控制哪些工具可用 PVE_ACCESS_TIER 环境变量:

层级工具描述
full (默认)105读取、执行和写入--完全控制
read-execute68读取并执行--不创建/删除资源
read-only51只读-可安全探索,无状态变化

层级详细信息:

  • 满的:全部105个工具。包括创建/删除虚拟机、容器、存储、用户、防火墙规则等。
  • 读取执行:68个工具。所有读取工具以及电源操作(启动、停止、迁移)、备份执行和任务管理。
  • 只读:51个工具。仅列出、获取、状态和日志工具。没有状态变化。

您层中不可用的工具未在MCP服务器上注册。它们不会出现在你的人工智能工具的工具列表中,保持上下文干净。

环境变量

变量必填默认描述
PVE_BASE_URL--PVE实例的URL(例如。 https://pve:8006)
PVE_TOKEN_ID--API令牌ID(user@realm!tokenname)
PVE_TOKEN_SECRET--API令牌UUID机密
PVE_ACCESS_TIER没有fullread-only, read-execute,或 full
PVE_CATEGORIES没有*(全部)*逗号分隔的类别列表
PVE_TOOL_BLACKLIST没有*(无)*以逗号分隔的要排除的工具名称列表(例如。, pve_delete_qemu_vm)
PVE_TOOL_WHITELIST没有*(无)*以逗号分隔的工具名称列表将强制包含,绕过访问层和类别筛选器
PVE_VERIFY_SSL没有true设置 false 用于自签名证书
DEBUG没有false启用stderr的调试日志记录
MCP_TRANSPORT没有stdio运输方式: stdio (默认)或 http
MCP_PORT没有3000HTTP服务器端口(仅在以下情况下使用 MCP_TRANSPORT=http)
MCP_HOST没有0.0.0.0HTTP服务器绑定地址(仅在以下情况下使用 MCP_TRANSPORT=http)
MCP_EXCLUDE_TOOL_TITLES没有false设置 true 从注册中省略工具标题(保存标记)

在下的PVE UI中创建API内标识 数据中心>权限>API令牌。如果您希望令牌继承用户的完全权限,请确保取消选中“特权分离”。

可用类别

nodes, qemu, lxc, storage, cluster, access, pools, network, firewall, backup, tasks, ha

工具

mcp-pve提供了105个按类别组织的工具。每个工具的“访问”列显示了所需的最低级别: read-only (适用于所有级别), read-execute (要求 read-executefull),或 full (要求 full 仅限级别)。提示列显示工具行为: read-only (无状态变化), destructive (修改现有状态), idempotent (如果调用两次,结果相同)。

Nodes (8 tools)

工具描述访问提示
pve_list_nodes列出群集中的所有节点只读只读,幂等
pve_get_node_status获取详细的节点状态(CPU、内存、正常运行时间、负载)只读只读,幂等
pve_get_node_version获取节点的PVE版本信息只读只读,幂等
pve_get_node_dns获取节点的DNS设置只读只读,幂等
pve_get_node_time获取节点的时间和时区信息只读只读,幂等
pve_get_node_syslog从节点获取系统日志条目只读只读,幂等
pve_list_node_services列出节点上的所有系统服务只读只读,幂等
pve_manage_node_service启动、停止、重新启动或重新加载节点服务读取执行破坏性

QEMU Virtual Machines (20 tools)

工具描述访问提示
pve_list_qemu_vms列出节点上的所有QEMU VM只读只读,幂等
pve_get_qemu_status获取当前VM状态(CPU、内存、磁盘、网络)只读只读,幂等
pve_get_qemu_config获取VM配置只读只读,幂等
pve_get_qemu_rrddata获取一段时间内的RRD统计信息只读只读,幂等
pve_list_qemu_snapshots列出所有VM快照只读只读,幂等
pve_start_qemu_vm启动虚拟机读取执行破坏性
pve_stop_qemu_vm停止虚拟机(立即)读取执行破坏性
pve_shutdown_qemu_vm优雅地关闭虚拟机读取执行破坏性
pve_reboot_qemu_vm重新启动虚拟机读取执行破坏性
pve_suspend_qemu_vm挂起VM读取执行破坏性
pve_resume_qemu_vm恢复挂起的VM读取执行破坏性
pve_reset_qemu_vm重置虚拟机(硬)读取执行破坏性
pve_migrate_qemu_vm将虚拟机迁移到另一个节点读取执行破坏性
pve_create_qemu_vm新建虚拟机full--
pve_delete_qemu_vm删除虚拟机及其所有数据完全破坏性
pve_update_qemu_config更新VM配置完全破坏性,幂等
pve_clone_qemu_vm克隆虚拟机已满--
pve_create_qemu_snapshot创建VM快照full--
pve_delete_qemu_snapshot删除VM快照完整破坏性
pve_rollback_qemu_snapshot将VM回滚到快照完整破坏性、幂等

LXC Containers (18 tools)

工具描述访问提示
pve_list_lxc_containers列出节点上的所有LXC容器只读只读,幂等
pve_get_lxc_status获取当前容器状态只读只读,幂等
pve_get_lxc_config获取容器配置只读只读,幂等
pve_get_lxc_rrddata获取一段时间内的RRD统计信息只读只读,幂等
pve_list_lxc_snapshots列出所有容器快照只读只读,幂等
pve_start_lxc_container启动容器读取执行破坏性
pve_stop_lxc_container停止容器(立即)读取执行破坏性
pve_shutdown_lxc_container优雅地关闭容器读取执行破坏性
pve_reboot_lxc_container重新启动容器读取执行破坏性
pve_suspend_lxc_container暂停(冻结)容器读取执行破坏性
pve_resume_lxc_container恢复(解冻)容器读取执行破坏性
pve_create_lxc_container创建新容器full--
pve_delete_lxc_container删除容器及其所有数据破坏性
pve_update_lxc_config更新容器配置破坏性,幂等
pve_clone_lxc_container克隆容器--
pve_create_lxc_snapshot创建容器快照full--
pve_delete_lxc_snapshot删除容器快照已满破坏性
pve_rollback_lxc_snapshot将容器回滚到快照破坏性、幂等

Storage (8 tools)

工具描述访问提示
pve_list_storage列出所有已配置的存储后端只读只读,幂等
pve_get_storage_config获取存储后端配置只读只读,幂等
pve_list_node_storage使用用法信息列出节点上的可用存储只读只读,幂等
pve_get_storage_status获取节点上的存储状态和使用情况只读只读,幂等
pve_list_storage_content列出存储内容(映像、ISO、备份)只读只读,幂等
pve_create_storage创建新的存储后端已满--
pve_update_storage更新存储配置破坏性、幂等
pve_delete_storage删除存储后端已满破坏性

Cluster (9 tools)

工具描述访问提示
pve_get_cluster_status获取集群状态(成员资格、仲裁)只读只读,幂等
pve_list_cluster_resources列出所有具有可选类型筛选器只读只读、幂等的群集资源
pve_get_next_vmid获取下一个可用的VMID只读只读,幂等
pve_get_cluster_log获取最近的群集日志条目只读只读,幂等
pve_get_cluster_options获取数据中心选项只读只读,幂等
pve_list_cluster_backup_info列出备份作业未覆盖的来宾只读只读,幂等
pve_get_cluster_ha_status获取HA管理器状态只读只读,幂等
pve_list_cluster_replication列出所有复制作业只读只读,幂等
pve_update_cluster_options更新数据中心选项完全破坏性、幂等

Access Control (10 tools)

工具描述访问提示
pve_list_users列出所有用户只读只读,幂等
pve_get_user获取用户详细信息只读只读,幂等
pve_list_roles列出所有角色和权限只读只读,幂等
pve_list_groups列出所有用户组只读只读,幂等
pve_list_acls列出所有ACL条目只读只读,幂等
pve_list_domains列出身份验证域/领域只读只读,幂等
pve_create_user创建新用户full--
pve_update_user更新用户属性完全破坏性,幂等
pve_delete_user删除用户完全破坏性
pve_update_acl授予或撤销ACL权限完全破坏性、幂等

Pools (5 tools)

工具描述访问提示
pve_list_pools列出所有资源池只读只读,幂等
pve_get_pool获取池详细信息和成员只读只读,幂等
pve_create_pool创建资源池full--
pve_update_pool更新池成员和设置破坏性,幂等
pve_delete_pool删除资源池已满破坏性

Network (5 tools)

工具描述访问提示
pve_list_networks列出节点上的所有网络接口只读只读,幂等
pve_get_network获取网络接口配置只读只读,幂等
pve_create_network创建网络接口full--
pve_update_network更新网络接口配置完全破坏性,幂等
pve_delete_network删除网络接口完全破坏性

Firewall (8 tools)

工具描述访问提示
pve_get_firewall_options获取群集防火墙选项只读只读,幂等
pve_list_firewall_rules列出群集防火墙规则只读只读,幂等
pve_list_firewall_aliases列出防火墙别名只读只读,幂等
pve_list_firewall_ipsets列出防火墙IP集只读只读,幂等
pve_update_firewall_options更新群集防火墙选项完全破坏性、幂等
pve_create_firewall_rule创建防火墙规则full--
pve_update_firewall_rule更新防火墙规则完全破坏性、幂等
pve_delete_firewall_rule删除防火墙规则完全破坏性

Backup (5 tools)

工具描述访问提示
pve_list_backup_jobs列出所有计划备份作业只读只读,幂等
pve_get_backup_job获取备份作业配置只读只读,幂等
pve_run_backup运行立即备份(vzdump)读取执行--
pve_create_backup_job创建定时备份作业已满--
pve_delete_backup_job删除计划备份作业已满破坏性

Tasks (4 tools)

工具描述访问提示
pve_list_tasks列出节点上最近的任务只读只读,幂等
pve_get_task_status通过UPID只读只读,幂等获取任务状态
pve_get_task_log通过UPID只读只读,幂等获取任务日志输出
pve_stop_task停止正在运行的任务读取执行破坏性

High Availability (5 tools)

工具描述访问提示
pve_list_ha_resources列出所有HA管理的资源只读只读,幂等
pve_get_ha_resource获取资源的HA配置只读只读,幂等
pve_create_ha_resource将VM/容器添加到HA管理full--
pve_update_ha_resource更新HA资源配置完全破坏性、幂等
pve_delete_ha_resource从HA管理中删除资源完全破坏性

验证它是否有效

配置完MCP客户端后,询问您的AI助手:

“我的Proxmox群集中有哪些节点?”

如果连接正常,助理会打电话 pve_list_nodes 并返回节点的当前状态。

用法示例

配置后,用自然语言向您的AI工具提问:

  • “列出节点pve1上的所有虚拟机” --电话 pve_list_qemu_vms 显示VM的状态、CPU和内存使用情况。
  • “VM 100的状态如何?” --电话 pve_get_qemu_status 以显示实时资源利用率。
  • “在pve1上启动容器200” --电话 pve_start_lxc_container 启动容器并返回任务UPID。
  • “创建VM 100的快照,称为预升级” --电话 pve_create_qemu_snapshot 在更改之前创建快照。
  • “显示群集资源” --电话 pve_list_cluster_resources 显示所有VM、容器、存储和节点。
  • “将VM 100迁移到节点pve2” --电话 pve_migrate_qemu_vm 将VM实时迁移到另一个节点。

故障排除

连接被拒绝/ECONNREFUSED

检查一下 PVE_BASE_URL 正确且包含端口(默认值:8006)。确保可以从运行MCP服务器的位置访问PVE主机。

SSL证书错误

如果您的PVE实例使用自签名证书,请设置 PVE_VERIFY_SSL=false。这将禁用所有请求的TLS验证。

工具未显示

检查您的访问层设置。在 read-only 模式下,仅注册了51个工具。在 read-execute 模式下,注册了68个工具。使用 full (或省略 PVE_ACCESS_TIER)所有105个工具。检查 PVE_CATEGORIES --仅注册所列类别中的工具。还可以通过检查stderr输出来验证服务器是否已正确启动。

发展

# Install dependencies
npm install

# Build the project
npm run build

# Run in development mode (auto-reload)
npm run dev

# Open the MCP Inspector for interactive testing
npm run inspect

许可证

麻省理工学院

目录标签

目录标签

TypeScriptClaude容器管理虚拟化管理混合部署RESTAPI工具自然语言处理服务器自动化

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

remote-capable

来源包(packageName,安装包名)

@samik081/mcp-pve

工具数量(toolCount,工具数)

105

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononeremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP