Target selectors
Most tools accept any of these target forms:- Plain object names resolve through the document.
- Snapshot uids come from
take_snapshot. - Subelement refs use
Object#FaceN,Object#EdgeN,Object#VertexN,Object#SolidN, or asub_...uid. - When names collide or labels differ from internal names, prefer snapshot uid.
Vector
Accepted vector forms:z=0. Use millimeter-scale coordinates unless the document explicitly uses another unit convention.
Placement
Angle is degrees in MCP property dictionaries. Native Python FreeCAD.Rotation accepts constructor forms documented in Python API.
Object spec
Used bycreate_objects and mirrored by create_object arguments.
- If a property exists in
PropertiesList, it is assigned directly. Placementdict becomes a placement object.- Vector-valued properties accept vector dicts.
Base,Tool,Source, andProfilecan reference another object by name.Referencesaccepts a list of[object_name, subelement]pairs.ViewObjectapplies visual properties such asShapeColor,Transparency,Visibility,DisplayMode,LineColor,LineWidth,PointColor, andPointSize.
Common TypeIds
get_object before assigning uncommon fields.
Sketch geometry entries
Used byedit_sketch_geometry and make_sketch_extrude.profile.
none, any, curve, edge, start, first, begin, end, last, center, mid, midpoint.
Sketch constraints
Each entry must includetype. name is optional. Dimensional constraints accept driving: false to create a reference constraint.
-1 for sketch X axis, -2 for sketch Y axis, and -3 for origin where supported by the constraint.
Spreadsheet cell maps
Write cells:View call controls
Standard views:Measurement endpoints
measure_distance accepts object names, uids, subelement refs, or points:
Builder parameter packets
High-level builder tools expose positional arguments directly. Their internalparams equivalent is: