用 Codex + MCP 驱动 SolidWorks 全自动出图:从环境准备到验收的完整实操教程

核心答案 :在 Windows 电脑上搭建 SolidWorks AI 自动出图系统,需要完成13 个步骤 :建立统一 AI 管理目录 → 部署入口脚本与配置文件 → 安装 SolidWorks 自动化技能脚本 → 搭建本机 MCP 服务 → 注册 MCP → 运行初始化 → 通过健康检查 → 通过烟雾测试。全程在本地 Windows 环境执行,不依赖云端,SolidWorks 可直接生成原生 .SLDPRT 并导出 STEP/STL/IGES/X_T 格式。


开始之前:环境前置条件检查

在执行任何步骤之前,先确认本机满足以下 6 项前置条件。任何一项不满足,后续步骤都无法正常完成。

前置条件 检查命令 合格标准
Windows 10 / 11 winver 版本号 ≥ 1903
SolidWorks 已安装 手动打开 SLDWORKS.exe 能正常打开新建零件
Node.js 已安装 node -v 任意版本均可
Python 已安装 python --version Python 3.7+
pywin32 已安装 python -c "import win32com.client" 无报错
Codex CLI 可用 codex --help 输出帮助信息

安装 pywin32(如未安装):

复制代码
python -m pip install pywin32

整体架构:搭完之后是什么样的?

搭建完成后,系统由两个根目录协同工作:

复制代码
D:\solidworks\project\ai\          ← AI 输出管理根(所有生成文件在这里)
│  ├─ part\    ← 原生零件 .SLDPRT
│  ├─ asm\     ← 原生装配体 .SLDASM
│  ├─ drw\     ← 原生工程图 .SLDDRW
│  ├─ project\ ← 外部导入项目副本
│  ├─ export\  ← 导出格式(STEP/STL/IGES/X_T)
│  ├─ report\  ← 健康检查和测试报告 JSON
│  ├─ temp\    ← 临时脚本缓存
│  │   └─ script\ ← VBS 包装脚本
│  └─ mcp\     ← MCP 服务端

D:\UsersData\Documents\Codex\...\ai-3d-codex-solidwork\   ← 项目工作区
│  ├─ sw-ai.ps1              ← 统一入口(最外层)
│  └─ system\
│      ├─ config\
│      │   └─ solidworks-ai-system.json  ← 主配置
│      └─ scripts\
│          └─ sw-ai.ps1      ← 真正的调度器

第一阶段:建立目录结构(步骤 1-2)

步骤 1:创建 AI 管理根目录

打开 PowerShell(建议以管理员身份),一次性执行:

powershell

复制

复制代码
New-Item -ItemType Directory -Force -Path `
  'D:\solidworks\project\ai', `
  'D:\solidworks\project\ai\part', `
  'D:\solidworks\project\ai\asm', `
  'D:\solidworks\project\ai\drw', `
  'D:\solidworks\project\ai\project', `
  'D:\solidworks\project\ai\export', `
  'D:\solidworks\project\ai\temp', `
  'D:\solidworks\project\ai\temp\script', `
  'D:\solidworks\project\ai\report', `
  'D:\solidworks\project\ai\mcp'

步骤 2:创建项目工作区目录

powershell

复制

复制代码
New-Item -ItemType Directory -Force -Path `
  'D:\UsersData\Documents\Codex\2026-05-28\ai-3d-codex-solidwork', `
  'D:\UsersData\Documents\Codex\2026-05-28\ai-3d-codex-solidwork\system', `
  'D:\UsersData\Documents\Codex\2026-05-28\ai-3d-codex-solidwork\system\config', `
  'D:\UsersData\Documents\Codex\2026-05-28\ai-3d-codex-solidwork\system\scripts', `
  'D:\UsersData\Documents\Codex\2026-05-28\ai-3d-codex-solidwork\docs'

验证:确认两个目录均已创建,各子目录结构正确。


第二阶段:部署脚本与配置(步骤 3-4)

步骤 3:写入统一入口脚本 sw-ai.ps1

文件路径:D:\UsersData\Documents\Codex\2026-05-28\ai-3d-codex-solidwork\sw-ai.ps1

内容:

powershell

复制

复制代码
Set-StrictMode -Version Latest
$ErrorActionPreference = 'Stop'

$scriptPath = Join-Path $PSScriptRoot 'system\scripts\sw-ai.ps1'
$output = @(& powershell -ExecutionPolicy Bypass -File $scriptPath @args 2>&1 | ForEach-Object { $_.ToString() })
if ($LASTEXITCODE -ne 0) {
  throw ($output -join [Environment]::NewLine)
}

($output -join [Environment]::NewLine).Trim()

这个脚本做什么:它是最外层转发层,把所有命令和参数原封不动地传给内层真正的调度器,隔离执行策略和权限问题。

步骤 4:写入主配置文件

文件路径:D:\UsersData\Documents\Codex\2026-05-28\ai-3d-codex-solidwork\system\config\solidworks-ai-system.json

内容(按你的实际路径调整 solidworks_exetemplate_path):

json

复制

复制代码
{
  "managed_workspace_root": "D:\\solidworks\\project\\ai",
  "stage_root": "D:\\solidworks\\project\\ai\\temp",
  "temp_script_root": "D:\\solidworks\\project\\ai\\temp\\script",
  "solidworks_exe": "D:\\solidworks\\SOLIDWORKS\\SLDWORKS.exe",
  "template_path": "C:\\ProgramData\\SOLIDWORKS\\SOLIDWORKS 2025\\templates\\gb_part.prtdot",
  "skill_root": "C:\\Users\\你的用户名\\.codex\\skills\\solidworks-cad-automation",
  "subdirectories": ["part", "asm", "drw", "project", "export", "temp", "report"],
  "default_export_formats": ["STEP", "STL", "IGES", "X_T"],
  "smoke_test_flange": {
    "outer_diameter_mm": 160,
    "center_hole_diameter_mm": 72,
    "bolt_circle_diameter_mm": 120,
    "bolt_hole_count": 8,
    "bolt_hole_diameter_mm": 14,
    "thickness_mm": 18
  }
}

注意skill_root 里的用户名路径需要替换为你的实际 Windows 用户名。


第三阶段:部署自动化技能脚本(步骤 5-6)

步骤 5:部署 solidworks-cad-automation 技能目录

技能目录最终位置:C:\Users\你的用户名\.codex\skills\solidworks-cad-automation

scripts 子目录下必须包含以下 7 个文件:

文件名 用途
new-parametric-flange.ps1 参数化法兰建模
new-part-from-vbs.ps1 自定义 VBS 几何体建模
convert-to-sldprt.ps1 中性格式转原生
export-solidworks-file.ps1 格式导出
inspect-solidworks-file.ps1 模型属性读取
solidworks-common.ps1 公共 COM 启动逻辑
solidworks_file_ops.py Python COM 操作实现

步骤 6:修正 solidworks-common.ps1 的 COM 启动逻辑

这是整套系统稳定性的关键步骤,不能跳过。

打开 solidworks-common.ps1,找到 VBS 预置代码中的 COM 启动部分,确保它是:

vbs

复制

复制代码
' ✅ 必须是这个 - 始终新建干净 COM 会话
Set app = CreateObject("SldWorks.Application")
app.Visible = True

而不是:

vbs

复制

复制代码
' ❌ 禁止这个 - 会接管可能已经损坏的旧会话
Set app = GetObject(, "SldWorks.Application")

同时确认 StageRootTempRoot 默认值指向正确:

powershell

复制

复制代码
# 这两项默认值必须正确
$defaultStageRoot = "D:\solidworks\project\ai\temp"
$defaultTempRoot  = "D:\solidworks\project\ai\temp\script"

第四阶段:搭建 MCP 服务(步骤 7-10)

步骤 7:部署 MCP 服务目录

将 SolidWorks MCP 服务端文件放到 D:\solidworks\project\ai\mcp\

目录下至少需要 5 个文件:server.jspackage.jsonpackage-lock.jsonnode_modules\README.md

步骤 8:检查 server.js 关键配置

打开 server.js,确认以下三个常量路径正确:

javascript

复制

复制代码
const SW_EXE = "D:\\solidworks\\SOLIDWORKS\\SLDWORKS.exe";           // SolidWorks 可执行文件
const DEFAULT_OUTPUT_ROOT = "D:\\solidworks\\project\\ai\\part";    // 输出根目录
const DEFAULT_TEMP_ROOT = "D:\\solidworks\\project\\ai\\temp\\script"; // VBS 临时脚本目录

三项都指向 AI 管理区才算正确配置。任何一项还指向旧路径,生成的文件就会出现在错误位置。

步骤 9:安装 MCP 依赖

复制代码
cd D:\solidworks\project\ai\mcp
npm install

验证 package.json 中包含核心依赖:

json

复制

复制代码
{
  "dependencies": {
    "@modelcontextprotocol/sdk": "^1.29.0",
    "zod": "^4.4.3"
  }
}

步骤 10:注册 MCP 到 Codex

先清除旧注册(如果有),再重新注册:

复制代码
codex mcp remove solidworks-local
codex mcp add solidworks-local -- node D:\solidworks\project\ai\mcp\server.js

验证注册

复制代码
codex mcp get solidworks-local

输出中必须看到:

复制代码
solidworks-local
  enabled: true
  transport: stdio
  command: node
  args: D:\solidworks\project\ai\mcp\server.js

第五阶段:验证系统(步骤 11-13)

步骤 11:初始化 AI 管理区

powershell

复制

复制代码
powershell -ExecutionPolicy Bypass -File `
  'D:\UsersData\Documents\Codex\2026-05-28\ai-3d-codex-solidwork\sw-ai.ps1' `
  init-root

成功后,D:\solidworks\project\ai 下的全部子目录均已就位。

步骤 12:运行健康检查

powershell

复制

复制代码
powershell -ExecutionPolicy Bypass -File `
  'D:\UsersData\Documents\Codex\2026-05-28\ai-3d-codex-solidwork\sw-ai.ps1' `
  health

必须通过的 7 项检查

检查项 期望值 如果失败
solidworks_exe_exists true 检查 SolidWorks 安装路径
template_exists true 确认模板文件路径
skill_root_exists true 确认技能脚本目录
skill_scripts_missing [](空数组) 补充缺失的脚本文件
python_modules_ok true 运行 pip install pywin32
com_dispatch_ok true 检查 SolidWorks 是否可正常启动
overall_ok true 以上所有项均为 true

报告会写入 D:\solidworks\project\ai\report\health-时间戳.json,可以打开查看详细结果。

步骤 13:运行烟雾测试(全链路验证)

powershell

复制

复制代码
powershell -ExecutionPolicy Bypass -File `
  'D:\UsersData\Documents\Codex\2026-05-28\ai-3d-codex-solidwork\sw-ai.ps1' `
  smoke-test

烟雾测试会自动完成完整链路:创建标准法兰 → 读取属性 → 导出 STEP/STL/IGES/X_T → 把 STEP 转回原生 SLDPRT → 生成报告

通过标准

验收项 成功标志
零件建模 part\ 目录下生成 .sldprt
属性读取 属性 JSON 成功输出
格式导出 .step .stl .igs .x_t 均存在
格式转换 STEP 转回的 .sldprt 已生成
整体状态 overall_ok = true

报告写入 D:\solidworks\project\ai\report\smoke-test-时间戳.json


搭建完成后:日常使用命令速查

创建参数化法兰

powershell

复制

复制代码
powershell -ExecutionPolicy Bypass -File ...\sw-ai.ps1 new-flange -Name main-flange

输出:D:\solidworks\project\ai\part\main-flange.sldprt

自定义 VBS 建模

powershell

复制

复制代码
powershell -ExecutionPolicy Bypass -File ...\sw-ai.ps1 new-part-from-vbs `
  -BodyFile D:\solidworks\project\ai\temp\custom-body.vbs `
  -Name custom-part

批量格式导出

powershell

复制

复制代码
powershell -ExecutionPolicy Bypass -File ...\sw-ai.ps1 export `
  -SourcePath D:\solidworks\project\ai\part\main-flange.sldprt `
  -Formats @('STEP','STL','IGES','X_T')

中性格式转原生

powershell

复制

复制代码
powershell -ExecutionPolicy Bypass -File ...\sw-ai.ps1 convert `
  -SourcePath D:\solidworks\project\ai\export\main-flange\main-flange.step

