/mcp when MCP_ENABLED=true.
Its permissions are yours
There is no service account and no second policy surface. Every tool declares the method and path it calls and re-dispatches internally, so the work is authorized as the route it actually invokes — same action, same KRN, same identity, exactly as the permissions model describes. Three consequences worth stating:- an assistant can never do something you could not do yourself;
- narrowing a policy narrows the assistant with it, immediately, with nothing else to configure;
- a tool’s effect lands in the audit log under the real route, not under
/mcp.
Both the IAM and the audit middleware skip
/mcp itself, because the re-dispatched call is the one that carries meaning. A routing detail rather than an exemption — see Architecture.What it will not do
A second limit is structural rather than chosen. Some required steps have no write tool at all — Cilium cannot be installed, nor can certificates be issued — so no supervisor can be onboarded end to end without the dashboard or the API. Platform onboarding carries the per-step table.What it does reach
295 tools covering 347 of the 486 served routes — 71%. Reads dominate, which matches what the surface is for: answering questions about a live estate. Coverage is uneven by design rather than by accident. Flow telemetry has a tool for every query and none for enabling the pipeline; storage has install, disks and status; IAM has none at all. Each page states its own position under an MCP tab, and where a surface cannot do a thing the page says so — silence would read as yes.One tool can carry many endpoints. 28 of them take a
view or kind argument and dispatch to a whole family — forensics is eleven endpoints behind one name. Counting tool names understates the surface, which is why the number above counts reachable routes instead.Writing the prompt is not the skill; reading the answer is
The tool descriptions carry the platform’s operational caveats, and the ones that matter most are about answers that look like success:- a
200with an empty list can mean could not read, not nothing there; - a
201from a re-apply does not prove the thing it re-applied came back; changed: falseis usually success, meaning it was already correct.
Related
Permissions model
The action and KRN every tool is authorized against.
Architecture
Where
/mcp sits in the request pipeline.Platform onboarding
Per-step coverage, including the two required steps no tool can perform.
Delegate to a team
Scoping a policy — which scopes the assistant too.