MCP Server for AutoCAD Electrical 2025 with 34+ tools for drawing, electrical schematics, components, wiring, reports, and 3D geometry. Supports both AutoCAD Electrical and AutoCAD Standard variants.
18 tools with complete schemas and descriptions, but quality is uneven. Most descriptions are adequate (50-150 chars) and parameters are typed, meeting baseline standards. However, descriptions lack LLM-optimized guidance on WHEN to use each tool vs. similar ones (e.g., draw_line vs draw_line_3d). No output schemas documented. Error handling is absent, tools return dicts but no guidance on failure modes, recovery steps, or invalid input handling. Parameter descriptions are minimal (e.g., 'Circle radius' lacks units or constraints). No tool annotations (readOnlyHint, destructiveHint). Composition is reasonable, tools are single-purpose, but chaining guidance is missing.
Draw a 3DFACE (triangle or quad) in 3-D space. For a triangle, leave x4/y4/z4 as None (third point is duplicated).
Draw an arc centred at (cx, cy). Angles are in degrees; 0° = East, counter-clockwise positive.
Draw a 3-D solid box (ACIS — requires full AutoCAD with 3D Modeling). Returns {"note": "ACIS_NOT_AVAILABLE"} if the license doesn't permit it.
Draw a circle at centre (cx, cy) with the given radius.
Draw a 3-D solid cone (ACIS).
Draw a 3-D solid cylinder (ACIS).
Draw a line from (x1, y1) to (x2, y2) on the specified layer. Returns a dict with success status and the entity handle on success.
No output schemas documented. Tools return dicts but LLM cannot predict field names, types, or structure. Breaks downstream tool chaining and forces LLM to guess at response format.
No error handling guidance. Tools return dicts with 'success' status but no recovery instructions. LLM cannot distinguish retryable errors from user-fixable ones. E.g., draw_box returns {"note": "ACIS_NOT_AVAILABLE"} with no guidance on what to do next.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | <=2025-11-25 | v2 |
Draw a 3-D line between two XYZ points.
Draw a 2-D lightweight polyline through a list of [x, y] points. At least 2 vertices required.
Draw a 3-D polyline through a list of [x, y, z] points. At least 2 vertices required.
Draw a closed rectangular polyline from corner (x1, y1) to (x2, y2).
Draw a 3-D solid sphere (ACIS).
Place a single-line text entity at (x, y) with the given height.
Return detected AutoCAD variant, version, features, and running state. Useful for discovering whether AutoCAD Electrical or Standard is active.
Create or configure a layer and optionally make it active.
Define and activate a named User Coordinate System for 3-D work.
Switch to a 3-D view preset and zoom to extents. view_type options: SE_ISOMETRIC, SW_ISOMETRIC, NE_ISOMETRIC, NW_ISOMETRIC, TOP, FRONT, RIGHT, LEFT, BACK, BOTTOM, PERSPECTIVE.
Zoom the active viewport to fit all entities (ZOOM E).
Parameter descriptions lack constraints and units. E.g., 'Circle radius' does not specify units (drawing units? mm? inches?), min/max bounds, or what happens if radius ≤ 0. LLM cannot validate input before calling.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). LLM cannot distinguish safe read-only tools (zoom_extents, get_autocad_info) from destructive ones (draw_line, set_layer). Increases risk of unintended side effects.
Descriptions do not explain WHEN to use each tool vs. similar ones. E.g., draw_line vs draw_line_3d, draw_polyline vs draw_polyline_3d. LLM must infer intent from context alone, risking wrong tool selection.