One place for the agents: building an MCP hub

Consolidating MCP config from three agent tools into one self-hosted hub, and why I split it into themed namespaces instead of one catch-all.

· 2 min read · agents ·homelab ·sre-at-home ·automation ·mcp

Over the last few months my home setup grew a small fleet of AI agents. Different tools drive them: Claude Code at the terminal, OpenClaw for the always-on Discord and WhatsApp side, and Codex for day-to-day work. They all reach for the same underlying things: Home Assistant, Grafana, Jira, Cloudflare, the network gateway, the camera club site. And each one kept its own copy of how to get there.

That is the quiet failure I want to talk about. The connectors that let an agent call a real system, MCP servers, were configured separately in three different files. Adding Home Assistant to one agent meant pasting the same block into the next. Rotating a token meant hunting down every copy. It worked. It was also the kind of duplication that rots in the dark until the day you change something and miss a spot.

So I consolidated. I stood up a single hub: an open-source MCP aggregator (I run it, I did not write it) sitting in one place on my home server, holding every connector exactly once. The agents now point at the hub instead of at each individual system. One place to add a server. One place to rotate a key. One place to reason about what can talk to what.

The decision that mattered was not “put it all in one bucket”. My first pass did exactly that, a single catch-all with everything in it, and it shoved a few hundred tool definitions into every agent’s context whether it needed them or not. So I split it by theme: home for Home Assistant and the network, dev for GitHub and Jira, observability for the metrics stack, business, and one namespace just for the camera club. An agent fixing the website does not need my heating controls loaded in its head.

If that sounds familiar, it should. It is the same argument as service boundaries at work. A shared everything-bucket is cheap to start and expensive to live in. Naming things by what they are for, and keeping each consumer’s surface small, is worth the extra afternoon. The home version just has fewer change-approval meetings.

Where it leaves me: one hub, themed access, a single key to manage, and a setup I can actually explain to myself in six months. The next post is what came after, now that every agent could share the same hub: moving my whole skill library and memory off one tool and onto another without copying any of it.

← All writing