Skip to main content
Glama

enclave_doctor

Run L1-L7 diagnostics across host, clock skew, RDP UDP guard, VPN tunnel, Bastion RTT, and optional target SSH; auto-heal detected clock, UDP policy, or Bastion session issues.

Instructions

Run L1-L7 diagnostics across Host, Appliance clock skew, RDP UDP blackhole guard, VPN tunnel, Bastion VFS RTT, and optional TargetNode SSH.

Input Schema

NameRequiredDescriptionDefault
fixNoAutomatically self-heal if clock skew, UDP policy, or Bastion session issues are detected.
probe_targetsNoAlso probe SSH reachability to configured TargetNodes.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are supplied, so the description carries the full behavioral burden, and it frames the tool purely as 'diagnostics' despite a fix flag that mutates system state. It says nothing about side effects of self-healing, whether checks short-circuit on failure, expected runtime, or required privileges. The layer enumeration is the only real behavioral signal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler, and the enumeration is packed rather than padded. It loses a point because the dense comma-separated jargon list is harder to parse than a short lead sentence plus scope list.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (two optional booleans, no output schema, no nesting), so the description needn't explain return formats. Still, for a diagnostics tool it never indicates what an agent gets back (per-layer pass/fail results) or what 'L1-L7' maps to, leaving the result interpretation unstated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the schema already explains both booleans (fix auto-heals clock skew/UDP policy/Bastion sessions; probe_targets adds SSH checks to TargetNodes). The description only lightly reinforces probe_targets via 'optional TargetNode SSH' and adds no semantics for fix, so it does not exceed the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Run ... diagnostics') and enumerates exactly what is probed: Host, Appliance clock skew, RDP UDP blackhole guard, VPN tunnel, Bastion VFS RTT, TargetNode SSH. That scope distinguishes it from enclave_status (plain status) and enclave_heal (remediation). The 'L1-L7' label and several component names are domain jargon an agent cannot resolve without prior knowledge.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied by the word 'diagnostics'; there is no explicit when-to-use, when-not-to-use, or reference to alternatives such as enclave_status or enclave_heal. The overlap with enclave_heal is especially unaddressed given this tool can self-heal via fix=true, so an agent gets no steering on which to pick.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.