SolidCraft Live Link
Model a machine in the SolidCraft desktop CAD app to sync it, part by part, to the realvirtual Editor. Changes such as a longer arm, a new hole or a moved part appear within about a second. Revolute and slider joints become Drives. Everything you add in realvirtual (sensors, signals, drive speeds, logic) stays when the CAD changes.
The live link needs realvirtual CONNECT on the same machine as SolidCraft and works only in the Editor, which is part of the commercial realvirtual tier. SolidCraft is a separate desktop CAD app, available from solidcraft.io. Nothing flows back from realvirtual to SolidCraft.

Live sync: the curve conveyor modelled in SolidCraft (right) appears in realvirtual as a library part, here four curves forming a circle with a carton on it.
Video: model a conveyor in SolidCraft with the AI chat and run it in realvirtual (2:44). Also on YouTube.
Connect
Section titled “Connect”- Install SolidCraft from solidcraft.io. CONNECT looks for
solidcraft.exein%LOCALAPPDATA%\Programs\SolidCraftand then inC:\Program Files\SolidCraft. For another location set the CONNECT settingSolidCraftExePathto the full path, for example"SolidCraftExePath": "D:\\Tools\\SolidCraft\\solidcraft.exe"inconnect-config.json. - Start CONNECT and open realvirtual from it (
http://localhost:5100). - Switch to the Editor mode with a new or existing asset.
- Click the SolidCraft icon in the lower part of the activity bar on the left. It is there only in the Editor.
- Choose Connect to SolidCraft.

If SolidCraft is not running, CONNECT starts it with its live link open (starting SolidCraft …, about 15 seconds). If the asset was linked to a saved design before, that design is opened again.
If you started SolidCraft yourself, CONNECT finds the running instance and connects to it instead of starting a second one. This needs the SolidCraft setting Let AI agents connect to be on. SolidCraft then opens its control port, 27878 or the next free one, and CONNECT reads it from SolidCraft’s control folder. With the setting off, the menu shows a hint to switch it on, and nothing is started. A session stays on the port it first connected to. Automatic discovery works only while CONNECT’s auto-start (SolidCraftAutoStart) is on and the tab runs on the CONNECT machine.

Read the menu
Section titled “Read the menu”| Entry | What it does |
|---|---|
| Status line | connected · <design> · N bodies · last update x s while connected. The dot on the icon is green when connected, amber while starting or waiting, red when something needs a fix. |
| Port | The SolidCraft control port. 7879 when CONNECT starts SolidCraft itself (CONNECT setting SolidCraftPort); the port of the running instance when CONNECT found one that you started. The port field is for special cases only. |
| Connect to SolidCraft | Starts the link and, if needed, SolidCraft itself. |
| Resync | Sends a fresh full copy of the design. |
| Disconnect | Ends the link. The mirrored parts stay normal asset content. |
Add realvirtual components as usual and save the asset. Components such as a Drive or Transport Surface on a synced part do not block later changes: when you change the part in SolidCraft, its geometry is updated and your components and their values stay.
Reconnect after saving and reopening
Section titled “Reconnect after saving and reopening”Save the design in SolidCraft, close the asset and open it again, then choose Connect to SolidCraft. The parts map back to the same nodes, so a changed parameter reaches your existing parts and no second SolidCraft_ root appears.
If you moved or renamed the .solidcraft file in between, realvirtual cannot be sure it is the same design (a copy of a file looks identical). It asks Design moved? Connect to <new path> and shows both paths. Nothing is synced until you confirm; Cancel connects nothing. If several roots in the asset could belong to the design, the Problems panel shows solidcraft-root-ambiguous and nothing is connected. Delete the roots you do not need and connect again.
Save the design in SolidCraft before you rely on a reconnect. After a reload, realvirtual finds the mirrored parts by the design’s file path. An unsaved design is recognised only within the same session; connecting to it after a reload builds a new copy. Each new unsaved design in SolidCraft counts as its own design, so a fresh “Untitled” does not inherit the parts of an earlier one.
What is synchronised
Section titled “What is synchronised”| In SolidCraft | In realvirtual |
|---|---|
| Design | One root node SolidCraft_<design> below the asset root |
| Component occurrence | A node with the occurrence’s position |
| Body | A mesh node; only a changed body is replaced |
| Body colour | The node’s material colour and transparency, on every sync |
| Moving a part | A position change only, no geometry reload |
| Rename | A rename of the node |
| Revolute or slider joint | A pivot node with a Drive (axis, direction, limits, start position) |
The sync preserves every component you add and every Drive field that is not a joint field. Examples include Target Speed, Acceleration, jog and signal fields. CAD controls geometry, positions, body colours and joint fields. If you change a synced part’s position or colour in realvirtual, the next sync restores the CAD value.
Only the root node shows a CADLink in the Inspector. The parts below it carry a hidden SolidCraft id, which is saved with the asset.
Patterns and several bodies
Section titled “Patterns and several bodies”A feature that creates several bodies, such as a pattern, mirror or multi-body copy, syncs every body. Pattern copies get generic names (Body1, Body2, …) and do not inherit the original’s colour. Assign colours to the copies in SolidCraft, too.
Colours and materials
Section titled “Colours and materials”A colour you assign in SolidCraft becomes the body’s material colour in realvirtual. To change its appearance, assign a material from the Editor’s material presets to the node. A later colour change in SolidCraft overwrites that body’s material again. See Materials.
Model on the floor
Section titled “Model on the floor”realvirtual takes SolidCraft’s Z axis as up and keeps the height. Model so the part stands on the floor in SolidCraft: feet or lowest point at z = 0. A design built around its working height floats or sinks in realvirtual.
Switching designs
Section titled “Switching designs”SolidCraft can switch designs through New, Open, or a different design on the next connection. realvirtual then mirrors the design under its own root and removes the old root in the same step. Undo restores the old root. Saving, Save as and renaming do not switch designs: the root keeps its parts and takes the new name.
The old root is kept if you added a component or a node below it, or changed a Drive setting. The Problems panel then shows solidcraft-orphan-root with Remove old SolidCraft root. The same applies to individual parts deleted in SolidCraft (solidcraft-orphan-node, action Delete).
Test run
Section titled “Test run”Changes you make in SolidCraft while a test run is active in the Editor do not arrive during the run. They arrive after you stop it. A live preview during the run is planned.
SolidCraft and an AI agent at the same time
Section titled “SolidCraft and an AI agent at the same time”CONNECT and the SolidCraft MCP server share the app’s control port. An agent can model in SolidCraft while CONNECT keeps realvirtual in sync and you watch both windows. Start the MCP server with solidcraft-cli mcp --connect 127.0.0.1:<port>, using the port shown in the SolidCraft menu (7879 when CONNECT started SolidCraft, otherwise the port of your instance). It connects once, when the agent session starts. If SolidCraft starts later, restart the agent session.
The AI window in the viewer
Section titled “The AI window in the viewer”The built-in AI window sees only the realvirtual tools. Your own MCP servers (mail, files, other CAD tools) are not available to it, and Codex in this window ignores the model, effort and provider from your config.toml. To let the AI window model in SolidCraft, switch on AI may control SolidCraft under Settings ▸ AI. It is off by default and greyed out while AI control is off. While it is on and the Live Link is connected, the AI window can use exactly the SolidCraft instance this tab is connected to. It cannot save or export through SolidCraft. When the Live Link disconnects, the next request starts without SolidCraft.
Never start a second SolidCraft while one runs: the second window cannot use the port.
When something goes wrong
Section titled “When something goes wrong”The status line and the Problems panel (codes solidcraft-*) say what happened. Most entries offer Resync.
| Status / problem | What to do |
|---|---|
SolidCraft not found | Install SolidCraft or set SolidCraftExePath in CONNECT. |
SolidCraft is running, but port 7879 is not reachable | A SolidCraft instance runs without an open control channel. Switch on Let AI agents connect in SolidCraft; CONNECT then finds it. Otherwise save and close it and Connect again. |
Design moved? Connect to … | The design file was moved or renamed. Confirm to connect to the new path, or cancel. |
solidcraft-root-ambiguous | Several roots in the asset fit the design. Delete the ones you do not need, then connect again. |
start SolidCraft on the CONNECT machine … | Your browser tab runs on another machine. Start solidcraft --control 7879 on the CONNECT machine. |
wrong-instance | Another SolidCraft holds the port. Start yours on another port and connect with that port. |
solidcraft-joint-unsupported | Only revolute and slider joints, arranged as a tree, become Drives. |
solidcraft-joint-removed | The joint is gone; the Drive was kept for your settings. Remove drive if you do not need it. |
Limits
Section titled “Limits”- About 40 bodies sync in under a second; more take longer (200 bodies ≈ 4 s).
- One SolidCraft link per asset. A component placed several times mirrors nested parts for its first placement only. Motion links are not mirrored.
- One colour per body: colours on single faces are not shown.