Complete2026
Juju tools with server-enforced limits
MCP servers for Juju operations, documentation, and metrics. The operations server checks allowed targets, configuration keys, scaling limits, and dry-run policy before acting.
- MCP servers
- 3
Implementation and fixture tests are public; earlier model runs used a previous backend.
Tools and project details
- Status
- Implementation and fixture tests are public; earlier model runs used a previous backend.
- Stack
- Python
- MCP
- python-libjuju
- Juju
- Prometheus
- pytest
- Role
- Server implementation, policy design, and evaluation
- Test fixture
- In-process TLS server
Case study
Why the checks are in the server
In the May 2026 trials, models sometimes retried a dry-run operation as a live call or tried to assemble a forbidden action from allowed tools. Those observations motivated explicit checks in the operations server rather than relying on tool descriptions.
I implemented the servers and a TLS controller fixture for tests. The current operations server uses python-libjuju.
Evaluation limits
The May trials mixed fixture and live-cluster runs, used one attempt per prompt, and predate the current backend. They explain the design but do not validate this implementation. A final model response was not a correctness score.
The policy permits some bounded scaling actions. HTTP transport needs authentication before use beyond localhost. Tests check enforcement behavior; operational decisions still need review.