list_objects
List objects
List the packages, parts, sketches, assemblies, scenes, interfaces, materials or software of a package. `pc list <kind>`. The listing is in the log of the result.
kindpackagerecursive
io.github.partcadPublished by GitHub account partcadv0.9.2Updated Nov 5, 2026
Inspect, render, test and export the parts and assemblies of PartCAD hardware packages
Lets an assistant inspect, render, test, search and export the parts and assemblies of PartCAD hardware-as-code packages.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Follow the launch instructions in the repository.
[CI on Linux, macOS and Windows] [PyPI] [Documentation Status] [Discord] [License]
PartCAD is the programming language for manufacturable things.
A package is a Git repository with a partcad.yaml that declares parts (CAD scripts or files), assemblies,
materials and requirements. PartCAD renders, tests, simulates, analyses and documents them, and produces the
bill of materials, the sourcing and the assembly instructions from that same source. Everything is text, so it
is versioned, reviewed and generated like software, by people and by AI agents.
Documentation · Website · Demos · Discord
[PartCAD in Visual Studio Code]
Pick one. Every option ends up with the same pc command line tool and the same packages.
The standalone command line tools without Python, the snap, the FreeCAD add-on, the MCP server for other AI agents, and the per-OS notes are all in Installation.
Or, in Claude Code, /pc:gen a mounting bracket with four M4 holes: the agent writes the CAD script, renders
it and checks the result against what was asked.
The tutorial walks through a first package, and
examples/ has one directory per feature.
pc cae), simulation in MuJoCo or Gazebo
(pc sim), 2.5D toolpaths (pc cam), and materials and manufacturing methods carried into the bill of
materials.pc mcp), and plain-text
--no-ansi output on every command.The full list of what is supported, and what is still in progress, is in Supported formats and features.
PartCAD is not a drawing tool. It is the layer under the drawing tools: the specification of a manufacturable product, kept in a form that a human, a CI job and an AI model can all read, change and verify. Keeping that specification on-prem, in Git, and portable between CAD tools and manufacturers is the point. See Introduction and Use cases.
Questions and feedback go to Discord; bugs and ideas to GitHub issues. Follow LinkedIn, YouTube and Twitter/X for releases. To contribute, start with Contributing.
Licensed under Apache 2.0.
Source: README.md at commit 57d691d
List objects
List the packages, parts, sketches, assemblies, scenes, interfaces, materials or software of a package. `pc list <kind>`. The listing is in the log of the result.
kindpackagerecursiveShow an object's declaration
Show an object's configuration, parameters and properties, or the package's when no object is named. `pc info`.
kindobjectparamspackageLook at an object
Render one part, assembly, scene or sketch and return the picture. `pc render`, returned instead of written. The first render of an object builds it, which can take minutes. Ports, interfaces and callouts are drawn only when asked for.
kindformatobjectrequiredparamspackagewith_portswith_internalswith_materialsoptions_packagewith_interfaceswith_port_nameswith_component_names+2 moreWrite an object to a file
Export or render one object to a file in the workspace. `pc export` / `pc render` for one object, written where the agent says. The ports, interfaces and callouts are drawn on a picture (png, svg, ...) and mean nothing to a model format such as step.
kindpathrequiredformatrequiredobjectrequiredparamspackagewith_portswith_internalswith_materialsoptions_packagewith_interfaceswith_port_names+3 moreTest objects
Check objects against the requirements and tests they declare. `pc test`. ok is false when any check failed, and the errors say which.
kindobjectparamspackagerecursiveLint a package
Check a package's partcad.yaml, ASSY files and scripts for mistakes. `pc lint`.
packagerecursiveBill of materials
What has to be bought or made to build a part, an assembly or a scene. `pc bom --json`.
objectrequiredparamspackageSearch objects
Find parts, sketches, assemblies, scenes, interfaces or packages by keyword or by interface. `pc search`. The matches are in the log of the result.
kindkeywordpackageinterfacerecursiveAssembly instructions
The step-by-step build of an assembly: what goes where, in which order, with which parts. `pc instructions`, as data. The user's Build vs Buy choices on this machine are applied.
objectrequiredparamspackagesubassembliesPartCAD version
The version of this server and of the daemon serving the workspace, which should be the same.
Takes no parameters.
List daemon methods
The methods the PartCAD daemon serves, each with a one-line summary, for use with execute.
filterRun a daemon method
Run any PartCAD daemon method -- everything the command line can do, and what the IDE asks for. The result carries the method's answer and its log.
methodrequiredparams90% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
pc init # a package in the current directory, with agent skills for Claude Code and Cursorpc ide view my_part # show it in the Digital Thread of the IDE or the extensionpc render my_part # SVG, PNG, DXF... from any anglepc test # the ports, interfaces, physics and simulations the objects declarepc instructions my_assembly # the assembly instruction book, PDF or HTML, with the bill of materials