JO

jhacksman/openscad-mcp-server

Developer tools

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る

215 stars 32 forks 品質 76 トレンド 26MIT

jhacksman/openscad-mcp-serverは、[[T0]からインポートされたMCPサーバー候補です。

概要

jhacksman/openscad-mcp-serverは、[[T0]からインポートされたMCPサーバー候補です。

概要(AI 翻訳)

OpenSCADのソースや明示的なプリミティブ次元を編集可能なSCAD、STLジオメトリ、4つのPNGプレビューに変換するローカルMCPサーバーです。接続されたアシスタントは複雑な設計のためにSCADを書くことができます。このサーバーはインストールされたOpenSCAD実行ファイルでそれをコンパイルし、レンダリングします。

ステータス: サポートされた実装はsrc/openscad_mcpにあります。前の画像生成、CUDA再構築、リモート処理、プリンタコードはlegacy/にアーカイブされています。未完成であり、インストールされたサーバーの一部ではありません。監査およびマシンテストの結果をご覧ください。

インストール

Python 3.11+とOpenSCADが必要です。APIキー、CUDA、Open3D、または個別の画像レンダラーは不要です。

公式ダウンロードからOpenSCADをインストールしてください。macOSでは、現在のApple Silicon/Intelネイティブビルドが以下のもので利用可能です:

Debian/Ubuntuでは、sudo apt-get install openscadがディストリビューションパッケージをインストールします。LinuxのPNGレンダリングにはXディスプレイが必要な場合があります。サーバー周辺でxvfb-run -aを使うか、ヘッドレスマシンでテストします。WindowsユーザーはOPENSCAD_EXECUTABLEをopenscad.exeの全パスに設定できます。

あるいは、python -m pip install .で仮想環境にインストールし、openscad-mcpを実行する方法もあります。「要件。

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。

README

以下は原文 README の抜粋です。原文を見る。

OpenSCAD MCP Server

A local MCP server that turns OpenSCAD source or explicit primitive dimensions into editable SCAD, STL geometry, and four PNG previews. The connected assistant can write SCAD for complex designs; this server compiles and renders it with the installed OpenSCAD executable.

Status: the supported implementation is in src/openscad_mcp. The previous image generation, CUDA reconstruction, remote processing, and printer code is archived in legacy/. It is unfinished and is not part of the installed server. See the audit and machine test results.

Install

Requires Python 3.11+ and OpenSCAD. No API keys, CUDA, Open3D, or separate image renderer are required.

Install OpenSCAD using the official downloads. On macOS, the current native Apple Silicon/Intel build is available with:

brew install --cask openscad@snapshot
openscad --version

On Debian/Ubuntu, sudo apt-get install openscad installs the distribution package. Linux PNG rendering may need an X display; use xvfb-run -a around the server or tests on a headless machine. Windows users can set OPENSCAD_EXECUTABLE to the full path of openscad.exe.

git clone https://github.com/jhacksman/OpenSCAD-MCP-Server.git
cd OpenSCAD-MCP-Server
uv sync --locked
uv run openscad-mcp --help

Alternatively, install into a virtual environment with python -m pip install . and run openscad-mcp. requirements.txt installs this same package. uv.lock pins the tested dependency resolution; the project metadata permits compatible updates.

On an external filesystem that cannot create symlinks, put the environment on the internal disk:

export UV_PROJECT_ENVIRONMENT="$HOME/.cache/openscad-mcp-venv"
uv sync --locked

Docker and Jetson

A headless stdio image is available through the root Dockerfile. See Docker setup and verification for build commands, MCP client configuration, persistent model storage, and Glama listing requirements. The image needs no GPU.

For the hardware question in issue #19, see Jetson Orin Nano and CUDA. The supported server does not use CUDA; the archived reconstruction prototype is not restored by this Docker support.

Connect an MCP client

Stdio is the default. Configure the client to launch the server process, using absolute paths:

{
  "mcpServers": {
    "openscad": {
      "command": "/absolute/path/to/venv/bin/openscad-mcp",
      "args": ["--output-dir", "/absolute/path/to/models"]
    }
  }
}

For clients supporting Streamable HTTP:

uv run openscad-mcp --transport http --port 8000

The MCP endpoint is http://127.0.0.1:8000/mcp. / is server information; /health reports the OpenSCAD version and primitive defaults. HTTP also serves preview pages and downloads. In stdio mode, use returned absolute file paths or get_model_preview; there is no HTTP listener.

Tools

GitHub で README 全文を見る

インストール

This server does not publish a one-line install command.

Open the repository installation guide MCP 初心者?mcpskill.org のガイドから始めましょう →

設定

{ "mcpServers": { "openscad": { "command": "/absolute/path/to/venv/bin/openscad-mcp", "args": ["--output-dir", "/absolute/path/to/models"] } } }