CP

canvrno/proxmoxmcp

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

296 stars 70 forks 质量 71 趋势 19MIT

Cline 中 Proxmox 集成的 MCP

概览

基于Python的模型上下文协议(MCP)服务器,用于与Proxmox虚拟机监控程序交互,提供管理节点、虚拟机和容器的简洁界面。 - Cline - 自主编码代理 - 使用 Cline 更快。- Proxmoxer - Proxmox API 的 Python 封装器 - MCP SDK - 模型上下文协议 SDK - Pydantic - 使用 Python 类型注释进行数据验证 - 🤖 与 Cline 完全集成 - 🛠️ 使用官方 MCP SDK 构建 - 🔒 基于 Proxmox 的安全令牌认证 - 🖥️ 管理节点和虚拟机的工具 - 💻 虚拟机控制台命令执行 - 📝 可配置日志系统 - ✅ 使用 Pydantic 实现类型安全 - 🎨 丰富输出格式和可自定义主题 https://github.com/user-attachments/assets/1b5f42f7-85d5-4918-aca4-d38413b0e82b - UV包管理器(推荐)- Python 3。

概述(AI 翻译)

基于Python的模型上下文协议(MCP)服务器,用于与Proxmox虚拟机监控程序交互,提供管理节点、虚拟机和容器的简洁界面。

🏗️ 与

  • Cline - 自主编码代理 - 使用 Cline 更快。
  • Proxmoxer - Proxmox API 的 Python 包装器
  • MCP SDK - 模型上下文协议 SDK
  • Pydantic - 使用Python类型注释进行数据验证

✨ 特色

  • 🤖 与Cline的全面集成
  • 🛠️ 使用官方MCP SDK构建
  • 🔒 通过Proxmox实现基于令牌的安全认证
  • 🖥️ 管理节点和虚拟机的工具
  • 💻 虚拟机控制台命令执行
  • 📝 可配置日志系统
  • ✅ 使用 Pydantic 实现类型安全
  • 🎨 丰富的输出格式,并可自定义主题

https://github.com/user-attachments/assets/1b5f42f7-85d5-4918-aca4-d38413b0e82b

📦 安装

先决条件

  • UV包管理器(推荐)
  • Python 3.10 或更高版本
  • 走
  • 通过API令牌凭证访问Proxmox服务器

开始前,请确保您具备:

  • [ ] Proxmox 服务器主机名或 IP
  • [ ] Proxmox API 令牌(参见 API 令牌设置)
  • [ ] 安装紫外线(pip install uv)

选项1:快速安装(推荐)

  1. 克隆和搭建环境:

本页由 AI 翻译,技术细节请以原文为准。

README

以下为原文 README 节选,完整内容请查看原文。

🚀 Proxmox Manager - Proxmox MCP Server

A Python-based Model Context Protocol (MCP) server for interacting with Proxmox hypervisors, providing a clean interface for managing nodes, VMs, and containers.

🏗️ Built With

  • Cline - Autonomous coding agent - Go faster with Cline.
  • Proxmoxer - Python wrapper for Proxmox API
  • MCP SDK - Model Context Protocol SDK
  • Pydantic - Data validation using Python type annotations

✨ Features

  • 🤖 Full integration with Cline
  • 🛠️ Built with the official MCP SDK
  • 🔒 Secure token-based authentication with Proxmox
  • 🖥️ Tools for managing nodes and VMs
  • 💻 VM console command execution
  • 📝 Configurable logging system
  • ✅ Type-safe implementation with Pydantic
  • 🎨 Rich output formatting with customizable themes

https://github.com/user-attachments/assets/1b5f42f7-85d5-4918-aca4-d38413b0e82b

📦 Installation

Prerequisites

  • UV package manager (recommended)
  • Python 3.10 or higher
  • Git
  • Access to a Proxmox server with API token credentials

Before starting, ensure you have:

  • [ ] Proxmox server hostname or IP
  • [ ] Proxmox API token (see API Token Setup)
  • [ ] UV installed (pip install uv)
  1. Clone and set up environment:

    # Clone repository
    cd ~/Documents/Cline/MCP  # For Cline users
    # OR
    cd your/preferred/directory  # For manual installation
    
    git clone https://github.com/canvrno/ProxmoxMCP.git
    cd ProxmoxMCP
    
    # Create and activate virtual environment
    uv venv
    source .venv/bin/activate  # Linux/macOS
    # OR
    .\.venv\Scripts\Activate.ps1  # Windows
    
  2. Install dependencies:

    # Install with development dependencies
    uv pip install -e ".[dev]"
    
  3. Create configuration:

    # Create config directory and copy template
    mkdir -p proxmox-config
    cp config/config.example.json proxmox-config/config.json
    
  4. Edit proxmox-config/config.json:

    {
        "proxmox": {
            "host": "PROXMOX_HOST",        # Required: Your Proxmox server address
            "port": 8006,                  # Optional: Default is 8006
            "verify_ssl": false,           # Optional: Set false for self-signed certs
            "service": "PVE"               # Optional: Default is PVE
        },
        "auth": {
            "user": "USER@pve",            # Required: Your Proxmox username
            "token_name": "TOKEN_NAME",    # Required: API token ID
            "token_value": "TOKEN_VALUE"   # Required: API token value
        },
        "logging": {
            "level": "INFO",               # Optional: DEBUG for more detail
在 GitHub 查看完整 README

安装

This server does not publish a one-line install command.

Open the repository installation guide 新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "github.com/canvrno/ProxmoxMCP": { "command": "/absolute/path/to/ProxmoxMCP/.venv/bin/python", "args": ["-m", "proxmox_mcp.server"], "cwd": "/absolute/path/to/ProxmoxMCP", "env": { "PYTHONPATH": "/absolute/path/to/ProxmoxMCP/src", "PROXMOX_MCP_CONFIG": "/absolute/path/to/ProxmoxMCP/proxmox-config/config.json", "PROXMOX_HOST": "your-proxmox-host", "PROXMOX_USER": "username@pve", "PROXMOX_TOKEN_NAME": "token-name", "PROXMOX_TOKEN_VALUE": "token-value", "PROXMOX_PORT": "8006", "PROXMOX_VERIFY_SSL": "false", "PROXMOX_SERVICE": "PVE", "LOG_LEVEL": "DEBUG" }, "disabled": false, "autoApprove": [] } } }