Skip to main content
Glama

autocad_copy_entity

Copy an entity in a drawing by a set displacement, leaving the original unchanged. Specify the entity handle plus dx, dy, and optional dz offsets to create a duplicate at the new position.

Instructions

Copy an entity, offset by (dx, dy, dz). The original is left unchanged.

Args: params (CopyEntityInput): - handle (str): entity to copy. - dx, dy, dz (float): displacement in drawing units (dz default 0).

Returns: str: JSON {"status": "created", "type", "handle" (of the new copy), "source"}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare destructiveHint=false and readOnlyHint=false, so the 'original is left unchanged' claim is consistent and reinforcing rather than novel. The description goes beyond the annotations by disclosing the return payload shape (status, type, new handle, source), which is genuinely useful even though an output schema exists.

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?

Front-loads the operation and the key side-effect guarantee in one sentence, then documents args and return in a compact, scannable block. No filler sentences and nothing buried.

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?

For a single-nested-param mutation tool with annotations and an output schema, the description covers what is needed to invoke it correctly: the entity reference, the displacement vector, the default for dz, and the effect on the original. It stops short of operational context such as whether the copy inherits layer/attribute data or whether a source entity handle is required to exist.

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

Parameters4/5

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

The schema's nested CopyEntityInput properties are described in schema properties but the top-level schema description coverage registers as 0%, so the description's restatement of handle, dx, dy and dz (including the dz default of 0) is doing real work. It does not add format detail beyond the schema, such as handle validity constraints or unit semantics beyond 'drawing units'.

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?

States a specific verb and resource ('Copy an entity') plus the scope of the operation (offset by dx/dy/dz). The clause 'The original is left unchanged' immediately separates it from autocad_move_entity and autocad_array_linear without the agent needing to open 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 Guidelines3/5

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

Usage is implied rather than stated: the non-mutating nature of the original is contrasted against move, which hints at when to prefer this tool, but no alternative tool is named and no conditions or exclusions are given. Adequate minimum, but an agent gets no explicit routing guidance.

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