Let an agent investigate your estate, read-only and on your switch
avuru obs has known a great deal about agents since v0.11 — the model calls your applications make, what they cost, when they cross a budget. Nothing let an agent know anything about your estate. The new MCP module fixes that direction of travel.
-
Six read-only tools, one way in. The hub serves a Model Context Protocol server at
POST /mcp, so Claude Code or any other MCP client can investigate an incident against what you already store, instead of a person reading a screen and retyping what they saw.service_contextis the entry point: one call returns a service's request rate, error rate and latency percentiles, who calls it and what it depends on with per-path rate, error rate and p95, its open issues, and any alert firing in the project. From theresearch_traces,get_trace,search_logsandlist_error_issuesdrill down.get_tracecarries per-service self time — time spent inside a service rather than waiting on a callee — which is the number that names the slow hop. -
Three rules that keep a model from being confidently wrong. A misspelled service name returns an error naming the closest matches, never an empty result: a model handed
[]concludes the service is dead and reports that with confidence. A tool whose module is off is absent from the tool list rather than present and always failing. And aservice_contextsection this install cannot answer is absent and named — silence about a missing module reads as an absence of trouble. Every response is bounded, and says that it is. -
Nothing new is collected and no container is added. It is one handler on the hub, authenticated with the personal API tokens that have existed since v0.5 and resolving their owner's live permissions: a token reads exactly what that person reads in the UI, in the projects they are granted.
-
Off by default, deliberately. avuru obs still makes no outbound call of its own — but an agent you connect pulls traces and log bodies out of your cluster and into whichever model provider you chose, and log bodies are where user data lives on the installs that have any. We do not redact them: the line you would mask is invariably the one that explains the failure. So the switch is yours (
modules.mcp.enabled), and every tool call is logged with the token owner, the tool, its arguments and the row count — never the content returned. "What did the agent read, and whose token did it use" is answerable from the hub's own logs.
Connect Claude Code with:
claude mcp add --transport http avuruobs https://<your-hub>/mcp \
--header "Authorization: Bearer avurut_…"
claude.ai connectors need OAuth 2.1, which lands separately.