MCP server for the klaus-operator, exposing tools to create, list, delete, get, and restart KlausInstance resources, and to discover available OCI artifacts (plugins, personalities, toolchains)
klaus-operator provides 14 well-defined tools with consistent naming, clear descriptions, and comprehensive input schemas. Naming is verb-first and action-focused (create_instance, delete_instance, get_logs). Descriptions are substantive and contextualize tool behavior. Input schemas use proper JSON Schema with type definitions and parameter descriptions. However, output schemas are not documented in the visible source, the tools define responses implicitly through their implementations rather than explicit response schemas in the tool definitions. Error handling patterns are present (tools perform validation internally) but recovery guidance is not visible in descriptions. Tool composition is strong: instance lifecycle tools chain well (create → prompt → get_result), and parameter sets align across similar operations (create_instance and run_instance share most configuration). Security posture is good: no credentials exposed as parameters, and permissions are enforced server-side. One structural weakness: the tool descriptions do not explicitly document return types or response fields, which forces LLMs to infer output structure.
Create a new Klaus agent instance for the calling user
Delete a Klaus instance (owner-only)
Get details and status of a Klaus instance. When the instance is running and the agent endpoint is reachable, includes agent-level status (agent_status, message_count, session_id).
Get recent log output from a Klaus instance pod
Retrieve the result from the last prompt sent to a Klaus agent instance
List the calling user's Klaus instances
Output schemas not documented in tool definitions. Tool descriptions do not specify what fields or structures are returned, forcing LLMs to infer response shapes from context.
Error recovery guidance absent from tool descriptions. When a tool call fails (e.g., instance not found, deployment scaling timeout), descriptions do not indicate next steps or suggest alternative tools.
Discovery tool descriptions (list_plugins, list_personalities, list_toolchains) are minimal and do not explain when to call them or what structure they reveal. The descriptions lack context for LLM decision-making.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | A | 84 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 0 | - | v1 |
List available Klaus personalities from the OCI registry with version and metadata
List available Klaus plugins from the OCI registry with version and metadata
List available Klaus toolchain images from the OCI registry with version and metadata
Send a prompt to a running Klaus agent instance and optionally wait for the result
Restart a Klaus instance by cycling its Deployment
Create a new Klaus agent instance, wait for it to become ready, and send a prompt -- a single operation combining create_instance + prompt_instance
Start a previously stopped Klaus instance by scaling its Deployment back to one replica (owner-only)
Stop a Klaus instance by scaling its Deployment to zero (owner-only). Config and state are preserved.
Pagination not visible in list_* tool signatures. If these tools return large result sets, no offset/limit parameters or result counts are documented.
Tool annotations (readOnlyHint, destructiveHint, idempotentHint) not visible in schema. The Risk field (READ_ONLY, WRITE, DESTRUCTIVE, REVERSIBLE) is present in the rubric data but not reflected in the actual tool definitions provided.