Skip to main content
Glama

nx_delete_annotation

Deletes a note, dimension, GDT, or roughness annotation by journal ID/name or kind:index selector, enabling cleanup of test annotations that undo cannot reach.

Instructions

Delete a note / dimension / GDT / roughness annotation.

Pass either its journal id or name (e.g. "LEN_120", "HANDLE R-5132"), or a "kind:index" selector: note:0, dim:1, gdt:0, rough:0 (0-based, in the order returned by nx_list_dimensions / nx_list_annotations). Useful for cleaning up test annotations that nx_undo cannot reach.

Input Schema

NameRequiredDescriptionDefault
annotation_idYes

Output Schema

NameRequiredDescriptionDefault
statusNosuccess
messageYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It does disclose a real behavioral trait — deletions are not recoverable via nx_undo — which is valuable, but it says nothing about whether a part must be open, whether a missing id raises an error or no-ops, or whether the operation can be batched.

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?

Three short blocks: what it deletes, how to identify the target, why you'd use it. The verb and resource are front-loaded and the examples are the minimum needed to make the selector format unambiguous — no filler.

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

Completeness4/5

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

An output schema exists so return values need no explanation, and the identifier semantics — the real ambiguity for a 1-param destructive tool — are fully covered. The remaining gap is operational context (open-part requirement, failure behavior on an unknown id), which an agent would want before calling a delete.

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

Parameters5/5

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

Schema coverage is 0% and the single parameter is a bare 'Annotation Id' string, so the description does all the work: it documents three accepted forms (journal id, name like "HANDLE R-5132", and "kind:index") with worked examples and the 0-based ordering tied to nx_list_dimensions / nx_list_annotations.

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 first line names a specific verb (Delete) and enumerates exactly which resources qualify (note / dimension / GDT / roughness annotation). That set of resources distinguishes it cleanly from the many nx_create_* annotation siblings without opening either 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?

It states the accepted identifier forms and gives a concrete use case — cleaning up test annotations that nx_undo cannot reach — which implicitly routes routine undo work to nx_undo instead. It stops short of an explicit 'do not use this for X' exclusion or stating prerequisites such as an open part.

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