mcpField
M
mcp-server-solidworks

mcp-server-solidworks

本地服务
github.com/eyfel媒体与设计4363 周前更新

关于 mcp-server-solidworks

SolidPilot(仓库名 mcp-server-solidworks)是一个 MCP 服务,让 AI 模型在特征层面操作 SolidWorks,而非逐个调用 API 方法。它将用户意图转换为与 CAD 无关的 Feature Graph IR,再由确定性编译器降级为 SolidWorks 操作。目标版本为 SolidWorks 2026 SP3。

主要功能

  1. 01基于特征意图的 CAD 操作抽象
  2. 02与 CAD 无关的 Feature Graph IR
  3. 03确定性编译器生成有序 SolidWorks 操作
  4. 04从 DXF/DWG 二维图纸重建实体零件
  5. 05通过体积与拓扑对比验证结果

适用场景

  1. 01根据 DXF 或 DWG 图纸重建 SolidWorks 零件
  2. 02通过 rebuild_from_ir 复现已有零件或装配体
  3. 03让 AI 客户端以较少的工具调用完成建模

MCP 相关

该项目是一个 MCP 服务,低层建模工具及 rebuild_from_ir 等工具供 MCP 客户端调用,配方说明以资源形式提供;MCP 位于适配器层,其他层不依赖具体客户端。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

SolidPilot

面向 SolidWorks 的 AI 驱动 CAD 自动化——一个 MCP(Model Context Protocol)服务。

SolidPilot 演示

SolidPilot 让 AI 模型能够在 CAD 特征层级上使用 SolidWorks。我们的目标是让模型从“我正在实现哪种 CAD 设计意图?”的角度进行推理,而不是思考“我应该调用哪个 API 方法?”。设计意图会转换为与 CAD 无关的中间表示,再由确定性编译器将该表示转换为具体的 SolidWorks 操作。

SolidPilot 并非仅适用于 Claude 的插件;它是 SolidWorks 与 AI 之间的通用桥梁。MCP 是开放标准,因此任何支持 MCP 的 AI 客户端都可以连接——除了 Claude,OpenClaw、基于 OpenAI 的 Agent 和本地大模型也都是目标对象。这种可扩展性 从一开始就融入了架构设计:执行层和规划层无需知道调用它们的是哪个客户端;每个客户端只需一个轻量适配器,即可复用共享的桥接核心。adapters/claude/ 是当前实现;支持新的 AI 客户端只需添加一个新适配器。

仓库:mcp-server-solidworks · 公共名称:SolidPilot · 目标版本:SolidWorks 2026 SP3


核心理念

SolidWorks API 提供了数千种方法。将每一种方法都作为独立的“工具”提供给 AI,会导致上下文大小和令牌成本激增——这是阻碍类似项目发展的经济问题。

SolidPilot 通过 提高抽象层级解决这个问题:

  • AI 在 特征层级表达设计意图(例如,“在顶面打一个孔”)。
  • 该设计意图以与 CAD 无关的 特征图 IR表示。
  • 确定性 编译器将 IR 转换为有序的、具体的 SolidWorks 操作。
  • 因此,一个特征会映射到许多底层操作,而每个请求只需调用一次模型即可。

由于 IR 是整个流程的骨干,同一套机制也可以 反向运行:二维工程图是以二维方式表达的设计意图,因此可以读入同一 IR 并据此构建模型。

从二维工程图文件到实体零件

将 .DXF 或 .DWG 文件交给 SolidPilot——这类文件通常由供应商或客户直接发送,且不包含任何模型——它就能重建零件:

drawing.dwg → analyze_drawing → (draw dialect: views, edge classes, chained contours,
              true-valued dimensions, bend notes) → Feature Graph IR → compiler → SolidWorks

