Skip to main content
Glama

autocad-site-mcp

Server Details

Headless CAD engine & MCP server for 2D/3D drafting, solids, DXF/SVG export, and automation.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2024-11-05
URL

TDQS

A3.5/5.0

Scored across 19 tools

Disambiguation4/5

Tools are mostly clearly distinct (export formats, sharing lifecycle, block creation vs insertion). However cad_run_commands and cad_execute_script overlap in that both execute arbitrary input to modify the drawing, which could confuse selection despite the JS vs command-line distinction.

Naming Consistency5/5

All 19 tools follow a strict cad_verb_noun snake_case pattern (cad_add_layers, cad_create_block, cad_export_dxf, cad_open_dxf, cad_share_drawing). Naming is entirely predictable and readable.

Tool Count4/5

19 tools is on the heavier end but justified given the broad CAD domain (layers, entities, blocks, commands, exports, 3D solids, sharing). Each tool covers a distinct operational area rather than being redundant.

Completeness4/5

Surface covers drawing lifecycle (new, open DXF, open shared, export DXF/STL/SVG), geometry creation, blocks, 3D inspection, and sharing CRUD. Minor gaps like direct entity deletion/selection tools, though cad_run_commands can fill many of these via command-line input.

Available Tools

19 tools
cad_add_layersBInspect

Creates or configures CAD layers with custom colors (hex), linetypes (Continuous, Hidden, Center, Phantom), and lineweights (0.18, 0.25, 0.35, 0.50, etc.).

ParametersJSON Schema
NameRequiredDescriptionDefault
layersYesList of layer definitions to create

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the burden, and it partially meets it: 'creates or configures' implies upsert semantics for layers that already exist, which is genuinely useful context. It says nothing about permissions, error behavior for duplicate/invalid names, or whether prior layer settings are overwritten.

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?

A single sentence that front-loads the verb and resource before the attribute examples. No filler, though it spends most of its length on values the schema already supplies.

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?

For a single-required-parameter mutation tool with fully covered schema and no output schema, the essentials are present. Missing are preconditions (active drawing) and whether existing layers are modified, which matters given zero annotation coverage.

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 name, color, linetype, and lineweight. The description largely repeats those same enumerations without adding format constraints or defaults, so the baseline of 3 applies.

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?

States a specific verb+resource ('Creates or configures CAD layers') and enumerates the configurable attributes, so the agent immediately knows what the tool operates on. No sibling tool touches layers, so differentiation is not needed, but the description stops short of naming scope/limits.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as cad_execute_script or cad_run_commands, and no prerequisites (e.g., an open drawing) are stated. The agent must infer usage entirely from the name.

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

cad_batch_add_entitiesCInspect

Fast batch insertion of multiple CAD entities (LINE, LWPOLYLINE, CIRCLE, ARC, ELLIPSE, XLINE, RAY, DONUT, SOLID, TRACE, WIPEOUT, SPLINE, ARRAY (associative rect/polar/path), MLINE (multiline), TABLE (title, header and data cells), IMAGE (picture embedded in the drawing), TEXT, MTEXT, DIMENSION, TOLERANCE, LEADER, HATCH (pattern or gradient), POINT, INSERT, POLYLINE3D). LINE, POINT and POLYLINE3D points take z.

ParametersJSON Schema
NameRequiredDescriptionDefault
entitiesYesArray of CAD entity definition objects

TDQS

C2.8/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 hints at performance ('Fast') and mutation ('insertion'), but says nothing about permissions, whether insertion is atomic or partial on error, whether it modifies the current drawing, or what it returns. For a batch write tool with zero annotation coverage 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.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded, but the bulk of the description is a verbatim enumeration of the 26 entity types that already appears in the schema's 'type' field description. This duplication is pure waste and makes the description long without adding selection value.

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?

For a single-parameter batch tool with a rich nested schema but no annotations and no output schema, the definition covers input shape by deferring to the schema. It omits return information (e.g., created handles/IDs) and error/partial-failure behavior, which an agent would want before a batch write.

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 per-entity fields (dir, data, gradient, tolerance, etc.) are already documented in the schema; baseline 3 applies. The description's only added semantics is that LINE, POINT and POLYLINE3D accept a z coordinate, which is genuinely useful but marginal.

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 opening clause 'Fast batch insertion of multiple CAD entities' gives a specific verb (batch insertion) and resource (CAD entities). The batch qualifier implicitly separates it from singular creation siblings like cad_create_block or cad_insert_block, though no sibling is named explicitly. Clear but not differentiated from alternatives by name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives such as cad_solids, cad_generate_parametric, cad_execute_script or cad_run_commands. The description states what it does but never addresses selection context or prerequisites (e.g., requires an open drawing).

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

cad_create_blockCInspect

Defines a reusable Block containing geometric entities and optional attribute definitions (ATTDEF).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesBlock name, e.g. "DOOR_900", "TITLE_BLOCK"
entitiesYesArray of entity definition objects comprising the block
basePointNoInsertion base point
attributesNoOptional block attribute definitions

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. It discloses that the block is 'reusable' and that attributes are optional, but says nothing about side effects on the current drawing, duplicate-name behavior, persistence, or permissions. For a definition-creating mutation this is a notable gap.

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?

A single well-formed sentence with the core verb front-loaded and zero redundancy. It is efficient, though its brevity leaves the tool under-specified rather than over-explained.

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

Completeness2/5

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

The tool has 4 parameters including nested objects, no annotations, and no output schema, yet the description never addresses basePoint semantics, expected entity object shape, error behavior, or what happens to the created block. Too thin for this complexity.

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 name, entities, basePoint, and attributes are already documented structurally. The description only restates that attributes are optional ATTDEFs, adding essentially no syntax or format detail beyond the schema, which is the expected baseline here.

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?

States a specific verb and resource ('Defines a reusable Block') plus the payload it accepts (geometric entities, optional ATTDEF). It does not explicitly distinguish itself from the sibling cad_insert_block, so an agent must infer that this creates a definition rather than placing an instance.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

No when-to-use guidance, no prerequisites (e.g. must a drawing be open first), and no reference to cad_insert_block as the follow-up alternative. The agent gets the purpose but nothing about context of invocation.

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

cad_execute_scriptAInspect

Executes JavaScript to generate large or procedural geometry (loops, patterns, algorithms) without spending context tokens. Runs in a separate Node process that cannot write files, start programs or read anything outside the CAD sources; 30 s limit. Variables: CAD, M (CADMath), G (CADGeometry), E (CADEntities), S (CADState), D (CADDXF), L (CADLayouts), parametric, solid(recipe) (adds a 3D solid), console. Changes to the drawing are kept.

ParametersJSON Schema
NameRequiredDescriptionDefault
scriptYesJavaScript code to execute. Can call S.addEntity(), parametric.*, M.*, E.*, etc.

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the sandbox ('separate Node process that cannot write files, start programs or read anything outside the CAD sources'), a 30 s execution limit, and that 'changes to the drawing are kept' (mutation persistence). It omits error behavior and what execution returns, which keeps it from a 5.

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 purpose, then constraints, then the available API surface, then the persistence note. Every sentence carries information; the variable list is dense but directly actionable and nothing is 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?

No output schema exists, so ideally the description would say what a successful run returns; it only states that drawing changes persist. Otherwise it is well matched to a single-parameter sandbox executor: constraints, timeout, and API surface are all covered.

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?

Only one parameter with 100% schema coverage, so the schema baseline is 3. The description goes beyond it by enumerating the injected globals (CAD, M, G, E, S, D, L, parametric, solid(recipe), console), which is genuinely useful for writing the script.

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 ('Executes JavaScript to generate ... geometry') and scopes it to 'large or procedural geometry (loops, patterns, algorithms)', which cleanly separates it from siblings like cad_generate_parametric and cad_batch_add_entities. An agent can tell what this tool is for without opening the 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?

Gives clear context for when it applies (procedural/looped/algorithmic geometry) and adds a value rationale ('without spending context tokens'). However, it never explicitly says when to prefer cad_generate_parametric or cad_run_commands over this, so no exclusions or routing are provided.

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

cad_export_dxfBInspect

Exports the current drawing to a standard AutoCAD 2000 (AC1015) ASCII DXF file compatible with AutoCAD, Civil 3D, SolidWorks, and LibreCAD.

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesPath of the .dxf file inside the output folder (CAD_MCP_OUTPUT_DIR, default: the server working directory), e.g. "plans/level1.dxf"

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It usefully discloses the exact DXF dialect and target-CAD compatibility, but omits whether an existing file at filePath is overwritten, what happens on write failure, and whether the operation mutates server state.

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?

A single, front-loaded sentence with no filler; the format specificity earns its place. Nothing is wasted.

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 one-parameter export tool whose parameter is fully documented in the schema and with no output schema to explain, the description covers the essential format and compatibility facts. It only lacks routing guidance and overwrite/side-effect behavior.

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% and the single filePath parameter is documented in the schema, including the output directory default. The description adds no syntax or format detail beyond what the schema already provides, so baseline 3 applies.

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?

States a specific verb+resource ('Exports the current drawing') plus a precise output format ('AutoCAD 2000 (AC1015) ASCII DXF'), which implicitly separates it from cad_export_stl and cad_export_svg. It does not explicitly name those siblings, so it falls just short of the top band.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

There is no guidance on when to choose DXF over the sibling exporters (STL/SVG), no prerequisites, and no mention of error or overwrite handling. The agent must infer usage entirely from the format name.

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

cad_export_stlBInspect

Exports the closed 3D solids to a binary or ASCII STL file for 3D printing.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsNoSolid ids; default all solids
scaleNoMultiplier on the drawing units (default 1)
binaryNoDefault true; false writes ASCII
filePathYesPath of the .stl file inside the output folder

TDQS

B3.2/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 hints at a scope constraint ('closed 3D solids') but says nothing about permissions, whether an existing file is overwritten, what happens to open/non-solid geometry, or what failure modes exist.

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?

A single, front-loaded sentence with no filler. It is appropriately sized, though it could have used its brevity budget to note an alternative export tool.

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?

There is no output schema, so the description could have said what is returned (e.g., confirmation of the written path), and it omits overwrite/permission behavior. For a simple export tool with fully documented params, it is adequate but leaves gaps.

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 all four parameters are already documented in the schema (ids, scale, binary default true, filePath). The description's mention of 'binary or ASCII' merely echoes the binary parameter, adding no syntax or format detail beyond the schema baseline.

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?

States a specific verb (Exports) and resource (closed 3D solids) plus the output format (binary/ASCII STL). The STL format implicitly distinguishes it from cad_export_dxf and cad_export_svg, but it never names or contrasts those siblings explicitly.

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 'for 3D printing' implies a use context, but there is no explicit when-to-use/when-not guidance and no reference to the alternative export tools (dxf, svg) that an agent must choose between.

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

cad_export_svgBInspect

Renders the drawing or paper space layout to an SVG vector file for instant preview and inspection.

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesPath of the .svg file inside the output folder (CAD_MCP_OUTPUT_DIR, default: the server working directory)
backgroundNoBackground color, e.g. "#ffffff" (default) or "#1e1e1e"

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden. It discloses the render target (drawing or paper space layout) but says nothing about whether the drawing must be open, whether an existing file is overwritten, or what the return result is. It also leaves ambiguous whether 'drawing or paper space layout' means the caller chooses or the tool exports both.

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?

A single sentence with zero waste, front-loading the verb and the output artifact so the agent can triage immediately.

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?

There is no output schema, no annotations, and only two well-documented parameters, so the essentials are covered. What remains unclear is the layout-selection semantics and any precondition like an open drawing, which matters for correct invocation.

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%, and the filePath description is notably detailed (names CAD_MCP_OUTPUT_DIR and its default). The description adds no parameter meaning beyond that, so the baseline 3 for schema-driven parameters applies.

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?

States a specific verb (renders) and resource (drawing or paper space layout) and the output artifact (SVG vector file). This clearly separates it from cad_export_dxf and cad_export_stl by format, though it never names those siblings explicitly.

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 'for instant preview and inspection' implies the use case and indirectly contrasts with CAD-interchange and 3D-print exports. However, there is no explicit statement of when to prefer this over cad_export_dxf, and no exclusions or prerequisites.

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

cad_generate_parametricBInspect

