Everyone's building AI agents right now. Almost nobody's building the boring layer underneath them: how do agents find each other?

I hit this in my own stack. I run a few MCP servers one for search, one for my database, one exposing my product's API. Their addresses lived in a JSON config I edited by hand. When I added a fourth, the file got messy. When one went down, I found out because something downstream broke and I debugged backwards. There was no single source of truth for what agents existed or whether they were alive.

MCP gave agents a common language. There's still no discovery layer. That felt like having HTTP without a service registry.

So I built agentreg. It's a self-hosted service registry for agents one Go binary:

agentctl serve &