Ejecutar la edición de servidor 24/7
Una build headless para una monitorización continua, siempre activa — sin interfaz. Ejecútala en Docker o instálala en Windows Server / Windows 11, Debian/Ubuntu (.deb) o Fedora (.rpm). Cubierta por tu licencia actual.
Beta
Qué hace la edición para servidor
Monitorización permanente
Funciona sin interfaz 24/7 y vigila las redes que te importan, incluso con el escritorio apagado.
Seguimiento de disponibilidad y SLA
Disponibilidad diaria por dispositivo y servicio, con reintentos, dependencias y exportación CSV.
Alertas sin avalancha
Correo/SMTP, ntfy, Gotify y webhooks, con enrutado por gravedad y agrupación en resúmenes.
Página de estado pública
Una página de estado opcional de solo lectura que cualquiera puede ver, sin iniciar sesión.
Descubrimiento entre subredes
Compatibilidad con SNMP y varias NIC para alcanzar redes más allá del segmento local.
Pregunta a tu IA (MCP)
Expón tu inventario en vivo a un asistente de IA: estrictamente local, de solo lectura y desactivado por defecto.
Docker lo más fácil
Guarda esto como docker-compose.yml y ejecuta docker compose up -d. network_mode: host le permite ver tu red; las dos capacidades se explican abajo:
services:
deviceshelf:
image: ghcr.io/wealthwallet/deviceshelf-server:1.5.15
network_mode: host
cap_add:
- NET_RAW # ARP scan (raw sockets)
- NET_BIND_SERVICE # passive DHCP fingerprinting (UDP/67) → Fingerbank
volumes:
- ./data:/data # chown 10001:10001 ./data
restart: unless-stopped
# optional: environment: { DEVICESHELF_FINGERBANK_KEY: "<free key from fingerbank.org>" }
¿Por qué estas capacidades? DeviceShelf Server identifica los dispositivos en parte por su huella DHCP y escucha de forma pasiva en el puerto UDP 67. Como el contenedor se ejecuta deliberadamente como usuario sin privilegios (uid 10001), abrir ese puerto de sistema necesita la capacidad acotada NET_BIND_SERVICE — sin root, sin NET_ADMIN, solo abrir puertos bajos. Sin ella el servidor arranca con normalidad, solo que sin la identificación DHCP/Fingerbank. NET_RAW es para el escaneo ARP.
Debian / Ubuntu (.deb)
Instala desde el terminal — no hagas doble clic. En Ubuntu 24.04, un .deb con doble clic se abre en el App Center, que puede fallar en silencio con paquetes de terceros. El terminal resuelve las dependencias e inicia el servicio deviceshelf-server:
Descargar .deb — amd64 (Intel/AMD) Descargar .deb — arm64 (Raspberry Pi)
sudo apt install ./DeviceShelf-Server-*.deb
En ARM (Raspberry Pi, servidores ARM) usa el archivo -arm64.deb.
Windows Server / Windows 11 beta
Descarga el zip, extráelo y haz doble clic en install.bat — confirma el aviso de administrador de Windows (UAC). Se instala e inicia el servicio 24/7, luego se muestran la URL del panel y el token de acceso y se abre el panel. Desinstala con uninstall.bat.
Descargar para Windows (amd64)
Esta beta aún no está firmada, así que Windows puede advertir: en SmartScreen pulsa Más información → Ejecutar de todas formas; si Smart App Control está activado, bloquea del todo las apps sin firmar hasta que publiquemos una versión firmada. Antes de extraer, clic derecho en el zip → Propiedades → marca Desbloquear. Todos los detalles están en el README dentro del zip (7 idiomas). El fingerprinting DHCP pasivo no está disponible en Windows; todo lo demás — escaneo, monitorización, SNMP, alertas, panel, API — está incluido.
Primer arranque: el token de acceso
En el primer arranque, el servidor escribe un token de API generado automáticamente en su registro. Cógelo, luego abre la interfaz web en el puerto 8088 y pégalo:
# .deb / systemd:
journalctl -u deviceshelf-server | grep -iA1 auto-generated
# Docker:
docker logs deviceshelf-server | grep -iA1 auto-generated
Después abre http://<host>:8088 en tu navegador y pega el token.
Notificaciones por correo (SMTP)
Añade tu propia cuenta de correo como remitente en los ajustes de alertas del panel. Para proveedores habituales — Gmail, Yahoo, Outlook/Hotmail, iCloud, GMX y otros — deja vacío el campo del servidor SMTP; DeviceShelf detecta el servidor correcto automáticamente. Debido al inicio de sesión en dos pasos, Gmail, Yahoo y Outlook requieren una contraseña de aplicación (creada en los ajustes de seguridad de tu cuenta), no tu contraseña normal. Para cualquier otro proveedor o servidor propio, indica el servidor SMTP, el puerto y la seguridad. Las alertas se envían a través de tu cuenta a los destinatarios que indiques.
Pregúntale a tu IA sobre tu red MCP
El servidor puede exponer tu inventario en vivo a un asistente de IA a través del Model Context Protocol — así puedes preguntar «¿qué está en línea ahora mismo?», «¿qué certificados caducan pronto?» o «¿qué es vulnerable?» y obtener respuestas a partir de tus propios datos. Es estrictamente local: el endpoint se ejecuta dentro de tu servidor, tras el mismo token, accesible solo en tu red local — no hay ningún conector en la nube de DeviceShelf. Desactivado por defecto, de solo lectura e incluido con tu licencia (también funciona durante la prueba).
# enable in /etc/deviceshelf/server.env (or your Docker env):
DEVICESHELF_MCP_ENABLE=true
# then point Claude Desktop at it via the mcp-remote bridge:
# http://<host>:8088/mcp (Authorization: Bearer <your-token>)
Consulta el anuncio para ver la lista completa de herramientas y la configuración. Las acciones de escritura (renombrar un dispositivo, reconocer una alarma, lanzar un escaneo) permanecen desactivadas salvo que las actives explícitamente.
Conecta tu agente de IA MCP
Primero activa MCP (arriba), luego apunta tu cliente de IA al endpoint /mcp del servidor con tu token de API. Sustituye <host> y <token> abajo. La mayoría de los clientes hablan Streamable HTTP de forma nativa:
Claude Code
claude mcp add --transport http deviceshelf http://<host>:8088/mcp \
--header "Authorization: Bearer <token>"
Cursor — ~/.cursor/mcp.json
{ "mcpServers": { "deviceshelf": {
"url": "http://<host>:8088/mcp",
"headers": { "Authorization": "Bearer <token>" }
} } }
VS Code (Copilot agent) — .vscode/mcp.json
{ "servers": { "deviceshelf": {
"type": "http",
"url": "http://<host>:8088/mcp",
"headers": { "Authorization": "Bearer <token>" }
} } }
Windsurf — ~/.codeium/windsurf/mcp_config.json (note: serverUrl)
{ "mcpServers": { "deviceshelf": {
"serverUrl": "http://<host>:8088/mcp",
"headers": { "Authorization": "Bearer <token>" }
} } }
Cline — cline_mcp_settings.json ("type": "streamableHttp" is required, else it falls back to SSE and fails)
{ "mcpServers": { "deviceshelf": {
"type": "streamableHttp",
"url": "http://<host>:8088/mcp",
"headers": { "Authorization": "Bearer <token>" }
} } }
Gemini CLI — ~/.gemini/settings.json (note: httpUrl)
{ "mcpServers": { "deviceshelf": {
"httpUrl": "http://<host>:8088/mcp",
"headers": { "Authorization": "Bearer <token>" }
} } }
Claude Desktop — claude_desktop_config.json. It has no native static-token remote support, so bridge it with mcp-remote (keep --allow-http for plain http; the token goes in an env var to avoid a Windows arg-quoting bug). Fully quit and relaunch after saving.
{ "mcpServers": { "deviceshelf": {
"command": "npx",
"args": ["-y", "mcp-remote", "http://<host>:8088/mcp",
"--transport", "http-only", "--allow-http",
"--header", "Authorization:${AUTH}"],
"env": { "AUTH": "Bearer <token>" }
} } }
Los conectores de ChatGPT se ejecutan en la nube de OpenAI y no pueden acceder directamente a un servidor LAN. Para usarlos, coloca el servidor tras un túnel HTTPS público (Secure MCP Tunnel de OpenAI, ngrok o Cloudflare Tunnel) para que tenga una dirección https://…/mcp. Para una configuración estrictamente local, usa mejor uno de los clientes de arriba.
Es una beta
La edición de servidor es nueva — espera algunas asperezas. ¿Has encontrado un error o quieres una función? Escríbenos — tus comentarios la moldean. Consulta las notas de versión para ver qué incluye esta build.