Skip to main content
Glama
liqi82

autocad-mcp

by liqi82

AutoCAD-mcp

用自然语言 / AI 驱动你电脑上正在运行的 AutoCAD 完成 2D 制图自动化。
通过 MCP 协议把 AutoCAD 的绘图、标注、图层/块、机械图框/标题栏/BOM/球标等能力暴露给 WorkBuddy 及任意 MCP 客户端;支持 AutoCAD 2014 及兼容版本。

License: MIT Python Release


它能做什么

通过 Windows COM(ActiveX) 连接本机 AutoCAD,把以下能力以 MCP 工具暴露给 WorkBuddy / 任意 MCP 客户端:

  • 🖊️ 绘制:直线、圆、多段线、矩形、单行/多行文字

  • 📐 标注:线性、对齐、半径、直径

  • 🗂️ 图层 / 块 / 样式管理:新建图层、切换当前层、块定义与插入、中文文字样式(宋体,不乱码)

  • 📐 机械制图:A3 图框、GB 标准中文标题栏、BOM 明细表、球标

  • 🔍 查询 / 清理:列出实体、按图层擦除、按 Handle 平移

Related MCP server: AutoCAD MCP

能力清单(MCP 工具)

能力

对应工具

连接 / 环境探测

connect / capabilities / list_documents

绘制 线/圆/多段线/矩形/文字

draw_line / draw_circle / draw_polyline / draw_rect / add_text / add_mtext

查询图面

query_entities

标注 线性/对齐/半径/直径

dim_linear / dim_aligned / dim_radial / dim_diameter

图层 / 块 / 样式

ensure_layer / set_current_layer / ensure_block / insert_block

机械图框 / 标题栏 / BOM / 球标

a3_frame / title_block / bom_grid / balloon

清理 / 变换

erase_layer / move_entity

机械图框、GB 标准标题栏、BOM 明细表、球标等均以几何 + 文字直接生成,开箱即用、无需依赖任何 CAD 私有向导。


环境要求

  • Windows(COM/ActiveX 仅 Windows 可用)

  • AutoCAD 已安装并打开至少一张 DWG(2014 及兼容版本;理论上支持 R2010+ 的 ActiveX 接口)

  • 运行环境:首次启动会自动拉取 mcp(v1) + pywin32

⚠️ 本连接器仅支持 AutoCAD,需要本机已安装并运行 AutoCAD(依赖 Windows COM/ActiveX)。


安装与运行

方式一:uvx / pipx(推荐,发布后)

uvx autocad-mcp            # 自动下载并启动 MCP 服务(stdio)
# 或
pipx run autocad-mcp

方式二:从源码

git clone https://github.com/liqi82/autocad-mcp.git
cd autocad-mcp
pip install -e .
autocad-mcp                # 或 python -m autocad_mcp.server

本地开发时也可直接进入 src 目录用托管 Python 运行:

cd autocad-mcp/src
python -m autocad_mcp.server

接入 WorkBuddy(连接器)

  1. 把下面内容合并进 WorkBuddy 的 ~/.workbuddy/mcp.jsonmcpServers

    {
      "mcpServers": {
        "autocad-2d": {
          "command": "uvx",
          "args": ["autocad-mcp"],
          "env": { "PYTHONUTF8": "1" }
        }
      }
    }
  2. 在连接器管理页面对 「autocad-2d」 点击 信任 / 启用

  3. 确认 AutoCAD 已打开一张 DWG。

  4. 在对话里直接说,例如:"在 Drawing2.dwg 画一个直径 300 的圆""插入 A3 图框并填写标题栏"

本地未发布时,可把 command 改为你的 Python 解释器、args 改为 ["-m","autocad_mcp.server"]cwd 指向 src 目录。


使用示例(MCP 工具直接调用)

connect()                                  → 连接当前活动图纸,返回能力信息
a3_frame(landscape=true)                   → 插入 A3 横式外框
title_block(fields={"图名":"总布置图","图号":"SC-001","比例":"1:200"})
draw_circle(cx=210, cy=148.5, radius=150)  → 直径 300 的圆
bom_grid(origin_x=20, origin_y=360,
         headers=["序号","名称","数量","材料"],
         rows=[["1","船体","1","钢"],["2","电机","2","—"]],
         col_widths=[20,80,30,40])
balloon(x=120, y=200, number="1", leader_x=160, leader_y=230)
dim_linear(x1=0,y1=0,x2=420,y2=0,tx=210,ty=-15)   → 水平尺寸标注
query_entities()                            → 列出模型空间所有实体
erase_layer("HW_TEST_TMP")                  → 清理临时图层

快速演示(一键跑通全套能力)

仓库内置一个端到端演示脚本 examples/demo_showcase.py,它通过真实 MCP stdio 服务器在目标图纸上画出一张带标注的机械示例图(矩形轮廓 + 孔 + 线性标注 + 球标 + BOM 明细表 + 文字),全部画在独立图层 HW_DEMO,便于一键清理。

# 1) 先装好连接器(见上文「方式二:从源码」)
pip install -e .

# 2) 打开 AutoCAD 与目标图纸(默认 Drawing2.dwg,可在脚本顶部的 TARGET_DOC 改)
# 3) 运行演示(用托管 Python)
python examples/demo_showcase.py

演示会依次调用 connect → ensure_layer → draw_rect → draw_circle → dim_linear → balloon → bom_grid → add_text,并输出每个工具的返回值(Handle)。效果等价于你亲口说:"在 Drawing2 画一个矩形零件,开个孔,标个尺寸,加球标和 BOM"。

想看真实渲染,直接用 AutoCAD 打开该图纸、切到 HW_DEMO 图层即可;清理时删除该图层内容或调用 erase_layer(layer="HW_DEMO")


局限与注意事项

  • 仅 Windows + AutoCAD:依赖 COM/ActiveX,无法在 macOS/Linux 或非 AutoCAD 环境使用。

  • 需 AutoCAD 运行中:服务启动后通过 GetActiveObject 连接已运行的 AutoCAD 实例;未启动会报错。

  • 单实例:多开 AutoCAD 时可能连到非预期窗口,建议用 connect(doc_name=...) 显式指定。

  • 中文:文字默认使用 HW_CN(宋体 TTF)样式以避免方框乱码。

  • 安全:删除实体、保存、关闭文档等写操作请先确认;本服务只新增实体、不自动保存,便于 Ctrl+Z 撤销。

FAQ

Q:需要联网吗?
A:不需要。连接器完全在本机通过 COM 与已运行的 AutoCAD 通信,不上传你的图纸。

Q:支持 AutoCAD 哪个版本?
A:ActiveX 接口自 R2010 起基本稳定,已在 AutoCAD 2014(19.1s 中文版)验证;更高版本通常也可用。

Q:能画 3D 吗?
A:当前聚焦 2D 制图自动化。3D 可后续扩展。

Q:坐标单位是什么?
A:当前图纸的单位(通常毫米)。角度为弧度。


发布与分享

本项目设计为可发布、可分享:

  • GitHubgit tag v0.1.0 后发布 Release;pyproject.toml 已配置 autocad-mcp 控制台入口,可 uvx autocad-mcp 直接使用。

  • WorkBuddy 技能市场:将本仓库的 SKILL.mdsrc/ 按 WorkBuddy 技能/连接器规范打包上传,即可在「推荐市场」被发现与一键安装。

  • 私有分发:直接把整个文件夹发给同事,pip install -e . 后即可用。

欢迎提 Issue / PR,一起把 AutoCAD 自动化能力补全。

License

MIT © 2026 John Zhang, ZWCAD-2D contributors, 李琦 (liqi8209@qq.com)

author:李琦/liqi(Email: liqi8209@qq.com)

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables natural-language control of AutoCAD LT for automation and headless DXF generation, supporting drawing, entity, layer, block, annotation, P&ID, and system operations via an MCP interface.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI clients like Claude Desktop to control AutoCAD through natural language commands using the Model Context Protocol.
    1
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to draw and manipulate 2D designs in a running AutoCAD instance through MCP tools, exposed via HTTP and a tunnel for cloud clients like ChatGPT and Manus.
    -
  • A
    license
    A
    quality
    C
    maintenance
    MCP server for AutoCAD LT automation and headless DXF generation, exposing tools for drawing, entities, layers, blocks, annotations, P&ID, and view operations via natural language.
    8
    MIT