Skip to main content
Glama
U-C4N
by U-C4N

Add Hatch Boundary

hatch_add_boundary

Add an island boundary to an existing hatch using typed line, arc, or ellipse edges, with validation before writing so curves stay true and malformed paths are refused.

Instructions

Add one boundary path built from typed edges - an island inside the hatch.

Typed edges exist because a boundary that only accepts vertex lists silently straightens every curve it is given. Every edge is validated before any is written, so a malformed list refuses instead of leaving a half-built path. Both engines: headlessly the edges become an edge path; on a live seat each becomes a temporary LINE, true ARC or ELLIPSE appended as an inner loop and then deleted (a chain of lines becomes one polyline). A loop that does not close is refused by AutoCAD and nothing is added.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
edgesYesTyped edges: {'type':'line','start':[x,y],'end':[x,y]} | {'type':'arc','center':[x,y],'radius':r,'start_angle':a,'end_angle':b,'ccw':true} | {'type':'ellipse','center':[x,y],'major_axis':[x,y],'ratio':r}
handleYesHandle of an existing HATCH.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.5.1

TDQS

A4/5.0
Behavior5/5

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

With only destructiveHint=false in the annotations, the description carries the load and does so richly: it discloses all-or-nothing validation ('every edge is validated before any is written'), the two engine paths (edge path headless, temporary LINE/ARC/ELLIPSE on a live seat that are deleted), and the failure mode of non-closing loops. This is exactly the behavioral context an agent cannot get from structured fields, and it does not contradict destructiveHint=false.

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?

Purpose is front-loaded in the first sentence, followed by a rationale-then-behavior structure. It is moderately long at five sentences and somewhat dense, but each sentence adds either rationale, atomicity, engine behavior, or failure mode, so little is wasted.

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?

An output schema exists, so return values need not be explained. Given a two-parameter mutation tool with only a single annotation, the description still covers atomicity, engine-specific effects, and failure handling, leaving nothing an agent needs in order to call it correctly.

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 the schema already documents both 'handle' and 'edges' including the three edge types, making 3 the baseline. The description explains the rationale behind typed edges but adds no syntax, format, or unit detail beyond what the schema provides.

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?

The description states a specific verb and resource ('Add one boundary path built from typed edges') and immediately scopes it ('an island inside the hatch'), which separates it from hatch creation siblings like entity_create_hatch. It stops short of naming a specific sibling or contrasting with hatch_edit, so it is clear but not explicitly differentiated.

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?

The description explains why typed edges exist and what happens with malformed input, but never states when to reach for this tool versus hatch_edit, entity_create_hatch, or boundary_trace. Usage is only implied by the operation described, with no explicit conditions or alternatives.

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

Deploy Server

Other Tools