jwmcp
jwmcp is an MCP server that lets AI agents read, create, edit, and round-trip Jw_cad drawings through MCP tools.
Read .jww files: summary, entity queries, text extraction, PNG previews, and DXF conversion
Create and manage drawings: new drawings with scale/paper/presets, batch add entities, update/remove/list, layer naming, and preview rendering
Draw architectural elements: walls with thickness and openings, grids, columns, room labels, pipes, equipment symbols, plus basic line/polyline/rect/circle/arc/text/point/dimension/solid
Export drawings: DXF for Jw_cad, JWC_TEMP external-variation text, or JSON
Round-trip with a running Jw_cad via generated external-variation .bat files, shared-folder job inbox/outbox, response/cancel/preview, and import preparation
Scan/PDF to CAD: open scans, zoomable page views with pixel ruler, calibrate mm/scale, overlay drawings on scans, vector PDF line/text import, and pixel-to-mm conversion
Manage profiles, layer presets, JWF/JWW settings, drawing frames, line types, and browser-based settings
Parse JWC_TEMP.TXT-format files into editable entities
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@jwmcp ~/Desktop/plan.jww を開いて、室名を一覧にして"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
jwmcp — Jw_cad を AI から駆動する MCP サーバー
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 実機取込は未 |
外部変形ブリッジ | 生成した | 実装済。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 -qClaude Code に登録:
claude mcp add jwmcp -- /path/to/jwmcp/.venv/bin/python -m jwmcpClaude 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 と同じコードがそのまま動きます。
Python 3.11 以上を入れる(インストーラで "Add python.exe to PATH" にチェック)
リポジトリを取得して
scripts\windows\setup.batをダブルクリック (.venv作成 → インストール → テスト → 外部変形用フォルダ%USERPROFILE%\JW_MCP_Exchangeと .bat 生成 →claudeCLI があれば MCP 登録)Claude Desktop を使う場合は
claude_desktop_config.jsonに次を追加
{"mcpServers": {"jwmcp": {"command": "C:\\path\\to\\jwmcp\\.venv\\Scripts\\python.exe", "args": ["-m", "jwmcp"]}}}設定画面は
scripts\windows\settings.batJw_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 | 主なキー | 展開結果 |
|
| 両面線・端部・建具(片開き/両開き/引違い/窓/FIX/開口)の記号 |
|
| 通り芯(一点鎖線)+符号バブル+(任意)寸法 |
|
| 柱矩形+対角線 |
|
| 室名・注記 |
|
| 系統別の線色・線種+口径ラベル |
|
| 機器記号+ラベル |
プリセット(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
.jwwfiles (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.TXTformat 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 jwmcpMIT licensed. Jw_cad is the work of Jiro Shimizu and Yoshifumi Tanaka; this project contains none of its code.
Available Tools
34 toolsdrawing_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
Scored across 34 tools
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.
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.
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.
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
DXF and PDF/X-4 for AI agents: structured facts, PNG renders, an interactive in-chat viewer.
Parametric 3D CAD for AI agents: build print-ready parts, check them, export STL, 3MF or STEP.
Turn datasheets into source-backed JSON contracts, pinout matrices, and KiCad CAD for AI agents.
A browser 3D CAD for your AI: it scripts real-size models, uCAD builds them and returns pictures.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables 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.1Apache 2.0
- FlicenseNot gradedqualityAmaintenanceEnables 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.-
- FlicenseNot gradedqualityAmaintenanceGives 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.-
- FlicenseNot gradedqualityAmaintenanceEnables 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.-