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).
Related MCP server: CLO3D MCP Server
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
Maintenance
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
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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