# 4C. CAD, CAM, CNC and CMM in one program.

> 4C is one Windows program for design (CAD), toolpaths (CAM), running the machine (CNC) and measuring the part with a touch probe (CMM). An AI assistant connects to it over MCP and builds real, editable features in the design tree.

<!-- directmotion.com, written for AI agents. Canonical: https://www.directmotion.com/4c.md . Index: https://www.directmotion.com/llms.txt . Updated 2026-11-08. Publisher: Direct Motion, Inc. -->

4C is one Windows program for the whole job. You design the part in a parametric tree (CAD), plan the
toolpaths and watch the stock being cut in simulation (CAM), run the machine (CNC), and measure the
part on the machine with a touch probe (CMM), without a post-processor or a file hand-off in between.
An AI assistant can do the design and CAM work with you. It builds the same features a person would, in
the same tree, so you can open any of them and change a dimension.

## 4C on the shop floor

## Made in 4C by an AI assistant

Every one of these is an ordinary 4C part: a tree of sketches and operations you can open, measure and
change. The AI built them through the same MCP tools described below, checking each step against the
model's own measurements.

## How the AI works in 4C

1. **Connect.** 4C runs a small MCP server on your own PC. It is off until you turn it on, reachable
   only from that PC, and protected by a token. Claude Desktop and Claude Code connect with one button.
   Your files never leave the PC; only the AI's thinking does.
2. **Ask.** *"A 100 × 60 × 12 mm aluminum plate with four M6 counterbored holes 10 mm in from the
   corners."* Or click a face in 4C and say what you want there.
3. **It builds real features.** Sketches with dimensions and constraints, extrudes, holes, fillets,
   patterns, mates. After each step it measures the result and corrects anything that does not match.
4. **Then the CAM.** Pockets, profiles, facing, drilling, chamfers, 3D roughing and finishing, with a
   simulation that reports gouges, leftover stock and rapids through material before anything moves.
5. **You stay in charge.** Every AI change is an ordinary operation in the tree: visible, editable,
   undoable. The AI never clicks 4C's windows, asks you to click when a face is ambiguous, and has no
   tool that moves the machine.

## What 4C does

| | |
|---|---|
| **CAD** | Parametric tree. Sketches with constraints, dimensions and formulas. Extrude, revolve, loft, holes with counterbores, fillets and chamfers, booleans, linear, grid and rotary patterns, primitives, surfaces. Assemblies with mates and placed instances. |
| **Import and export** | STEP, IGES and DXF in and out; STL out; circuit boards in from EAGLE files, with components. Replace a model with a new file and the toolpaths re-link. |
| **CAM** | Pockets including high-speed and patented constant-engagement pocketing, profiles, facing, drilling and canned cycles, chamfers and corner rounding, engraving, 3D roughing and surface finishing, 4th-axis and 5-axis work with tool-center-point control. |
| **Simulation** | Live material-removal simulation. Scrub back and forth; it reports gouges, rapids through material and holder contact. |
| **Variables** | One `$variables` table drives sketch sizes, toolpath settings and G-code. Change a value and everything follows. |
| **G-code** | Import G-code programs and run them beside 4C's own operations. |
| **Machine control (CNC)** | 4C is the operator screen for a DM-controlled machine: tool table, tool changers, spindle, coolant, fixtures, handwheel, diagnostics. |
| **Measuring (CMM)** | A touch probe on the machine finds and measures features, sets work offsets, checks the finished part against the model, and captures points off an existing part so you can model it. |
| **Languages** | The interface is available in several languages. |

## What the AI costs you

- **Your own Claude subscription** (Pro or Max), through MCP. No API key, no per-token bill.
- **Or your own API key** in 4C's built-in chat panel, paid per token.
- **A free first taste, paid by DM**, is being prepared for new users.

## Getting 4C

4C runs on a Windows PC with or without DM hardware. Without hardware it designs, programs and
simulates; connected to DM motion control it also runs the machine. A trial and pricing for 4C on its
own are being prepared; DM supports it directly. [Ask to be told when it is ready](https://www.directmotion.com/contact.md).

## For AI agents: driving 4C over MCP

4C exposes a **local** MCP server named `direct-path`. There is no remote or cloud MCP for 4C. A client
starts a small launcher (`AICadMcp.exe`), which finds the running 4C and relays MCP over stdio. 4C can
register itself with Claude Code and Claude Desktop. Model units are **inches**: convert from mm, and
answer in the operator's display units.

### Working rules

- Call `describe_model` first. Tokens such as `@body2`, `@face2_7`, `@edge2_11`, `@op5` and
  `@region4_1` come from tools or from the operator's clicks. Never invent a token.
- Every model-changing tool returns a delta (new, changed and removed bodies with volume and bounding
  box) or a regeneration error. Compare it with what you intended and fix or `undo` before going on.
  `undo` refuses if the operator changed the model since your call.
- Verify with numbers first (`measure`, `probe_points`, `section`); `render_view` only when numbers
  cannot answer.
- To move a part relative to another, use mates. To change a size drawn in a sketch, `list_sketch` then
  `edit_sketch`; do not redraw it.
- Read `cad_guide` (topics: overview, assemblies, sketch_extrude, sketch_shapes, revolve, edges,
  editing, reporting, toolpaths, verify) before improvising.
- When the face or edge the operator means is unclear, `ask_user_to_pick`. Do not guess.
- Save only when asked. No tool runs, jogs or homes a machine.

### Tools

| Group | Tools |
|---|---|
| Read the model | `describe_model`, `describe`, `list_faces`, `find_holes`, `list_properties`, `list_sketch`, `list_pcb`, `part_info`, `get_picks` |
| Check results | `measure`, `probe_points`, `section`, `render_view`, `verify_toolpaths` |
| Build | `sketch`, `edit_sketch`, `create_operation`, `list_operation_types`, `modify_operation`, `delete_operation`, `push_pull_face`, `transform_body`, `set_checked`, `hide_sketches`, `undo`, `import_step`, `variables` |
| Parts and files | `create_part_program`, `set_active_part_program`, `place_part`, `open_part`, `save_part` |
| CAM | `list_tools`, `set_stock`, `create_toolpath` (pocket, profile, facing, drill, chamfer, rough3d, finish3d), `list_toolpaths`, `modify_toolpath`, `compute_toolpaths`, `move_toolpath`, `delete_toolpath`, `add_program_row` |
| Operator and 4C | `ask_user_to_pick`, `cad_guide`, `report_issue`, `list_instances`, `connect_instance` |

`create_operation` types: sketch, extrude, revolve, loft, push_pull_face, hole, edge_break (fillet and
chamfer), boolean, linear_repeat, grid_repeat, rotary_repeat, fix_body, concentric_mate,
coincident_mate, distance_mate, parallel_mate.

### Known limits

- Booleans on lofted or revolved freeform bodies can report success and still be wrong. Measure after
  them.
- Use `report_issue` when 4C itself misbehaves (a tool says it worked but the geometry is wrong, data
  is lost, a valid request is refused). Do not report your own mistakes.

### Availability

4C is sold by Direct Motion. Trial, price and download for 4C on its own are `[planned]`, not published.
To ask, use the [request template](https://www.directmotion.com/ai.md#request) with `request_type: 4c`.
