Skip to main content
Glama
dinglebear-ai

Unraid MCP Server

Unraid MCP

PyPI ghcr.io

Servidor MCP respaldado por GraphQL para Unraid. Expone una herramienta unificada unraid para la inspección del sistema, operaciones de gestión, telemetría en vivo y acciones destructivas protegidas por confirmación explícita.

Descripción general

El servidor traduce las llamadas a herramientas MCP en consultas y mutaciones de GraphQL de Unraid a través de HTTP y WebSocket. Todas las operaciones comparten una única herramienta unraid enrutada por action + subaction. La telemetría en vivo utiliza suscripciones WebSocket que transmiten datos en tiempo real desde la API de Unraid.

Related MCP server: unraid-code-mode-mcp

Qué incluye este repositorio

  • unraid_mcp/ — servidor, cliente GraphQL, suscripciones WebSocket, configuración y manejadores de herramientas

  • skills/unraid/ — documentación de habilidades orientada al cliente

  • docs/ — referencias de autenticación, acciones destructivas y publicación

  • .claude-plugin/, .codex-plugin/, gemini-extension.json — manifiestos de cliente

  • docker-compose.yaml, Dockerfile, entrypoint.sh — despliegue en contenedor

  • tests/ — pruebas unitarias, de seguridad, de esquema, de capa HTTP y de cobertura en vivo

Herramientas

Índice de herramientas

Herramienta

Propósito

unraid

Enrutador unificado de acción/subacción para todas las operaciones

unraid_help

Devuelve esta referencia como Markdown

diagnose_subscriptions

Volcado de diagnóstico completo del sistema de suscripción WebSocket

test_subscription_query

Prueba una suscripción GraphQL sin procesar para trabajos de esquema/depuración

unraid — grupos de acción

Todas las operaciones pasan por una sola herramienta. Elija una action y luego una subaction dentro de ella.

system — 18 subacciones

Información del servidor, métricas, red y SAI (UPS).

Subacción

Descripción

Parámetros requeridos

overview

SO, CPU, diseño de memoria, versiones, ID de máquina

array

Estado de la matriz, capacidad, resumen de salud del disco

network

URLs de acceso, puertos HTTP/HTTPS, IPs LAN/WAN

registration

Tipo de licencia, archivo de clave, expiración

variables

Conjunto completo de variables de Unraid (zona horaria, recursos compartidos, etc.)

metrics

% de CPU en vivo y uso de memoria

services

Servicios en ejecución con nombre, estado en línea, versión

display

Nombre del tema de la interfaz de usuario actual

config

Validez de la configuración y estado de error

online

Verificación de accesibilidad booleana

owner

Nombre de usuario del propietario, avatar, URL del perfil

settings

Mapa de clave/valor de configuración unificada

server

Resumen de llamada única: nombre de host, tiempo de actividad, versión de Unraid, estado de la matriz

servers

Todos los servidores registrados con IPs LAN/WAN y URLs

flash

Información del proveedor y producto de la unidad flash

ups_devices

Todos los dispositivos SAI con métricas de batería y energía

ups_device

Detalles de un solo dispositivo SAI

device_id

ups_config

Configuración del demonio SAI

health — 4 subacciones

Diagnóstico de conexión y salud del sistema.

Subacción

Descripción

Parámetros requeridos

check

Salud integral: latencia de API, estado de la matriz, alertas, resumen de contenedores Docker

test_connection

Hacer ping a la API de Unraid y devolver la latencia en ms

diagnose

Estado del sistema de suscripción, conteo de errores, estado de reconexión

setup

Configuración interactiva de credenciales (admite elicitación MCP)

array — 13 subacciones

Verificaciones de paridad y operaciones de disco de la matriz. Las subacciones destructivas están marcadas con *.

Subacción

Descripción

Parámetros requeridos

Destructiva

parity_status

Progreso actual de la verificación de paridad, velocidad, errores

parity_history

Resultados de verificaciones de paridad pasadas

parity_start

Iniciar una verificación de paridad

correct (bool)

parity_pause

