Skip to main content
Glama

autocad_send_command

Destructive

Send raw AutoCAD command-line strings or AutoLISP to a live session for direct drafting and automation control. Disabled by default; enable via environment variable.

Instructions

Send a raw AutoCAD command-line string (or AutoLISP via (command ...)) to a live AutoCAD session. COM backend only.

DISABLED BY DEFAULT. Set AUTOCAD_MCP_ALLOW_RAW_COMMANDS=1 in the server's environment to enable it. A small denylist blocks a few especially dangerous verbs (QUIT, SHELL, NETLOAD, ...) but this is a guardrail, not a sandbox — anything the AutoCAD command line can do, this can do, including running arbitrary AutoLISP and overwriting files. Only enable it in a trusted, single-user environment.

Args: params (SendCommandInput): - command (str): raw command-line string, e.g. 'ZOOM E '.

Returns: str: JSON {"status": "sent", "command"}.

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.4/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true, openWorldHint=true, idempotentHint=false, but the description adds substantial context beyond them: default-disabled gate, exact env var, denylist contents (QUIT, SHELL, NETLOAD), the 'guardrail, not a sandbox' framing, and the ability to run arbitrary AutoLISP and overwrite files. This is exemplary disclosure for a dangerous tool.

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?

Front-loads what the tool does, then the enablement gate, then the safety warning, then args/returns — a logical order. Slightly long, but each sentence carries non-redundant information (enablement, denylist limits, trust requirement), 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?

Even though the tool is inherently dangerous and takes an opaque string, the description supplies the enablement procedure, the safety boundary, the param shape, and the return format ('JSON {"status": "sent", "command"}'). An output schema exists, so return semantics need not be expanded further.

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 0% per context signals, so the description must carry parameter meaning. It does name the single `command` param and give an example ('ZOOM E ') plus an AutoLISP form hint, which mirrors the inner schema's own text, but it omits the maxLength=2000 / minLength=1 constraints and gives no format rules for delimiters or terminators.

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?

Specific verb+resource: 'Send a raw AutoCAD command-line string ... to a live AutoCAD session', with the AutoLISP variant and 'COM backend only' scope qualifier. An agent can immediately distinguish this escape-hatch tool from the typed siblings (autocad_create_line, autocad_draw_wall, etc.) that perform constrained operations.

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?

Strong when-and-when-not guidance: disabled unless AUTOCAD_MCP_ALLOW_RAW_COMMANDS=1, and 'Only enable it in a trusted, single-user environment'. It does not, however, explicitly tell the agent to prefer the dedicated typed tools over this raw escape hatch, which is the most relevant alternative in this sibling set.

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