SolidCraft URDF Export

Run SolidCraft in your browser

The official web build, loaded right here. No install, no account. Desktop browser with a mouse recommended.

Loads the free web build (a few MB). Your models stay in your browser.

Next: get the desktop app

We picked your system. Files come straight from the official GitHub release (always the latest version).

Latest release: v0.18.1 (20 October 2026)

The installers are not code-signed yet, so Windows or macOS may warn you the first time. How to get past the warning.

Open SolidCraft above to model your parts and joints, then follow the steps below to export them as URDF. URDF (Unified Robot Description Format) is the file robot simulators read. SolidCraft writes it straight from an assembly, so you don't need a separate exporter plugin.

Everything on this page comes from SolidCraft's own documentation, linked at the bottom. New to the app? Start with the SolidCraft tutorial.

What you need before exporting

URDF describes a robot as links (rigid parts) joined by joints. In SolidCraft that means:

  1. Components, not just bodies. Each moving part has to be its own component. If you brought parts in from a STEP file, they often arrive as bodies of a single component. Use Create Components from Bodies to split them, and the joint dialog offers this too. See SolidCraft STEP files for importing.
  2. Joints between components. Press J (Joint) and connect two components by joint origins that snap to faces, edges, circles or vertices. Set limits on joints that should stop.
  3. Something grounded. Ground the base part. The export builds the robot tree from the grounded parts outwards, the same way the joint solver does.
  4. Materials if mass matters. Mass and inertia come from each body's mesh and material density.

Before exporting, use Drive Joints to move each joint through its range and check that the mechanism moves the way you expect.

How to export URDF

Where How
Desktop app File → Export URDF…
Commands / scripts file.export {"path": "robot.urdf"} or "format": "urdf"
MCP (AI assistants) the export tool with a .urdf path or format: "urdf"
CLI solidcraft-cli run script.json --out robot.urdf

URDF always exports the whole assembly, so you can't pick single bodies. If you drive SolidCraft from an AI assistant, the SolidCraft MCP server can run the same export.

What you get

Next to robot.urdf, the export writes one binary STL per component, in metres:

The meshes are written first and the .urdf last. Every path is checked before anything is written, and if a write fails part way, the error names the files already written.

Links

How SolidCraft joints map to URDF

URDF only has simple joint types, so SolidCraft turns multi-axis joints into short chains:

SolidCraft joint URDF
Rigid fixed
Revolute revolute about z with limits, or continuous without
Slider prismatic along z
Cylindrical revolute z, then prismatic z
Pin-slot prismatic x, then revolute z
Planar prismatic x, prismatic y, then revolute z
Ball revolute z, revolute y, then revolute z

Joint values match: a joint at 30° in SolidCraft is at the same angle (in radians) in the URDF, and distances are in metres. The URDF is written at the design's current joint values, with every part where it is shown.

Export settings

Setting Default What it does
mesh_prefix none Text put before each mesh file name. Leave it empty for Isaac Sim, PyBullet, MuJoCo and yourdfpy. RViz and other ROS tools need package://<pkg>/meshes/ or an absolute folder.
effort 1000 Joint effort limit, in N or N m
velocity 10 Joint velocity limit, in m/s or rad/s

URDF requires effort and velocity on every moving joint. If you don't set them, the defaults are written with a warning. A slider without a limit gets ±1000 m, also with a warning.

Warnings you might see

What isn't covered yet

The documentation lists these as not supported: <mimic> joints for motion links, simplified collision shapes (the collision mesh is the visual mesh), SDF and MJCF export, URDF import, and joint motion inside copies of a component placed several times. Effort and velocity are limits you choose, not simulated drive dynamics.

Need SolidCraft on your computer for the File menu? Get it from the SolidCraft download page.

FAQ

Can SolidCraft export URDF?

Yes. A design with components and joints exports as URDF with File → Export URDF… in the desktop app, the file.export command, the MCP export tool or the CLI. Each part becomes a link and each joint becomes a URDF joint.

Which simulators can read SolidCraft's URDF?

SolidCraft's documentation names ROS, Gazebo, Isaac Sim, PyBullet and MuJoCo. For RViz and other ROS tools, set mesh_prefix to a package:// path or an absolute folder.

Does the URDF include mass and inertia?

Yes. Mass, centre of mass and the inertia tensor are worked out from each body's mesh and material density, in kg and kg m². Open surfaces are drawn but add no mass.

What files does the export write?

A .urdf file plus one binary STL per component, in metres, named robot-<component>.stl. A separate collision STL appears only when a component mixes closed solids with open surfaces.

Can SolidCraft import URDF or export SDF and MJCF?

Not yet. The documentation lists URDF import, SDF and MJCF export, mimic joints and simplified collision shapes as not covered.

Sources

Last updated: