Skip to main content
Glama
Chain-P

homelab-mcp

by Chain-P

homelab-mcp

Estado del homelab en Raspberry Pi, expuesto como un servidor MCP, para que un cliente MCP (Claude Code, Claude Desktop) pueda recibir la pregunta «¿cómo está el homelab?» y obtener el estado real de los servicios systemd, el uso de disco, la temperatura de la CPU y el feed del servidor de juegos de la LAN directamente, en lugar de entrar por SSH y comprobarlo a mano.

De solo lectura por diseño: cada herramienta consulta el estado; ninguna reinicia, detiene ni rearranca nada.

Claude Code preguntando si zero-bot se está ejecutando y obteniendo el estado real de systemd como respuesta

Arquitectura

El servidor se ejecuta en la propia Pi — no en la máquina que ejecuta el cliente MCP —, ya que es ahí donde están realmente las unidades de systemd, el disco y el sensor térmico. El cliente MCP se conecta a él mediante stdio por túnel SSH: SSH simplemente expone un proceso stdio local a un cliente remoto, sin necesidad de soporte especial en el lado de MCP.

MCP client (laptop) --ssh--> homelab-mcp server (on the Pi) --> systemctl / /sys/class/thermal / /proc/uptime
                                                            \--> HTTP GET to the LAN game-server status feed (192.168.1.111:8091)

Consulta Chain-P/homelab para ver la descripción completa de la configuración de la Pi/homelab que este proyecto consulta.

Related MCP server: Oraclarr

Herramientas

Herramienta

Descripción

system_summary()

Comprobación de salud en una sola pasada: nombre de host, tiempo de actividad, carga media, uso de disco, temperatura de la CPU y el estado de todos los servicios conocidos.

service_status(name)

Estado detallado de systemd para un servicio: tracker-app, coinbot, zero-bot o zero-two.

disk_usage(path="/")

Bytes totales/usados/libres y porcentaje usado para una ruta del sistema de archivos.

game_server_status()

Actúa como proxy del feed de estado existente del servidor de juegos de la máquina Windows (host de Minecraft/Zomboid/Terraria).

service_status solo acepta los cuatro nombres de unidad conocidos anteriores — el propio esquema de la herramienta MCP rechaza cualquier otra cosa antes de que el cuerpo de la herramienta llegue a ejecutarse.

Requisitos

  • Python 3.10+ (el Python del sistema de la Pi es 3.9, de ahí uv más abajo)

  • Linux con systemctl y un sensor /sys/class/thermal/thermal_zone0/temp

  • Acceso por clave SSH al host donde se ejecuta

Instalar y ejecutar (en la Pi)

curl -LsSf https://astral.sh/uv/install.sh | sh   # installs uv, no root needed
uv python install 3.12
git clone https://github.com/Chain-P/homelab-mcp.git
cd homelab-mcp
uv venv --python 3.12 venv
venv/bin/pip install -e .
venv/bin/homelab-mcp   # smoke test — should hang waiting on stdio, Ctrl+C to stop

Configurar en un cliente MCP

Dado que el servidor reside en la Pi y el cliente se ejecuta en otra máquina, invócalo por SSH:

{
  "mcpServers": {
    "homelab": {
      "command": "ssh",
      "args": ["pi@zero.local", "/home/pi/homelab-mcp/venv/bin/homelab-mcp"]
    }
  }
}

Después pregúntale al cliente algo como «¿cómo está el homelab?» o «¿está corriendo tracker-app?».

Desarrollo

Los tests simulan todas las dependencias de hardware/systemd (subprocess.run, /sys/class/thermal/..., /proc/uptime, la llamada HTTP al servidor de juegos), por lo que se ejecutan de forma idéntica en CI y en la Pi — no se requiere estado real de systemd:

pip install -e ".[dev]"
ruff check .
pytest

Hoja de ruta

  • Seguimiento de logs de los servicios conocidos.

  • Una herramienta mutadora (reiniciar un servicio) — deliberadamente fuera de la v1; primero solo lectura, y cualquier cosa que cambie el estado debe restringirse por separado y explícitamente.

Licencia

MIT

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    A locally-run, read-only MCP server that lets an LLM client diagnose a self-hosted *arr media stack by aggregating across Sonarr, Radarr, Prowlarr, qBittorrent, Tdarr, and Profilarr.
    Apache 2.0
  • F
    license
    Not graded
    quality
    B
    maintenance
    MCP server for Raspberry Pi exposing tools for host health checks, shell execution, and Docker container restarts over authenticated HTTP.
    1

View all related MCP servers

Related MCP Connectors

  • Markdown-first MCP server for Notion API with 8 composite tools and 39 actions.

  • Scans MCP servers for tool poisoning, prompt injection and supply chain risks.

  • Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Chain-P/homelab-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server