CAD-MCP Server:通过自然语言指令控制CAD进行绘图
CAD-MCP 是什么?
CAD-MCP是一个用于控制 CAD 软件进行绘图操作的服务项目,它结合自然语言处理和CAD 自动化技术,用户通过简单的文本命令创建和修改 CAD 图纸,而不需要手动来操作CAD软件界面。
CAD-MCP功能特点
CAD 控制功能
多 CAD 软件支持:支持主流 CAD 软件,如 AutoCAD、GstarCAD(GCAD)和 ZWCAD。
基本绘图功能:支持绘制直线、圆、弧、矩形、折线、添加文本、图案填充和尺寸标注等。
图层管理:支持创建和切换图层。
绘图保存:可以将当前绘图保存为 DWG 文件。
自然语言处理功能
命令解析:将自然语言指令解析为 CAD 操作参数。
颜色识别:从文本中提取颜色信息并应用到绘图对象。
形状关键字映射:支持识别各种形状描述词。
动作关键字映射:识别各种绘图和编辑动作。
CAD-MCP安装使用
安装要求
1. 依赖库
pywin32>=228 # Windows COM接口支持 mcp>=0.1.0 # 模型控制协议库 pydantic>=2.0.0 # 数据验证 typing>=3.7.4.3 # 类型注解支持
2. 系统要求
Windows 操作系统
安装了 CAD 软件(AutoCAD、GstarCAD 或 ZWCAD)
配置
配置文件 src/config.json 包含以下主要设置:
{
"server": { "name": "CAD MCP Server", "version": "1.0.0" }, "cad": { "type": "AutoCAD", "startup_wait_time": 20, "command_delay": 0.5 }, "output": { "directory": "./output", "default_filename": "cad_drawing.dwg" } }
使用方法
启动服务
python src/server.py Claude Desktop & Windsurf
在 claude_desktop_config.json 中添加以下配置:
{ "mcpServers": { "CAD": { "command": "python", "args": [ # 你的路径,例如: "C:\\cad-mcp\\src\\server.py" "~/server.py" ] } } }
示例代码
以下是一个绘制直线的示例代码:
python """绘制直线""" def draw_line(self, start_point, end_point, layer=None, color=None, lineweight=None): """绘制直线""" if not self.controller.is_running(): self.start_cad() # 使用当前图层或指定图层 current_layer = layer or self.drawing_state["current_layer"] result = self.controller.draw_line(start_point, end_point, current_layer, color, lineweight) if result: self.drawing_state["entities"].append({ "type": "line", "start": start_point, "end": end_point, "layer": current_layer, "color": color, "lineweight": lineweight }) self.drawing_state["last_command"] = f"绘制直线从{start_point}到{end_point}" self.drawing_state["last_result"] = "成功" else: self.drawing_state["last_result"] = "失败" return result
CAD-MCP Server 支持多种主流 CAD 软件,包括 AutoCAD、GstarCAD 和 ZWCAD,提供基本绘图功能如画线、画圆、添加文本等,大大地提升了CAD绘图的效率。
Github:https://github.com/daobataotie/CAD-MCP