assemble
Join parts by snapping named anchors together in one atomic operation, verifying alignment within tolerance and rolling back on any failed mate.
Instructions
Assemble parts by snapping named anchors together (ONE transaction).
Each mate: {"obj", "anchor", "target", "target_anchor",
"mode": "center"|"touch"|"axis", "offset": float=0}.
Per-mate residuals (mm, plus degrees for touch/axis) are measured AFTER
the move; a mate over tolerance fails. For PERSISTENT joints use
assembly_session. Full semantics: operation_help("assemble").
Args:
mates: Non-empty list of mate dicts (see above).
tolerance: Max allowed post-move residual in mm (default 0.1).
stop_on_error: Abort and roll back at the first failed mate.
with_screenshot: Attach a screenshot (default: none).
Returns:
JSON with per-mate residuals and passed/failed counts.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mates | Yes | ||
| doc_name | Yes | ||
| tolerance | No | ||
| stop_on_error | No | ||
| with_screenshot | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |