Threecrate Mcp

io.github.rajgandhi1由 GitHub 帳號 rajgandhi1 發布v0.2.2更新於 Nov 6, 2026

Clean, align, measure and repair 3D scans and meshes; make scans printable as STL.

已驗證STDIO僅桌面開發者工具媒體與設計

概覽

AI 產生的概覽

本機 MCP 伺服器,用來處理 3D 點雲與網格:檢查、清理、對齊、量測、重建與修復掃描資料,並可匯出可列印的 STL。

可以做什麼
  • 檢查點雲與網格:點數、邊界、點間距、孔洞、是否水密、表面積、體積以及能否直接 3D 列印
  • 轉換格式並清理點雲:體素降取樣、移除離群點、估算法向量
  • 對齊與編輯幾何:註冊對齊兩份點雲、套用 4x4 變換、分割平面、擷取叢集
  • 建立與優化網格:由點雲重建網格、簡化與平滑網格
  • 將點雲或網格算繪成圖片,支援前後對照,方便自行檢查結果
  • 為 3D 列印修復掃描資料,寫出 STL 並回傳前後對照圖
適用情境
當資料夾中有 3D 掃描或網格檔案,想請助理協助清理、對齊兩份掃描、量測或檢查、把點雲轉成網格,或為 3D 列印準備模型時適用。
執行需求
以 stdio 在本機執行;需要 uv(供 uvx 使用)或 Python 3.10+,也可用 pip 安裝此套件。工具只能在單一工作區資料夾內讀寫:伺服器啟動所在目錄,或透過 --root(或 THREECRATE_MCP_ROOT)指定的路徑。未宣告需要帳號或 API 金鑰。
安裝前請注意
工具會在工作區資料夾中寫入新檔案;既有檔案僅在 overwrite=true 時才會被覆寫。超過 5000 萬點的點雲會被拒絕,除非調高上限。結果以檔案形式寫出,每次輸出都會佔用磁碟空間。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Threecrate Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

threecrate-mcp

An MCP server that lets AI agents work with 3D point clouds and meshes using threecrate. Ask your agent to "clean up scan.ply", "align these two scans" or "turn this cloud into a mesh", and it calls these tools.

Works with any MCP client: Claude Code, Claude Desktop, Codex, OpenCode, Cursor, Gemini CLI and others.

Setup

You need uv (for uvx) or Python 3.10+.

Claude Code (from your project folder):

bash
claude mcp add threecrate -- uvx threecrate-mcp

Codex (from your project folder):

bash
codex mcp add threecrate -- uvx threecrate-mcp

OpenCode (opencode.json in your project):

json
{  "$schema": "https://opencode.ai/config.json",  "mcp": {    "threecrate": { "type": "local", "command": ["uvx", "threecrate-mcp"], "enabled": true }  }}

Claude Desktop, Cursor and other apps (their MCP JSON config). These apps don't start servers in your project folder, so pass it with --root:

json
{  "mcpServers": {    "threecrate": {      "command": "uvx",      "args": ["threecrate-mcp", "--root", "/path/to/your/scans"]    }  }}

Without uv, install with pip install threecrate-mcp and use threecrate-mcp as the command.

How it behaves

  • One workspace folder. Tools only read and write inside it: the folder the server starts in, or --root (also THREECRATE_MCP_ROOT). Paths are relative to it.
  • New files, never overwrites. Results go to a new file next to the input (for example scan.downsampled.ply) unless you name one. Inputs are never overwritten, and existing files only with overwrite=true.
  • Summaries, not points. Tools return counts, bounds, transforms and errors. Point data stays in files, so a big scan doesn't flood the agent's context.
  • Size limit. Clouds above 50 million points are refused (--max-points or THREECRATE_MCP_MAX_POINTS to change).

Tools

ToolWhat it does
inspect_point_cloudPoint count, bounds, spacing, and suggested voxel sizes and radii
inspect_meshMesh health and size: holes, pieces, watertight, area, volume, printable or not (and why)
convertChange format (PLY, PCD, XYZ, CSV; meshes PLY, OBJ, STL)
downsampleVoxel grid downsampling
remove_outliersStatistical or radius outlier removal
estimate_normalsSave per-point normals to a PLY
registerAlign two clouds: ICP, point-to-plane, GICP, or global (no starting pose needed)
transformApply a 4x4 rigid transform
segment_planeFind a floor, wall or table plane; split the cloud
extract_clustersSplit a cloud into separate objects
reconstructPoint cloud to mesh: auto, Poisson, ball pivoting, alpha shape, Delaunay
simplify_meshReduce triangle count
smooth_meshTaubin, Laplacian or HC smoothing
renderPicture of one or more files (before and after) from several angles, returned to the agent; holes show in orange
repair_for_printMake a scan or mesh printable (junk, floor, holes, missing base, face direction, size); writes STL and returns a before/after picture

Readable point cloud formats: PLY, PCD, XYZ, CSV (and others threecrate supports). Writable: PLY, PCD, XYZ, CSV.

Agent Skill

If you would rather not run a server, the threecrate skill teaches an agent to do the same work with short Python scripts. See INSTALL.md for Claude Code, Codex, Gemini CLI, OpenCode and Cursor.

Development

bash
pip install -e ".[test]"pytest

來源:threecrate-mcp/README.md,提交 58f3da3

工具

15

inspect_point_cloud

Summarize a point cloud file: point count, bounds, centroid, median point spacing, and suggested voxel sizes and radii for the other tools. Call this first on any new cloud.

輸入參數path必填

inspect_mesh

Check a mesh's health and measure it: holes, separate pieces, non-manifold or flipped faces, watertight, size, surface area, volume, and whether it can be 3D printed as is (with the reasons if not).

輸入參數path必填

convert

Convert a point cloud (PLY, PCD, XYZ, CSV) or mesh (PLY, OBJ) to another format.

輸入參數kindpath必填output必填overwrite

downsample

Reduce point density with a voxel grid. Good before registration or reconstruction. 2x the median spacing is a light pass, 5x a strong one.

輸入參數path必填outputoverwritevoxel_size必填

remove_outliers

Remove stray points (sensor noise, reflections) from a point cloud.

輸入參數path必填methodoutputradiusoverwritestd_ratiok_neighborsmin_neighbors

estimate_normals

Estimate a surface normal for every point and save them in a PLY file. Not needed before register or reconstruct; those estimate normals themselves.

輸入參數path必填outputoverwritek_neighborsnormal_orientation

register

Align a source point cloud to a target. Returns the 4x4 rigid transform (source to target), fit error (mse, rmse) and convergence.

輸入參數methodsource必填target必填overwritevoxel_sizealigned_outputmax_iterationsinitial_transformmax_correspondence_distance

transform

Apply a 4x4 rigid transform to every point of a cloud.

輸入參數path必填outputoverwritetransform必填

segment_plane

Find the dominant plane (floor, wall, table) with RANSAC. Returns its equation and how many points lie on it; can split the cloud in two.

輸入參數path必填overwriteinliers_outputmax_iterationsoutliers_outputdistance_threshold

extract_clusters

Split a cloud into separate objects by distance (Euclidean clustering). Often run after segment_plane removes the floor.

輸入參數path必填max_filesoverwritetolerance必填output_dirmax_cluster_sizemin_cluster_size

reconstruct

Build a triangle mesh from a point cloud. Clean and downsample first for better results. Poisson always closes the surface; set trim_distance for scans that only see one side.

輸入參數path必填alphadepthmethodoutputradiusnormals_koverwritetrim_distancenormal_orientation

simplify_mesh

Reduce a mesh's triangle count while keeping its shape (quadric decimation).

輸入參數path必填outputoverwritereduction_ratiopreserve_boundary

smooth_mesh

Smooth a noisy or bumpy mesh, for example after reconstruct. Taubin keeps the overall size; Laplacian smooths harder but shrinks the mesh.

輸入參數path必填methodoutputoverwriteiterations

render

Draw point clouds or meshes and return the picture, so you can check a result yourself: holes or flipped faces show as orange, a missing base shows in the bottom view. Pass two files to compare before and after.

輸入參數upsizepaths必填viewsoutputoverwrite

repair_for_print

Make a scan or mesh 3D-printable: removes stray points and loose bits, optionally the floor, closes holes (including a missing base), fixes face direction, reduces the size and converts to millimetres. Writes an STL and returns what it did, the health before and after, and a before/after picture to check.

輸入參數uppath必填depthunitsoutputoverwriteremove_floortarget_faces

版本歷史

1
  1. v0.2.2最新Nov 5, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分