cloudcompare-mcp
This server enables AI assistants to process, analyze, and manipulate 3D point clouds and meshes via natural language using CloudCompare (MCP).
Check Installation (
get_cloudcompare_info): Verify CloudCompare is installed, retrieve its version and path.Inspect Files (
load_cloud_info/read_cloud_metadata): Return point count, bounding box, extent, density, and scalar field presence (RGB, intensity, normals).Visualize Clouds (
visualize_cloud): Render top/front/side views as base64 PNG with color modes:height,rgb,intensity.Subsample (
subsample): Reduce density via random, spatial, or octree methods.Cloud-to-Cloud Distances (
compute_cloud_to_cloud_distances): Calculate nearest-neighbor distances between two clouds.Cloud-to-Mesh Distances (
compute_cloud_to_mesh_distances): Compute signed distances from a point cloud to a reference mesh (e.g., scan vs. CAD).ICP Registration (
icp_registration): Align two clouds iteratively, returning the transformation matrix and RMS error.Normal Estimation (
compute_normals): Estimate surface normals using LS, quadric, or triangulation methods.Scalar Field Filtering (
filter_by_scalar_field): Keep points within a scalar value range (height, intensity, distance, etc.).Outlier Removal (
statistical_outlier_removal): Remove noise using a k-nearest-neighbor statistical filter.Merge Clouds (
merge_clouds): Combine multiple point clouds into one.Format Conversion (
convert_format): Convert between LAS, LAZ, PLY, PCD, XYZ, ASC, TXT, E57, OBJ, BIN, SHP.Custom Commands (
run_cloudcompare_command): Execute arbitrary CloudCompare CLI commands for advanced operations.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@cloudcompare-mcpLoad scan.las and subsample spatially to 5 cm"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
cloudcompare-mcp
Cross-platform Model Context Protocol (MCP) server for CloudCompare — lets AI assistants (Claude, etc.) process 3D point clouds and meshes via natural language.
Features
Native tools (no CloudCompare required)
Tool | Description |
| Parse a cloud and return point count, bounding box, extent, density, RGB/intensity/normals presence |
| Render top / front / side views + metadata panel as a base64 PNG the model can see directly |
CloudCompare tools (requires CloudCompare installation)
Tool | Description |
| Check installation & version |
| Inspect file stats via CloudCompare |
| Reduce density — random / spatial / octree |
| C2C nearest-neighbour distances |
| C2M signed distances |
| Align two clouds with ICP |
| Estimate surface normals |
| Threshold points by scalar value |
| Remove noise with SOR filter |
| Merge multiple clouds into one |
| Convert between LAS/LAZ, PLY, PCD, XYZ, E57, OBJ… |
| Escape hatch for arbitrary CLI commands |
How visualize_cloud works
visualize_cloud reads the point cloud natively in Python, renders a 4-panel figure, and returns an ImageContent (base64 PNG) alongside a JSON description. The model can see the image directly — no display or CloudCompare needed.
┌─────────────────┬─────────────────┐
│ Top (XY) │ Front (XZ) │
│ │ │
├─────────────────┼─────────────────┤
│ Side (YZ) │ Metadata stats │
│ │ (pts, bbox, │
│ │ density, …) │
└─────────────────┴─────────────────┘Color modes: height (viridis Z gradient, default) · rgb (stored RGB) · intensity (plasma).
Requirements
Python ≥ 3.10
uv (recommended) or pip
CloudCompare ≥ 2.12 — download (only for CloudCompare tools)
Python dependencies installed automatically: numpy, matplotlib, laspy[lazrs], plyfile.
Installation
Quickstart with uvx (no install needed)
uvx cloudcompare-mcpInstall locally
pip install cloudcompare-mcp
cloudcompare-mcpCloudCompare binary detection
The server looks for CloudCompare in this order:
CLOUDCOMPARE_PATHenvironment variableSystem
PATH(cloudcompare/CloudCompare)Platform default locations:
Platform | Default path |
macOS |
|
Windows |
|
Linux |
|
Set CLOUDCOMPARE_PATH to override:
export CLOUDCOMPARE_PATH="/opt/custom/cloudcompare"MCP client configuration
Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"cloudcompare": {
"command": "uvx",
"args": ["cloudcompare-mcp"]
}
}
}Claude Code (~/.claude/settings.json)
{
"mcpServers": {
"cloudcompare": {
"command": "uvx",
"args": ["cloudcompare-mcp"]
}
}
}With a custom binary path:
{
"mcpServers": {
"cloudcompare": {
"command": "uvx",
"args": ["cloudcompare-mcp"],
"env": {
"CLOUDCOMPARE_PATH": "/path/to/cloudcompare"
}
}
}
}Usage example
Once configured in Claude Desktop or Claude Code:
"Load my scan.las file and subsample it spatially to 5 cm, then remove statistical outliers."
Claude will call the appropriate tools in sequence and report results.
Supported file formats
LAS · LAZ · PLY · PCD · XYZ · ASC · TXT · E57 · OBJ · BIN · SHP
License
MIT
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/yufeioptimal/cloudcompare-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server