Pausar una verificación de paridad en ejecución

parity_resume

Reanudar una verificación de paridad pausada

parity_cancel

Cancelar una verificación de paridad en ejecución

start_array

Iniciar la matriz de Unraid

stop_array

Detener la matriz de Unraid

confirm=True

*

add_disk

Agregar un disco a la matriz

disk_id; opcional slot

remove_disk

Eliminar un disco de la matriz (la matriz debe estar detenida)

disk_id, confirm=True

*

mount_disk

Montar un disco de la matriz

disk_id

unmount_disk

Desmontar un disco de la matriz

disk_id

clear_disk_stats

Borrar estadísticas de E/S de un disco (irreversible)

disk_id, confirm=True

*

disk — 6 subacciones

Recursos compartidos, discos físicos, archivos de registro y copia de seguridad flash. Las subacciones destructivas están marcadas con *.

Subacción

Descripción

Parámetros requeridos

Destructiva

shares

Todos los recursos compartidos de usuario con tamaño, configuración de asignación, estado LUKS

disks

Lista de discos físicos (ID, dispositivo, nombre)

disk_details

Disco único: serie, tamaño, temperatura

disk_id

log_files

Listar archivos de registro disponibles (nombre, ruta, tamaño, modificado)

logs

Leer contenido del archivo de registro con rango de líneas

log_path; opcional tail_lines (predeterminado 100, máx 10000)

flash_backup

Iniciar copia de seguridad rclone de la unidad flash a un remoto

remote_name, source_path (debe comenzar con /boot), destination_path, confirm=True

*

Detalles de flash_backup: Llama a la mutación GraphQL initiateFlashBackup de Unraid, que activa una copia rclone desde la unidad flash a un remoto rclone configurado. El destino en el remoto se sobrescribe si existe. Devuelve { status, jobId }. Para restaurar: use rclone para copiar la copia de seguridad de vuelta a la unidad flash, o extraiga archivos de configuración individuales. Configure el remoto rclone primero a través de rclone/create_remote.

docker — 7 subacciones

Ciclo de vida del contenedor e inspección de red. Sin subacciones destructivas.

Subacción

Descripción

Parámetros requeridos

list

Todos los contenedores: ID, nombres, imagen, estado, estatus, autoStart

details

Detalle completo del contenedor: puertos, montajes, etiquetas, configuración de red

container_id

start

Iniciar un contenedor

container_id

stop

Detener un contenedor

container_id

restart

Detener y luego iniciar un contenedor (detener + iniciar en secuencia)

container_id

networks

Todas las redes Docker: ID, nombre, controlador, alcance

network_details

Red única con IPv6, contenedores, opciones, etiquetas

network_id

Los identificadores de contenedor aceptan ID completo, prefijo de ID corto, nombre exacto o prefijo de nombre inequívoco. Las mutaciones (start, stop, restart) requieren un nombre exacto o ID completo.

vm — 9 subacciones

Ciclo de vida de la máquina virtual. Las subacciones destructivas están marcadas con *.

Subacción

Descripción

Parámetros requeridos

Destructiva

list

Todas las VM: ID, nombre, estado, UUID

details

Detalles de una sola VM

vm_id

start

Iniciar una VM

vm_id

stop

Detener suavemente una VM

vm_id

pause

Pausar una VM en ejecución

vm_id

resume

Reanudar una VM pausada

vm_id

reboot

Reiniciar una VM

vm_id

force_stop

Apagado forzado de una VM (posible pérdida de datos)

vm_id, confirm=True

*

reset

Reinicio forzado de una VM sin apagado suave

vm_id, confirm=True

*

vm_id acepta UUID, ID con prefijo o nombre de VM.

notification — 12 subacciones

CRUD de notificaciones del sistema. Las subacciones destructivas están marcadas con *.

Subacción

Descripción

Parámetros requeridos

Destructiva

overview

Conteos de no leídos y archivados por importancia (INFO/WARNING/ALERT)

list

Lista de notificaciones paginada

list_type (UNREAD o ARCHIVE, predeterminado UNREAD); opcional importance, offset, limit

create

Crear una notificación

title (≤200), subject (≤500), description (≤2000), importance (INFO/WARNING/ALERT)

archive

Archivar una sola notificación

notification_id

mark_unread

Mover una notificación archivada de vuelta a no leída

notification_id

recalculate

Recalcular los conteos de la vista general

archive_all

Archivar todas las notificaciones no leídas

opcional importance para filtrar

archive_many

Archivar notificaciones específicas por ID

notification_ids (lista)

unarchive_many

Desarchivar notificaciones específicas por ID

notification_ids (lista)

unarchive_all

Mover todas las notificaciones archivadas de vuelta a no leídas

opcional importance para filtrar

delete

Eliminar permanentemente una sola notificación

notification_id, notification_type, confirm=True

*

delete_archived

Eliminar permanentemente todas las notificaciones archivadas

confirm=True

*

key — 7 subacciones

Gestión de claves API. Las subacciones destructivas están marcadas con *.

Subacción

Descripción

Parámetros requeridos

Destructiva

list

Todas las claves API con roles y permisos

get

Detalles de una sola clave API

key_id

create

Crear una clave API

name; opcional roles, permissions

update

Actualizar nombre, roles o permisos

key_id; opcional name, roles, permissions

delete

Eliminar una clave API (revoca el acceso inmediatamente)

key_id, confirm=True

*

add_role

Agregar un rol a una clave existente

key_id, roles (se usa el primer elemento)

remove_role

Eliminar un rol de una clave existente

key_id, roles (se usa el primer elemento)

plugin — 3 subacciones

Gestión de complementos de Unraid. Las subacciones destructivas están marcadas con *.

Subacción

Descripción

Parámetros requeridos

Destructiva

list

Todos los complementos instalados con versión y banderas de módulo

add

Instalar complementos por nombre

names (lista); opcional bundled, restart

remove

Desinstalar complementos por nombre (irreversible sin reinstalar)

names (lista), confirm=True

*

rclone — 4 subacciones

Gestión remota de almacenamiento en la nube. Las subacciones destructivas están marcadas con *.

Subacción

Descripción

Parámetros requeridos

Destructiva

list_remotes

Todos los remotos rclone configurados con tipo y parámetros

config_form

Esquema de formulario de configuración para un tipo de proveedor

opcional provider_type

create_remote

Crear un nuevo remoto rclone

name, provider_type, config_data (dict de string/number/bool; máx 50 claves)

delete_remote

Eliminar una configuración remota rclone (no elimina datos remotos)

name, confirm=True

*

setting — 2 subacciones

Configuración del sistema. Las subacciones destructivas están marcadas con *.

Subacción

Descripción

Parámetros requeridos

Destructiva

update

Actualizar la configuración del sistema (entrada JSON clave/valor)

settings_input (dict; máx 100 claves, solo valores escalares)

configure_ups

Sobrescribir la configuración de monitoreo SAI

ups_config (dict), confirm=True

*

customization — 5 subacciones

Tema de la interfaz de usuario y estado SSO.

Subacción

Descripción

Parámetros requeridos

theme

Tema completo, información del socio y código de activación

public_theme

Tema público e información del socio (vista no autenticada)

is_initial_setup

Si se ha completado el asistente de configuración inicial

sso_enabled

Si SSO está habilitado

set_theme

Establecer el tema de la interfaz de

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    F
    maintenance
    Provides read-only server monitoring and diagnostic tools for AI assistants to manage Linux and Unraid systems via SSH. It enables natural language interactions for container management, storage health checks, and system log analysis while keeping credentials secure.
    17
    ISC
  • A
    license
    A
    quality
    D
    maintenance
    A code-mode MCP server for the Unraid 7.2+ GraphQL API that exposes search and execute tools, allowing LLM agents to introspect and call any GraphQL field via sandboxed JavaScript.
    2
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables AI assistants like Claude to manage Unraid servers through natural language. Install it from Community Applications and control your homelab from any MCP-compatible AI client.
    2
    MIT