Homelab MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | The port the server will listen on | 3005 |
| API_KEY | Yes | Your API key for authentication (generate with: openssl rand -hex 32) | |
| TRUENAS_HOST | No | The hostname or IP address of your TrueNAS server (optional) | |
| OPNSENSE_HOST | No | The hostname or IP address of your OPNsense firewall (optional) | |
| TRUENAS_API_KEY | No | Your TrueNAS API key (optional) | |
| CAPABILITY_LEVEL | No | The capability level for the server (1-4). Level 1: Monitor (read-only), Level 2: Operate (start/stop), Level 3: Configure (read configs), Level 4: Manage (full control) | 1 |
| OPNSENSE_API_KEY | No | Your OPNsense API key (optional) | |
| OPNSENSE_API_SECRET | No | Your OPNsense API secret (optional) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| docker_list_containersC | List all Docker containers with their status |
| docker_container_logsC | Get recent logs from a container |
| docker_container_statsC | Get CPU/memory/network stats for a container |
| system_infoB | Get host system information (disk, memory, CPU usage) |
| opnsense_statusB | Get OPNsense firewall/gateway status |
| truenas_statusB | Get TrueNAS pool health and system status |
| truenas_alertsB | Get active TrueNAS alerts |
| proxmox_statusB | Get Proxmox cluster status and node information |
| proxmox_list_vmsB | List all Proxmox VMs and containers across all nodes |
| proxmox_vm_statusC | Get detailed status of a specific Proxmox VM or container |
| home_assistant_statusB | Get Home Assistant version, entity count, and available domains |
| home_assistant_list_entitiesB | List all Home Assistant entities (lights, switches, sensors, etc.) |
| home_assistant_get_entityB | Get detailed state and attributes of a specific Home Assistant entity |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 13 tools
Each tool has a clearly distinct purpose targeting specific resources and actions, such as docker_container_logs vs. docker_container_stats, home_assistant_get_entity vs. home_assistant_list_entities, and proxmox_list_vms vs. proxmox_vm_status. There is no ambiguity or overlap in functionality, making it easy for an agent to select the correct tool.
All tool names follow a consistent verb_noun pattern with clear prefixes for each domain (e.g., docker_, home_assistant_, proxmox_, system_, truenas_). The naming is uniform across the set, using snake_case throughout without any deviations or mixed conventions.
With 13 tools, the server is well-scoped for monitoring a homelab environment, covering key areas like Docker, Home Assistant, Proxmox, TrueNAS, OPNsense, and system info. Each tool serves a distinct monitoring purpose, and the count is appropriate without being excessive or insufficient.
The tool set provides comprehensive read-only monitoring coverage for homelab components, including status, lists, and detailed views. Minor gaps exist, such as no control actions (e.g., starting/stopping containers or VMs) or deeper diagnostic tools, but agents can effectively monitor the environment with the available tools.