Skip to main content
Use these schemas when constructing MCP arguments. Function-specific parameters are documented in the tool pages.

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 a sub_... uid.
  • When names collide or labels differ from internal names, prefer snapshot uid.

Vector

Accepted vector forms:
Two-component lists are interpreted as z=0. Use millimeter-scale coordinates unless the document explicitly uses another unit convention.

Placement

Alternate base key:
Alternate rotation key set:
The axis-angle Angle is degrees in MCP property dictionaries. Native Python FreeCAD.Rotation accepts constructor forms documented in Python API.

Object spec

Used by create_objects and mirrored by create_object arguments.
Property assignment rules:
  • If a property exists in PropertiesList, it is assigned directly.
  • Placement dict becomes a placement object.
  • Vector-valued properties accept vector dicts.
  • Base, Tool, Source, and Profile can reference another object by name.
  • References accepts a list of [object_name, subelement] pairs.
  • ViewObject applies visual properties such as ShapeColor, Transparency, Visibility, DisplayMode, LineColor, LineWidth, PointColor, and PointSize.

Common TypeIds

Check an object’s exact writable properties with get_object before assigning uncommon fields.

Sketch geometry entries

Used by edit_sketch_geometry and make_sketch_extrude.profile.
Position ids used by constraints:
Position names accepted: none, any, curve, edge, start, first, begin, end, last, center, mid, midpoint.

Sketch constraints

Each entry must include type. name is optional. Dimensional constraints accept driving: false to create a reference constraint.
Sketch axes use -1 for sketch X axis, -2 for sketch Y axis, and -3 for origin where supported by the constraint.

Spreadsheet cell maps

Write cells:
Aliases:
Ranges:
Style:

View call controls

Standard views:
Display modes:
Camera modes:
Highlight colors use RGB floats:

Measurement endpoints

measure_distance accepts object names, uids, subelement refs, or points:

Builder parameter packets

High-level builder tools expose positional arguments directly. Their internal params equivalent is:
Shape-specific keys are documented in Geometry builder tools.