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

ESXi Read-Only Diagnostics

โดย nicolasboattiniรุ่น 0.1.1i★ –iรันบนเครื่อง
ชื่อใน registryio.github.nicolasboattini/esxi-readonly-mcp

ติดตั้ง

ภาพรวม

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

Read-only VMware ESXi diagnostics: CPU Ready, disk latency, snapshots, real space, hardware health.

สามเสาของ PopNx MCP

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

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

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

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: คลินิกและสุขภาพ
  • ต้องใส่ค่าเหล่านี้: ESXI_HOST, ESXI_USER, ESXI_PASSWORD

ติดตั้ง

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

ก่อนติดตั้ง

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

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

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

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

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

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

{
  "mcpServers": {
    "esxi-readonly": {
      "command": "uvx",
      "args": [
        "esxi-readonly-mcp"
      ],
      "env": {
        "ESXI_HOST": "ใส่ค่าของคุณ",
        "ESXI_USER": "ใส่ค่าของคุณ",
        "ESXI_PASSWORD": "ใส่ค่าของคุณ",
        "ESXI_PORT": "ใส่ค่าของคุณ",
        "ESXI_VERIFY_SSL": "ใส่ค่าของคุณ"
      }
    }
  }
}

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

claude mcp add esxi-readonly --env ESXI_HOST='ใส่ค่าของคุณ' --env ESXI_USER='ใส่ค่าของคุณ' --env ESXI_PASSWORD='ใส่ค่าของคุณ' --env ESXI_PORT='ใส่ค่าของคุณ' --env ESXI_VERIFY_SSL='ใส่ค่าของคุณ' -- uvx esxi-readonly-mcp

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

เปิดใน Cursor

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

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

{
  "mcpServers": {
    "esxi-readonly": {
      "command": "uvx",
      "args": [
        "esxi-readonly-mcp"
      ],
      "env": {
        "ESXI_HOST": "ใส่ค่าของคุณ",
        "ESXI_USER": "ใส่ค่าของคุณ",
        "ESXI_PASSWORD": "ใส่ค่าของคุณ",
        "ESXI_PORT": "ใส่ค่าของคุณ",
        "ESXI_VERIFY_SSL": "ใส่ค่าของคุณ"
      }
    }
  }
}

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

เปิดใน VS Code

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

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

{
  "servers": {
    "esxi-readonly": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "esxi-readonly-mcp"
      ],
      "env": {
        "ESXI_HOST": "ใส่ค่าของคุณ",
        "ESXI_USER": "ใส่ค่าของคุณ",
        "ESXI_PASSWORD": "ใส่ค่าของคุณ",
        "ESXI_PORT": "ใส่ค่าของคุณ",
        "ESXI_VERIFY_SSL": "ใส่ค่าของคุณ"
      }
    }
  }
}

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

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

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

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

  • ESXI_HOST จำเป็น env
    ESXi host (or vCenter) IP or hostname
  • ESXI_USER จำเป็น env
    ESXi user with a read-only role. Store its password with 'esxi-readonly-mcp --set-password'
  • ESXI_PASSWORD ความลับ env
    Optional: password in plain text if the OS keyring is not available (not recommended)
  • ESXI_PORT env
    API port (default 443)
  • ESXI_VERIFY_SSL env
    Set to 1 to verify the TLS certificate (default 0, accepts ESXi self-signed certs)

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

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

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

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

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

  • ✓ ผ่าน

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

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

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

    ยังมีคนดูแล

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

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

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

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

  • – ไม่เกี่ยว

    endpoint ตอบ

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

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

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

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

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

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

เทียบกับตัวอื่นในหมวด คลินิกและสุขภาพi

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

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

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

ESXi Read-Only Diagnostics ปลอดภัยไหม?

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

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

ต้องใส่ค่าเหล่านี้: ESXI_HOST, ESXI_USER, ESXI_PASSWORD

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

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

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

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

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

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

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

ในหมวดเดียวกันมี Mirobody, FHIR MCP Server, Google Health MCP

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

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

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

Mirobody

Lab results to LOINC codes and UCUM units, symptoms and diagnoses to ICPC-3. Offline, no API key.

โดย thetahealthกำลังโต↓ 290/สัปดาห์★ 1.4Kอัปเดต เมื่อวาน

รันบนเครื่อง✓ thetahealth.ai

FHIR MCP Server

MCP server providing seamless access to FHIR APIs for AI tools and healthcare applications

โดย wso2กำลังโต↓ 823/สัปดาห์★ 137อัปเดต 10 วันที่ผ่านมา

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

Google Health MCP

Privacy-first unofficial Google Health API v4 MCP server for health, sleep, activity, HR agents

โดย davidmosiahกำลังโต↓ 1K/สัปดาห์★ 79อัปเดต 4 เดือนที่ผ่านมา

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

README จากผู้ทำ

เปิดอ่าน README

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

🔍 esxi-readonly-mcp

Diagnóstico completo de VMware ESXi desde tu asistente de IA, sin poder romper nada.

Un servidor MCP que le da a Claude (o a cualquier cliente MCP) visibilidad total sobre tu host ESXi — CPU Ready, latencia de disco, snapshots, espacio real, salud del hardware, eventos — sin una sola herramienta de escritura.


¿Por qué?

Tenés un ESXi standalone (sin vCenter), el ERP anda lento y alguien propone gastar miles de dólares en hardware. Antes de comprar, necesitás saber qué recurso es el cuello de botella de verdad. Eso implica mirar métricas que el Host Client esconde o no guarda (CPU Ready, Co-Stop, latencia por disco virtual), cruzar el espacio provisionado contra el real y revisar snapshots, logs y sensores.

Con este MCP le preguntás a Claude *"¿por qué está lenta la VM del ERP?"* y él mismo consulta el host, cruza los datos y te responde con números.

Y como vas a darle acceso a un asistente de IA a tu infraestructura de producción, el servidor no expone ninguna operación que modifique algo: no puede apagar, borrar, crear, consolidar ni reconfigurar nada. Combinado con un usuario de ESXi con rol de solo lectura, la garantía es doble.

✨ Qué podés preguntarle

*"Hacé un diagnóstico completo del host y decime cuál es el cuello de botella."*

*"¿Qué VM tiene más CPU Ready en la última hora?"*

*"¿Cuánto ocupa realmente cada VM en cada datastore?"*

*"¿Hay snapshots de más de 3 días?"*

*"¿Qué archivos grandes hay en los datastores que no pertenecen a ninguna VM?"*

*"¿Algún sensor de hardware en amarillo o rojo? ¿Hubo errores de disco esta semana?"*

*"¿Tengo overcommit de CPU? ¿Cuántas vCPU tengo por core físico?"*

*"¿Conviene más comprar RAM o cambiar el procesador?"*

🧰 Herramientas

HerramientaQué devuelve
diagnostico_completoTodo lo de abajo en una sola llamada — el punto de partida ideal
host_infoFabricante, modelo, serie, BIOS, CPU (cores / hilos / HT), RAM total y usada, versión y build de ESXi, uptime, política de energía, controladoras de storage
salud_hardwareSensores (temperaturas, ventiladores, fuentes, voltajes), memoria, CPU y estado de RAID/discos físicos si el host tiene el proveedor CIM del fabricante. Lista primero lo que no está en verde
config_hostLicencia (clave enmascarada) y vencimiento, NTP y desfase real del reloj, SSH/Shell, servicios activos, perfil de imagen, syslog, placas de red con velocidad de enlace, vSwitches, portgroups/VLANs, VMkernel
datastoresCapacidad, usado, libre, % de uso, % provisionado (sobre-asignación thin), disco físico detrás de cada datastore y VMs que lo usan
vmsPor cada VM: estado, vCPU, RAM asignada / activa / consumida, ballooning, swap, reservas, límites, shares, VMware Tools, heartbeat, sincronización horaria, NICs (e1000 vs vmxnet3), controladoras, discos (thin/thick, usado real), espacio libre dentro del guest
snapshotsTodos los snapshots con fecha, antigüedad, tamaño real y marca de los que superan N días
performanceCPU %, CPU Ready %, Co-Stop %, latencia de CPU, memoria activa, ballooning, swap, latencia por disco virtual y por datastore, IOPS. Devuelve promedio, p95 y máximo con el momento en que ocurrió
historial_perfLas mismas métricas sobre semanas, filtrables por horario laboral (ver Historial)
eventosErrores, advertencias, alarmas, tareas y logins fallidos, con la hora corregida por el desfase del reloj de ESXi
top_archivosLos archivos más grandes de cada datastore, a qué VM pertenecen y posibles huérfanos (vmdk sin VM registrada)
overcommitvCPU encendidas vs hilos físicos, RAM asignada vs física, VM más grande
verificar_permisosCon qué usuario se conecta y si ese usuario tiene privilegios de escritura en ESXi

