项目简介
SolidWorks MCP 服务器是一个功能强大的后端应用程序,它使AI助手能够通过 Model Context Protocol (MCP) 与 SolidWorks CAD 软件进行深度交互。它不仅能够执行标准的CAD操作(如打开、创建、修改模型和特征),还扩展了功能,包括宏录制与回放、集成SQL驱动的设计表、SolidWorks PDM 配置管理,以及根据LLM指令生成VBA脚本等。通过 JSON-RPC 协议,AI 客户端可以请求服务器托管和管理 CAD 资源,调用各种自动化工具,从而实现更智能、更高效的工程设计工作流程。
主要功能点
- 全面的 SolidWorks 控制:打开、创建、修改和分析 CAD 模型(零件、装配体、工程图)。
- 宏录制与回放:记录用户在 SolidWorks 中的操作,并能够生成可重复使用的宏或导出为 VBA 脚本。
- SQL 驱动的设计表:创建参数化设计,数据可从 SQL 数据库获取,实现设计自动化。
- PDM 集成:管理 SolidWorks PDM 保险库操作、工作流、检入/检出等功能。
- VBA 脚本生成:根据 AI 指令,从丰富的模板库生成生产就绪的 VBA 脚本,涵盖零件建模、装配体自动化、工程图生成、文件及 PDM 操作等100+工具。
- 状态管理:持久化资源状态并支持自动保存,确保数据一致性。
- 资源导向架构:模块化、可扩展的设计模式,便于新增功能和资源类型。
- 智能诊断:提供宏执行诊断工具,帮助排除自动化故障。
安装步骤
-
系统要求:
- Windows 10/11 操作系统
- 已安装并授权的 SolidWorks 2021-2025 版本
- Node.js 20 或更高版本
- Claude Desktop (作为 MCP 客户端)
- 可选:SQL Server 或 PostgreSQL 数据库(用于设计表功能)
- 可选:SolidWorks PDM (用于 PDM 相关操作)
-
安装 SolidWorks MCP 服务器:
- 推荐方式(通过 npm 全局安装):
npm install -g solidworks-mcp-server - 手动安装(从 GitHub 仓库克隆):
git clone https://github.com/vespo92/SolidworksMCP-TS cd SolidworksMCP-TS npm install npm run build npm link # 将服务器链接到全局,以便通过 npx 调用
- 推荐方式(通过 npm 全局安装):
-
配置环境变量(可选但推荐): 在项目根目录创建 '.env' 文件,或通过系统环境变量配置,以定制服务器行为:
- 'SOLIDWORKS_PATH': SolidWorks 安装路径,例如 'C:/Program Files/SOLIDWORKS Corp/SOLIDWORKS'
- 'SOLIDWORKS_VERSION': SolidWorks 版本,例如 '2024'
- 'ENABLE_MACRO_RECORDING': 'true' 或 'false',是否启用宏录制功能
- 'ENABLE_PDM': 'true' 或 'false',是否启用 PDM 集成功能
- 'PDM_VAULT': PDM 保险库名称,例如 'Engineering'
- 'SQL_CONNECTION': 数据库连接字符串,例如 'mssql://localhost:1433/solidworks_db'
- 'STATE_FILE': 资源状态文件的保存路径,例如 '.solidworks-state.json'
- 'LOG_LEVEL': 日志级别,例如 'info', 'debug', 'warn', 'error'
服务器配置(供 MCP 客户端使用)
为了让 MCP 客户端(如 Claude Desktop)能够连接并使用此 SolidWorks MCP 服务器,您需要在客户端的配置中添加服务器信息。
例如,在 Claude Desktop 的配置 JSON 文件中,添加以下 'mcpServers' 部分:
{ "mcpServers": { "solidworks": { "command": "npx", "args": ["solidworks-mcp-server"], "env": { "ENABLE_MACRO_RECORDING": "true", "ENABLE_PDM": "true", "SQL_CONNECTION": "mssql://server:1433/database" } } } }
- 'solidworks': 这是您为 MCP 服务器定义的名称,客户端会通过这个名称引用它。
- 'command': 启动 MCP 服务器的命令。由于服务器通过 'npm install -g' 或 'npm link' 全局可用,因此可以使用 'npx' 来执行。
- 'args': 传递给启动命令的参数。在这里,我们传递 'solidworks-mcp-server' 作为包名。
- 'env': (可选)为 MCP 服务器设置特定的环境变量。这些变量会覆盖 '.env' 文件中的同名配置。例如,'ENABLE_MACRO_RECORDING' 设为 'true' 以启用宏录制,'ENABLE_PDM' 设为 'true' 以启用 PDM 功能,并指定 'SQL_CONNECTION' 用于数据库集成。
配置完成后,请重启您的 MCP 客户端,以便加载新的服务器设置。
基本使用方法
配置并重启 MCP 客户端后,您可以通过自然语言向 AI 助手发出指令,它将调用 SolidWorks MCP 服务器执行相应的操作:
- 打开模型: '"Open the part at C:/Models/example.sldprt"'
- 创建新零件: '"Create a new SolidWorks part"'
- 创建拉伸特征: '"Create an extrusion with a depth of 50mm"'
- 设置尺寸: '"Set the dimension 'D1@Sketch1' to 75mm"'
- 宏录制: '"Start recording a macro called 'CreateBoxFeature'"' '"Create a sketch on the front plane"' '"Add a rectangle 100mm by 50mm"' '"Extrude 25mm"' '"Stop recording and export it to VBA code"'
- 设计表操作: '"Create a design table for a configurable shaft from the SQL database"' '"Refresh the design table 'ShaftConfigurations' from its SQL source"'
- PDM 操作: '"Check in all files in my current SolidWorks assembly to the 'Engineering' PDM vault with the comment 'Initial design submission'"' '"Change the workflow state of 'PartX.sldprt' to 'Released'"'
- VBA 脚本生成: '"Generate VBA to batch export all parts in 'C:/Project/Parts' folder to STEP format"' '"Generate VBA to create an assembly with three instances of 'Bolt.sldprt' patterned linearly"'
请根据您的实际需求,向 AI 助手提供具体且清晰的指令。服务器将尝试通过 SolidWorks API 执行这些指令。
信息
分类
桌面与硬件