Generates complex parametric structures: "structural_grid", "truss", "mechanical_flange", "gear", or "architectural_floorplan".

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesType of parametric structure to generate
paramsNoParameters specific to the structure (e.g. baysX, baysY, spacingX, span, height, teeth, module, rooms, etc.)

TDQS

B3.1/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 burden of behavioral disclosure. It mentions generation but does not state whether it creates a new drawing, modifies the active one, requires existing geometry, what side effects occur, or what the return format is.

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?

A single front-loaded sentence with no filler; the verb and resource come first and the enum list follows. It is appropriately sized, though it could be slightly more informative without becoming bloated.

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

Completeness2/5

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

There are no annotations and no output schema, and the tool involves a nested 'params' object with open-ended structure-specific parameters. The description does not explain return values, side effects, or how params should be shaped for each type, leaving significant gaps for correct invocation.

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 baseline is 3. The description repeats the type enum values but adds no syntax, constraints, or meaning for the nested 'params' object beyond what the schema already provides.

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 the specific verb 'Generates' and the resource 'complex parametric structures', then enumerates the five supported structure types. An agent can distinguish it from sibling CAD tools such as cad_create_block or cad_export_dxf.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

No explicit when-to-use, when-not-to-use, prerequisites, or alternative tools are given. The list of structure types implies scope but does not route the agent among the many sibling CAD tools.

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

cad_get_statsAInspect

Returns comprehensive statistics of the current drawing: entity count, breakdown by type, layers, bounding box extents, blocks, and layouts.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/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 behavioral burden. 'Returns' implies a non-mutating read, and the enumerated return contents give real transparency about output, but the description says nothing about permissions, cost, behavior when no drawing is open, or whether the data is cached/live.

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?

A single front-loaded sentence that starts with the verb and the target resource, then lists the returned fields compactly. Every clause is substantive and there is no filler or repetition.

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?

With no output schema and no annotations, the description compensates by enumerating the returned statistics, which is exactly what an agent needs to know before calling. The remaining gap is minor: no note on failure modes (e.g. no active drawing) or on whether the reported statistics are scoped to model space vs. layouts.

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 tool takes zero parameters, which is the baseline-4 case; there is no signature to explain and nothing the description could add. The schema is empty, so no parameter-level detail is missing.

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 gives a specific verb ('Returns') and resource ('statistics of the current drawing') and then enumerates the exact content: entity count, breakdown by type, layers, bounding box extents, blocks, and layouts. This clearly separates it from the sibling tools, none of which are read-only inspectors, though it does not name any sibling explicitly.

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: an agent can infer this is the introspection tool to call when it needs an inventory of the open drawing. There is no explicit 'use this when...' clause, no statement of preconditions (e.g. a drawing must already be open), and no mention of alternatives, so the guidance is only implied.

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

cad_insert_blockBInspect

Places an instance (INSERT) of a block into the drawing with transform scale, rotation, and attribute values.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the block to insert
scaleNoUniform scale factor (defaults to 1)
positionYesInsertion coordinate
attributesNoKey-value map of attribute values for ATTDEF tags
rotationDegNoRotation in degrees CCW

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden. It implies a drawing mutation but does not state whether the block definition must pre-exist, what happens on an unknown block name, whether the insert is undoable, or what the tool returns, leaving key failure modes undisclosed.

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?

A single front-loaded sentence that names the operation (INSERT) and the transform fields with zero filler. Every clause carries information.

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?

Reasonable for a nested-object mutation tool with no output schema, but without annotations or an output schema the description should have covered the prerequisite that the block already exist and the behavior on invalid input. Those gaps keep it at minimum-viable rather than complete.

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 coverage is 100%, so all five parameters are documented in the schema, which sets the baseline at 3. The description restates scale, rotation, and attribute values but adds no new semantics such as coordinate conventions or attribute-tag matching rules.

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?

States a specific verb and resource ('Places an instance (INSERT) of a block into the drawing'), and the 'instance of a block' framing implicitly separates it from cad_create_block, which defines a block rather than instantiating one. It stops short of naming that sibling explicitly, so the differentiation requires a small inference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

There is no statement of when to use this versus alternatives and no prerequisite guidance, such as whether the named block must already exist (e.g., via cad_create_block or cad_open_dxf). The agent must infer usage conditions from the verb alone.

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

cad_list_commandsAInspect

