Skip to main content
Glama
geongyeelee

autocad-mcp

by geongyeelee

modify_entities

Modify AutoCAD entities by handle to move, copy, rotate, scale, mirror, erase, or change layer and color in a drawing.

Instructions

Modify one or more entities identified by their handles.

Args: handles: List of entity hex handles (e.g. ['2DA', '2DB']). action: One of 'move', 'copy', 'rotate', 'scale', 'mirror', 'erase', 'set_layer', 'set_color'. base_point: Base point [x, y, z] for move/copy/rotate/scale/mirror. target_point: Target point [x, y, z] for move/copy or second mirror point. rotation_deg: Rotation angle in degrees (for action='rotate'). scale_factor: Scale factor (for action='scale'). layer: Target layer name (for action='set_layer'). color: Target ACI color 1-255 (for action='set_color').

Input Schema

NameRequiredDescriptionDefault
colorNo
layerNo
actionYes
handlesYes
base_pointNo
rotation_degNo
scale_factorNo
target_pointNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It lists actions including 'erase' and set_layer/set_color, but it does not disclose permissions, undo/irreversibility, partial-failure behavior, or what happens to entities if an action fails. For a mutation tool with no annotations, this is a significant gap.

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?

The purpose sentence is front-loaded, followed by a compact Args block that maps directly to the parameters. Every line earns its place given the lack of schema descriptions, and there is no redundant or filler text.

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?

An output schema exists, so return values need not be explained. The description covers all parameters well enough to invoke the tool if handles are already known, but for a complex 8-parameter mutation tool with no annotations it still omits important usage, prerequisite, and destructive-action context.

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 description coverage is 0%, but the description documents all 8 parameters with meaning and action-specific conditions. It gives handle examples, enumerates valid action strings, and clarifies base_point, target_point, rotation_deg, scale_factor, layer, and ACI color range. This fully compensates for the empty schema descriptions.

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: modify one or more entities identified by handles. It also lists supported actions, making the tool's scope clear. It does not explicitly differentiate itself from sibling tools such as draw_* or query_entities, so it stops short of a 5.

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 phrase 'identified by their handles' implies this tool is for changing existing entities rather than creating new ones, but it gives no explicit when-to-use guidance or alternatives. It never mentions using query_entities or get_selection to obtain handles, nor does it state when to choose this over draw_* tools.

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