Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Openscad Wasm

FreeNot checked

An MCP server that enables validating, exporting, previewing, and analyzing OpenSCAD models via a WASM-based OpenSCAD runtime, with secure file management and D

GitHubEmbed

About

An MCP server that enables validating, exporting, previewing, and analyzing OpenSCAD models via a WASM-based OpenSCAD runtime, with secure file management and Docker Compose deployment.

README

An OpenSCAD Model Context Protocol (MCP) server that runs OpenSCAD in Node.js/TypeScript using WebAssembly (openscad-wasm). No native OpenSCAD installation on the host is required.

Quick Start

1. Run with Docker Compose

By default, the server runs in Docker with restricted privileges:

docker compose up --build

The MCP server listens on http://127.0.0.1:3333/mcp.

2. Configure MCP Client

Add the server to your MCP client configuration (e.g., claude_desktop_config.json):

Using HTTP Transport (default):

{
  "mcpServers": {
    "openscad-wasm": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/client-cli", "http://127.0.0.1:3333/mcp"]
    }
  }
}

Available Tools

OpenSCAD Tools

  • openscad_validate: Validates SCAD code and returns syntax/logical diagnostics.
  • openscad_export_model: Exports model to stl, 3mf, off, csg, dxf, or svg.
  • openscad_render_preview: Generates a server-side WebP render or an interactive 3D preview link.
  • openscad_create_preview_link: Generates a URL to open a browser-based interactive 3D viewer.
  • openscad_analyze_model: Computes the model's bounding box and triangle count.

Workspace Tools

  • workspace_list_files: Lists files in the container workspace.
  • workspace_read_file: Reads a file from the workspace.
  • workspace_write_file: Writes a file to the workspace.
  • workspace_delete_file: Deletes a file from the workspace.

Artifacts

Renders and model exports are saved under ./workspace/artifacts on the host. The MCP tool responses return metadata: path, filename, format, mimeType, sizeBytes, and sha256.

Configuration

Customize runtime limits (memory, timeouts, directories) by copying .env.example to .env and editing the environment variables.

Known Limitations

  • Performance: Complex models can be slow or memory-intensive inside WebAssembly.
  • Visuals: WebP previews do not preserve OpenSCAD colors, GUI helpers, or 2D camera perspectives.
  • Assets & Libraries: Fonts and external libraries are not bundled; you must upload necessary files to the workspace first.
  • Format Support: Build-specific limits may affect exports (e.g., 3mf is currently unsupported).

License

MIT License. See LICENSE for details. Dependencies (openscad-wasm, sharp) carry their own respective licenses.

from github.com/suapapa/openscad-wasm-mcp

Installing Openscad Wasm

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/suapapa/openscad-wasm-mcp

FAQ

Is Openscad Wasm MCP free?

Yes, Openscad Wasm MCP is free — one-click install via Unyly at no cost.

Does Openscad Wasm need an API key?

No, Openscad Wasm runs without API keys or environment variables.

Is Openscad Wasm hosted or self-hosted?

A hosted option is available: Unyly runs the server in the cloud, no local setup required.

How do I install Openscad Wasm in Claude Desktop, Claude Code or Cursor?

Open Openscad Wasm on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Openscad Wasm with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs