NexyFab設計パイプライン(テキスト→2D図面→3D 1次→2次→部品単位修正)をHTTP API、MCP(Claude等のAIクライアント)、CLIで使用できます。AIは理解のみ担当し、形状生成・検証(語彙・干渉・支持・構造ゲート)は決定論エンジンが実行します。すべての成果物は非法定(製作用実施図書+検討計算書)であり、許認可提出図書は有資格技術者の捺印領域です。
下ですぐにキーを作成し、リストを確認し、即座に取り消すことができます。サーバーはキーのハッシュ(sha256)と表示用プレフィックスのみ保存し、平文キーは発行瞬間に一度だけ表示されます — 必ず安全な場所(パスワードマネージャー・CIシークレット)に保存してください。紛失時は新キーを発行し、既存キーを取り消してください。
主要エンドポイント(すべてPOST・JSON)。応答のassemblyオブジェクトを次の呼び出しにそのまま渡すと修正チェーンが続き、編集ごとにREV履歴が自動蓄積されます。
| Endpoint | 機能 |
|---|---|
| /api/nexyfab/drawing/assemble | 自然言語 → 多部品アセンブリ(ゲート・1次骨格draft同封) |
| /api/nexyfab/drawing/compose | 自然言語 → 単一部品 intent+SCAD |
| /api/nexyfab/drawing/edit-part | 🎯 選択部品のみAI修正(対象外不変保証) |
| /api/nexyfab/drawing/face-drag | 面プッシュプル/寸法指定(AIなし・決定論) |
| /api/nexyfab/drawing/part-op | 複製・削除・移動・フィレット(決定論) |
| /api/nexyfab/drawing/export-step | B-rep STEPエクスポート |
| /api/nexyfab/drawing/package | 納品パッケージ |
# Common: send the nf_live_ key as a Bearer token. Responses use {"ok":true, "assembly":{…}, …}.
KEY=nf_live_XXXX ; BASE=https://nexyfab.com/api/nexyfab/drawing
# 1) Create { description } -> { ok, assembly, openscad?, parts?, interferences?, gateErrors? }
curl -s "$BASE/assemble/" \
-H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
-d '{"description":"two cylindrical columns, diameter 200 and height 400, on a 1000x800x20 base plate"}' > r1.json
# 2) AI-edit one part { assembly, partId, instruction } -> { ok, assembly, patch, note, interferences, massKg }
curl -s "$BASE/edit-part/" \
-H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
-d "{\"assembly\": $(jq .assembly r1.json), \"partId\":\"column_1\", \"instruction\":\"set height to 600\"}"
# 3) Set face dimensions directly (deterministic · no AI) face: x±/y±/z± (box) · axis±/radial (revolved)
curl -s "$BASE/face-drag/" \
-H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
-d '{"assembly": {…}, "partId":"column_1", "face":"axis+", "targetMm":600}'
# 4) Batch part operations (deterministic) op: delete|duplicate|translate|fillet · partIds[] · opts
curl -s "$BASE/part-op/" \
-H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
-d '{"assembly": {…}, "op":"duplicate", "partIds":["column_1"], "opts":{"offset":[300,0,0]}}'
# 5) Deliverable document set { assembly, options? } -> { ok, files, structural, interferences, welds }
curl -s "$BASE/package/" \
-H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
-d '{"assembly": {…}, "options":{"title":"column assembly","withStep":true}}'エンジニアリング計算API(梁・溶接・ボルトなど)は別途ゲートされ、式・中間値を返します。ジオメトリAPIと同じBearerキーを使用します。
依存関係のない単一ファイルのリモートMCPサーバーはNode 18以降で動作し、tools/listに正確に15個のツールを公開します:design_assembly · compose_part · edit_part · face_drag · part_op · domain_design · analyze_fea · reconstruct_verify · reconstruct_fleet · code_check · verify_domain · interior_check · landscape_check · bridge_check · load_path。一部の検証ツールはキーなしで利用できますが、生成・編集、FEA、リバースエンジニアリングのツールにはPro APIキーが必要です。リポジトリ内のローカルMCP(scripts/drawing-to-3d/mcp-server.mjs)は別の製品サーフェスで、ローカル専用とリモート専用を含む92個のツールを公開します。名前とスキーマは各サーバーのtools/listを正として使用してください。
# 1) Download the MCP server
curl -sL https://nexyfab.com/downloads/nexyfab-mcp.mjs -o ~/nexyfab-mcp.mjs
# 2) Register with Claude Code (issue the API key in panel 0 above; absolute path required)
claude mcp add nexyfab -e NEXYFAB_API_KEY=nf_live_XXXX -- node /absolute/path/nexyfab-mcp.mjs
# 3) Verify registration
claude mcp list
# 4) Then ask Claude in natural language:
# "Build an assembly with two columns on a 1000x800 base using nexyfab, then set column_1 height to 600"⚠ -e形式は簡単ですが、キーがシェル履歴に残ります。共有機器では登録後に履歴を消すか、キーを再発行してください(上記パネル0で即時破棄・再発行できます)。登録できない場合は、まず絶対パスを疑ってください — ~ が展開されない環境があります。
Claude Desktopでは、claude_desktop_config.jsonのmcpServersに同じように {"command":"node","args":["/absolute/path/nexyfab-mcp.mjs"],"env":{"NEXYFAB_API_KEY":"nf_live_XXXX"}} を追加してください。
新しいハード能力4種(ウェブと同等):analyze_fea(簡易FEA — 構造線形静解析のみ、scad+材料+荷重。熱・モーダル・熱弾性はこのツールでは不可)・reconstruct_verify(検証済みリバースエンジニアリング — STL/STEP/DWG/SATを再構築ゲートでbbox・genus・watertightと照合)・reconstruct_fleet(AI再構築フリート — マルチモデルパラメトリックSCAD、Pro+予算)・code_check(コードチェック/監理 — 公開法令の条項を引用してPASS/FAIL/NA)。最初の3つはリモート専用(NEXYFAB_API_KEY必須 — サーバー上のOpenSCAD/gmsh/OCCT/LLMを使用、キーがないと明示的に拒否)、code_checkはローカル・オフライン(純粋な決定論的ルールセット)。すべて非法定(エンジニアリンググレードのスクリーニング・決定論的監理補助 — 詳細解析・法定監理は有資格専門家の責務)。
分野検証チェーン5種(ウェブと同等・公開ルート — APIキーなしで動作):verify_domain(5分野の工学計算機 — 形状から導出した断面・スパン + 荷重/材料で実際に計算、引用条項付き)・interior_check(避難歩行距離BFS+収容人数+仕上げ数量)・landscape_check(木材部材+風荷重転倒)・bridge_check(桁/アーチ/トラス/斜張/吊り/階段を自動ディスパッチ)・load_path(スラブ→梁→柱→基礎の荷重経路)。すべて決定論 — 荷重・値を捏造せず、欠落時はneedInputs。非法定(有資格の技術士・建築士が最終責任)。
リポジトリのscripts/drawing-to-3d/cli.mjsは、MCPと同じツール面をコマンドラインで提供します(リポジトリを保有している場合、ローカルエンジンを実行)。NEXYFAB_API_KEYを設定すると、生成・修正5種はホスティングAPIで呼び出されます(リモートモード)。パイプに接続すると純粋なJSON、ターミナルでは要約行が一緒に出力されます。
cd scripts/drawing-to-3d # local engine when the repository is available
export NEXYFAB_API_KEY=nf_live_XXXX # with a key, five create/edit commands use hosted API; unset = local
node cli.mjs assemble "two columns on a 1000x800x20 base plate" --out asm.json # text → assembly
node cli.mjs build asm.json # deterministic rebuild and gate summary
node cli.mjs edit-part asm.json column_1 "set height to 600" --out asm.json # AI part edit
node cli.mjs face-drag asm.json column_1 --face axis+ --target 600 --out asm.json # face dimension (deterministic)
node cli.mjs part-op asm.json --op duplicate --ids column_1 --offset 300,0,0 --out asm.json
node cli.mjs step asm.json --out model.step # B-rep STEP export
node cli.mjs preview asm.json --out ./png --views iso,side,top # headless render → PNG
node cli.mjs package asm.json --out ./docs --step # GA · parts · BOQ · spec · DXF · STEP
node cli.mjs domain civil "retaining wall H=3m length 200m" --out pkg.json # multi-domain (remote only — key required)
node cli.mjs templates bridge # list domain templates
node cli.mjs fea asm.json --load 500 --material steel # quick FEA (remote — hosted OpenSCAD/gmsh)
node cli.mjs reconstruct part.stl # verified reverse engineering (remote — reconstruction gate)
node cli.mjs fleet part.stl # AI reconstruction fleet (remote + Pro/budget)
node cli.mjs codecheck features.json # code-check/audit 41 rules (local/offline/keyless)
node cli.mjs interior asm.json # interior egress/finishes chain (local)
node cli.mjs landscape asm.json # landscape timber/wind-load (local)
node cli.mjs bridge asm.json # bridge review (meta auto-dispatch/local)
node cli.mjs loadpath asm.json # building load-path chain (local) | --list use table
node cli.mjs list # list all tools and commandsパイプに接続すると純粋なJSON(機械解析用)、ターミナルでは合格/不合格の要約行が一緒に出力されます(--rawで純粋を強制)。loft・constraints・dossier・domainなどの追加コマンドはcli.mjsのヘッダーコメントとlist出力にまとめられています。
AI生成系はプランスロット・日次コスト上限に従います(決定論演算のface-drag・part-opはスロットを消費せず、レートリミットのみ)。ゲートが拒否すると、形状を静かに変更せず、理由とともに422で拒否します。自由曲面(メッシュ)は生成器パラメータの再生成でのみ修正されます(頂点直接修正は非対応 — 製造トレーサビリティ)。