Skip to main content
Glama
hashbolic

FreeCAD MCP for Codex

by hashbolic

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
FREECAD_MODENoConnection mode for FreeCAD. Defaults to 'xmlrpc'.xmlrpc
FREECAD_XMLRPC_PORTNoPort for the FreeCAD XML-RPC bridge. Defaults to 9875.9875
FREECAD_ALLOW_EXECUTE_PYTHONNoSet to 'true' to enable the execute_freecad_python escape hatch. Disabled by default.false

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
freecad_healthA

Return structured bridge, FreeCAD version, and GUI health.

get_operation_statusA

Poll a timed-out FreeCAD operation until it is definitively complete.

list_documentsA

List open FreeCAD documents.

open_documentA

Open an FCStd document and return its identity.

create_documentC

Create an empty FreeCAD document.

save_documentC

Save a document to its existing path.

save_document_asC

Save a document to a new FCStd path.

close_documentC

Close a FreeCAD document without saving it automatically.

list_objectsC

List object names, labels, types, and visibility.

inspect_objectB

Inspect an object's properties, links, and shape summary.

inspect_shapeB

Return shape type, validity, topology counts, mass properties, and bounds.

get_bounding_boxB

Return an object's axis-aligned bounding box in document coordinates.

measure_distanceA

Measure Euclidean distance between two XYZ points.

check_collisionB

Check whether two shapes overlap and report intersection volume.

check_geometryC

Validate an object's BRep and return structured geometry diagnostics.

capture_viewB

Capture a PNG of the active FreeCAD 3D view.

create_boxC

Create and validate a Part box.

create_cylinderC

Create and validate a Part cylinder.

create_shellC

Create a rectangular open-top shell from [length,width,height].

set_placementB

Set an object's XYZ placement and optional yaw/pitch/roll Euler angles.

boolean_cutB

Subtract object_b from object_a in one validated transaction.

boolean_fuseC

Fuse two shapes in one validated transaction.

boolean_commonA

Intersect two shapes in one validated transaction.

fillet_edgesC

Fillet selected edges, or all edges when edge_indices is omitted.

chamfer_edgesB

Chamfer selected edges, or all edges when edge_indices is omitted.

split_by_planeC

Split a shape by an axis-aligned plane and return two new objects.

create_screw_bossC

Create a hollow cylindrical screw boss.

create_heatset_insert_bossB

Create a hollow boss sized for a heat-set insert.

create_fan_mountB

Create a square fan mounting plate with four clearance holes.

create_vent_patternB

Create a vent plate with a regular array of through-slots.

split_for_print_bedC

Split a long object into print-bed-sized axis-aligned pieces.

import_stepC

Import a STEP file into the target document.

export_stepC

Export selected or all shaped objects to STEP.

import_stlB

Import an STL mesh into the target document.

export_stlC

Export selected or all shaped objects to STL.

execute_freecad_pythonC

Execute FreeCAD Python only when FREECAD_ALLOW_EXECUTE_PYTHON=true.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hashbolic/Codex-FreeCAD-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server