mcpField
P
PartCAD

PartCAD

本地服务
partcad.org媒体与设计510今天更新

关于 PartCAD

PartCAD 用文本化软件包描述零件、装配体、材料和要求,并提供渲染、测试、分析及制造文档生成能力,面向硬件设计者与 AI Agent。它将产品规格、验证和供应链信息放在同一来源中。

主要功能

  1. 01渲染、测试和分析 CAD 模型
  2. 02支持多种零件与装配格式
  3. 03生成物料清单和装配说明
  4. 04提供仿真与制造分析
  5. 05支持缓存和供应链采购

适用场景

  1. 01检查并导出硬件包中的零件
  2. 02验证装配体接口与物理属性
  3. 03生成带物料清单的装配手册
  4. 04分析制造与采购方案

MCP 相关

PartCAD 提供 `pc mcp` MCP 服务,供其他 AI Agent 使用其零件和装配工作流。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"partcad-partcad": {
"command": "uvx",
"args": [
"partcad"
],
"env": {
"PC_PATH": "<PC_PATH>"
}
}
}
}
启动命令uvx partcad
需要配置的环境变量
PC_PATHThe PartCAD package to serve: a directory with a partcad.yaml, or the file. The working directory when unset.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypipartcad0.8.235

工具

12

收录的工具列表 · 更新于 4 天前

参数类型必填说明
kindenum否要列出的内容。packages | parts | sketches | assemblies | scenes | interfaces | materials | software
packageany否包,格式为 '//package/path' 或相对于工作区自身的路径;省略时使用工作区自身的包。
recursiveboolean否同时列出此包下的包。

详细介绍

原文在翻译后有更新,译文可能不是最新。

PartCAD

License

CI on Linux, macOS and Windows CD on Linux, macOS and Windows Deployment to PyPI Documentation Status Discord

浏览我们的文档并访问[我们的官网]。观看我们的 💥💥演示💥💥。

什么是 PartCAD?

PartCAD 是面向万物的编程语言。

它是用于记录可制造实体产品的标准,并提供一套工具来维护产品信息,助力产品生命周期各阶段实现高效、有效的工作流。

PartCAD 不仅仅是传统的绘图 CAD 工具。事实上,它根本不是用来绘图的。“PartCAD”中的“CAD”代表更广义上的“计算机辅助设计”,其中“设计”指的是使用计算机(包括使用 AI 模型)将想法转化为清晰且确定的可制造实体产品规范的过程。PartCAD 最初是首个硬件包管理器,如今已成为新一代 CAD,可以让一位富有远见的个人成长为一人公司,也可以让一位未来的产品经理达到过去 10 个企业工程部门的工作效率(而且快得多!)。

PartCAD 不断发展,持续添加新功能和集成。 联系我们,讨论 PartCAD 如何革新您的产品开发流程。

PartCAD 包

PartCAD 提供用于打包产品信息的工具:

  • 可选(但强烈推荐)的高级需求(文本和图纸)

  • 可选的详细设计(机械外形、PCB 原理图、软件架构)

  • 实现内容(机械 CAD 文件、PCB 布局、软件构件)

  • 可选提供以下数据,以扩充或补充输出:

    • 其他制造流程要求和说明
    • 其他产品验证说明
    • 维护说明
  • 或任何其他与产品相关的元数据

这些包具有模块化和可复用性,不仅可以基于以往产品的 CAD 文件构建,还可以基于其制造流程构建。

PartCAD 输出

通过 PartCAD 维护产品信息后,可以生成以下输出,并在必要时使用 PartCAD 工具收集和管理:

  • 产品文档(Markdown、HTML 或 PDF)
  • 设计验证结果
  • 产品物料清单(机械、电子、软件)
  • 所有组件的采购信息
  • 制造工艺规范(包括所需设备,如有)
  • 制造说明(文档足够详尽,任何人都能据此复现,无需询问其他信息)
  • 产品验证说明
  • 产品验证结果(在能够使用实验产品和所需工具的情况下)
  • 供软件组件使用的输入数据,用于在网站上通过 3D 查看器、配置器、制造/装配说明等方式展示产品

产品开发与测试

产品信息打包后,即可进行版本管理,并用于迭代改进,也可由人工或 AI 参与者生成 PartCAD 输出。为此,PartCAD 集成了第三方工具。以下仅列举一些可用第三方集成的示例:

  • AI 工具可根据当前需求状态,自动更新机械设计和实现
  • 可手动使用传统 CAD 工具更新实现
  • AI 工具可用于验证设计和实现,以发现产品需求或最佳实践(例如降低制造复杂度)方面的违规情况
  • 可使用在线商店的 Web 界面或增材制造商的 API采购和制造零件
  • 可使用仿真工具(也可与 AI 工具配合使用)验证产品设计是否符合产品需求
  • AI 工具可用于检查产品实现的正确性、安全性或合规性
  • 制造流程经过完整性验证(例如,为所有操作指定所需工具)
  • 制造说明经过正确性验证(例如,提供的制造步骤确实能够安全、成功地执行,并且符合所选制造工具的能力)

部分迭代改进或测试可使用 PartCAD 的内置功能完成。不过,建议使用第三方工具,以释放前沿创新和功能的潜力。

使用 PartCAD 开展运营

PartCAD 还提供以下配套产品,以便在需要时无需使用任何第三方工具即可开展运营:

  • 面向各种规模企业的零件制造与装配车间的 CRM(从在自家车库工作的熟练个人到大型工厂),以便立即开始承接使用 PartCAD 维护的可制造产品订单
  • 库存工具,用于管理库存中的零件和成品清单,以及跟踪和管理所有进行中或已完成的订单,从而立即启用供应链并扩大其规模,同时将所有数据私密地保存在本地,且无需承担任何费用(云服务等费用)

基于 PartCAD 的供应链

用户可以轻松地在第三方工程工具或制造商之间切换,而无需迁移产品数据。PartCAD 因此为服务提供商创造了竞争环境,推动成本下降。

每当你选择在工作流中使用第三方工具(如果有),你最终也就决定了(并使其透明或可审计)供应链的安全程度,以及产品信息的暴露程度。如果你只选择本地部署的工具,所有产品信息也都会留在本地。这使 PartCAD 成为希望保护产品数据隐私的用户实现数据主权的终极解决方案。在云端数据采集的时代(尤其是用于 AI 训练的数据采集),PartCAD 是比任何基于云的 PDM、PLM 或 BOM 解决方案更好的选择。

加入我们!

加入我们的 Discord 服务器,及时了解最新信息并分享反馈。

关注我们的 LinkedIn、YouTube、TikTok、Facebook、Instagram、Threads 和 Twitter/X。

PartCAD Visual Studio Code 扩展

功能

  • 支持多种操作系统
    • Windows
    • Linux
    • macOS
  • 通过缓存渲染后的模型加速工作流(包括 OpenSCAD、CadQuery、build123d 和 Chili3D)
    • 内存中
    • 磁盘上
    • 团队或 CI 集群共享的 memcached 服务(cacheRemote)
    • 生命周期长于前两者的 S3 存储桶(cacheS3)
  • 协作设计
    • 使用 Git 对 CAD 设计进行版本管理 (仿佛真的已经到了 2025 年)
      • 机械
      • 电子
      • 软件——固件映像、二进制文件和磁盘映像作为软件包对象交付,可按供应商和 SKU、文件或 fileHash 重现
    • 自动生成 Markdown 文档
    • 参数化(硬件和软件)物料清单
    • 在线发布模型到 PartCAD.org
    • 在线发布模型到你的网站 (进行中)
    • 在线发布可配置零件和装配体 (进行中)
    • 在线购买装配体和零件,包括市场平台和 SaaS (进行中)
    • 通过 CLI 自动采购零件
  • 装配体模型(3D)
    • 使用专用的 Assembly YAML 格式
      • 自动维护物料清单
      • 生成便于用户理解的可视化装配说明(PDF 和 HTML 说明书)
    • 使用包含连杆、关节和物理属性的 URDF
    • 使用作为源文件保留的 STEP 文件
    • pc filter 可声明由现有装配体的部分连杆组成的第二个装配体——子装配体 无需手动编辑,即可从大型装配体中提取子装配体
  • 场景(3D)——放置好的对象布局:工作单元、桌面或仿真世界
    • 声明对象所在的位置,而不是它们如何到达那里
    • 通过实现相应功能的软件包读取和写入引擎自身的场景格式——用于 Gazebo 世界的 partcad-sim-gazebo(SDFormat),用于 MJCF 的 partcad-sim-mujoco,两者还会分别声明读取器、导出器以及其引擎的 pc ide open 入口
  • 仿真——世界启动后对象应当如何运动
    • 在零件、装配体或场景上使用 simulate::声明场景、对象在场景中的位置,以及判断对象是否按预期运动的条件
    • 定义哪些对象会成为刚体:场景中的每个元素(递归计算),以及装配体中附加到该元素的所有内容;连接会保留自由度的关节;场景元素可以通过 fixed: true 固定到世界,场景中也可以放置场景
    • pc sim 用于运行仿真并验证结果
    • pc test 将每个对象纳入检查,作为其 sim 检查:先写出预期,再让它通过
    • 仿真插件的声明方式与导出和渲染实现相同——输入场景,输出 before 和 after。仿真器是一个软件包,不属于此轮的一部分: partcad-sim-mujoco 使用 MuJoCo 运行仿真, partcad-sim-gazebo 使用 Gazebo 运行仿真
    • 在材料上使用 mu,让零件的材料决定它能否稳固支撑——分别写入 SDFormat 的 <mu>、URDF 的 <mu1> 和 MJCF 的 friction
  • 工程分析——切割任何材料之前,零件的表现如何
    • pc cae fea,有限元分析:零件根据自身接口说明支撑位置(fix:)和受力位置(load:),因此几何形状变化后边界条件仍然有效
    • pc cae dynamic,模态分析:零件在当前固定条件下的固有频率
    • pc cae thermal,热传递:哪些位置保持在指定温度,哪些位置被加热或冷却
    • pc cae cfd,计算流体动力学:流体从何处流入和流出,其余部分均为壁面
    • Digital Thread 的 FEA、Dynamic FEA、Heat Transfer 和 CFD 选项卡可对屏幕上的对象运行这些分析
  • 材料——零件由什么制成,作为软件包中的对象
    • materials: 部分,以及可继承而无需重复声明的标准目录: //pub/std/manufacturing/material/plastic 和 .../metal,按牌号和状态命名 (al-6061-t6、ss-316l、ti-6al-4v、petg、peek)
    • 由 pc info 报告,纳入物料清单,并用于仿真(mu)和分析
  • 制造——如何制造,以及用于制造的程序
    • 制造方法:additive、subtractive、sheet_metal 和 forming
    • pcbBasic (架构已接受此项;可制造性测试尚未实现)
    • pc cam 生成加工路径文件:以刀具半径偏移对象轮廓,并按一系列深度切削——供 CNC 路由器或铣床运行的 2.5D 程序
    • 制成的零件按其所用的毛坯材料进行采购,因此物料清单订购的是板材和棒材,而不是无人销售的成品零件
    • 自制或外购:每个行项目都可切换为自制或外购,无法归入任一类别的项目标记为 Incomplete;物料清单和下方的说明均以此选择为依据
    • pc instructions 将装配说明写入 PDF 或 HTML——可以是此装配体本身的步骤,也可以使用 -r/-b 写入每个自制子装配体的装配步骤,以及每个自制零件的制造方法;每项内容都会放在首次需要它的步骤之前
  • 零件模型(3D)
    • 使用脚本语言
    • 使用旧版 CAD 文件
      • STEP
      • BREP
      • STL
      • 3MF
      • OBJ
      • glTF(包含缓冲区的 .gltf,或 .glb)
    • 使用第三方工具的文件格式
      • KiCad EDA(PCB)
      • FreeCAD 文档(.FCStd),无需 FreeCAD:使用 cadmpeg 读取,首次使用时下载
    • 使用软件包自行定义的零件类型(partTypes),包括能够读取自有文件格式的零件类型
      • SolidCraft 设计(.solidcraft)、Rhino(.3dm)和 IGES,由 SolidCraft 插件软件包提供 (partcad-solidcraft),首次使用时下载 SolidCraft,或在其自身容器映像中运行
  • 零件和接口蓝图(2D)
  • 用于机械设计的 AI Agent 工具
    • 任何支持 SKILL.md 的编码 Agent 都可加载 Agent Skills (ai-agents/), 由 pc init 安装,并作为 pc 插件分发
      • 生成零件、装配体或 2D 草图(/pc:gen、/pc:gen-part、/pc:gen-assembly、 /pc:gen-sketch)——Agent 编写 CAD 脚本并通过渲染验证
      • 描述现有对象(/pc:describe)、搜索目录(/pc:search)、添加接口 (/pc:add-interfaces)
      • 根据对象的 requirements: 验证对象(/pc:validate)——通过 pc test 检查端口、 接口和物理属性,并由 Agent 根据仿真、渲染、物料清单和装配说明判断每项特性
      • 设置项目(/pc:init、/pc:setup)
    • MCP 服务(pc mcp),任何 MCP 客户端都可以通过它驱动 PartCAD:列出、检查、渲染(作为 图像)、测试和导出对象,并通过一个 execute 工具调用其他所有守护进程方法——该服务已收录于 MCP Registry 和 pc 插件,由 VS Code 扩展注册,并由 pc init 写入新软件包
    • 每条命令均支持 --no-ansi 输出,让 Agent 解析纯文本而非进度条
    • Assembly YAML 中可使用自由格式的 comment: 上下文,为下一位阅读装配体的人编写
  • 其他功能
    • 使用面向对象的编程方法维护零件接口和配合信息
    • 在 Visual Studio Code 中工作时实时预览 3D 模型;在 3D 视图旁的选项卡中查看对象声明的需求及 pc test 是否判定其已满足、2D 渲染、带尺寸标注的工程图、 工程分析、自制或外购决策、物料清单、装配说明和供应商报价——还提供软件备用方案, 即使在没有 WebGL 的窗口中(例如虚拟机或远程桌面)仍可绘制模型
    • 在创建对象的应用中打开对象(pc ide open):FreeCAD、Blender、KiCad——以及 引擎插件软件包中的 Gazebo 或 MuJoCo,其插件软件包中的 SolidCraft——可在本地安装, 否则在容器中运行;如果应用无法读取某个对象,系统会在打开时转换,并在应用关闭时将编辑结果 写回对象自身的文件
    • 查询 IDE 当前显示的内容(pc ide state):Explorer 中的选中项、Inspector 的参数,以及 Digital Thread 当前的选项卡、筛选条件和屏幕截图——让旁边的 AI Agent 可以查看你看到的内容
    • 从任意视角(--view 或自定义视角)渲染 2D 投影;也可选择在投影上绘制连接端口和接口
      • SVG
      • PNG
      • JPEG
      • DXF
    • 生成文档
      • Markdown 软件包和装配体文档
      • PDF 和 HTML 装配说明书
    • 将 3D 模型导出为 CAD 文件
      • STEP
      • BREP
      • STL
      • 3MF
      • ThreeJS
      • OBJ
      • IGES
      • glTF
      • URDF
      • Gazebo 世界(SDFormat)和 MJCF(MuJoCo),由相应引擎的插件软件包提供
      • SolidCraft 设计(.solidcraft),由 SolidCraft 插件软件包提供
    • 软件包可自行实现的输出类型,适用于 render: 和 export:

安装

注意,虽然不是必需的,但强烈建议安装 conda。如果安装或使用任何 PartCAD 工具时遇到困难,请务必安装 conda。

这适用于下面的 Python 软件包。独立命令行工具、snap 和 PartCAD IDE 都自带 conda,无需另行安装;如果你已有 conda,它们会使用你的 conda。

Claude Code 插件

已经在使用 Claude Code?这是最快捷的入门方式,而且会为你安装其他所有内容。pc 插件会添加一些技能,用于生成零件、装配体和 2D 草图,描述并搜索软件包已有的内容,以及设置工具本身:

/plugin marketplace add partcad/partcad@plugin-dist
/plugin install pc@partcad

之后,/pc:setup 会在机器上安装命令行工具;如果是在 Visual Studio Code 或 VSCodium 终端中运行,还会将下方的扩展安装到该编辑器中。/pc:init 会启动一个软件包,而 /pc:gen a mounting bracket with four M4 holes 会编写 CAD 脚本、渲染生成结果的四个视图,并根据要求检查结果。这些技能会驱动下文介绍的同一组 pc 命令,因此它们生成的内容不会被锁定在生成它们的 Agent 中。

此仓库本身就是市场;没有托管目录可供搜索。上方的 plugin-dist 分支包含最新版本,不使用符号链接,因此在 Windows 上也能以相同方式安装。还有两种替代方式:/plugin marketplace add partcad/partcad 可直接从源代码树安装(git 必须能够创建符号链接;在 Windows 上,这意味着要设置 git config core.symlinks true),每个版本都会提供一个 pc-<version>.zip,可通过 claude --plugin-url <url> 加载,仅用于单次会话,便于在不安装的情况下试用某个版本。

这些技能是纯粹的 Agent Skills,因此任何能够读取 SKILL.md 的 Agent 都可以不借助插件,直接从 ai-agents/ 读取它们。它们也包含在 partcad wheel 中,而 pc init 会将它们安装到创建软件包的仓库中:为 Claude Code 安装插件,为 Cursor 安装带 pc- 前缀的技能。传入 --no-skills 可跳过安装;传入 --skills-only 可将它们安装到已有软件包的仓库中。

MCP 服务

pc mcp 通过 stdio 提供 Model Context Protocol,让任何 MCP 客户端——Claude Code、Claude Desktop、Cursor、VS Code——都能驱动 PartCAD:列出软件包包含的内容,读取对象声明,查看对象(渲染结果会以图像形式返回),测试并导出对象,还能通过一个 execute 工具调用其他所有守护进程方法。它和其他 pc 命令一样,是工作区守护进程的客户端;除非使用 --allow-path 启动,否则只会访问工作区内的文件。

上面的 pc 插件会一并提供它,VS Code 扩展会在编辑器中注册它,而 pc init 会将它写入所配置仓库的 .mcp.json 和 .cursor/mcp.json。其他情况下:

claude mcp add partcad -- pc mcp     # with PartCAD installed
claude mcp add partcad -- uvx partcad mcp

它也以 io.github.partcad/partcad 的名称列在 MCP Registry 中。有关工具和其他客户端,请参阅文档。

PartCAD IDE

一个应用程序包含所有内容:编辑器、PartCAD 扩展和命令行工具。无需 Python,无需挑选扩展,也无需设置环境。它会在 PartCAD 工作台中打开;首次启动时会为你创建一个软件包并打开它,因此在需要阅读任何内容之前,就已经有东西可以渲染。

curl -fsSL https://raw.githubusercontent.com/partcad/partcad/main/install.sh | sh -s -- --ide

在 Windows 上,从版本发布页下载并运行 partcad-ide-<version>-windows-x86_64-setup.exe;macOS 也可在该页面下载 .dmg。详情请参阅安装。

Visual Studio Code 扩展

已经在使用 Visual Studio Code?请将扩展安装到其中,而不是安装上面的 IDE。

可以在 VS Code 扩展搜索框中搜索 PartCAD 来安装此扩展,也可以访问 其 VS Code 市场页面。在 终端中运行 code --install-extension PartCAD.partcad-official 也可以安装。

每个版本都附带打包好的扩展 partcad-<version>.vsix,可用于固定版本,或在无法访问市场时安装: code --install-extension partcad-<version>.vsix。在 VSCodium 中,扩展来自 Open VSX ——这是 VSCodium 自带的扩展库,PartCAD 也会在其中发布扩展,因为 Visual Studio Marketplace 的条款将其限制为仅供 Microsoft 自家产品使用: codium --install-extension PartCAD.partcad-official。

在编辑器内的终端中运行上面的 /pc:setup 时,它会替你完成此操作。

使用 PartCAD 前,请确保已在 VS Code 中配置 Python 并设置好 conda 环境。

FreeCAD 插件

PartCAD 工作台可在 FreeCAD 中浏览软件包、零件和装配体,获取对象的参数,并将结果导入当前打开的文档。将 cad/freecad 复制或链接到 FreeCAD 的 Mod 文件夹,并命名为 PartCAD,然后重启 FreeCAD:

ln -s "$PWD/cad/freecad" ~/.local/share/FreeCAD/Mod/PartCAD

无需配置 Python:此插件使用独立的 PartCAD 服务;如果尚未安装独立版本,它会在首次使用时下载该服务。

命令行界面

对于大多数用户,推荐使用以下方法安装 PartCAD CLI 工具:

pip install -U partcad

这个软件包包含所需的一切:pc 命令行工具、Python 模块,以及编辑器扩展所连接的 JSON-RPC 服务。partcad-cli 仍可安装并正常使用——它现在是一个轻量软件包,会自动安装 partcad。

  • 在 Windows 上,安装 Miniforge3 时选择 Register Miniforge3 as my default Python X.XX,并使用此 Python 环境运行 PartCAD。还要使用 Registry Editor,在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem 中将 LongPathsEnabled 设置为 1。
  • 在 Ubuntu 上,如果 pip install 无法安装 cairo,请尝试运行 apt install libcairo2-dev python3-dev。
  • 在 macOS 上,请确保已安装 XCode 和命令行工具。如果在 ARM 架构的 macOS 上遇到问题,也请使用 mamba。
无需 Python 的命令行界面

如果未安装 Python,或者不想为 PartCAD 维护 Python 环境,请改为安装独立版本。它包含相同的 pc 和 partcad 命令,并附带自己的解释器:

curl -fsSL https://raw.githubusercontent.com/partcad/partcad/main/install.sh | sh

它会安装到 ~/.local/share/partcad,并将命令链接到 ~/.local/bin,无需使用 sudo。有关 Windows 选项和卸载方法,请参阅 安装。

PartCAD 开发

请参阅 快速入门 指南,了解如何逐步设置开发环境、添加功能并运行测试。

开始使用

请参阅 PartCAD 命令行工具 或 PartCAD Visual Studio Code 扩展的教程。

你读到这里了吗?

为我们的辛勤工作点个星吧!

评论

支持 Markdown

第一次接触 MCP?

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

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