Skip to main content
Glama
vmware-skills

io.github.zw008/vmware-debug

record_case_gap

Log evidence gaps in a VMware investigation when data is missing, refused, or unreachable, so case findings stay honest and closure steps are defined.

Instructions

[WRITE] Record something the investigation could NOT obtain.

WHEN: any time a fetch failed, was refused, returned nothing, or the data simply does not exist in this environment. This is the tool that keeps a case honest: an unrecorded gap makes it look better supported than it is.

RETURNS: {case_id, gap_id, grade, reasons}.

GOTCHAS: recording a gap does not punish the case for the evidence it does have — a missing confirmation caps the grade, it does not demote it. Writing gaps down is meant to be free.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
whyYesWhy it could not be had — refused, unreachable, collected by nothing in this family, absent from this environment.
whatYesThe observation that could not be obtained — the thing you wanted, not the error you got.
blocksNoHypothesis ids (H1, H2, …) this gap holds up; they must already exist via record_case_hypothesis. Empty is fine.
case_idYesThe case this gap belongs to (from open_case/list_cases).
how_to_closeYesThe next action that would close it, even outside this system ("open a vendor SR"). A gap with no stated next action reads like a to-do and gets skipped.
could_falsifyNoWould OBTAINING this be able to prove the hypothesis WRONG? false (default) is the ordinary case — missing corroboration, capping the case below Confirmed. true means it could overturn the hypothesis, holding it at Candidate.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.3.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare this is a write (readOnlyHint=false) that is non-idempotent and non-destructive; the description adds genuinely new behavior beyond them — recording a gap caps a grade rather than demoting it, and is intended to be 'free,' which tells the agent there is no penalty cost to logging gaps. It does not address duplicate/non-idempotent writes, which is the only notable omission.

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

Conciseness5/5

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

Sectioned as WHEN / RETURNS / GOTCHAS with the write marker and core definition front-loaded. Every sentence carries information an agent needs, with no restatement of the schema or name.

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

Completeness5/5

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

For a six-parameter write tool with no output schema, the description supplies the return shape ({case_id, gap_id, grade, reasons}), the trigger conditions, and the consequence semantics. Nothing required to call it correctly — case_id provenance, gap semantics, grade impact — is missing.

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%, so all six parameters, including the subtle could_falsify and how_to_close semantics, are already documented in the schema. The description's only parameter-adjacent content is the RETURNS shape, not the inputs, so baseline 3 is appropriate.

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

Purpose5/5

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

The description states a specific verb+resource ('Record something the investigation could NOT obtain') and immediately demarcates it from the evidence-writing siblings by defining a gap as an unobtainable observation. An agent can distinguish this from submit_case_evidence or record_case_hypothesis without opening any schema.

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

Usage Guidelines4/5

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

The WHEN section gives concrete triggers (fetch failed, refused, returned nothing, data does not exist in this environment) plus a rationale for why recording matters. It stops short of naming a sibling tool as the alternative for the opposite case (e.g., 'if you did obtain it, use submit_case_evidence'), so it is clear context without explicit routing.

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