3D

Provides an OpenSCAD-powered MCP server to create, transform, combine, and export 3D models via natural language.
  • javascript

0

GitHub Stars

javascript

Language

1 month ago

First Indexed

3 weeks ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "jagjerez-org-3d-mcp-server": {
      "command": "3d-mcp-server",
      "args": [],
      "env": {
        "OPENSCAD_BIN": "openscad",
        "SCAD_WORK_DIR": "/tmp/3d-mcp-work"
      }
    }
  }
}

You can generate and export 3D models by guiding an MCP-compatible AI client to build OpenSCAD-powered scenes. This server translates natural language requests into chained 3D operations, enabling you to create, transform, combine, and export models with ease.

How to use

To use this MCP server, start it from your preferred MCP-enabled AI client and point the client to the local server binary. You can then issue natural language requests to create primitives, apply transforms, combine objects, and export results to common 3D formats. The server maintains a scene graph in memory and converts each action into clean OpenSCAD code, which is then rendered or exported as needed.

How to install

Prerequisites for this server include Node.js for the MCP runtime and OpenSCAD for export and preview rendering.

npm install -g @jagjerez-org/3d-mcp-server

# Prerequisites for OpenSCAD rendering (required for export and preview):
# Ubuntu/Debian
sudo apt install openscad

# macOS
brew install openscad

# Windows — download from https://openscad.org/downloads.html

> Note: OpenSCAD is only required for export and preview tools. Scene building and SCAD code generation work without it.

Additional setup and usage notes

Configure your MCP client to connect to the server. The Quick Start examples show configuring Claude Desktop or Cursor to invoke the MCP server when issuing requests. You typically specify the server command and then issue a request such as asking to create a primitive, apply a transformation, and export the result.

Example client configuration (local run) would reference the server binary directly. You can reuse these patterns in any MCP-capable client by replacing the specific client adapter with the appropriate integration for your environment.

Environment and runtime notes

The server uses OpenSCAD to render final results for export and preview. Ensure the OpenSCAD binary is available in your PATH when you plan to use export or preview tools.

Tips for common tasks

  • To create basic shapes, request primitives such as a cube, sphere, cylinder, cone, or torus. Combine them using boolean operations like union, difference, or intersection. Render previews or export to formats like STL or OBJ when needed.

  • Use transforms to translate, rotate, scale, mirror, or color objects. Maintain a clean scene by listing objects, applying operations, and exporting only after your final shape is assembled.

Security and maintenance considerations

Keep your server up to date by installing the latest MCP server package from your trusted source. Run the server in a trusted environment and follow your organization’s security practices when exposing any local endpoints to clients.

Troubleshooting

If export or preview fails, verify that OpenSCAD is correctly installed and accessible from your environment. Check the environment variable OPENSCAD_BIN if you customize the binary path, and ensure your working directory permits OpenSCAD operations.

Notes

This server focuses on 3D model generation via OpenSCAD. It supports creating primitives, applying transformations, performing boolean operations, and exporting results to standard 3D formats. The server keeps an in-memory scene graph and generates OpenSCAD code for each action.

Available tools

create_primitive

Create 3D primitive shapes such as cube, sphere, cylinder, cone, or torus.

create_text

Create 3D extruded text.

create_polyhedron

Create a custom mesh from defined vertices and faces.

custom_scad

Insert raw OpenSCAD code directly into the scene.

transform

Apply translate, rotate, scale, mirror, or color to an object.

boolean_op

Perform union, difference, or intersection on multiple objects.

linear_extrude

Extrude a 2D shape into 3D via linear extrusion.

rotate_extrude

Create a solid of revolution from a 2D profile.

status

Check OpenSCAD installation and current scene information.

scene_list

List all objects currently in the scene.

scene_clear

Clear all objects from the scene.

remove_object

Remove a specific object by its identifier.

get_scad

Retrieve the full OpenSCAD source code for the current scene.

save_scad

Save the current scene as a .scad file.

export

Export the scene to formats such as STL, OBJ, 3MF, AMF, OFF, DXF, SVG, or CSG.

preview

Render a PNG preview image of the current scene.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational