Use the NexyFab design pipeline (text→2D→3D LOD→per-part edits) via HTTP API, MCP (Claude and other AI clients), and CLI. AI only interprets; geometry and verification (vocabulary, interference, support, structural gates) run on a deterministic engine. All outputs are non-statutory.
Core endpoints (POST · JSON). Pass the returned assembly into the next call to chain edits; a REV history accumulates automatically.
| Endpoint | What it does |
|---|---|
| /api/nexyfab/drawing/assemble | Text → multi-part assembly (+LOD draft) |
| /api/nexyfab/drawing/compose | Text → single part |
| /api/nexyfab/drawing/edit-part | AI-edit one part only |
| /api/nexyfab/drawing/face-drag | Face push-pull / set dimension (deterministic) |
| /api/nexyfab/drawing/part-op | duplicate · delete · translate · fillet |
| /api/nexyfab/drawing/export-step | B-rep STEP export |
| /api/nexyfab/drawing/package | Deliverable package |
# 1) 생성
curl -s https://nexyfab.com/api/nexyfab/drawing/assemble/ \
-H "Authorization: Bearer nf_live_XXXX" -H "Content-Type: application/json" \
-d '{"description":"베이스 플레이트 1000x800x20 위에 지름 200 높이 400 원통 기둥 2개"}' > r1.json
# 2) 부품만 수정 (r1.json 의 .assembly 를 그대로)
curl -s https://nexyfab.com/api/nexyfab/drawing/edit-part/ \
-H "Authorization: Bearer nf_live_XXXX" -H "Content-Type: application/json" \
-d "{\"assembly\": $(jq .assembly r1.json), \"partId\":\"column_1\", \"instruction\":\"높이를 600으로\"}"
# 3) 면 치수 직접 지정 (결정론 — AI 미사용)
# face: x±/y±/z± (box) · axis±/radial (회전체)
curl -s https://nexyfab.com/api/nexyfab/drawing/face-drag/ \
-H "Authorization: Bearer nf_live_XXXX" -H "Content-Type: application/json" \
-d '{"assembly": {…}, "partId":"column_1", "face":"axis+", "targetMm":600}'Download the single-file MCP server and register it; Claude then designs/edits via tool calls (Node 18+, zero deps). Tools: design_assembly · compose_part · edit_part · face_drag · part_op.
# Claude Code 등록 (API 키는 Pro 이상 발급)
claude mcp add nexyfab -e NEXYFAB_API_KEY=nf_live_XXXX -- node /절대경로/nexyfab-mcp.mjs
# 이후 Claude 에게:
# "nexyfab 으로 1000x800 베이스에 기둥 2개 조립체 만들고, column_1 높이를 600으로 수정해줘"scripts/drawing-to-3d/cli.mjs offers the same tool surface on the command line (local engine when you have the repo). With NEXYFAB_API_KEY set, the 5 generation/edit tools call the hosted API (remote mode). Piped = pure JSON; TTY adds a summary line.
export NEXYFAB_API_KEY=nf_live_XXXX # 원격 모드(Pro) — 미설정 시 로컬 엔진
node cli.mjs assemble "베이스 플레이트 위 기둥 2개" --out asm.json
node cli.mjs face-drag asm.json column_1 --face axis+ --target 600 --out asm.json
node cli.mjs part-op asm.json --op duplicate --ids column_1 --offset 300,0,0 --out asm.json
node cli.mjs package asm.json --out ./도서 --step # GA·부품도·BOQ·사양서·DXF·STEP
node cli.mjs list # 도구 21종 목록AI-generation calls follow plan slots and daily cost budgets (deterministic face-drag/part-op consume no slots). When a gate rejects, we return 422 with the reason instead of silently altering geometry.