Skip to main content
Glama
AutoCAD MCP Pro
by U-C4N

Drawing: Preflight

drawing_preflight
Read-only

Validates and normalizes drawing requirements before a plan is committed, returning conflicts and open questions until the spec is ready to verify.

Instructions

Validate and normalize requirements before committing a drawing plan.

Typed requirements go under requirements.items: each is checked with its path (items[2].target.nominal: must be greater than zero, got -1.0. comes back as an INVALID_REQUIREMENT conflict) and its canonical form replaces the input in normalized_spec, so spec_hash covers what will be verified; requirement_set carries the canonical set and its digest. A legacy dimensions object is still accepted, kept as given and listed under legacy - it is never measured. Conflicting provenance is kept and reported (CONFLICTING_PROVENANCE, CONFLICTING_REQUIREMENT), never collapsed to one value. Typed items are validated once units is known (a MISSING_UNITS question asks for it). Nothing is refused: every problem is a question or a conflict, and ready stays False until none is left.

Input Schema

NameRequiredDescriptionDefault
scaleNo
intentYesOne-line description of what this drawing represents.
dim_styleNochain / baseline / ordinate / mixed.chain
sheet_sizeNoA4 / A3 / A2 / A1 / A0.A3
view_countNo
layer_set_idNomech / pid / iso13567.mech
requirementsNoUnits, part_type, tolerance_policy and the requirements themselves: typed `items` (each {id, quantity, target, features, provenance, source?, datum?, manufacturing_tolerance?, verification_epsilon?}) and/or a legacy `dimensions` object, kept read-only; optional constraints.
allow_assumptionsNoAllow documented defaults for units and tolerance policy.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.7.0
    • changedInput schema / properties / requirements / description
      Previous value: -"Units, part_type, dimensions, tolerance_policy and optional constraints."New value: +"Units, part_type, tolerance_policy and the requirements themselves: typed `items` (each {id, quantity, target, features, provenance, source?, datum?, manufacturing_tolerance?, verification_epsilon?}) and/or a legacy `dimensions` object, kept read-only; optional constraints."
  2. First observedv1.4.0

TDQS

A4/5.0
Behavior5/5

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

With readOnlyHint already declaring the safety profile, the description still adds substantial behavioral context: nothing is refused (problems surface as questions/conflicts), `ready` remains False until the question set is empty, conflicts are kept rather than collapsed, and MISSING_UNITS is raised only once units are known. None of this is derivable from the annotations or schema.

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 purpose statement is front-loaded and the dense detail that follows is reference-grade rather than filler. It is long and backtick-heavy, but nearly every clause carries operational meaning; only the legacy-dimensions aside could be trimmed without loss.

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?

An output schema exists, so return-shape explanation is rightly omitted, and the description covers the non-obvious semantics (conflict codes, normalization, the ready gate). It stops short of telling the agent what to do when `ready` is False — which sibling resolves the questions — but that is the only meaningful gap.

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 already 75%, and the description adds real meaning on top for the hardest parameter, `requirements` — typed `items` shape, the legacy `dimensions` escape hatch being kept read-only and never measured, and where the canonical form lands (`normalized_spec`, `spec_hash`, `requirement_set`). The remaining top-level scalars (scale, sheet_size, view_count, layer_set_id) are covered by schema text and left alone, which is appropriate.

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 line names a specific verb+resource pair (validate/normalize requirements) and situates it in a workflow phase ("before committing a drawing plan"). It does not name a sibling like drawing_verify_requirements or drawing_plan explicitly, so an agent must infer the boundary from the phase hint rather than from a stated 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?

Timing is implied by "before committing a drawing plan", which tells the agent roughly where this sits. However, there is no explicit when-not guidance and no named alternative for related tasks (verify requirements, critique, plan), leaving sibling selection partly to inference across a very crowded namespace.

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