Skip to main content
Glama
Limnex

CAD MCP

by Limnex

CAD MCP

CAD MCP 是面向 Codex 等 MCP 客户端的本地 CAD 服务端,提供 114 个 cad_* 工具, 用于创建、检查和修改 DXF/DWG,配置 DraftingProfile 2.0、DWG 图框、布局视口以及 PDF 出图。仓库同时包含 Python 服务端、Codex 插件清单和内置 Skill。

仓库可以克隆到任意目录。安装后通过全局 cad-mcp 命令启动,不依赖仓库绝对路径。

WARNING

Codex 桌面端不要冷启动 AutoCAD。 作者实测发现:AutoCAD 尚未运行时,通过 Codex 桌面端调用 CAD MCP 启动 AutoCAD,会导致 AutoCAD 崩溃。请先手动打开 AutoCAD 并等待主界面完全加载,再通过 MCP 执行健康检查、打开图纸、新建图纸和其他 acad 操作。作者通过 cc-haha 使用本 MCP 时暂未复现该问题,但这只是当前实测结果, 不代表所有电脑和 AutoCAD 版本均不会发生。

能力与边界

模式

主要用途

运行要求

dxf

创建和修改 DXF、基础图元、图层、样式和结构化检查

不需要安装 AutoCAD

acad

操作原生 DWG、布局、视口、页面设置、打印资源和关联字段

Windows、本机 AutoCAD,并先手动打开 AutoCAD

CAD MCP 只负责把已经确定的数据转换为 CAD 实体。工程尺寸、工艺路线和规范结论仍需由 用户或专业设计资料确定。完整 DWT、打印资源和原生 DWG 能力不能由 DXF 模式替代。

版本 1.5.2 为 cad_make_block 增加 annotative=true,在 acad 模式创建并回读原生注释性块;默认 false 保留原行为。DXF 模式传入 true 会明确拒绝,不以普通块冒充。

版本 1.5.1 允许 cad_open_drawing 传入现有本机图纸的盘符绝对路径;新建和另存为仍限定在受控图纸目录。打开目录外文件后,显式保存可能写回原位置,应先核对目标路径。

版本 1.5.0 新增按严格 *_manifest.json 规格卡审查指定 DWG 块,以及封闭边界 SOLID 实心填充和写后回读验证。无法读取或没有明确规格的字段返回“无法验证”,不会 用常见默认值替代。

原生二维倒角使用 cad_chamfer:支持两侧距离、距离+角度、修剪控制、多段线整体倒角和连续多组处理,默认只预览,执行后回读验证并在失败时撤销。参数及示例见使用指南。

Related MCP server: CDT AutoCAD Provider

绘图前登记工程对象

默认启用 semantic_policy=strict:先用 cad_register_semantic_object 登记工程对象, 再在创建图元时传入 semantic,说明项目、对象和图元用途。复制、阵列、插块、图框和 视口等创建操作也受此约束;现有图纸不会自动迁移。登记相当于给图元建立可核对的身份卡, 不能代替工程设计依据。调用示例见严格语义模式。

图案填充与直径标注

cad_draw_hatch 在 DXF 和 AutoCAD 中按已有边界创建图案填充,支持图案、比例、角度, 以及多条直线/圆弧围成的组合区域和独立内圈留空。默认 dry_run=true 先预览;组合模式 必须使用 associative=false,保留用户边界,不自动补断口。见图案填充。

cad_draw_diameter_dimension 按圆心和圆上一点创建原生直径尺寸,支持两种模式和可选文字 位置,继承当前标注样式。它直接写入、没有 dry_run,也不与已有圆建立自动更新关联。 见圆形直径标注。

编辑已有实体

用 cad_get_entity_properties 按十进制句柄读取当前属性,再用 cad_edit_entity_properties 修改。支持通用外观、文字、直线、圆,以及圆弧、多段线、块引用、填充、椭圆和点。

新增几何编辑面向 XY 平面,保留原标高和 Z 比例。块内容可按属性标签修改编号、名称、数值,也可按读取结果中的路径修改内部固定文字;固定文字会复制所需块定义,仅影响选中实例,其他同名块保留原内容。数值按字符串传入(如 "12.00"),保留显示格式。

编辑默认 dry_run=true 只预览差异;正式修改需显式设置 false。图层和线型须已存在,锁定图层拒绝修改;写后回读,失败尝试回滚,不自动保存。完整参数与示例见工具契约。

原生圆角

cad_fillet 在 AutoCAD 模型空间执行原生 FILLET,支持两个图元之间圆角和整条 轻量多段线圆角,输入半径、拾取位置及是否修剪。默认 dry_run=true 只预检;正式执行 回读几何变化和圆角半径,恢复原圆角/捕捉设置及临时视图,不自动保存。短边可能被 AutoCAD 跳过, 以返回的实际图元和 rounded_arc_count 为准。完整参数见工具契约。

原生延伸

