cad-eye-mcp
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CAD_EYE_CJK | No | `tc`, `hk`, `sc` or `jp`: fixed glyph region (turns off auto-detection) | |
| CAD_EYE_CACHE | No | Cache folder for converted Gerber/DWG files (default: system temp) | |
| CAD_EYE_RUNTIME | No | Use a runtime folder other than `./runtime` | |
| CAD_EYE_CADCRAFT | No | Use this `cadcraft-cli` binary instead of the bundled one |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| open_drawingB | Open a drawing and show the whole of it. Replaces the drawing open before. |
| lookA | Show the current screen again (after changing options, or to refresh your view). |
| zoomB | Zoom in or out around a point, like the mouse wheel over that spot. |
| zoom_windowB | Zoom so a rectangle (two opposite corners) fills the screen, like a zoom-window drag. |
| zoom_extentsB | Show the whole drawing. |
| zoom_toA | Frame specific entities (e.g. results of find, or the selection). |
| panA | Move the view without changing zoom. 'right' shows what is to the right of the screen. |
| backA | Return to the previous view (zoom previous). |
| clickA | Click on the drawing: select the object under the point and report exactly what it is (type, layer, coordinates, text, block attributes, size...). Nearby alternatives are listed; select one with select(handles=[...]) if the pick was not the one you wanted. |
| select_windowB | Box-select visible objects and summarise what is inside (counts by type and layer). |
| selectB | Select entities by handle and highlight them. |
| clearA | Clear the selection, markers and boxes. |
| inspectA | Full data of entities: every DXF attribute, effective colour, bounding box, length/area, block content and attributes. Text only, no image. |
| findA | Search the drawing for text (labels, reference designators, notes) or for entity types, then optionally jump to and highlight the results. |
| measureA | Measure distances (segment lengths, dx/dy, angles, total) between points, the area if three or more points are given, or an entity's length/area. Points are marked on screen. |
| layersC | List layers (visibility, colour, entity count) or change which layers are shown. |
| layoutA | Switch between model space and paper-space layouts (sheets with title blocks, drawing views through viewports, notes and parts lists), or list the layouts. |
| markA | Put labelled orange markers on the drawing (e.g. to point out findings), then show it. |
| screen_settingsC | Change the screen: size of the drawing area, grid lines, minimap, CJK glyph region. |
| cad_commandA | Run a CADCraft command directly (its catalog has 400+ AutoCAD-style commands). Use for inquiries the other tools do not cover. Changes stay in the viewer session and are never saved; saving, exporting and opening files is blocked. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 20 tools
Most tools target clearly distinct operations, but there is a dense cluster of view-navigation tools (zoom, zoom_window, zoom_extents, zoom_to, pan, back, look) and a related cluster of selection/picking tools (click, select, select_window) that an agent could occasionally confuse. Descriptions do a good job distinguishing them (e.g. click picks under a point vs select by handle), so ambiguity is limited rather than systemic.
All names use snake_case, but the conventions are mixed: most are verbs or verb_noun (inspect, zoom_to, select_window, open_drawing), while others are bare nouns (layers, layout, screen_settings) and one is vague (back). Readable, but not a predictable verb_noun pattern throughout.
At 20 tools the surface is heavier than the typical well-scoped range; several zoom/navigation variants (zoom, zoom_window, zoom_extents, zoom_to, look) could plausibly be consolidated. Each tool does have a defensible role, so it is borderline rather than excessive.
For a CAD inspection/viewer domain the coverage is solid: open, inspect, search, measure, layer visibility, layout switching, selection/picking, navigation, annotation markers, and a raw cad_command escape hatch. Gaps are minor and mostly deliberate (no saving/exporting/opening beyond the viewer, no layer or property editing), which agents can work around via cad_command.