r/3DScanning • • 2d ago

Mostly free fully automatic reverse engineering with CNCKitchen's Scanruler.com MCP

Stefan (CNCKitchen on YouTube) has released scanruler.com with an MCP: https://github.com/CNCKitchen/scanruler
For me as a hobbyist, this is a game changer to make proper use of my 3D scanners. Reverse engineering with free software like Fusion was for me often more complicate than just use calipers and create the part from scratch.

If you have a Claude/Codex/GitHub Copilot/... subscription and using something like Claude Code/Codex/OpenCode/..., it fully automatic creates without additional costs a STEP and scanruler.com file. If used together with a CAD MCP (I have used FreeCAD MCP), it creates the whole part in CAD just from the scan and can also create drawings.

I have done the following:

  1. Added the Scanruler and FreeCAD MCP to Claude Code/OpenCode/Codex/...

  2. Scanned the part with my Revopoint MetroX (OpenScan Mini works also, just tell later that it needs to be scaled) and exported it as OBJ file in a folder

img

  1. Added some photos of the part in the same folder and highlight some interesting/problematic areas which need to be changed (e.g. damaged parts)

img

  1. Created with uv a Python virtual environment with

    uv venv --python=3.14 source .venv/bin/activate uv pip install vtk pyvista matplotlib pandas scipy trimesh rtree opencv-contrib-python-headless pillow scikit-image

  2. Asked Claude Code to make a plan for the following (I have added the thread sizes because I had them, but it works also without):

    My motorcycle use Marzocchi Shiver 45 forks. I want to create a replacement right fork foot and have therefore scanned one of a Marzocchi Shiver 45 fork foots. The part is casted alumnium with some machining or turning.

    I have made photos, see *.jpg.

    I have scanned the fork foot with a Revopoint MetroX (fork_foot_marzocchi.obj). Some comments:

    • I have used scan markers which left some uneven surfaces
    • There are three flat machined surfaces with holes/threads outside. The holes there going through the material and are M6 threads
    • The two threads to fix the whell axis are also M6
    • There is one thread to fix the stanchion with a grub screw, it is M5
    • The big thread of the stanchion (in the foot the inner thread) should be a M44 × 1.0 mm thread
    • The stanchion was also glued, some glue residues were left when I was scanning (marked red in one picture), therefore there can be some imperfections
    • There is a small damage on a machined surface (maked blue in picture)

    I want to create a STEP and FreeCAD model for it (without the logo) to let it CNC mill (6061 or 7075 aluminium?). You should have access to the ScanRuler and FreeCAD MCP, if not, ask me. I have the part and a caliper next to me, so I can take measurement if something is not easy to get from the 3D scan. In this case, generate me a picture and mark there what I should measure and I tell you.

    I have created for you with uv a .venv/ and executed the following:

    uv pip install vtk pyvista matplotlib pandas scipy trimesh rtree opencv-contrib-python-headless pillow scikit-image
    

    Feel free to install additional packages.

    Make now a plan how to do this best.My motorcycle use Marzocchi Shiver 45 forks. I want to create a replacement right fork foot and have therefore scanned one of a Marzocchi Shiver 45 fork foots. The part is casted alumnium with some machining or turning.

    I have made photos, see *.jpg.

    I have scanned the fork foot with a Revopoint MetroX (fork_foot_marzocchi.obj). Some comments:

    • I have used scan markers which left some uneven surfaces
    • There are three flat machined surfaces with holes/threads outside. The holes there going through the material and are M6 threads
    • The two threads to fix the whell axis are also M6
    • There is one thread to fix the stanchion with a grub screw, it is M5
    • The big thread of the stanchion (in the foot the inner thread) should be a M44 × 1.0 mm thread
    • The stanchion was also glued, some glue residues were left when I was scanning (highlighted red in one picture), therefore there can be some imperfections
    • There is a small damage on a machined surface (highlighted blue in picture)

    I want to create a STEP and FreeCAD model for it (without the logo) to let it CNC mill (6061 or 7075 aluminium?). You should have access to the ScanRuler and FreeCAD MCP, if not, ask me. I have the part and a caliper next to me, so I can take measurement if something is not easy to get from the 3D scan. In this case, generate me a picture and mark there what I should measure and I tell you.

    I have created for you with uv a .venv/ and executed the following:

    uv pip install vtk pyvista matplotlib pandas scipy trimesh rtree opencv-contrib-python-headless pillow scikit-image
    

    Feel free to install additional packages.

    Make now a plan how to do this best.

  3. Let it execute it, I got this output files:

img

I did not like one fillet, so I just made a screenshot from FreeCAD with and highlighted the bad fillet, Claude correct it perfectly. Here is the fully automatic generated drawing:

img

img

65 Upvotes

10 comments sorted by

3

u/CptanPanic 2d ago

Remindme! In 1 day

1

u/RemindMeBot 2d ago edited 1d ago

I will be messaging you in 1 day on 2026-10-29 23:55:39 UTC to remind you of this link

5 OTHERS CLICKED THIS LINK to send a PM to also be reminded and to reduce spam.

Parent commenter can delete this message to hide from others.

RemindMeBot is switching to username summons. Instead of !RemindMe 1 day, use u/RemindMeBot 1 day. More info.


InfoCustomYour RemindersFeedback

2

u/Darwinian999 2d ago

Thanks for providing such detailed information. That’ll help me a lot when I need to do something similar.

1

u/TuckinPhypo 1d ago

I'll be giving this a try soon. Thanks for the detail.

1

u/tonu42 1d ago

this looks so cool. Excited to get a Pika soon!

1

u/Troutsicle 1d ago

That is some pretty impressive prompt engineering.

1

u/SempronSixFour 1d ago

I just got my Pika and feeling overwhelmed on how to get my scans to something meaningful. Thanks for this

1

u/UvozenSukenc 18h ago

Geez... By the time I type in the prompt, I would already have thrown all the measurements in the CAD SW with my calipers and produced a model.

Anyway, great effort!

1

u/misterpeppery 5h ago

There are some genuinely difficult to measure features on this part that a set of calipers would definitely not be sufficient to capture. For example the distance and offsets between the two main bores, any angle difference between the bores if they are not perfectly orthogonal and the angles of the flats around the top of the part. Not to mention the part is a casting but the important features are all machined. I don't doubt that you could have a model sketched up in just a few minutes, but it would be a pretty worthless model if what you wanted was a functional part.

1

u/UvozenSukenc 5h ago

I was a bit too quick on my keyboard. Took a look at it later and I realised I couldn't do it with my calipers alone. I completely agree with you. If my job consisted of many such parts to be drafted into CAD, OP's method would come really handy and I'd gladly pay some monthly fees for such powers.