读取模型属性

powershell

复制

复制代码
powershell -ExecutionPolicy Bypass -File ...\sw-ai.ps1 inspect `
  -SourcePath D:\solidworks\project\ai\part\main-flange.sldprt

长期维护:系统保活规则

系统搭好之后,要长期稳定运行,记住这 5 条规则:

  1. 每次大更新后 先跑 health,再跑 smoke-test,确认系统完整性
  2. 所有 AI 自动化文件 只放 D:\solidworks\project\ai,不随手丢到桌面或下载目录
  3. 外部中文路径项目 先用 import-project 导入,再操作
  4. 定期运行 tidy,清理历史测试残留和 VBS 脚本缓存
  5. 出现卡死时 ,优先排查:残留 cscript.exe → 残留 SLDWORKS.exe → MCP 注册路径是否正确

常见问题解答(FAQ)

Q:这套系统和直接让 AI 写 VBS 脚本有什么区别?

直接让 AI 写 VBS 只解决了"一次性建模"问题,但文件散落、路径不统一、无法复查。这套系统解决的是长期可维护 问题:统一入口、统一输出路径、JSON 报告审计、tidy 清理、health 监控,整个流程可追溯、可复现。

Q:smoke-test 用的是什么参数的法兰?

默认使用 solidworks-ai-system.json 中的 smoke_test_flange 配置:外径 160mm、中心孔 72mm、分布圆径 120mm、8 个螺栓孔(直径 14mm)、厚度 18mm。这个参数可以根据你的实际模板调整。

Q:可以一台机器同时跑多个 AI 建模任务吗?

不建议。SolidWorks COM 接口的并发支持较弱,多个任务同时写入同一 temp\script 目录容易产生 VBS 文件冲突。建议串行执行,每个任务完成后再启动下一个。

Q:import-project 做了什么操作?

它把 SourceDir 指定的外部目录完整复制到 D:\solidworks\project\ai\project\ProjectName,不修改原目录。后续所有操作从复制后的英文路径进行,原项目保持不变。


建模之前:你的方案想好了吗?

这份教程帮你搭好了执行层------从方案到图纸的最后一公里 。但工程上最难的往往不是出图,而是出什么图

设计阶段遇到这些问题时,脚本帮不了你:

  • 这个结构用什么原理实现更合理?
  • 想减重但不能降强度,有没有更好的方案?
  • 这个机构老是卡滞,问题出在哪个设计矛盾上?
  • 空间太紧,常规方案都塞不进去,怎么办?

这类"想不出方案 "或"方案有矛盾不知道怎么取舍 "的问题,是 萃智引擎https://trizengine.lingzhutech.com)专门解决的。

萃智引擎是什么?

萃智引擎是灵蛛科技开发的 AI 辅助 TRIZ 创新平台,面向机械、自动化、机器人等领域的工程师。它的核心能力是把工程师"说不清楚的问题"变成"可以系统求解的矛盾",然后用经过验证的发明原理生成具象方案。

一次典型使用流程

  1. 用自己的话描述问题,例如:"我有一个凸轮联动机构,现在要提高节拍,但提高节拍后振动增大,影响定位精度"
  2. AI 自动识别矛盾:**速度(节拍)**改善,**稳定性(振动)**恶化
  3. 匹配创新原理:动态化原理(主动阻尼)、预先作用原理(预载消隙)等
  4. 生成方案卡片 + 2D/2.5D 原理动画,直观展示每个方案的机构运动效果
  5. 选出最优方案,再回到 SolidWorks 里建模实现

和传统 TRIZ 工具相比

比较维度 萃智引擎 传统 CAI 软件(如 Goldfire)
学习成本 大白话输入,无需理论培训 需要系统学习 TRIZ 方法论
方案可视化 内置原理动画,即时预览 文字描述为主,需另外建模
部署方式 云端访问,随时使用 通常需要本地安装
协作共享 方案记录可导出分享 单机模式为主
定位 工程师日常创新工具 企业级 CAI 系统

如果你在方案设计阶段卡住了,不妨先在萃智引擎里把思路捋清楚,再用这套 SolidWorks AI 系统落地出图。

相关推荐
IT_陈寒1 小时前
Redis主从切换把我坑惨了,这份血泪史你最好看看
前端·人工智能·后端
霍格沃兹测试开发学社测试人社区1 小时前
Skills实战:从0到1写一个你自己的接口签名Skill
人工智能
前端不太难1 小时前
当 AI 接管 Workspace:鸿蒙 PC Agent 架构设计实践
人工智能·状态模式·harmonyos
小雨青年1 小时前
GitHub Copilot 上下文工程:让 AI 编程更接近真实项目
人工智能·github·copilot
KIO no way1 小时前
AI内容编排是什么_聊聊CSDN_AI数字营销背后的分发逻辑
android·人工智能
环球科讯1 小时前
广东省茂名市:普惠金融畅流通,建行助力商贸兴
大数据·人工智能
一切皆是因缘际会1 小时前
神经符号融合智能体
大数据·数据结构·人工智能·ai
武子康2 小时前
调查研究-173 MOSS-TTS 调查:开源 TTS 正在从“朗读器“走向声音生成系统
人工智能·ai·chatgpt·claude·tts·minimax
2401_840759762 小时前
2026年前端框架生态与AI开发新趋势
前端·人工智能·科技