Skip to main content
Glama

SolidworksMCP

SolidworksMCP 是一个面向生产的 Model Context Protocol 服务器,用于通过 Windows COM API 控制实时 SOLIDWORKS 会话。

这是 alisamsam/Solidworks-MCP 的一个分支,将其从 82 个工具扩展到 143 个工具,新增了工程图、装配体编辑、钣金、制造包导出和文档引用追踪。参见本分支新增内容

当前版本:6.5.31。该版本已通过 SOLIDWORKS 2026 SP2.1 的验收测试,并保留了对 SOLIDWORKS 2025 的兼容性保护。

亮点

  • 原生草图、特征、实体、参考几何、视图、探测和导出操作。

  • 具有检查点、不变量、幂等性、预算和回滚功能的事务性 CAD 计划。

  • 参数化草图,支持命名实体、约束、尺寸、方程式、持久 ID 和自由度分析。

  • 多实体工具,具有显式合并范围、间隙、干涉、边界框和体积验证。

  • 用于轮廓和线条画的确定性光栅到草图流水线,包括 GPU 支持的图像分割、拓扑保持、基元拟合和反向光栅质量门。

  • 原生草图/实体导出和校准几何比较,而非仅限截图的验收。

  • 已验证的活动草图“垂直于”和“缩放至适合”。服务器读取生成的相机矩阵和像素占用率,而不是信任 UI 命令。

  • 端到端工程图文档:图纸、视图、模型注释、手动尺寸、注释、球标、中心标记和 BOM 表。

  • 装配体编辑:组件、配合、阵列、压缩、替换和爆炸视图。

  • 从基础法兰到平板图案 DXF 的钣金,以及一键式制造包,可为整个装配体导出 STEP、DXF 和 PDF。

  • 双向文档搜索和引用追踪,包括跨项目文件夹的“使用处”查找。

  • 结构化诊断、模态对话框预检、范围严格限定的 Modify 看门狗,以及有限的恢复策略。

Related MCP server: solidworks-mcp

本分支新增内容

本仓库是 alisamsam/Solidworks-MCP 的一个分支。上游版本公开了 82 个工具,涵盖草图、实体特征、实体、探测、矢量化以及事务层。本分支将其扩展到 143 个工具,并将测试套件从 155 个扩展到 382 个测试,全部通过。

新增内容遵循上游项目已确立的纪律:不信任任何 COM 返回值。每个新操作都会读回结果状态——注释计数、组件列表、压缩标志、面数、磁盘上的文件——并在模型实际上未显示该更改时报告失败,而不是在 API 声称成功时报告成功。

工程图(17 个工具)

上游完全没有工程图文档支持。本分支覆盖了完整的标注路径:create_new_drawingadd_sheetactivate_sheetlist_sheetsinsert_drawing_viewinsert_standard_viewsinsert_section_viewinsert_detail_viewlist_drawing_viewsset_view_scaleinsert_model_annotationsinsert_bom_tableadd_drawing_dimensioninsert_drawing_noteinsert_balloonsinsert_center_markslist_drawing_annotations

视图和注释通过统计图纸上实际出现的数量来验证;CreateDrawViewFromModelView3InsertModelAnnotations3 都会对从未创建的视图和注释报告成功。

装配体(14 个工具)

上游止步于打开装配体。本分支增加了组件和配合工作:insert_componentlist_componentsadd_matedelete_matelist_matesset_component_fixedcheck_assembly_interferencedelete_componentreplace_componentset_component_suppressionpattern_componentsexplode_assemblyshow_explodedlist_exploded_views

钣金(6 个工具)

钣金是唯一一个交付物不是实体而是平板图案的零件学科——即激光或冲床所消耗的 DXF。create_base_flange 将草图加厚为钣金实体;convert_to_sheet_metal 将现有实体转换为钣金,这是导入几何体必须采用的路径,因为弯曲支架的 STEP 文件不携带弯曲信息;create_edge_flange 无需轮廓草图即可从边缘弯曲法兰;set_flat_pattern 展平或折叠;export_flat_pattern 写入 DXF 或 DWG;get_sheet_metal_info 报告报价或嵌套运行所需的厚度、半径、K 因子和平板图案范围。

ExportFlatPatternView 对平板图案构建失败的零件报告成功,因此导出会对照磁盘上的文件进行验证。平板图案特征通过其 API 类型名称而不是显示名称来查找,因为显示名称是本地化的。

制造包(1 个工具)

export_manufacturing_package 一次调用即可生成车间实际收到的文件夹:每个零件和装配体各一个 STEP 文件,每个钣金零件一个 DXF,每个模型旁边的工程图一个 PDF,以及一个 manifest.json,列出每个文件以及每个零件的材料和重量。它逐个组件地遍历装配体,因此一个二十个零件的机器只需一次调用,而不是六十次。它打开过的文档之后会再次关闭,并恢复最初活动的文档。

文档搜索和引用(3 个工具)

search_documents 按名称片段和类型在文件夹中查找 SolidWorks 文件。list_document_references 报告文档使用了哪些文件,以及这些文件是否仍存在于磁盘上。find_where_used 回答相反的问题——哪些装配体和工程图使用了此零件——SolidWorks 无法直接回答,因为文档记录的是它引用了什么,而不是什么引用了它。反向映射是通过读取文件夹树中每个装配体和工程图的依赖关系来构建的,这之所以可行,是因为 GetDocumentDependencies2 可以在不打开文件的情况下读取文件的引用。

特征(5 个工具)

create_loftcreate_ribapply_draftsimple_holehole_wizard,每个都带有死特征保护:报告成功但未添加任何几何体的特征会被删除,而不是留在特征树中。

配置、属性和参数(15 个工具)

activate_configurationlist_configurationslist_custom_propertiesset_custom_propertydelete_custom_propertyget_materialset_materialget_mass_propertiesget_dimensionset_dimensionadd_equationset_equationdelete_equationlist_equationsrebuild_document

ShowConfiguration2 是已验证的“说谎者”之一:它对从未激活的配置返回成功,因此之后会读回活动配置。

工具之外

  • 工具模式从 server.py 移入按系列分组的 schemas/ 包,这使 server.py 从 3819 行减少到 2300 行。

  • 打包元数据(pyproject.toml)、用于多 GB PyTorch 后端的单独 vision 额外项,以及运行测试套件的 GitHub Actions 工作流。

  • LICENSE 记录了两位版权持有者以及分支更改的内容。

要求

  • Windows 10 或 Windows 11。

  • SOLIDWORKS 2025 或 2026,已安装并获得许可。

  • Python 3.10 或更高版本;Python 3.11 是经过验收测试的运行时。

  • 用于打包线条画检查点的 Git LFS。

  • 强烈建议使用 NVIDIA CUDA 环境进行深度矢量化模式。get_capabilities 报告实际后端状态。

服务器驱动交互式 SOLIDWORKS 进程。它不是无头 CAD 内核,未知的模态对话框必须由人工检查。

克隆和安装

在克隆之前安装 Git LFS,或之后拉取模型对象:

git lfs install
git clone https://github.com/aryesil/SolidworksMCP.git
Set-Location SolidworksMCP
git lfs pull

创建隔离的 Python 环境并安装包:

py -3.11 -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -e .

基础安装涵盖除深度轮廓矢量化之外的所有工具,其 PyTorch 后端位于 vision 额外项中:

python -m pip install -e ".[vision]"

额外项是分开的,因为 CUDA 轮子会为大多数工具永远不会触及的安装增加数 GB 的大小。如果默认轮子与机器的 CUDA 驱动程序不匹配,请先安装适合该机器的 PyTorch 构建;get_capabilities 报告实际活动的后端。

requirements.txt 仍然列出基础依赖项,供不使用包元数据安装的人使用。

MCP 配置

使用虚拟环境的 Python 可执行文件将 MCP 客户端指向仓库入口点:

{
  "mcpServers": {
    "SolidworksMCP": {
      "command": "C:\\path\\to\\SolidworksMCP\\.venv\\Scripts\\python.exe",
      "args": [
        "C:\\path\\to\\SolidworksMCP\\solidworks_mcp_server.py"
      ]
    }
  }
}

启动 SOLIDWORKS,重启或重新连接 MCP 客户端,然后在进行实质性建模操作之前调用 get_capabilitiesget_environment_status

稳定的兼容性标识符

SolidworksMCP 是公共项目和 MCP 握手名称。Python 包仍为 solidworks_mcp,配置的工具命名空间仍为 solidworks,现有工件模式保留其 solidworks-mcp/... 标识符。这些内部名称是兼容性契约,有意不重命名。

操作族

服务器公开小型原生操作和更高级的已验证工作流。重要族包括:

  • 文档和环境:创建/打开/保存/关闭、功能、会话指标、模态状态检查、恢复;

  • 草图:标准平面、平面、精确模型坐标轮廓、基元绘制、参数化草图、尺寸、约束、方程式;

  • 特征:已验证的拉伸/切割、旋转、扫描、圆角、倒角、抽壳、镜像、阵列、参考轴和平面;

  • 实体:可见性、命名、外观、体积、间隙、干涉、多实体插入工作流;

  • 验证:射线/截面探测、草图拓扑、原生几何导出、草图到草图以及校准图像比较、实体轮廓;

  • 矢量化:可选择的轮廓/区域/线条画模式、深度分割、可控近似、CAD 提交和反向光栅验证;

  • 工程图:图纸、模型和标准视图、截面和细节视图、模型注释、手动尺寸、注释、球头、中心标记、BOM 表;

  • 装配体:组件插入和删除、配合、替换、压缩、组件阵列、爆炸视图、干涉检查;

  • 钣金:基础法兰、导入实体的转换、边缘法兰、平板图案状态、DXF/DWG 平板图案导出、钣金参数;

  • 制造输出:一键式包导出 STEP、DXF 和 PDF 以及清单,适用于零件或整个装配体;

  • 磁盘上的文档:按名称和类型搜索文件、带缺失文件检测的传出引用,以及跨文件夹树的“使用在哪里”;

  • 配置和参数:配置、自定义属性、材料、质量属性、尺寸、方程;

  • 编排:事务、声明式 CAD 计划、语义基元、模型图同步、原子导出包。