Lists every implemented AutoCAD command with its aliases and description. Optional filter matches the name, an alias or words in the description (for example "layer" or "dim").

ParametersJSON Schema
NameRequiredDescriptionDefault
filterNo

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations, the description carries full burden. It implicitly conveys a read-only listing and discloses return contents (name, aliases, description), which is useful, but says nothing about whether an active drawing is required, pagination, or result size.

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?

Two sentences, front-loaded with the core action and output, followed by the optional-filter semantics. No filler sentences and nothing repetitive.

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 one-parameter read tool with no output schema and no annotations, the description covers what is returned and how the filter behaves, which is most of what an agent needs. The missing piece is workflow context — e.g. using this to discover commands before calling cad_run_commands.

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?

Schema coverage is 0%, so the description must carry the lone parameter — and it does well: it explains that the filter matches the name, an alias, OR words in the description, backed by concrete examples. It omits edge details such as case sensitivity or partial-match behavior, so not a full 5.

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?

States a specific verb and resource ('Lists every implemented AutoCAD command') plus what the listing contains (aliases and description). The verb 'list' implicitly separates it from write/execute siblings like cad_run_commands and cad_execute_script, but no sibling is named explicitly.

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 only implied: the filter examples ('layer', 'dim') suggest a discovery/lookup purpose, but the description never states when to call this versus cad_run_commands or cad_execute_script, and no prerequisite (e.g. a drawing must be open) is mentioned.

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

cad_new_drawingAInspect

Initializes a fresh CAD drawing space, clearing existing entities and resetting layers.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoDrawing filename, e.g. "Structural_Frame.dxf"

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does disclose the critical destructive trait: existing entities are cleared and layers reset. It stops short of saying whether this touches an on-disk file or only in-memory state, and whether the drawing is persisted or merely session-scoped.

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?

One tight sentence with the destructive effects front-loaded after the core action. No filler, nothing that fails to earn its place.

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 simple one-parameter initializer with no annotations and no output schema, the description adequately conveys the action and its destructive scope. The remaining gap is whether the drawing is tied to the filename on disk or just an in-memory session, but that is a minor omission.

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% and the single 'name' parameter is fully documented there, so baseline is 3. The description adds nothing about whether the name is optional (0 required params) or what happens when it is omitted.

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?

States a specific verb ('Initializes') and resource ('a fresh CAD drawing space') along with the immediate effects (clearing entities, resetting layers). It implies distinction from cad_open_dxf, but never names or explicitly contrasts with that sibling, leaving the boundary to inference.

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 word 'fresh' implies this is for starting a new drawing rather than opening an existing one, and the destructive side effect suggests caution, but there is no explicit when/when-not statement or reference to cad_open_dxf as the alternative for loading existing files.

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

cad_open_dxfAInspect

Opens an existing ASCII DXF file (AutoCAD R12 to 2018+) in place of the current drawing, so it can be edited with cad_run_commands and saved with cad_export_dxf. Returns counts, what was converted, and a warning listing objects that cannot be read (they would be missing from a saved file).

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesPath of the .dxf file inside the server folder (CAD_MCP_OUTPUT_DIR, default: the server working directory), e.g. "plans/level1.dxf"

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses that the current drawing is replaced ('in place of the current drawing'), what the call returns (counts, conversion details), and a data-loss risk (objects that cannot be read would be missing from a saved file). It omits permission/error behavior and whether the current drawing is discarded without prompt, keeping it at a 4 rather than 5.

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?

A single dense sentence, but every clause earns its place: the scope, the follow-up workflow, the return contents, and the warning about unreadable objects. Front-loaded with the core action; slightly run-on, which keeps it just under a 5.

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?

No output schema exists, yet the description summarizes the return payload (counts, conversions, warning list), which is exactly what an agent needs to interpret the result. It covers the end-to-end workflow; only error/failure handling for a missing or malformed file is left unspecified.

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?

Schema coverage is 100% and the filePath description already documents path resolution and the server folder convention, so the baseline would be 3. The description adds a genuine constraint the schema lacks — the file must be ASCII DXF in the R12–2018+ range — which tells the agent what inputs are actually valid.

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+resource ('Opens an existing ASCII DXF file') and immediately disambiguates the operation with 'in place of the current drawing', which separates it from cad_new_drawing and the export siblings. An agent can tell exactly what this does without opening the 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?

