homelab
Model Context Protocol (MCP) servers for managing homelab infrastructure through Claude Desktop. Monitor Docker/Podman containers, Ollama AI models, Pi-hole DNS, Unifi networks, and Ansible inventory. Includes security checks, templates, and automated pre-push validation. Production-ready for homelabs.
claude mcp add --transport stdio bjeans-homelab-mcp python C:\Path\To\Homelab-MCP\homelab_unified_mcp.py
How to use
The Homelab MCP server provides a unified, single-process MCP instance that exposes a suite of tools for managing and monitoring your homelab infrastructure. Built on the FastMCP framework, it consolidates multiple service controllers (e.g., Docker/Podman containers, network checks, and other infrastructure monitors) into a namespaced set of commands that Claude Desktop can discover and invoke. This unified approach simplifies deployment and gives you a single entry point to access all MCP tools, with consistent naming and health checks. Once running, you can use tools like docker_get_containers, ping_host, and other service-specific commands through Claude, enabling automated checks, status queries, and remediation workflows across your homelab devices and services.
How to install
Prerequisites:
- Python 3.10+ and pip
- A compatible operating environment (Windows, macOS, or Linux)
- Access to the Homelab MCP repository and dependencies
Step-by-step installation:
- Install Python dependencies for the project (from the repository root):
pip install -r requirements.txt
-
Ensure you have the unified MCP script available at the expected path. If you downloaded the project, locate homelab_unified_mcp.py and note its full path.
-
Run the unified MCP server:
python C:\Path\To\Homelab-MCP\homelab_unified_mcp.py
-
(Optional) If deploying via Docker (per project guidance), pull the image and compose as directed in the README. For native development, you can also run individual servers if you prefer a per-service approach.
-
Configure Claude Project Instructions as needed to reflect your network topology and to keep sensitive data private (e.g., API keys, internal hostnames).
Additional notes
Tips and considerations:
- Keep your .env file secure and do not commit it to version control; it may contain API keys and credentials.
- If you choose the unified server deployment, all tools are namespaced under the single process (e.g., docker_get_containers, ping_host). For legacy, per-service deployment, tool names may differ.
- For production, prefer Docker deployments as they simplify dependencies and provide isolation, but ensure Docker access is secured and not exposed to the internet.
- Review MIGRATION_V3.md for guidance if you are migrating from v2.x or adopting the unified server approach.
- Regularly check security guidelines in SECURITY.md and rotate API keys per service as recommended.
Related MCP Servers
mcp-security-hub
A growing collection of MCP servers bringing offensive security tools to AI assistants. Nmap, Ghidra, Nuclei, SQLMap, Hashcat and more.
ollama
An MCP Server for Ollama
apple-mail
MCP server giving AI assistants full access to Apple Mail - read, search, compose, organize & analyze emails via natural language
fast -telegram
Telegram MCP Server and HTTP-MTProto bridge | Multi-user auth, intelligent search, file sending, web setup | Docker & PyPI ready
mcp-sysoperator
MCP for Ansible, Terraform, LocalStack, and other IaC tools. Create and iterate IaC
architect
A powerful, self-extending MCP server for dynamic AI tool orchestration. Features sandboxed JS execution, capability-based security, automated rate limiting, marketplace integration, and a built-in monitoring dashboard. Built for the Model Context Protocol (MCP).