使用 MCP 工具发现获取权威的实时 schema。工具描述和 get_capabilities 与服务器一起版本化。

安全规则

  • 在未保存文档的第一次修改之前提供绝对 save_path,或使用 allow_unsaved_document=true 明确选择可丢弃的工作。

  • success 视为执行证据。验证拓扑、实体数量、边界框、体积、公差和可读的独立工件。

  • 对多实体切割和凸台使用 scope_bodiesexpected_merge_bodies

  • 不要自动确认未知对话框。只有已识别的、操作范围的尺寸 Modify 对话框才可由看门狗处理。

  • 原生 MCP 工具坐标使用声明的用户单位,通常为毫米。原始 SOLIDWORKS COM 坐标使用米。

  • 不要在草图操作后调用盲目的 Ctrl+8。版本 6.5.31 已应用并验证了稳定的侧/上方向和几何体适配。

矢量化模型

确定性线条艺术检查点位于 solidworks_mcp/models/lineart/ 下,并通过 Git LFS 存储:

  • dexined_biped_v2.pt

  • teed_biped_5.pt

其来源和许可证声明记录在 solidworks_mcp/models/lineart/LICENSES.md 中。如果克隆仅包含小的 LFS 指针文件而非二进制对象,则该克隆不完整;在启动服务器前请运行 git lfs pull

SOLIDWORKS Autotrace/图片到草图是一个交互式 PropertyManager 功能,没有受支持的公共 API 入口点。因此,此服务器使用自己的确定性分割和线条艺术流水线。

配置

默认运行时设置存储在 solidworks_mCP/config.json 中。请将特定于机器或敏感的重写项保存在 config.local.json 中;该文件会被 Git 忽略。

值得注意的默认设置包括:

  • 自动发现 SOLIDWORKS 可执行文件和模板;

  • 以毫米为用户单位;

  • 操作范围的尺寸对话框保护;

  • 有界的事务/运行时限制;

  • 自动检查点目录管理;

  • INFO 级别的文件日志记录。

相对 log_file 值写入 %LOCALAPPDATA%\SolidworksMCP\ 下,而不是写入源代码检出目录。config.json 中的绝对路径仍然受支持。

测试

该仓库包含确定性单元测试和回归测试套件:

python -m unittest discover -s tests -p "test_*.py"

该套件通过 382 项测试。这些测试不能替代对 COM 行为的实时验收:要验证另一个 SOLIDWORKS 主要版本,还应涵盖标准基准面、平面、现有草图激活、视图恢复、特征、事务、矢量化和导出。

项目布局

SolidworksMCP/
|-- solidworks_mcp_server.py       MCP stdio entry point
|-- requirements.txt
|-- LICENSE
|-- solidworks_mcp/
|   |-- server.py                  MCP dispatch and handlers
|   |-- schemas/                   tool schemas, grouped by family
|   |-- tool_registry.py           high-level tool metadata
|   |-- vector_worker.py           isolated scientific worker
|   |-- config.py / config.json
|   |-- constants.py
|   |-- automation/                SOLIDWORKS COM implementation
|   |-- models/lineart/            Git-LFS checkpoints and licenses
|   `-- utils/
`-- tests/
    `-- test_v6.py                 unit and regression suite

运行时日志、缓存、本地客户端设置、检查点、生成的报告、验收工件和手动探针均有意排除在仓库之外。

许可证

该服务器根据 MIT 许可证分发;请参阅 LICENSE。打包的模型声明单独保留在 solidworks_mcp/models/lineart/LICENSES.md 中。

此仓库是 alisamsam/Solidworks-MCP 的分支,原作者为 Samsaam Ali Baig。原始版权声明予以保留,此处所做的修改以相同的 MIT 许可证发布。LICENSE 记录了两位版权持有人,并总结了此分支新增的内容。

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables LLMs to automate SolidWorks (open/save parts, modify dimensions, export STEP) via COM, and optionally generate geometry using build123d code-CAD with PNG previews.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI (e.g., Claude) to control SolidWorks via natural language, automating part creation, sketching, and feature operations through the Model Context Protocol.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for controlling a live SOLIDWORKS session through the Windows COM API, enabling native CAD operations like sketches, features, bodies, views, and exports, plus transactional plans and vectorization.
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to control a running SOLIDWORKS session through its COM API, with tools for sketching, feature creation, assemblies, and visual feedback via screenshots.
    Apache 2.0

View all related MCP servers

Related MCP Connectors

  • Agent-first CAD: editable .kcad.ts source, deterministic review, OpenCASCADE kernel.

  • Eyes and hands on real Windows PCs — observe, click, type via Glasswarp API.

  • Control Unreal Engine to browse assets, import content, and manage levels and sequences. Automate…

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/aryesil/SolidworksMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server