Skip to main content
Glama

jwmcp — Jw_cad を AI から駆動する MCP サーバー

English below

Jw_cad(日本で広く使われるフリーの 2D CAD)には外部 API がありません。jwmcp は Claude などの AI エージェントが Jw_cad の図面を 読み、描き、Jw_cad に戻す ための MCP サーバーです。 スキャン図面や PDF から、壁厚・建具サイズを指定してレイヤ分けされた CAD を起こす流れまでを一式で扱います。

経路

内容

状態

.jww 読取

ezjww(MIT)で解析し実寸 mm に正規化。PNG で AI が図面を見る

実物 .jww で確認済

作図

壁(芯線+壁厚)、建具(幅・種類・開き勝手)、通り芯、柱、室名、配管、機器を Jw_cad の線・円弧・文字に展開

実装済

出力

DXF(Jw_cad で直接開ける)/外部変形テキスト(レイヤ・線色・線種付き)

DXF は ezdxf で検証済。Jw_cad 実機取込は未

外部変形ブリッジ

生成した .bat を Jw_cad の外部変形から実行。選択図形が共有フォルダ経由で AI に届き、応答が図面に反映

実装済。Windows 実機は未検証

スキャン/PDF → CAD

ページ化・拡大閲覧・実寸校正・原図への重ね合わせ照合。ベクター PDF は線をそのまま取込

実装済

.jww の直接書き出し(MFC CArchive の再現)は未着手。往復は DXF か外部変形で行います。

セットアップ

git clone <this repo> jwmcp && cd jwmcp
uv venv .venv && source .venv/bin/activate      # Windows: .venv\Scripts\activate
uv pip install -e ".[dev]"
python -m pytest -q

Claude Code に登録:

claude mcp add jwmcp -- /path/to/jwmcp/.venv/bin/python -m jwmcp

Claude Desktop / Antigravity など他の MCP クライアントも同様に stdio で python -m jwmcp を登録します。

環境変数:

  • JWMCP_HOME — 作図データ・スキャン・プレビュー・エクスポートの保存先(既定 ~/.jwmcp)

  • JWMCP_EXCHANGE — 外部変形ブリッジの共有フォルダ(既定 ~/JW_MCP_Exchange)。Google Drive 等の同期フォルダにすると Windows 側と共有できる

Related MCP server: AutoCAD MCP Pro

Windows で動かす(Jw_cad と同じ PC)

依存パッケージはすべて Windows x64 用のホイールがあり、Mac と同じコードがそのまま動きます。

  1. Python 3.11 以上を入れる(インストーラで "Add python.exe to PATH" にチェック)

  2. リポジトリを取得して scripts\windows\setup.bat をダブルクリック (.venv 作成 → インストール → テスト → 外部変形用フォルダ %USERPROFILE%\JW_MCP_Exchange と .bat 生成 → claude CLI があれば MCP 登録)

  3. Claude Desktop を使う場合は claude_desktop_config.json に次を追加

{"mcpServers": {"jwmcp": {"command": "C:\\path\\to\\jwmcp\\.venv\\Scripts\\python.exe", "args": ["-m", "jwmcp"]}}}
  1. 設定画面は scripts\windows\settings.bat

  2. Jw_cad 側は JW_MCP_Exchange\gaihen\JWMCP_send.bat などを外部変形から選ぶだけ。同じ PC なので共有フォルダの同期は不要

DXF を Jw_cad で開くときの約束: DXF には縮尺情報が無く座標は実寸 mm なので、 基本設定「DXF・SXF・JWC」の 「図面範囲を読取る」を OFF にし、新規図面で 用紙と縮尺を出力時の値(例: A3・1/50)に合わせてから 開く。 ON のままだと Jw_cad が現在の用紙サイズから縮尺を推定し、意図しない用紙・縮尺になる。

Mac に Claude、Windows に Jw_cad という分担でも動きます。その場合は JWMCP_EXCHANGE を Google Drive 等の同期フォルダにし、 gaihen_setup(win_exchange="G:\\マイドライブ\\JW_MCP_Exchange") のように Windows 側から見たパスを渡して .bat を作ります。

使い方の例

「~/Desktop/plan.jww を開いて、室名を一覧にして」          → jww_info / jww_texts / jww_preview
「1/100、A3、既存図プリセットで新しい図面を作って」          → drawing_new(preset="arch_jp_renovation")
「X1〜X4=3640ピッチ、Y1〜Y3=4550ピッチの通り芯」            → drawing_add(grid)
「X2通りに厚90の間仕切り、始点から1000に幅800の片開き戸」   → drawing_add(wall + openings)
「プレビューして」「DXFで出して」                            → drawing_preview / drawing_export
「このPDFをCAD化して」                                       → scan_open → scan_view → scan_calibrate → drawing_add → scan_overlay

ツール一覧

.jww 読取

jww_info jww_query jww_texts jww_preview jww_to_dxf

作図

drawing_new(name, scale, paper, preset?) drawing_add(name, entities) drawing_entities drawing_update drawing_remove drawing_layers drawing_info drawing_list drawing_import_jww drawing_preview drawing_export(dxf|jwc_temp|json) presets_list

entities は JSON の配列。基本図形(line / polyline / rect / circle / arc / text / point / dimension / solid)に加えて建築部品:

type

主なキー

展開結果

wall

points(芯線), thickness, closed, core(壁芯を一点鎖線で), openings[{at,width,kind,hinge,side,frame}]

両面線・端部・建具(片開き/両開き/引違い/窓/FIX/開口)の記号

grid

xs, ys, x_labels, y_labels, extend, dims

通り芯(一点鎖線)+符号バブル+(任意)寸法

column

cx, cy, w, h, angle, hatch

柱矩形+対角線

room

x, y, name, note

室名・注記

pipe

points, system(給水/給湯/排水/通気/ガス/冷媒/ドレン/ダクト/給気/排気), diameter

系統別の線色・線種+口径ラベル

equipment

kind(toilet/sink/washbasin/bath/kitchen/ac_indoor/ac_outdoor/fan/cubicle/tank/elevator/box), x, y, w, h, angle, label

機器記号+ラベル

プリセット(presets_list): arch_jp(一般平面図), arch_jp_renovation(既存図。0敷地 1記述 2躯体 3建具 4内部壁 5計画図), mep_jp(設備図)。 プリセット付きの図面では、部品の種類ごとにレイヤグループ・レイヤ・線色が自動で入ります。

設定画面(ブラウザ)

python -m jwmcp settings        # http://127.0.0.1:8765 が開く

会社や案件ごとのプロファイル(レイヤグループ・レイヤ名・縮尺・部品の既定・線色・文字種・図面枠)を画面で編集できます。 jw_win.jwf やテンプレート .jww をドラッグ&ドロップすると値が自動で入り、図面枠は用紙サイズを切り替えてプレビューできます。 「図面ごとの設定」タブでは個々の図面のレイヤ構成を編集し、プロファイルを適用したり、逆に図面の構成を新しいプロファイルとして保存できます。 プロファイルは JSON 1 ファイルなので、そのまま他の人に渡せます。

プロファイル(会社設定)と図面枠

profile_list profile_show profile_set profile_from_jwf(path, name) profile_from_jww(path, name, frame_lg?) jwf_read drawing_frame

レイヤグループ名・レイヤ名・縮尺・部品ごとの既定レイヤ・線色・文字種・図面枠を 1 つの JSON($JWMCP_HOME/profiles/<name>.json)にまとめ、 drawing_new(profile="...", frame=true, fields={...}) で新規図面に一括適用します。

  • .jwf(Jw_cad 環境設定)から線色 RGB・印刷線幅・文字種 1〜10 の寸法・フォント・既定縮尺を取り込む

  • 既存の .jww からレイヤグループの縮尺・名前を学習し、frame_lg を指定するとそのグループを 図面枠テンプレートとして取り込む (図寸 mm に変換して保存。A4〜A1 どの用紙でも S=1:1 のグループに配置し、横方向は用紙幅に合わせて伸縮、下端からの距離は維持)

  • Jw_cad で描いた枠を外部変形で送り profile_frame_from_job で保存することもできる(値の欄は空、会社名などは欲しい大きさで描く)

  • ロゴなどのビットマップは profile_set_logo / image_trace(OpenCV の輪郭追跡、pip install jwmcp[raster])で線データに変換して枠に入れる

  • テンプレートが無ければ内蔵の表題帯(No. / Title / Drawing / Scale / Note / ロゴ)を用紙サイズに合わせて生成

  • 図面枠は専用レイヤグループ(既定 F)を 1/1 にして置く。DXF 出力とプレビューでは主縮尺に合わせて自動で拡大し、 外部変形テキストではグループごとの実寸のまま出す(Jw_cad 側でグループ F を 1/1 にしておく)

線種(点線・鎖線の見え方)

linetype_describe(profile?, dpi, print_scale) profile_set_linetypes(name, linetypes) linetype_test_sheet(profile?, dpi)

Jw_cad の線種は「-」と空白の 32 文字、1 パターンのドット数、画面ピッチ、印刷ピッチで決まり、印刷してみないと間隔が分かりにくい設定です。 設定画面の「線種」タブでは、マス目のクリックでパターンを編集し、印刷したときの実寸(mm)の見本と、線と空きの長さを表示します。

  • 印刷長 = 文字数 × 印刷ピッチ × 25.4 / dpi mm。dpi は Jw_cad の「プリンタ dpi」(300 か 600)で、.jwf には保存されないため画面で選ぶ

  • 点線のピッチがどちらの dpi 基準で印刷されるかは Jw_cad のヘルプに明記がないので、linetype_test_sheet の図形を印刷倍率 100% で 1 回印刷し、実線の目盛と比べて確かめる(図形は bz で図寸読込するので、グループの縮尺に関係なく実寸で出る)

  • 変更した線種は profile_export_jwf で .jwf に書き出し、Jw_cad で読み込めば反映される

外部変形ブリッジ

gaihen_setup(exchange?, win_exchange?, wait) gaihen_status gaihen_jobs gaihen_read gaihen_preview gaihen_respond(job_id, entities | drawing, delete_selected?, notice?) gaihen_cancel gaihen_prepare_import jwc_temp_parse

スキャン / PDF → CAD

scan_open(path) scan_list scan_view(scan_id, region) scan_calibrate(p1,p2,distance_mm | scale) scan_px_to_mm scan_overlay(scan_id, drawing) scan_vector_import(scan_id, drawing) scan_texts

流れ: 開く → 拡大して読む(ピクセル定規付き)→ 既知寸法か縮尺で実寸校正 → 壁・建具・通り芯を部品として置く → 原図に重ねて照合 → DXF / 外部変形で Jw_cad へ。

座標と属性の約束

  • 座標は常に 実寸 mm。1/100 図面の 3,640 mm の壁は 3640。

  • 文字の高さ・幅・間隔だけは Jw_cad と同じ 図寸 mm。

  • lg レイヤグループ 0–15、ly レイヤ 0–15(16 進 "A"–"F" も可)、lc 線色 1–9、lt 線種 1–9(1 実線 2 点線1 3 点線2 4 点線3 5 一点鎖1 6 一点鎖2 7 二点鎖1 8 二点鎖2 9 補助線種)。

外部変形ブリッジの流れ

Jw_cad(Windows)                     共有フォルダ                     MCP サーバー
  外部変形 > JWMCP_send.bat ──▶ inbox/<job>.txt ──────────────▶ gaihen_jobs / gaihen_read
  (JWC_TEMP.TXT を hq のみに)                                       AI が図形を生成
  応答を待つ ◀──────────────── outbox/<job>.txt ◀────────────── gaihen_respond
  JWC_TEMP.TXT に戻して反映

タイムアウト時は JWC_TEMP.TXT が hq のままなので Jw_cad は「未実行」と表示し何も変えません。

ライセンス

MIT。依存: ezjww (MIT), ezdxf (MIT), matplotlib (PSF), pdfplumber (MIT), pypdfium2 (Apache-2.0 / BSD-3), Pillow (MIT-CMU), mcp (MIT)。 Jw_cad 本体のコードは含みません。LibreCAD jwwlib(GPL)のコードも使っていません。Jw_cad は清水治郎氏・田中善文氏の著作物です。


English