读取器会判断工程图支持哪一种处理方式。当零件所需的每项决策都 由工程图本身明确确定 时——目前适用于钣金展开图——读取器会自行将整个零件转换为 IR,并由 analyze_drawing(mode='build') 一次调用完成构建。当工程图需要真正的工程解读(机械加工零件的常见情况)时,读取器会指出这一点并交出结构化分析结果;模型会根据版本化规则集(recipe://usage/reverse 资源)对其进行解读,并通过 submit_feature_graph 构建零件。

无论采用哪种方式,结果都会经过校验,而非仅凭假设:构建前根据工程图自身的尺寸计算预期体积,构建后再读取实际体积。截至目前,已通过这种方式重建了九张真实工程图——四张内部样例(其中两张为钣金件)以及五张生产制造图纸(A4/A3/A1,比例从 1:1 到 1:10,采用三种不同的标题栏模板);每张图纸都通过其标题栏中的重量数据校验,误差在 0.02% 以内,或与原始零件的拓扑完全一致。


架构

flowchart TD
    U(["User + AI client<br/>Claude · OpenClaw · OpenAI · local LLM"])

    subgraph ADAPT["adapters/* — MCP bridge · MCP BOUNDARY = top"]
        LOW["38 low-level tools<br/>sketch · extrude · sheet-metal · drawing · assembly · analyze"]
        RIR["rebuild_from_ir · save_analysis · compare_parts/assemblies"]
        SFG["submit_feature_graph<br/>forward single tool"]
    end

    IR["Feature Graph IR<br/>feature-graph.schema.json<br/>(cad-planner · CAD-neutral)"]

    subgraph COMP["compiler/solidworks — deterministic compiler · no LLM"]
        CO["pycompiler<br/>lowering + reference resolver (geometric anchors v0)"]
    end

    subgraph EXE["execution/solidworks — C# .NET 4.8 · the ONLY COM-touching layer"]
        EX["Execution<br/>idempotency · state_version"]
    end

    SW(["SolidWorks · COM"])

    %% Working today (thick)
    U == "MCP: low-level tools (primary today)" ==> LOW
    LOW == "REST" ==> EX
    U == "MCP: rebuild_from_ir (reverse round-trip — WORKS)" ==> RIR
    IR ==> CO
    RIR == "REST" ==> CO
    CO == "REST" ==> EX
    EX == "COM" ==> SW

    %% Reverse discovery step: read an existing part → propose an IR
    EX -. "analyze_model / analyze_drawing (DXF/DWG)" .-> IR

    %% Planned forward collapse (dashed)
    IR -. "forward: submit_feature_graph" .-> SFG
    SFG -. "REST" .-> CO

按线条样式阅读此图:粗线表示当前可用,虚线表示计划中。目前有两个 MCP 入口可用——底层工具(当前的主要路径)以及 rebuild_from_ir,后者会调用真实的确定性编译器,根据 Feature Graph IR 重建零件或装配体。点状反向箭头表示发现步骤:analyze_model/analyze_drawing 会读取现有零件,以便为其提出 IR。唯一的虚线(仍在计划中)部分是正向合并——一个单独的 submit_feature_graph 工具,用于替代从头开始构建时的底层接口;它使用同一个编译器。

系统分为四层:

层目录语言职责
规划器 / 意图cad-planner/AI 模型 + IR 架构将用户意图转换为与 CAD 无关的 Feature Graph IR。不接触 COM,也不生成原始工具调用。
编译器compiler/solidworks/确定性(无 LLM)将 IR 降级为有序的工具调用;根据实时几何状态解析语义引用(例如 top_face、center)。
执行execution/solidworks/C# (.NET Framework 4.8)唯一接触 SolidWorks COM API 的层。CAD 状态的唯一事实来源。
适配器adapters/claude/Python (MCP SDK v2)MCP 协议桥接层。MCP 边界位于系统顶部。

**MCP 位于顶部:**它是 AI 客户端与系统交互的边界,而非内部传输层。IR 以下的所有部分都是确定性的,并通过纯 REST 通信。

adapters/ 层针对特定提供方,可随时替换。执行层和规划器层都不知道由哪个客户端发起调用,因此要添加新的 AI 客户端(OpenClaw、OpenAI、本地 LLM 等),只需编写新的适配器——IR、编译器和执行层都保持不变。

当前状态与目标状态:Feature Graph IR 和确定性编译器如今已经实现并可运行——编译器(compiler/solidworks/pycompiler,包括降级和 v0 参考解析器)已端到端地根据 IR 重建了真实生产零件,并达到 verified 匹配状态(参见“项目状态”)。目前通过 rebuild_from_ir 工具(反向/重建方向)调用它。接下来要实现的是正向合并:用单个 submit_feature_graph 工具取代底层接口,以便从头开始构建;以及一个能够在编辑后仍正常工作的持久化参考解析器(这是成败关键模块)。在此之前,底层 MCP 工具仍是构建的主要路径。


工具列表

系统目前提供 47 个工具用于执行操作,以及 13 个 MCP 资源用于读取——配方通过 get_recipe(section) 和 recipe://usage/* 两种方式提供,因为 MCP 资源属于客户端的操作空间,并非所有宿主都允许模型访问资源。契约测试确保这两种接口都符合预期:适配器符合执行契约,且适配器提及的每个资源 URI 都已实际注册(参见 CONTRIBUTING.md)。大多数工具用于底层 CAD 操作;少数工具(save_analysis、rebuild_from_ir、submit_feature_graph、compare_parts、compare_assemblies)用于驱动下文所述的分析/IR 往返流程。所有长度单位均为米(SolidWorks 内部单位)。

资源承载规则集和契约,而非行为:recipe://usage/index 加上每个规则部分对应的静态 recipe://usage/<section>,以及 schema://feature-graph 和 schema://analysis-artifact。这种拆分是有意为之——无论是否使用,工具描述都会在每一轮中产生开销,而资源正文只在读取时产生开销,因此近乎静态的参考资料应放在资源一侧。

文档与生命周期
  • ensure_ready — 通过 COM 启动 SolidWorks;如果其已关闭,则连接到 SolidWorks(不会打开文档)。
  • open_new_part — 打开一个新的零件文档。
  • open_document — 从磁盘打开现有文件(原生格式 .sldprt/.sldasm/.slddrw;翻译器可用时,通过 3D Interconnect 导入 .ipt/.CATPart/STEP/IGES,否则返回明确的 OPEN_FAILED)。
  • activate_document — 在已打开的文档之间切换。
  • save_document — 将零件或工程图保存到磁盘。
  • close_document — 关闭文档。
草图
  • create_sketch — 在基准面或选定的面上开始绘制草图。
  • edit_sketch — 重新打开现有草图进行编辑。
  • add_sketch_entity — 添加草图实体:直线、圆、圆弧、中心点圆弧、椭圆、样条曲线、矩形、圆角、倒角。
  • add_sketch_constraint — 添加草图关系(水平、重合等)。
  • add_dimension — 为草图添加尺寸。
特征与实体建模
  • extrude_feature — 凸台、切除、旋转、扫描、放样。
  • add_edge_feature — 对实体边添加圆角或倒角(倒角:任意角度的距离-角度,或距离-距离)。
  • create_rib — 根据开放草图轮廓创建筋特征。
  • add_reference_geometry — 参考平面、轴或点。
  • create_pattern — 线性或圆周阵列。
  • sheet_metal_feature — 钣金:base_flange、edge_flange(包括自定义轮廓法兰)、sketched_bend、flat_pattern。
编辑
  • modify_dimension — 更改命名尺寸的值(用于创建变体)。
  • edit_feature — 压缩、解除压缩、删除或重命名特征。
材料
  • set_part_material — 为零件指定材料。
分析与查询
  • analyze_model — geometry、mass_properties、bodies(多实体零件的逐实体指纹)、features(紧凑的特征级建模方案)、edges、faces、sketch(按需获取单个草图的精确线段)以及 feature_map(逐特征记录消耗/创建的拓扑,是引用解析器锚点的来源)模式。
  • get_selection — 读取用户在 SolidWorks GUI 中选中的几何体,并将其映射到分析索引。
  • verify_state — 返回当前状态和特征树。
装配体
  • open_new_assembly — 打开一个新的空白装配体文档。
  • insert_component — 将零件文件插入为组件:指定插入点或包含 13 个数字的完整变换,并设为固定或浮动。
  • add_mate — 使用稳健的基于索引的实体选择添加配合(重合、同心、平行、垂直、相切、距离、角度、锁定)。
  • analyze_assembly — 读取组件(按树顺序列出完整变换,包括跨嵌套层级展开的叶节点视图)、配合(按创建顺序列出、使用不受区域设置影响的枚举类型及实体锚点),或单个组件的面/边列表。
  • save_body_as_part — 将多实体零件中的一个实体提取为独立零件文件(用于展开装配体 STEP 导入内容)。
  • compare_assemblies — 客观比较装配体差异(组件集合、每个组件的变换,精度达 ≤1 µm、配合数量与类型、质量属性),并给出 verified 判定。
分析流水线与 IR 往返

这些工具实现了逆向工程循环——“由大模型提出方案,由往返验证作出判断”——通过 CAD 中立的 Feature Graph IR 复现现有零件,并客观验证结果。

  • IR 生成说明以 MCP 资源形式提供,而非工具(自 2026-07-30 起):recipe://usage/index 为每个规则章节(映射/规范化/正向/反向/验证/……)编入索引,索引项为 recipe://usage/<section>;schema://feature-graph 和 schema://analysis-artifact 则提供两份契约。模型会在编写 IR 前读取这些内容。它们近乎静态,对每位调用者都相同,并带有 ttlMs/cacheScope 新鲜度提示——这正是它们作为资源的原因:已弃用的 get_recipe 工具每轮都会占用工具列表约 2.4 KB,无论是否读取。
  • save_analysis — 为零件或装配体文件编写分析产物(特征方案 / 零部件与配合树、驱动参数,以及可选的 Feature Graph IR 块)到 <folder>/.solidpilot/。
  • rebuild_from_ir — IR 的反向入口:将产物中的 IR 块交由确定性编译器,在新的文档中重建零件——或装配体;如果源文件在产物生成后发生变化,则发出警告(source_stale)。
  • submit_feature_graph — IR 的正向入口:通过同一编译器,根据模型直接提供的 Feature Graph(设计意图,没有可供复制的原始对象)构建零件或装配体——两个入口,一个编译器。
  • compare_parts — 客观对比两个零件(拓扑、体积、面积、质心),并给出项目的 verified 判定(拓扑完全一致 且 |ΔV| ≤ 1% 且 |ΔA| ≤ 1%)。
绘图

绘图工具是在最初的零件建模工具集之后添加的,如今已成为一项相当完善、但仍在持续成熟的功能。它们足以将模型转化为带尺寸的多视图工程图,也能读取工程图以进行逆向工程。

  • create_drawing — 创建工程图文档(A3 图纸)。
  • add_drawing_view — 添加模型视图:front、top、right、isometric、back、bottom、left;按照制图惯例,正投影视图默认采用“可见隐藏线”显示方式(可通过 display_mode 覆盖)。
  • add_flat_pattern_view — 添加钣金展开图视图(带有折弯线和折弯注释的展开毛坯);这是详述钣金零件的正确标准方式。
  • auto_dimension_drawing — 将模型的驱动尺寸传递到视图中(即“插入模型项目”自动化),这是比按坐标放置尺寸更可靠的替代方案。
  • auto_center_marks — 自动为每个孔/槽添加中心标记和中心线。
  • add_hole_callout — 在孔边缘添加孔标注。
  • add_drawing_dimension — 按图纸坐标添加单个尺寸。
  • add_section_view — 沿现有边或绘制的剖切线创建剖视图;这是展示并标注内部/盲特征的标准方式(每个不同的内部深度轴创建一个剖视图)。
  • analyze_drawing — 工程图 → 零件前端:读取 2D 技术工程图文件(.DXF 或 .DWG),并据此构建零件,或将证据交由后续步骤构建。系统会自动将 .DWG 转换为 DXF。可提取的信息包括:每个视图的比例(已应用,因此每个数值都是真实模型毫米值)、检测到的视图及每个图元的边线类别(可见/隐藏/剖切线/中心线)、严格连接为闭合环的轮廓(闭合环是事实;当连接处存在歧义时,链会停止,而不会猜测)、在经过测量的残差阈值范围内将炸开的曲线扇重新合并为参数椭圆、视图对齐关系、带有 CAD 系统实际打印出的字符串的尺寸(以此为准,而非存储值——DWG 往返转换会损坏角度和半径;在线性尺寸上手动输入 Ø 前缀会将其重新定义为直径)、作为参数表的标题栏(frame_notes — 长度、材料、重量、投影标准)、注释块内的文本,以及通过三个独立通道与折弯线配对的钣金折弯注释。它会以两种格式之一作答,由读取方选择:DIRECT_BUILDABLE + 精简摘要(然后通过一次调用 mode='build' 构建),或 NOT_DIRECT | <reason> + 一次答复中的完整分析,供模型通过 get_recipe('reverse') 读取。格式方面:摘要/提取内容分离的方案已于 2026-09 根据实际测量结果弃用——在所有样本中,精简线格式的完整产物都小于摘要加上它所需的提取内容。无法归属的内容会报告为已跳过——绝不猜测;sheet.not_read 会指出完全无法读取的实体类别。(用于原生 SolidWorks 工程图的旧版读取器仍以 analyze_slddrw_test 的形式保留——仅供测试/参考:.SLDDRW 与模型关联,因此如果你有此文件,零件已经存在。)
导出
  • export_document — STEP、IGES、STL、PDF、DWG、DXF(PDF/DWG/DXF 需要工程图文档)。
  • batch_export — 批量导出。

安装与运行

要求
  • Windows 和 SolidWorks 2026。
  • 执行层需要 .NET Framework 4.8 和 MSBuild(随 Visual Studio 2022 一同提供)。
  • 适配器需要 Python 3.x 和官方 MCP Python SDK v2(mcp>=2.0.0,协议 2026-07-28)(Python 依赖通过 requirements.txt 安装)。
  • 支持 MCP 的 AI 客户端(例如 Claude Desktop;也面向 OpenClaw、基于 OpenAI 的 Agent 和本地大模型)。
执行层(C#)

构建解决方案:

& "C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe" execution\solidworks\SolidworksExecution.sln /t:Build /p:Configuration=Debug

运行服务(无头模式,http://localhost:5000):

Start-Process execution\solidworks\SolidworksExecution\bin\Debug\SolidworksExecution.exe -WindowStyle Hidden
适配器(Python)
cd adapters/claude
pip install -r requirements.txt
python server.py

适配器通过 EXECUTION_BASE_URL 连接执行层(默认值为 http://localhost:5000;可通过 .env 覆盖)。

在 AI 客户端中注册(安装方法)

适配器会注册到支持 MCP 的 AI 客户端,由该客户端自行启动 server.py。对于 Claude Desktop,配置文件位于:

C:\Users\<username>\AppData\Roaming\Claude\claude_desktop_config.json

在 mcpServers 下添加以下条目:

"SolidPilot": {
  "command": "C:\\Users\\<username>\\AppData\\Local\\python\\bin\\python.exe",
  "args": ["C:\\Users\\<username>\\Desktop\\MCP Server\\adapters\\claude\\server.py"],
  "cwd": "C:\\Users\\<username>\\Desktop\\MCP Server\\adapters\\claude"
}

请更新路径,使其与您的系统相符。

每次更改配置后,都请重启 Claude Desktop。

由于 MCP 是开放标准,OpenClaw、基于 OpenAI 的 Agent,或运行本地大模型的客户端,都可以通过指向同一个 server.py 适配器以相同方式连接。


项目状态

SolidPilot 是一个可运行的原型/早期 alpha 版本。低层工具已通过实时 SolidWorks 端到端验证;所有 COM 调用都在单个专用 STA 线程上串行执行。

**零件:**零件建模功能最为成熟,包括草图、拉伸/旋转/扫描/放样、圆角/倒角、阵列、钣金、参考几何,以及编辑(modify_dimension、edit_feature)和丰富的分析功能。最初仅实现了创建零件所需的工具。

**工程图:**此功能是后来添加的,如今已成为一项真正可用(但仍在完善中)的能力,包括多视图工程图、剖视图、模型项目自动标注尺寸、中心标记、孔标注、钣金展开视图,以及工程图读取器。模型 → 工程图已在真实生产零件上得到验证(仅凭分析结果就放置了含五个视图的标注尺寸工程图,其中包括两个正交剖视图)。已知局限:自动标注尺寸流程不具备制图意识(可能遗漏或错放尺寸,也可能为隐藏边标注尺寸)——更智能的标注尺寸层已列入路线图。

工程图 → 模型是最近变化最大的一部分,现在仅凭工程图文件即可完成——无需模型,也无需 SolidWorks 工程图文档,只需供应商提供的 .DXF/.DWG 文件。读取器(cad-planner/drawing/,唯一处理 DXF 的模块)会通过严格的端点度为 2 的匹配,将轮廓串联成闭合环;将弯折注释与弯折线配对;将标题栏读取为参数表;并将每个尺寸的印刷字符串作为事实依据。目前已重建四个内部样本(两个钣金件、两个机加工件),与原件的拓扑结构完全一致;还重建了五张真实生产制造图纸,幅面为 A4/A3/A1,比例从 1:1 到 1:10,使用三种不同的标题栏模板,每张图纸的验证结果都与其标注重量相差不超过 0.02%。其中包括一块 6.69 m、带三个弯折的板材,以及一张长度未按零件实际长度绘制的断裂视图。实际局限:正投影视图尚不能完全串联(特征轮廓若在边线中途结束就会形成 T 形交点,此时串联器会停止而不是猜测——未解决的轮廓会报告为缺口);投影标准从配置中读取,而不是自动检测;机加工件仍需要模型来进行工程解读。

**装配体:**装配体功能现已实现端到端工作——可创建装配体、插入并应用完整变换的组件、基于索引进行配合、深度读取结构(analyze_assembly),并进行客观验证(compare_assemblies)。Feature Graph 架构中新增了装配体 IR 子词汇(组件和配合);真实样例装配体(最多约 17 个组件)已从其 IR 重建,并达到 verified 匹配:组件集合完全一致,变换精确到亚微米级,配合数量和类型均匹配。 特征图 IR + 编译器(战略核心):如今已成为项目的主干,并且可以正常工作。IR 架构(cad-planner/contracts/feature-graph.schema.json)和确定性的 Python 编译器(compiler/solidworks/pycompiler,包括降级处理和一个基于几何锚点构建的 v0 参考解析器)通过一条代码路径执行每次重建,并配有离线测试套件(无需运行中的 SolidWorks)。通过反向往返流程——analyze_model → LLM 提议的 IR → rebuild_from_ir → compare_parts——已从真实生产零件的 IR 重现零件,并验证匹配,涵盖旋转、圆形阵列、两种倒角模式、放样和多折弯钣金形态。每个零件都会在新文档中重建,并在计为已验证之前,与原件进行精确拓扑和质量属性比对。通过真实零件扩展 IR 词汇表,是推动其发展的途径;这项工作有自己的进度记录(logs-ir.md)。

尚待解决的问题,也是项目真正的研究风险,是构建一个持久可靠的参考解析器:v0 几何锚点能在新文档中精确重现零件,但无法承受上游编辑(尺寸变更会移动锚点)。让语义参考(top_face、特定边)在拓扑变化后仍保持稳健,是接下来决定成败的模块。

两扇 IR 入口,共用一个编译器。 反向入口是 rebuild_from_ir(从已有零件的工件重现零件)。正向入口是 submit_feature_graph(根据设计意图构建,无需原件作为副本)——现在已上线且没有门槛,并已在真实几何上验证:扫掠实体与 πr²·L 的匹配精度达到六位数、组合阵列网格、椭圆棱柱和钣金法兰。两扇入口都通过同一个 pycompiler 执行,因此一方积累的经验会让另一方受益。请注意,拥有正向入口,并不意味着要移除其下方的低级接口——40 多个低级工具仍然保留,只有等下文所述的参考解析器完善后才会考虑弃用它们。

**测试:**四个自动化测试套件完全离线运行(无需 SolidWorks),并在每次推送时于 CI 中运行——工具契约测试(adapters/claude/tests/test_schema_contract.py)会检查适配器(server.py)与执行契约(tool-schemas.json)之间的工具或参数是否有任何偏差;IR 契约测试(compiler/solidworks/pycompiler/tests/test_ir_schema_contract.py)会双向检查 IR 架构(兼作能力注册表)与负责强制执行该架构的校验器之间的词汇偏差;编译器测试套件(compiler/solidworks/pycompiler/tests/)会使用模拟执行端口测试 IR 校验、降级处理和参考解析;图纸读取器检查(cad-planner/drawing/tests/)会双向比对绘图方言词汇,并从原始图元重新串联冻结的 DXF 固件,同时使用编译器自身的校验器验证其生成的 IR,确保读取器不会创造编译器无法构建的词汇。按设计,CAD 操作本身的行为验证需在运行中的 SolidWorks 中手动进行。

备注:

  • Python MCP 适配器运行期间不会热重载;编辑 server.py 后,必须重新连接 MCP 服务。
  • 由于 SolidPilot 会驱动正在运行的 SolidWorks GUI 会话,分析工具有时可能会等待用户在 SolidWorks 中点击后才继续;如果分析时间过长,MCP 工具也可能开始返回错误(客户端限制)。遇到这两种情况时,请告知助手重试,助手会继续执行。

路线图

项目正在积极开发中。Feature Graph IR 和确定性编译器目前已可用于部分零件(已在真实生产零件上完成端到端验证);接下来的主要目标:

  • 持久化引用解析器/持久命名 — 关键模块:让语义引用(top_face、特定边)在尺寸和拓扑发生变化后仍然有效,而不仅仅是能在全新文档中重放。当前 v0 几何锚点虽然精确,但在编辑后容易失效。
  • 装配深度 — 装配核心(插入、配合、分析、IR 往返转换)已可用;剩余工作包括将子装配层级作为一等 IR、支持可变形/就位零件的配合(例如槽中的 O 形圈),以及装配图/BOM。
  • 拓展分析流水线 — 文件夹扫描器(批量分析目录中的零件/图纸并生成产物)、按类别生成 IR 并输出覆盖率报告的 AI 处理阶段,以及经过验证的 IR 之间的模式复用(无需 LLM 即可进行参数化重建)。
  • 精简工具接口 — 前向入口(submit_feature_graph)已上线,IR 现在涵盖整个零件建模范围,因此剩下的步骤就是逐步淘汰其下方的低级工具。只有在此架构中实现这一点,才能真正节省 token;这需要等待解析器完成,因为只有引用持久可靠,单工具接口才真正可用。

现有领域即将推出:

  • **技术图纸:**核心工具已具备;剩余工作包括适用于制图的尺寸标注层(确定性剖面规划、正确放置尺寸)、GD&T/基准、标题栏、局部详图以及物料清单(BOM)。

贡献

有关贡献指南、开发环境设置以及添加新功能的指南,请参阅 CONTRIBUTING.md。


许可证

版权所有 (c) 2025–2026 Çağatay Bakan。

SolidPilot 是自由软件,采用 GNU Affero 通用公共许可证 v3.0(AGPL-3.0)授权。

你可以自由使用、研究、修改和分发。由于 SolidPilot 是 服务端软件,AGPL 的网络条款(§13)适用:**如果你运行修改版并允许他人通过网络与之交互,就必须向这些用户提供你修改版的完整对应源代码,并采用 相同许可证。**具体条款请参阅 LICENSE。

商业/专有许可

AGPL 的著佐权义务并不适合所有组织。如果你想将 SolidPilot 嵌入 闭源或专有产品,或者无法遵守 AGPL,则可申请单独的商业许可。 项目根据 CLA 接受贡献,因此保留了这种 双重许可选项。

有意申请商业许可、试点项目或测试/评估计划? 请联系我们,以便商定合适的条款:

电子邮件:[email protected]

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。