Names the downstream tools and the intended workflow ('edited with cad_run_commands and saved with cad_export_dxf'), which gives clear context for when to reach for it. It stops short of explicit exclusions (e.g. when to prefer cad_open_shared or cad_new_drawing instead), so it is strong context rather than full when/when-not guidance.

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

cad_open_sharedBInspect

Opens a shared drawing from Cloudflare D1 storage into the current CAD session by its share ID or URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesShare ID (22 chars) or full URL, e.g. "https://autocad.site/?share=k7Qx..."
apiUrlNoOptional sharing API endpoint (default: "https://autocad.site")
editTokenNoOptional edit token if not included in the URL fragment

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full behavioral burden. It discloses the source and that the drawing loads into the current session, but omits auth/permission requirements, whether it replaces or adds to the session, and error behavior—significant gaps for a session-mutating operation.

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?

A single front-loaded sentence with zero filler; it packs verb, resource, source, destination, and identifier into one efficient clause.

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?

Purpose and parameter usage are clear from the description plus schema, and no output schema exists to explain. However, with no annotations and no usage guidance, the definition stops short of the context needed to know when this beats cad_open_dxf and what side effects to expect.

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 baseline is 3. The description restates 'share ID or URL' (matching the id parameter) but adds no syntax or meaning beyond the schema for apiUrl or editToken.

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?

States a specific verb ('Opens'), resource ('shared drawing'), source ('Cloudflare D1 storage'), and destination ('current CAD session'). It implicitly distinguishes itself from cad_open_dxf, but no sibling tool is named, so it falls 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 Guidelines2/5

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

No when-to-use guidance, no alternatives named (e.g., cad_open_dxf for local DXF files), and no prerequisites stated. The only clue is that it requires a share ID or URL.

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

cad_revoke_sharedAInspect

Revokes and deletes a shared drawing from Cloudflare D1 storage using its ownerToken.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesShare ID or full share URL
apiUrlNoOptional sharing API endpoint
ownerTokenYesOwner token received when creating the share

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full burden and does disclose that this is a destructive operation (revoke + delete) against persistent storage (Cloudflare D1) and that it is gated by ownerToken. However it stops short of stating irreversibility, whether the share record is removed from the sharing index, or what happens with an invalid/expired token.

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?

A single front-loaded sentence with the action first, the target second, and the credential last. No filler, no restatement of the tool name.

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?

For a destructive, unannotated, output-schema-less tool this is on the thin side: an agent learns what it does and what credential it needs, but not the reversibility profile, failure modes, or confirmation semantics that matter for an irreversible delete.

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 both required parameters and the optional apiUrl are already documented in the schema. The description adds only the fact that ownerToken is the authorizing credential for the delete, which is marginal value beyond the schema's own 'Owner token received when creating the share'.

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 pair (revokes and deletes) against a specific resource (a shared drawing), plus the mechanism and required credential. This clearly separates it from sibling share-management tools such as cad_share_drawing, cad_update_shared, and cad_open_shared.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

The description gives no when-to-use framing, no mention of when not to use it, and no pointer to alternatives like cad_update_shared for non-destructive changes. The only contextual cue is the ownerToken requirement embedded in a sentence about purpose, which is incidental rather than guidance.

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

cad_run_commandsAInspect

Runs AutoCAD command-line input in the current drawing, exactly as typed in the app. Statements are separated by ";" or newlines; inside a statement tokens are separated by spaces and the statement ends with Enter. Example: "LINE 0,0 100,0 100,50; CIRCLE 50,25 10; CHPROP ALL; C red; LAYMRG N DOORS; N WALLS Y; DRAWORDER ALL; F". Every statement ends with Enter, so keep the follow-up answers of one command step in the same statement ("CHPROP ALL; LA WALLS C red"; a question asked after Enter goes in the next statement: "LAYDEL N TEMP; Y"). Objects are selected with ALL or P (previous). Returns the command log and any problems. 3D: points x,y,z; 3DPOLY, ELEV, VIEW (Top, Front, SWiso ...), UCS. 3D solids: BOX, CYL, SPHERE, EXTRUDE, REVOLVE, UNION, SUBTRACT, INTERSECT, MASSPROP. Use cad_list_commands to see every command.

ParametersJSON Schema
NameRequiredDescriptionDefault
selectNoOptional Quick Select filter applied before the script; the commands then act on it (pre-selection, or P for previous). Example: { "type": "CIRCLE", "property": "radius", "op": "<", "value": 5 }. Properties: color, layer, linetype, lineweight, length, radius, area, text, height, blockname, measurement. Operators: =, <>, >, <, * (any). Text values accept * and ? wildcards. exclude: true inverts the filter.
commandsYesCommand script

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations provided, the description carries the full behavioral burden and does well: it explains statement separation, Enter handling, follow-up answer placement, selection methods (ALL or P), and that it returns 'the command log and any problems.' It does not explicitly state permission requirements, undo behavior, or whether changes are destructive, but for a command runner the execution semantics are unusually well disclosed.

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?

The definition is dense but front-loaded: purpose first, then syntax rules, examples, and specialized 3D context. Every section is relevant, though the long example strings and command lists could feel heavy. For a complex command-scripting tool, the length is justified and structured.

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?

The tool is complex, has no output schema, and has no annotations, so the description must do the heavy lifting. It covers syntax, behavior, return values, object selection, 3D points and commands, and points to cad_list_commands for command discovery. Nothing essential for correct invocation appears missing.

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?

Schema description coverage is 100%, so the baseline would be 3, but the description adds significant meaning for the commands parameter: separators, tokenization, Enter semantics, examples, 3D point syntax, and relevant command families. The select parameter is mostly documented in the schema, and the description only briefly ties it to pre-selection and P. The extra syntax detail for commands makes this above baseline.

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 description opens with a specific verb and resource: 'Runs AutoCAD command-line input in the current drawing, exactly as typed in the app.' It clearly distinguishes this from generic script execution by tying it to AutoCAD command-line syntax and the current drawing context. An agent can immediately tell this tool executes typed CAD commands.

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 gives substantial usage context through syntax rules and examples, but it does not explicitly state when to prefer this tool over siblings like cad_execute_script or cad_batch_add_entities. The only alternative named is 'Use cad_list_commands to see every command,' which is about discovery rather than execution choice. Usage is implied rather than contrasted.

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

cad_share_drawingBInspect

Shares the current drawing online via Cloudflare D1 storage (autocad.site). Returns view and edit URLs that can be shared with users or other agents.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoOptional drawing name (defaults to current drawing name)
apiUrlNoOptional sharing API endpoint (default: "https://autocad.site")
expiresDaysNoExpiration in days (e.g. 1, 7, 30; omit or 0 for never)

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full load and partially meets it: it discloses the persistence layer (Cloudflare D1), the host (autocad.site) and that both view and edit URLs are returned. It omits the security-relevant behavior an agent needs — that the edit URL grants write access, whether the share is public/unauthenticated, and that cad_revoke_shared is the undo path.

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?

Two tight sentences with the core action front-loaded and the return artifact second. The trailing 'with users or other agents' is mild padding but does not obscure the message.

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?

No output schema, and the description does cover the return shape, which is good. However, for a mutation tool with zero annotations it says nothing about prerequisites, access scope of the generated links, or expiry/revocation interaction, leaving notable gaps an agent must guess at.

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 name, apiUrl and expiresDays are already fully documented in the schema. The description references none of them and adds no format or interaction detail (e.g. what happens if name collides), so the baseline 3 applies.

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?

States a specific verb and resource ('shares the current drawing') plus the storage backend and the artifact produced (view and edit URLs). This distinguishes it from cad_open_shared, cad_update_shared and cad_revoke_shared, though those distinctions are left implicit rather than named.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

No when-to-use guidance, no prerequisites (e.g. must a drawing be open/saved first), and no mention of when to prefer cad_update_shared or cad_revoke_shared. The phrase 'current drawing' faintly implies context but gives the agent nothing actionable about alternatives.

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

cad_solidsBInspect

Inspects 3D solids: list (id, op, volume, bounds), measure (volume, area, centroid) or check (closed, curve error).