Todas las respuestas vienen con valores de referencia (por ejemplo: *CPU Ready > 10 % = contención*) para que el asistente pueda interpretarlas sin adivinar.

🔒 Seguridad: cómo se garantiza que es solo lectura

1. En el código. El servidor solo lee propiedades y llama a estos métodos de la API de vSphere, todos de consulta:

MétodoPara qué
CreateContainerView / DestroyVista temporal de la propia sesión para listar objetos
PerformanceManager.QueryPerf y afinesMétricas de performance
HostDatastoreBrowser.SearchDatastoreSubFolders_TaskListar archivos de los datastores
EventManager.QueryEvents / CreateCollectorForEventsLeer eventos (el colector es de la sesión y se destruye al terminar)
AuthorizationManager.HasPrivilegeOnEntity / RetrieveEntityPermissionsVerificar los permisos del propio usuario
OptionManager.QueryOptions, HostImageConfigManager.*Get*Leer opciones y perfil de imagen

No hay ninguna herramienta MCP para modificar nada, y el servidor le indica al asistente que no existen.

2. En ESXi. Usá un usuario dedicado con un rol de solo lectura (paso 1 de la instalación). Aunque algo intentara escribir, ESXi lo rechazaría. verificar_permisos te confirma que quedó bien configurado:

{ "usuario": "mcp-readonly", "roles": ["ReadOnly+Browse"],

"privilegios_escritura_detectados": [], "solo_lectura_garantizado_por_ESXi": true }

3. Credenciales. La contraseña nunca va en archivos de configuración: se guarda en el almacén de credenciales del sistema operativo (Administrador de credenciales de Windows, Keychain en macOS, Secret Service en Linux) mediante keyring. Las claves de licencia se muestran enmascaradas.

🚀 Instalación

Requisitos
  • uv (se encarga de Python y de las dependencias)
  • Acceso por red al puerto 443 del ESXi
  • Un cliente MCP: Claude Code, Claude Desktop u otro
1. Crear un usuario de solo lectura en ESXi

En el Host Client (https:// /ui):

  1. Manage → Security & users → Roles → Add role — nombre ReadOnly+Browse:
  • ✅ System (Anonymous, Read, View)
  • ✅ Datastore → Browse datastore — *solo ese; nada de Delete, FileManagement ni AllocateSpace*
  1. Manage → Security & users → Users → Add user — por ejemplo mcp-readonly. Dejá Enable shell access desmarcado.
  2. Host → Actions → Permissions → Add user — elegí mcp-readonly, el rol ReadOnly+Browse y marcá Propagate to all children.

Sin *Browse datastore* el MCP funciona igual, pero top_archivos solo ve archivos de VMs registradas

(no ISOs ni huérfanos) y el espacio "usado" de discos thin es aproximado.

2. Guardar la contraseña en el almacén del sistema
uvx esxi-readonly-mcp --set-password

Te pide el usuario de ESXi y la contraseña (sin mostrarla) y la guarda en el almacén de credenciales del sistema. No hace falta clonar nada: uvx descarga el paquete de PyPI y lo ejecuta.

3. Registrar el servidor en tu cliente MCP

Claude Code

claude mcp add esxi-readonly --scope user \

-e ESXI_HOST=192.0.2.10 -e ESXI_USER=mcp-readonly \ -- uvx esxi-readonly-mcp

Claude Desktop u otro cliente (en claude_desktop_config.json o equivalente):

{

"mcpServers": { "esxi-readonly": { "command": "uvx", "args": ["esxi-readonly-mcp"], "env": { "ESXI_HOST": "192.0.2.10", "ESXI_USER": "mcp-readonly" } } } }

En Windows usá la ruta completa a uvx.exe si el cliente no lo encuentra en el PATH

(por ejemplo C:\\Users\\ \\.local\\bin\\uvx.exe).

Reiniciá el cliente y pedile: *"verificá los permisos del MCP de ESXi"*.

Desde el código fuente
git clone https://github.com/nicolasboattini/esxi-readonly-mcp.git

cd esxi-readonly-mcp uv sync uv run esxi-readonly-mcp --set-password

Y en el cliente MCP usá uv run --directory /ruta/a/esxi-readonly-mcp esxi-readonly-mcp como comando.

Probar sin cliente MCP
ESXI_HOST=192.0.2.10 ESXI_USER=mcp-readonly uv run python -c "from esxi_readonly_mcp import server; import json; print(json.dumps(server._host_info(), indent=2))"

(En PowerShell: $env:ESXI_HOST="192.0.2.10"; $env:ESXI_USER="mcp-readonly"; uv run python -c "...")

⚙️ Configuración

VariableObligatoriaDefaultDescripción
ESXI_HOST✅—IP o nombre del ESXi (o del vCenter)
ESXI_USER✅—Usuario de solo lectura
ESXI_PASSWORD—Solo si no podés usar keyring (queda en texto plano en la config: evitalo)
ESXI_PORT443Puerto de la API
ESXI_VERIFY_SSL01 para verificar el certificado (por defecto se acepta el autofirmado de ESXi)
ESXI_PERF_DB~/.esxi-readonly-mcp/perf_historial.dbRuta de la base SQLite del historial de performance

📈 Historial de performance

Un ESXi sin vCenter guarda solo la última hora de métricas (muestras cada 20 s). Para ver los picos reales de las últimas semanas en horario laboral, el servidor trae un modo recolector que guarda esa hora en una base SQLite local:

uvx esxi-readonly-mcp --collect

Programalo cada hora y después pedile a Claude, por ejemplo: *"mostrame el historial de performance de las últimas 4 semanas en horario laboral"* (historial_perf(dias=28, solo_horario_laboral=True)).

Windows (Programador de tareas)

[Environment]::SetEnvironmentVariable("ESXI_HOST", "192.0.2.10", "User")

$uvx = (Get-Command uvx).Source $a = New-ScheduledTaskAction -Execute $uvx -Argument 'esxi-readonly-mcp --collect' $t = New-ScheduledTaskTrigger -Daily -At 7:05am $t.Repetition = (New-ScheduledTaskTrigger -Once -At 7:05am -RepetitionInterval (New-TimeSpan -Hours 1) -RepetitionDuration (New-TimeSpan -Hours 13)).Repetition Register-ScheduledTask -TaskName "ESXi perf collect" -Action $a -Trigger $t -User $env:USERNAME

Linux / macOS (cron)

5 7-20 * * 1-5  ESXI_HOST=192.0.2.10 ESXI_USER=mcp-readonly $HOME/.local/bin/uvx esxi-readonly-mcp --collect

La base contiene nombres de VMs y métricas. Por defecto vive en tu carpeta de usuario, fuera de cualquier repo.

🧪 Compatibilidad

Estado
ESXi 6.7 U3 standalone✅ Probado en producción
ESXi 7.x / 8.x standaloneDebería funcionar (misma API); reportá cualquier problema
vCenterSoportado en el código (usa QueryEvents e intervalos históricos), sin probar a fondo
pyVmomi 9.x + mcp 1.x✅ Probado (mcp 2.x cambió la API: el proyecto fija mcp<2)

⚠️ Limitaciones conocidas

  • Métricas históricas: sin vCenter, performance solo ve ~1 hora. Usá --collect + historial_perf.
  • Eventos: ESXi standalone guarda los últimos ~1000 eventos. Si un sistema de monitoreo abre sesiones constantemente (por ejemplo, Zabbix mal configurado), eso puede cubrir solo unas horas.
  • RAID y discos físicos: salud_hardware los muestra solo si ESXi tiene el proveedor CIM del fabricante (Dell, HPE, Lenovo). Si no, revisalos en iDRAC / iLO / XCC.
  • Lista de VIBs/drivers: requiere `Host.Config.Im

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx