← All posts
Tools March 6, 2026

Mesh Medic - batch repair STL files on Windows

Mesh Medic feature overview: batch repair for STL and OBJ files, automatic backups, and multithreaded processing

TL;DR: Mesh Medic is a free Windows tool that batch repairs broken STL and OBJ files. Point it at a folder, it fixes what is broken, skips what is fine, and backs up your originals before it touches anything. Current version is v2.3.0. It is unsigned, so scan it on VirusTotal yourself. I genuinely encourage that.


Hi friends!

If you have ever sliced a file, hit print, and come back to spaghetti, you know the pain. Flipped normals, non manifold edges, invisible holes. Now multiply that by an entire library. Checking each file by hand? No thanks.

So I built something to fix that.

🩺 Meet Mesh Medic

Mesh Medic is a free, lightweight Windows tool that batch repairs your STL and OBJ files. Point it at a folder and it handles the rest.

Under the hood it runs two engines in sequence. A fast geometry engine goes first and clears most problems on its own. Anything it cannot settle gets handed to Windows 3D Builder, first for a quick fix and then for a full one. Files that are already healthy are left completely alone, not even re saved.

  • STL and OBJ, with material libraries, groups and texture sidecars carried through where possible
  • Batch repairs entire folder trees, subfolders included
  • Multithreaded, so a batch that used to take an hour now takes minutes
  • Only touches broken files, healthy meshes are left as they are
  • Staged writes, every repair is written to a temporary file and checked before it replaces your original
  • Auto backup and crash recovery, an interrupted run restores itself instead of leaving a mess
  • Scale aware, tolerances come from each mesh rather than assuming millimetres, so models in any unit repair correctly
  • Output format control, keep each file's original extension or force everything to STL or OBJ
  • Live thread matrix, a colour coded grid showing what every CPU core is doing in real time
  • Processing history, past sessions with date, folder, stats and duration, plus a per folder repair log
  • Quick filters, select folders by name in one click
  • Nine languages, English, German, French, Spanish, Italian, Brazilian Portuguese, Japanese, Korean and Chinese, auto detected from Windows
  • Three themes, light, dark or follow your system, all of them contrast checked
  • Auto update check and a built in feedback button for bugs and feature requests

💻 What you need

  • Windows 10 build 19041 or newer, or Windows 11
  • Microsoft 3D Builder (free). Mesh Medic checks for it on launch. The fast engine runs without it, but the stubborn cases need it, so install it if you can. Microsoft has made it awkward to find in the Store, so if the page will not give you an install button there are mirrors around, this one among them.
  • Nothing else. The .NET runtime ships inside the download.

Download Mesh Medic

There is no installer. Download the zip, pull MeshMedic.exe out of it, double click. That is the whole setup.


⚙️ Three ways to use it

🖱️ GUI. Double click MeshMedic.exe, drop a folder onto the landing page or browse to one, scan, select, repair. There is a setup button inside the app that adds it to your PATH.

⌨️ Command line. MeshMedic "C:\My Models\Minis". Add --timeout 120 for a longer per file limit, or --output-format obj to force everything to one format. auto, stl and obj are the options.

📂 Terminal. Navigate to your model folder, right click, Open in Terminal, type MeshMedic. Done.

🔒 Safety and privacy

Mesh Medic is a plain .exe in a zip. No installer, no account, no config file, no background processes. Please scan it on VirusTotal before you run it. I would rather you checked than took my word for it.

One thing to expect: the release is unsigned, so Windows SmartScreen will probably warn you the first time. Code signing certificates cost more per year than this project will ever make, so that warning is going to stay for a while.

On launch the app sends one small ping: a randomly generated ID and the app version, so I can see roughly how many people are using it. Cloudflare sees the source IP for rate limiting, and that is it. No file names, no folder paths, no model names, nothing personal. Crash reports are opt in, and the feedback form only ever contains what you typed into it. If you are offline the ping fails silently and everything works exactly the same.

🆕 What has changed

New versions get announced right here, and the app checks for updates on launch. Full notes for every release are on the releases page.

v2.3.0 is the current version. Repairs are written to a staging file and validated before they replace anything, converted output can no longer overwrite an existing file, and an interrupted run restores its backups on its own. Cancel now actually cancels, in both engines, and closing the window waits for cleanup instead of scattering half finished files. There is a Home button in the title bar, the Browse button works from the keyboard, and all three themes now meet WCAG AA contrast in light and dark. File paths were removed from diagnostics and crash reporting became opt in.

v2.2.0 added OBJ support alongside STL, with materials, groups and texture sidecars preserved where possible, and an output format setting. Tolerances became scale aware instead of assuming millimetres. Batches now skip files that are locked or unreadable rather than aborting the whole run.

v2.1.0 rebuilt the interface: drag and drop landing page, the live thread matrix, the completion screen with engine breakdown and timings, processing history, and per folder repair logs.

v2.0.0 was the big one for speed. Multithreading and the three stage repair pipeline took a test batch from 63 minutes down to about five and a half.

☕ Like it?

Mesh Medic is completely free and it is going to stay that way. If it saves you some headaches and a few failed prints, you can toss a coffee my way. There is a button in the app, or use the one below. No pressure. 😊

☕ Buy me a coffee


If you run into anything or have an idea for it, use the feedback button inside the app or reach out through our contact form.

Now go print something beautiful! 🖨️✨

With sparkles and freshly repaired meshes,
Matthias
Remerlinds