ParametersJSON Schema
NameRequiredDescriptionDefault
idsNoSolid ids; default all
fromNoStart index; use the reply's next to page
limitNoSolids per reply, 1 to 50 (default: as many as fit in 900 bytes)
actionNoDefault list

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. 'Inspects' implies a read-only operation and it usefully discloses what each mode returns (e.g., volume, bounds, centroid, closed/curve error). However it says nothing about permissions, contract of 'curve error', or any error/edge behavior beyond the field names.

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?

A single front-loaded sentence that opens with the verb and resource, then packs the three modes and their outputs efficiently. Dense but every clause earns its place with no filler.

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?

There is no output schema, and the description partly compensates by listing per-mode return fields, but it omits pagination behavior (left to the schema's from/limit) and any sibling routing. Adequate but with clear gaps.

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 parameters are already documented in the schema. The description loosely maps action values to their outputs but adds no syntax or format meaning beyond what the schema already 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?

States a specific verb (Inspects) and resource (3D solids), and enumerates the three modes (list, measure, check) with their returned fields. This clearly distinguishes it from the export/create/stats siblings, though it never explicitly names an alternative.

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 three action values imply when each mode applies (enumerate vs. quantify vs. validate), but there is no explicit when-to-use/when-not guidance or named alternative among the many cad_* siblings. Usage must be inferred.

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

cad_update_sharedBInspect

Uploads and updates the current CAD session drawing to an existing shared drawing using its editToken.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesShare ID or full share URL
apiUrlNoOptional sharing API endpoint
editTokenYesEdit token

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full disclosure burden, and it does surface two real behavioral facts: an editToken credential is required and the target share must already exist. It says nothing about whether the uploaded drawing replaces existing share contents, whether the operation is reversible, or what happens on token failure — significant gaps for a write/upload operation.

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?

A single tight sentence with no filler, and the target resource and required credential are front-loaded. Minor redundancy in 'uploads and updates' costs it the top mark.

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?

There is no output schema and no annotations, so the description is the only behavioral source, and it covers the core action plus authentication. It omits the outcome of the call (success signal, response shape) and the overwrite semantics that an agent would need before invoking a share-mutating tool.

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 id, apiUrl, and editToken, establishing a baseline of 3. The description references the editToken and implies the id via 'existing shared drawing' but adds no format, default, or constraint detail beyond the schema.

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?

States a specific verb pair (uploads/updates) and a specific resource (the current CAD session drawing written into an existing shared drawing), which is enough to separate it from cad_share_drawing and cad_open_shared. It never names a sibling explicitly, so differentiation is inferential rather than stated.

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 'using its editToken' and the word 'existing' imply the precondition that a share must already exist and the caller must hold an edit token, which is useful implied usage guidance. There is no explicit when-to-use versus cad_share_drawing, cad_open_shared, or cad_revoke_shared, and no stated failure conditions.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 19 tool updates
    • First observedcad_add_layers
    • First observedcad_batch_add_entities
    • First observedcad_create_block
    • First observedcad_execute_script
    • First observedcad_export_dxf
    • First observedcad_export_stl
    • First observedcad_export_svg
    • First observedcad_generate_parametric
    • First observedcad_get_stats
    • First observedcad_insert_block
    • First observedcad_list_commands
    • First observedcad_new_drawing
    • First observedcad_open_dxf
    • First observedcad_open_shared
    • First observedcad_revoke_shared
    • First observedcad_run_commands
    • First observedcad_share_drawing
    • First observedcad_solids
    • First observedcad_update_shared

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Modern CAD CLI + MCP Server: 2D/3D drawing, editing, measurement, validation, batch automation, real-time collaboration (CRDT + WebSocket).
    22
    2
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI assistants to automate 2D architectural drafting and CAD file management, including DXF/DWG parsing, SVG/PNG/PDF rendering, wall extrusion to 3D STL meshes, room and beam analysis, block/script library access, and persistent depot storage via a REST API and MCP tools.
    18
    MIT
  • F
    license
    A
    quality
    B
    maintenance
    CAD-engineering MCP tool server for parametric modeling, DFM validation, mechanical calculations, and more. Enables code-CAD builds (build123d/CadQuery), model inspection, meshing, and mechanical calculators via MCP stdio.
    11
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources