threecrate: 3D scans and meshes for an agent

threecrate

A Rust skill and MCP server: an agent cleans a point cloud, closes holes, builds a mesh and saves a print-ready STL

  • 52 ★ on the repository
  • Last commit
  • MIT
MCP server

Extended access

Why this level

  • The tools read and create files in the workspace folder, and the skill runs Python scripts and installs a package into an environment
  • Source scans are not overwritten without an explicit overwrite=true
All reasons and checks

rajgandhi1/threecrate

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/threecrate

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • The tools read and create files in the workspace folder, and the skill runs Python scripts and installs a package into an environment
  • Source scans are not overwritten without an explicit overwrite=true

This is third-party code. Review the repository files before installing.

What it does

threecrate is a Rust library with Python bindings for point clouds and meshes. A skill and the threecrate-mcp server are built around it so an agent can handle a scan from a request like making table_scan.ply printable. It removes stray points and the floor, closes holes, adds a base, checks the result against a picture and writes an STL. The server exposes inspect_point_cloud, inspect_mesh, convert, downsample, remove_outliers, estimate_normals, register, transform, segment_plane, extract_clusters, reconstruct, simplify_mesh, smooth_mesh, render and repair_for_print. render draws a cloud or mesh from five views into one PNG with no GPU, with holes and inside-out faces in orange. The skill first measures the scan and sizes voxels and radii from the point spacing. The tools work in a single workspace folder and write results to a new file beside the input, overwriting nothing. They answer with summaries while the points stay in files and do not flood the context.

Who it is for. People who 3D-print from phone or LiDAR scans, and engineers who align and clean point clouds without Blender or MeshLab.

Good fit when

  • A smartphone scan fails the slicer because of holes, the table in frame and flipped faces
  • Before printing you must check whether the part in part.stl is printable and what is wrong with it
  • Two scans of one object must be aligned with no starting pose
  • You need to separate a floor or wall from a cloud and split it into objects
  • You need a mesh from a point cloud and fewer triangles

Not a fit when

  • You need CAD models with parameters and assemblies: threecrate handles scans and meshes and has no parametric parts
  • The cloud format is outside PLY, PCD, XYZ and CSV: writing other formats is not stated for the server
  • The cloud has more than 50 million points: the server refuses it by default
  • You need manual sculpting and textures like in Blender

Example request

Make table_scan.ply printable: remove the table, close the holes, add a base and show a before and after picture.

MCP

Transport
stdio
Authentication
not required

Environment variables

THREECRATE_MCP_ROOT
Workspace folder with scans, same as the --root flag
THREECRATE_MCP_MAX_POINTS
Point count limit, 50 million by default

Limitations

The server reads and writes clouds in PLY, PCD, XYZ and CSV, and meshes in PLY, OBJ and STL. It refuses clouds above 50 million points, and the --max-points flag changes the limit. You need uv or Python 3.10 or newer, the skill needs only Python 3.8, and on first use the agent installs threecrate into a virtual environment.

The 1.5 to 3.4 times advantage over Open3D was measured by the author on Windows, and a Linux container showed a different picture. LAS, LAZ and E57 in the library are enabled by separate build flags. Clients like Claude Desktop and Cursor need an explicit --root with the scans folder.

How to disable. For Claude Code run claude mcp remove threecrate; the plugin is removed with claude plugin uninstall threecrate@threecrate. Scan files stay unchanged because results go to new files.

FAQ

How do the skill and the MCP server differ?

The skill teaches the agent to solve the task with short Python scripts and walks it through guides: cleaning, alignment, printing. The MCP server gives the same operations as ready tools. Pick the server if you do not want the agent running scripts.

How do I install threecrate in Claude Code?

Install the plugin with claude plugin marketplace add rajgandhi1/threecrate and claude plugin install threecrate@threecrate. For the server alone, claude mcp add threecrate -- uvx threecrate-mcp is enough. The README has its own commands for Codex and Gemini CLI.

What does repair_for_print do?

It takes a point cloud or mesh and returns a watertight STL with a step-by-step report: removes junk and the floor, closes holes, adds a base and fixes face direction. Before that, analyze_mesh shows what exactly is broken.

Can the server overwrite my scan?

No. The result goes to a new file beside the input, for example scan.downsampled.ply. Overwriting needs overwrite=true, and the tools only work inside the workspace folder.

Do I need a GPU?

Not for render or the ordinary operations: the picture is drawn without a GPU. GPU acceleration lives in a separate wgpu crate, threecrate-gpu, but the server and skill do not depend on it.

Discussion

No questions or reviews yet.

A local MCP server and CLI: the agent writes JavaScript for a 3D model, checks it on renders and exports a GLB with source

MCP serverExtended access327Repository stars
Official

Three skills for the Meshy CLI: the agent makes 3D models from text and photos, textures them and prepares them for 3D printing

SkillExtended access108Repository stars

Open-source MCP server for 3D printing: an agent designs a part, slices it, queues the print and watches the printer

MCP serverBroad access244Repository stars

A remote MCP server with 40 tools: a 3D model from text or a photo, rigging, animation, retexturing and GLB checks

MCP serverBroad access278Repository stars

A skill rebuilds the object in a reference image as a procedural Three.js model written in code, not downloaded art

SkillMinimal access21.3KRepository stars

A Rust oil painting simulator and an easel with MCP: an agent paints with brushes, mixes paint and views the canvas

CLIExtended access158Repository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
threecrate: 3D scans and meshes for an agent (this card)nonot required52
OpenSCAD MCPnonot required170parametric modeling in OpenSCAD, while threecrate starts from scans
Blender Agent Skillsno1,014work through Blender, while here scans are processed without it

README in short

The README lists four problems with scans: unprintable scans, an agent blind to 3D, parameters set by guesswork, and the weight of Open3D and PCL. Then come Python and Rust references, a crate table, a comparison with Open3D and PCL, and doc links. A separate README for threecrate-mcp lists the tools.

README badge

Report a problem