jwmcp is an MCP server that lets AI agents (Claude, etc.) work with Jw_cad, the free 2D CAD widely used in Japan. Jw_cad has no external API; jwmcp bridges that gap:

  • Read .jww files (via ezjww), normalise to real millimetres, render PNG previews so the model can see the drawing.

  • Draw with architectural elements — walls (centre line + thickness), openings (door / double door / sliding / window / fixed), grids with bubbles, columns, room labels, piping systems, equipment symbols — expanded to Jw_cad lines/arcs/text with layer group / layer / pen colour / line type.

  • Export DXF (opens directly in Jw_cad) or the 外部変形 JWC_TEMP.TXT format with full Jw_cad attributes.

  • Round-trip with a running Jw_cad through generated 外部変形 batch files and a shared folder (works across Mac ↔ Windows via Google Drive etc.). A timeout leaves the drawing untouched.

  • Scan / PDF → CAD: page rendering, zoomed views with a pixel ruler, mm calibration, overlay check, and direct vector import from CAD-exported PDFs.

Coordinates are always real mm; text sizes are paper mm like Jw_cad's 文字種. Writing native .jww (MFC CArchive) is not implemented yet — use DXF or the 外部変形 bridge.

uv venv .venv && source .venv/bin/activate && uv pip install -e ".[dev]" && python -m pytest -q
claude mcp add jwmcp -- /path/to/.venv/bin/python -m jwmcp

MIT licensed. Jw_cad is the work of Jiro Shimizu and Yoshifumi Tanaka; this project contains none of its code.

Available Tools

34 tools
drawing_addA

Add entities to a drawing (batch). Returns the new ids. defaults applies lg/ly/lc/lt to every entity that does not set them. entities: list of objects. Common keys: lg, ly (0-15 or hex "0".."F"), lc (1-9), lt (1-9), tag. {"type":"line","x1","y1","x2","y2"} {"type":"polyline","points":[[x,y],...],"closed":false} {"type":"rect","x","y","w","h","angle":0} (x,y = lower-left) {"type":"circle","cx","cy","r"} {"type":"arc","cx","cy","r","start","end"} (deg, CCW) {"type":"text","x","y","text","height":3,"width":3,"spacing":0,"angle":0,"align":"left|center|right","font"?,"cn"?} height/width/spacing are paper mm (図寸). x,y = baseline anchor (left-bottom unless align). {"type":"point","x","y"} {"type":"dimension","x1","y1","x2","y2","offset":500,"text"?,"text_height":3,"decimals":0} offset = real-mm distance from the measured points to the dimension line (sign = side). {"type":"solid","points":[[x,y]x3or4],"rgb":[r,g,b]?} Architectural (expand to Jw_cad lines/arcs/text): {"type":"wall","points":[[x,y],...],"thickness":150,"closed":false,"core":true,"core_ly":1,"core_extend":300, "openings":[{"at":1000,"width":800,"kind":"door|double_door|sliding|window|fixed|opening","hinge":"start|end","side":"+|-","frame":25}], "opening_lg":3,"opening_ly":0,"opening_lc":1} at = mm along the centre line; side "+" = left of travel {"type":"grid","xs":[0,3640],"ys":[0,2730],"x_labels":["X1","X2"],"y_labels":["Y1","Y2"],"extend":1500,"dims":false} {"type":"column","cx","cy","w":600,"h":600,"angle":0,"hatch":true} {"type":"room","x","y","name":"和室","height":5,"note":"6帖"} {"type":"pipe","points":[[x,y],...],"system":"給水|給湯|排水|通気|ガス|冷媒|ドレン|ダクト|給気|排気","diameter":"25A"} {"type":"equipment","kind":"toilet|sink|washbasin|bath|kitchen|ac_indoor|ac_outdoor|fan|cubicle|tank|elevator|box","x","y","w","h","angle","label"} A drawing created with a preset fills lg/ly/lc per type automatically (see presets_list).

Inputs: name (required), entities (required), defaults.

drawing_entitiesC

Return entities of a drawing (optionally only those with given ids or tag).

Inputs: name (required), ids, tag, limit, +1 more.

drawing_exportC

Export a drawing. format: 'dxf' (open in Jw_cad via ファイル>開く, DXF), 'jwc_temp' (外部変形 text that JWMCP_import.bat feeds into an open Jw_cad drawing), or 'json'. Returns the output path.

Inputs: name (required), out, format.

drawing_import_jwwC

Import the entities of a .jww file (optionally filtered by lg/ly/types/bbox) into a drawing so they can be edited, re-exported or sent back to Jw_cad.

Inputs: name (required), path (required), lg, ly, +3 more.

drawing_infoC

Summary of a drawing (counts, layers, bbox).

Inputs: name (required).

drawing_layersC

Set/rename layer groups, layers and scales of a drawing. group_names={'0':'平面'}, layer_names={'0-1':'壁'}, group_scales={'1':'50'}.

Inputs: name (required), group_names, layer_names, group_scales.

drawing_listB

List saved drawings.

Inputs: no named parameters.

drawing_newB

Create (or reset) a named drawing. scale = denominator of the drawing scale (100 for 1/100). paper: A0..A4, 2A..5A, 10m/50m/100m. group_names/layer_names set Jw_cad レイヤグループ名/レイヤ名 (e.g. group_names={'0':'平面図'}, layer_names={'0-1':'壁','0-2':'柱'}).

Inputs: name (required), paper, scale, preset, +4 more.

drawing_previewC

Render a drawing to PNG and return the image (bbox in real mm to zoom).

Inputs: name (required), bbox, out_png, width_px.

drawing_removeA

Remove entities by id (or every entity with the given tag). Use clear=true to empty the drawing.

Inputs: name (required), ids, tag, clear.

drawing_updateC

Replace one entity (same id) with new content. Fields not given are taken from the new object only.

Inputs: id (required), name (required), entity (required).

gaihen_cancelC

Cancel a job: Jw_cad reports 未実行 and changes nothing.

Inputs: job_id (required), reason, exchange.

gaihen_jobsB

List jobs sent from Jw_cad (each = one 外部変形 run waiting for a response).

Inputs: exchange.

gaihen_prepare_importB

Place a drawing (or raw entities) in outbox/IMPORT.txt. The user then runs JWMCP_import.bat inside Jw_cad and the geometry appears in the open drawing with layer/colour/linetype attributes.

Inputs: notice, drawing, entities, exchange.

gaihen_previewC

Render a job's selected entities to PNG and return the image.

Inputs: job_id (required), exchange, width_px.

gaihen_readB

Read one job: scales per layer group, selection range, picked points, write settings, layer names and the selected entities (real mm). Use limit/offset for big selections.

Inputs: job_id (required), limit, offset, exchange.

gaihen_respondA

Answer a job: the entities are drawn into the open Jw_cad drawing as soon as the .bat sees the file. Give either entities (see drawing_add schema) or drawing=. delete_selected=true removes the originally selected figures first (replace). notice shows a message in Jw_cad. Coordinates are real mm in the job's layer group scales (gaihen_read → scales).

Inputs: job_id (required), notice, drawing, entities, +2 more.

gaihen_setupB

Create the exchange folder and the three 外部変形 .bat files (JWMCP_send / send_all / import). exchange = folder on this machine (default ~/JW_MCP_Exchange or $JWMCP_EXCHANGE). win_exchange = the SAME folder as seen from the Windows PC running Jw_cad (e.g. 'G:\マイドライブ\JW_MCP_Exchange'). wait = seconds the .bat waits for a response.

Inputs: wait, exchange, win_exchange.

gaihen_statusC

Bridge status: exchange folder, pending jobs from Jw_cad, unconsumed responses.

Inputs: exchange.

jwc_temp_parseC

Parse any JWC_TEMP.TXT-format file (e.g. one saved manually from Jw_cad) into entities.

Inputs: path (required), limit, offset.

jww_infoA

Open a .jww file and return a compact summary: version, paper, layer groups with scale (1/N) and layer names/counts, entity counts by type, bounding box (real mm), text sample.

Inputs: path (required).

jww_previewB

Render a .jww (or a region of it) to PNG and return the image. bbox = [min_x,min_y,max_x,max_y] in real mm to zoom; lg to show one layer group only. Use this to see the drawing.

Inputs: path (required), lg, bbox, out_png, +2 more.

jww_queryA

Query entities of a .jww file (real-mm coordinates). Filter by types (line, circle, arc, text, point, solid, dimfigure), layer group lg, layer ly, bbox [min_x,min_y,max_x,max_y], or regex pattern on text. Paginate with limit/offset.

Inputs: path (required), lg, ly, bbox, +4 more.

jww_textsC

List all text strings of a .jww (room names, dimensions, notes) with position, layer and size.

Inputs: path (required), lg, limit, pattern.

jww_to_dxfC

Convert a .jww to DXF (AC1024 by default) using ezjww. Returns the output path.

Inputs: path (required), out, version.

presets_listA

List layer presets usable in drawing_new(preset=...) with their group/layer names and per-type defaults.