cad_extend(subject_handle, boundary_handles, endpoint, extend_edges=false, dry_run=true) 调用 AutoCAD 原生 EXTEND,将直线、圆弧或开放轻量多段线的一端延伸到指定边界。 endpoint 显式选择 start 或 end;默认只预检,正式执行使用 dry_run=false。 预检不预测交点;正式结果回读端点和长度,核对另一端与边界,并提供失败撤销状态,不自动保存。 正式执行临时放大所选端点,结束后恢复原视图和系统变量;预检不改变 CAD。 详见工具契约。

局部图像预览

调用 cad_preview_region,指定模型空间 WCS XY 的左下角和右上角,获取局部 PNG:

{"params":{"x_min":0,"y_min":0,"x_max":10000,"y_max":6000,"width":1200,"height":800,"background":"white"}}

两种模式均包含当前未保存的修改。图片先保存到实际日志目录同级的 images/YYYY-MM-DD/preview_时间_唯一标识.png,然后同时返回标准 MCP 图片内容和文字中的 image_path 绝对路径。支持看图的客户端可把图片直接传给 agent;图片显示失败时可按路径 另行读取,客户端拒绝图片响应时可用 include_image=false 仅获取路径。预览图片不自动删除。

DXF 直接渲染内存文档,AutoCAD 临时导出 DXF 后渲染;不保存原图纸,不调整视图或打印设置。 这是保持比例的二维俯视预览,字体、代理对象和外部参照可能与 AutoCAD 原生显示不同,外部 栅格图片仅显示占位边框。详细参数与返回字段见工具契约。

安装

需要 Windows、Python 3.11-3.14、uv 和 Codex CLI。仅使用 acad 模式时需要 本机 AutoCAD。

git clone <repository-url> cad-mcp
Set-Location .\cad-mcp
pwsh -File .\scripts\install.ps1

安装脚本会安装 cad-mcp 命令、登记仓库内的本地插件市场,并安装 cad-mcp@cad-mcp。完成后重启 Codex 或新建任务。

验证安装:

cad-mcp config show
codex plugin list

详见 安装指南。

安全开始

默认使用 acad 模式生成原生 DWG。先手动打开 AutoCAD,再执行健康检查和图纸操作。 无需 AutoCAD 的 DXF 工作流仍可显式选择。

DXF 模式

  1. 使用 cad-mcp config set mode dxf 设置默认模式。

  2. 在客户端中先调用 cad_health(reconnect=false)。

  3. 新建或打开 DXF,先登记工程对象并在创建图元时提供 semantic,完成后执行 cad_check_drawing 再保存。

AutoCAD 模式

  1. 手动启动 AutoCAD,并等待主界面完全加载。

  2. 在 Codex 桌面端调用 cad_health(reconnect=false),不得用 reconnect=true 冷启动。

  3. 确认 AutoCAD 已运行后,再切换到 acad 模式并新建或打开图纸。

  4. 写入前确认当前活动图纸;创建图元前登记工程对象并提供 semantic,重要操作先预览或 dry-run。

  5. 保存前执行 cad_check_drawing;需要保留窗口时不要让 MCP 关闭 AutoCAD。

详细流程见 使用指南。冷启动崩溃和日志排查见 故障排查。

stdio 服务使用常驻工作进程执行工具,主进程监控超时;单次调用永久阻塞时,只清理自有工作进程,保留 AutoCAD。写入失去响应会标记为“结果未知”并阻止后续写操作,需人工核对 CAD 后重启 MCP;这不代表 CAD 操作已中止或回滚。恢复步骤见使用指南,异常模拟方法见开发与验证。

配置

cad-mcp config show
cad-mcp config path
cad-mcp config set drawings-dir "D:\CAD"
cad-mcp config set log-dir "D:\CAD-Logs"
cad-mcp config set mode acad

用户配置默认保存在 ~/.cad-mcp/config.json,不会提交到 GitHub。配置优先级和环境变量 说明见 配置指南。

文档

开发验证

pwsh -File .\scripts\verify.ps1

该命令同步锁定依赖、运行测试并临时构建 Python wheel;构建检查完成后自动清理,不生成或 发布 ZIP。GitHub Actions 会在 push 和 pull request 时执行相同类型的测试与构建检查。

许可证

本项目采用 MIT License。

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    MCP server for full AutoCAD automation, AutoCAD LT automation, and headless DXF generation. It provides 8 consolidated tools for drawing, entity, layer, block, annotation, P&ID, view, and system operations via MCP stdio transport.
    12
    37
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables MCP-based interaction with AutoCAD and DXF/DWG drawings, supporting document lifecycle, entities, layers, blocks, layouts, viewports, zoom, screenshot capture, and PDF export via ezdxf or live Windows AutoCAD COM backends.
    87
    MIT
  • A
    license
    C
    quality
    C
    maintenance
    Enables MCP clients to create and edit technical drawings, manage layers and geometry, process GIS/research mapping data, generate previews and layouts, and automate AutoCAD documents on Windows through COM.
    225
    61 npm
    MIT
  • 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