Skip to main content
Glama
suapapa

openscad-wasm-mcp

by suapapa

openscad-wasm-mcp

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"]
    }
  }
}

Related MCP server: instant-meshes-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.

A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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/suapapa/openscad-wasm-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server