Inputs: no named parameters.

scan_calibrateA

Define how pixels map to real mm. Either p1/p2 (pixels) + distance_mm (a known dimension on the scan), or px_per_mm, or scale= (+paper=A2 for images; PDFs know their physical size). origin_px = pixel that becomes (0,0) mm (default: bottom-left corner).

Inputs: scan_id (required), p1, p2, page, +5 more.

scan_listC

List opened scans.

Inputs: no named parameters.

scan_openA

Open a scanned drawing (PDF or image) for CAD conversion. Pages are rendered to PNG. Returns page sizes and whether the PDF is vector (CAD-exported → scan_vector_import) or raster (read with scan_view).

Inputs: path (required), dpi, pages, scan_id.

scan_overlayC

Draw a drawing on top of the scan to check alignment (needs calibration). region_px zooms.

Inputs: drawing (required), scan_id (required), page, alpha, +2 more.

scan_px_to_mmC

Convert pixel positions on a calibrated page to real mm (and back with mm_points).

Inputs: scan_id (required), page, mm_points, px_points.

scan_textsD

Text strings embedded in a PDF page with pixel and mm positions (vector PDFs).

Inputs: scan_id (required), page.

scan_vector_importA

For vector PDFs (exported from CAD): import the page's line work into a drawing as lines (real mm). region_px limits the area. Set lg/ly/lc/lt for the imported lines; tag lets you remove them later.

Inputs: drawing (required), scan_id (required), lc, lg, +8 more.

scan_viewB

Look at a page or a zoomed region of it (region = [x0,y0,x1,y1] in pixels, or fractions 0..1). A red pixel ruler is drawn so you can report pixel positions for scan_calibrate / placement.

Inputs: scan_id (required), grid, page, max_px, +1 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3/5.0

    Scored across 34 tools

    Disambiguation4/5

    A clear prefix scheme separates the four subsystems: jww_* for read-only .jww inspection, drawing_* for editable drawings, scan_* for raster/vector PDF conversion, and gaihen_* for the Jw_cad bridge. Within families some tools are close (jww_preview vs drawing_preview vs gaihen_preview, drawing_import_jww vs scan_vector_import, jww_info vs drawing_info), but the descriptions explain the source object well enough to disambiguate.

    Naming Consistency5/5

    Every tool is snake_case with a namespace prefix (jww_, drawing_, scan_, gaihen_) plus an action or noun suffix, and the pattern is followed throughout. There is no mixing of camelCase, and the domain abbreviations (jww, gaihen, jwc) are used consistently.

    Tool Count3/5

    34 tools is heavy, well above the comfortable 3-15 range. The breadth (four genuine subsystems of ~8 tools each) justifies much of it, but several near-duplicate previews/imports inflate the count and it would be cleaner split into sub-servers.

    Completeness4/5

    Coverage across read (.jww), edit (drawings), convert (scans), and the Jw_cad round-trip bridge is broad and near-complete CRUD for drawings. Minor gaps remain, e.g. no delete/rename for a saved drawing and no direct .jww write-back, but agents can work around these.

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI agents to interact with CAD software through semantic spatial topology and architectural ontology, supporting drawing, block/layer/entity management, and safe preview-apply transaction workflows for AutoCAD, ZWCAD, GstarCAD, and BricsCAD.
      1
      Apache 2.0
    • F
      license
      Not graded
      quality
      A
      maintenance
      Enables AI agents to draft, edit, read, and validate CAD drawings either by driving a live AutoCAD session over COM or headlessly through ezdxf on any platform, spanning mechanical parts, architectural plans, P&IDs, ISO-compliant dimensioning and GD&T, and quantity takeoffs into spreadsheets.
      -
    • F
      license
      Not graded
      quality
      A
      maintenance
      Gives AI agents one typed tool contract for CAD automation, driving either a live Windows drafting seat through COM or a headless DXF engine anywhere. It enables mechanical part sheets, P&ID drafting and reading, architectural floor plans, ISO GD&T and dimension-tolerance validation, plus drawing understanding and takeoff workbooks.
      -
    • F
      license
      Not graded
      quality
      A
      maintenance
      Enables AI assistants to control CAD applications such as AutoCAD, ZWCAD, GstarCAD, and BricsCAD through natural language or direct tool calls for drawing, layer/entity/block management, data export, and file operations.
      -