Skip to content
Agentmart
Submit a tool

Qcad MCP

QCAD 2D CAD automation: DXF/DWG floor plans to SVG and STL, via MCP tools and REST

Connector by sandraschi · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)★ 17
Write a review

Install

Works with Claude Desktop. Read the repository before you give any tool access to your data.

Download the bundle

MCP bundle (.mcpb): open it with Claude Desktop.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

QCAD 2D CAD automation: DXF/DWG floor plans to SVG and STL, via MCP tools and REST

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.

Tools
36 read · 0 write · 0 delete · 14 not yet classified
Secrets
None asked for
Install scripts
None found
Runs as
Downloaded binary

Tools by what they do 50

Read from the source code; the running server may list different tools.

Read 36 · Look things up without changing anything.

  • cad_sampling
  • plan
  • plan_agentic
  • plan_ai
  • plan_analyse
  • plan_annotate
  • plan_auto_dimension
  • plan_beam_analysis
  • plan_bim
  • plan_blocks
  • plan_building_meta
  • plan_convert
Show 24 more tools
  • plan_depot
  • plan_drawings
  • plan_edit
  • plan_export
  • plan_extrude
  • plan_generate
  • plan_glb
  • plan_info
  • plan_library
  • plan_measure
  • plan_obj
  • plan_render
  • plan_scripts_search
  • plan_stack
  • plan_to_ifc_data
  • plan_to_svg
  • plan_transpile
  • plan_wall_data
  • qcad_help
  • qcad_status
  • show_beam_analysis_card
  • show_building_meta_card
  • show_depot_card
  • show_qcad_status_card

Not yet classified 14 · We could not tell from the name and description.

  • plan_array
  • plan_block_insert
  • plan_blocks_download
  • plan_create
  • plan_dimension
  • plan_exec
  • plan_hatch
  • plan_modify
  • plan_pro
  • plan_script
  • plan_scripts_download
  • plan_text
Show 2 more tools
  • qcad
  • qcad_shutdown

Network hosts it talks to 12

  • biblocad.com · found in code
  • biomejs.dev · found in code
  • cadblocksfree.com · found in code
  • cli.github.com · found in code
  • gist.github.com · found in code
  • github.com · found in install command, code
  • glama.ai · found in code
  • ollama.com · found in code
  • qcad.org · found in code
  • resonite.com · found in code
  • ribbonsoft.com · found in code
  • wiki.freecad.org · found in code

Files it touches

  • %APPDATA%\com.sandraschi.pywinauto-mcp\logs\backend-spawn.log
  • Your home directory (~)
  • Any path the agent passes to its tools

Tools (50)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • cad_sampling

    Use the host LLM (via MCP sampling) to reason about a CAD problem or plan a multi-step operation. The host's LLM analyzes the goal and returns a structured plan or explanation. Falls back to a static response if sampling is unavailable. ## Return Format {"success": bool, "response": str, "sampling_used": bool} ## Examples await cad_sampling(goal="What wall height should I use for a residential floor plan?") await cad_sampling(goal="Plan the steps to convert a DXF to a 3D printable STL")

  • plan

    Core ezdxf operations: inspect, preview, extrude, convert, analyse, and create DXF files. No QCAD Pro needed for any op in this tool. ## Return Format {"success": bool, ...op-specific data (output, data, error)} ## Examples await plan(op="info", file_name="floorplan.dxf") await plan(op="to_svg", file_name="floorplan.dxf") await plan(op="extrude", file_name="floorplan.dxf", wall_height=3.0) await plan(op="create", filename="room.dxf", entities=[{"type": "rect", "x": 0, "y": 0, "w": 5000, "h": 4000}]) await plan(op="depot")

  • plan_agentic

    Multi-step CAD workflow: plans and executes ECMAScript operations from a natural-language goal. Uses AI sampling to decompose the goal into ECMAScript steps, then executes them sequentially via QCAD Pro. Each step is validated before the next runs. Requires QCAD Pro installed. Falls back to single-script generation if AI sampling is unavailable. ## Return Format {"success": bool, "output": str, "data": {"steps": int, "entity_count": int, "plan": [...]}} ## Examples await plan_agentic(goal="Create a 10m x 8m floor plan with 4 equal rooms, label them, add aligned dimensions on all sides") aw…

  • plan_ai

    Natural-language CAD: generate plans, run agentic workflows, transpile AutoLISP. ## Return Format {"success": bool, "output": str, "data": {...}, "sampling_used": bool} ## Examples await plan_ai(op="generate", goal="L-shaped pottery workshop 12m x 9m with a darkroom") await plan_ai(op="sampling", goal="What wall height suits a residential floor plan?") await plan_ai(op="transpile", lisp_code="(command \"_.LINE\" '(0 0) '(100 0) \"\")")

  • plan_analyse

    Analyse a DXF floor plan: detect rooms, calculate areas, identify doors/windows. ## Return Format {"success": bool, "data": {"rooms": [...], "doors_windows": [...], "wall_length_m": float}} ## Examples await plan_analyse(file_name="floorplan.dxf")

  • plan_annotate

    Dimensions, text, hatches, blocks, arrays, wall BIM data, and beam FEA. measure/wall_data/beam_analysis are read-only; the rest write a new DXF. QCAD Pro is used when available, ezdxf fallback otherwise. ## Return Format {"success": bool, "output": str, "data": {...}} ## Examples await plan_annotate(op="measure", file_name="floorplan.dxf") await plan_annotate(op="text", file_name="floorplan.dxf", texts=[{"text": "Kitchen", "x": 1000, "y": 2000, "height": 250}]) await plan_annotate(op="beam_analysis", beams=[{"x1": 0, "y1": 0, "x2": 5000, "y2": 0}])

  • plan_array

    Create a rectangular or polar array of all entities in a drawing. Useful for: window grids, column grids, bolt patterns, radial furniture arrangements, repeating architectural features. Requires QCAD Pro. ## Return Format {"success": bool, "output": str, "data": {"entity_count": int, "copies": int}} ## Examples await plan_array(file_name="window.dxf", pattern="rectangular", count=4, params={"dx": 1000, "dy": 800}) await plan_array(file_name="bolt.dxf", pattern="polar", count=8, params={"cx": 50, "cy": 50, "angle": 360})

  • plan_auto_dimension

    Automatically detect wall boundaries and insert exterior linear dimensions. ## Return Format Dictionary with `success`, `message`, and `data` containing dimension count & file path. ## Examples await plan_auto_dimension("simple_floorplan.dxf", offset=300.0)

  • plan_beam_analysis

    2D beam structural analysis using direct stiffness FEM. Computes bending moments, shear forces, axial forces, and deflections for planar beam structures. Suitable for architectural wall loading analysis, lintel design, and simple frame structures. Supports: pinned/fixed/roller supports, point loads, distributed loads. Concrete and steel material presets. ## Return Format {"success": bool, "data": {"nodes": [...], "beams": [{"moment":[...], "shear":float, "axial":float, "max_deflection_mm":float, ...}], "reactions": [...]}} ## Examples # Simply supported concrete beam, 5m span, 10kN point l…

  • plan_bim

    BIM handoff helpers: auto-dimension walls, storey metadata, IFC-shaped JSON. ## Return Format {"success": bool, "output": str, "data": {...}} ## Examples await plan_bim(op="building_meta", file_name="tower_L0.dxf") await plan_bim(op="auto_dimension", file_name="floorplan.dxf", offset=400.0)

  • plan_block_insert

    Insert block references (doors, windows, furniture) into a DXF drawing. Blocks are reusable symbols stored in the drawing. Use plan_blocks to search/download blocks to the depot first, then insert them. The bundled libraries/*.dxf files (e.g. libraries/furniture.dxf with SOFA, DESK, CHAIR, BED, TABLE, WC, SINK, BATHTUB) are searched automatically. With QCAD Pro installed the insert runs through its ECMAScript engine; otherwise a built-in ezdxf path imports the block definition and places INSERT entities — no Pro required. ## Return Format {"success": bool, "output": str, "data": {"entity_co…

  • plan_blocks

    Search CAD block libraries for architectural blocks, furniture, doors, and sample floor plans. Use plan_blocks_download to import a block directly into the local depot. ## Return Format {"success": bool, "results": list, "source": str} ## Examples await plan_blocks(query="sofa", category="furniture") await plan_blocks(category="floor-plans", limit=5) await plan_blocks(query="kitchen")

  • plan_blocks_download

    Download a CAD block from a library into the local depot. After download, use plan_info to inspect or plan_to_svg to preview. ## Return Format {"success": bool, "filename": str, "size_kb": float, "path": str} ## Examples await plan_blocks_download(title="Sofa Collection", source="cadblocksfree", url="https://...")

  • plan_building_meta

    Analyze multi-floor level organization and storey metadata. ## Return Format Dictionary with `success` and `data` listing detected storeys and layer mappings. ## Examples await plan_building_meta("office_layout.dxf")

  • plan_convert

    Convert a CAD file between DWG and DXF formats using QCAD Pro CLI. Requires QCAD Pro installed at QCAD_PRO_PATH. The converted file is saved to the depot and immediately available for other tools. ## Return Format {"success": bool, "filename": str, "format": str} ## Examples await plan_convert(file_name="floorplan.dwg", output_name="floorplan.dxf")

Show 35 more tools
  • plan_create

    Create a new DXF file from primitive entities and store it in the depot. Supported entity types (lenient key aliases accepted — the webapp Demo page sends x1/y1/x2/y2 shapes, MCP clients may send x/y/w/h): - line: {"type": "line", "x1": 0, "y1": 0, "x2": 100, "y2": 0, "layer": "walls"} - rect: {"type": "rect", "x": 10, "y": 10, "w": 80, "h": 60, "layer": "rooms"} alias: {"type": "rect", "x1": 10, "y1": 10, "x2": 90, "y2": 70, "layer": "rooms"} - circle: {"type": "circle", "cx": 50, "cy": 50, "r": 20, "layer": "columns"} alias: {"type": "circle", "x": 50, "y": 50, "r": 20, "layer": "…

  • plan_depot

    List all DXF files in the local CAD depot with metadata. ## Return Format {"success": bool, "data": {"files": [{"name": ..., "size_kb": ..., "modified": ..., "meta": {...}}]}} ## Examples await plan_depot()

  • plan_dimension

    Add dimension entities to a DXF drawing using QCAD Pro. Adds aligned, radial, diametric, angular, or rotated dimensions to existing geometry. Requires QCAD Pro installed. ## Return Format {"success": bool, "output": str, "data": {"entity_count": int, "dim_count": int}} ## Examples await plan_dimension(file_name="floorplan.dxf", dimensions=[ {"type": "aligned", "x1": 0, "y1": 0, "x2": 5000, "y2": 0, "xd": 2500, "yd": -500}, {"type": "radial", "cx": 2500, "cy": 2000, "px": 2800, "py": 2000}, ])

  • plan_drawings

    Generate the full architectural drawing set from a floor plan DXF. Derives elevations (N/S/E/W), a cross-section (A-A), an axonometric isometric, and a roof plan from the detected wall segments — the standard drawings an architect produces beyond the floor plan. Openings (doors / windows on DOOR/WINDOW layers) are cut into elevations when present. Unit convention: DXF units are millimetres; wall_height in metres. ## Return Format {"success": bool, "outputs": {"elev_n": ..., ...}, "data": {"wall_count": int, "views": [...], ...}} ## Examples await plan_drawings(file_name="office.dxf") await…

  • plan_edit

    Convert between DWG/DXF and modify layers/entities in place. ## Return Format {"success": bool, "output": str, "data": {...}} ## Examples await plan_edit(op="convert", file_name="plan.dwg", output_name="plan.dxf") await plan_edit(op="modify", file_name="plan.dxf", operations=[{"op": "layer-freeze", "layer_filter": "Furniture"}])

  • plan_exec

    Execute ECMAScript in a temporary QCAD Pro session and return results. Quick code runner - shorter startup than plan_script since no output file is saved. Use for queries, lightweight modifications, or prototyping before committing with plan_script. ## Return Format {"success": bool, "data": {"entity_count": int, "layers": [...], "errors": [...]}} ## Examples await plan_exec(code='var op = new RAddObjectsOperation(); op.addObject(new RCircleEntity(document, new RCircleData(new RVector(10,10), 5))); op.apply(document);') await plan_exec(code='document.queryAllEntities().length;', file_name="…

  • plan_export

    Export a DXF file to SVG, PDF, or PNG. Tries QCAD Pro for high-fidelity output first (SVG, PDF). Falls back to ezdxf+matplotlib if QCAD Pro is unavailable. For guaranteed QCAD Pro rendering, use plan_render instead. ## Return Format {"success": bool, "output": str, "data": {"size_kb": float, "backend": str}} ## Examples await plan_export(file_name="floorplan.dxf", format="svg")

  • plan_extrude

    Extrude walls from a DXF floor plan into a 3D STL mesh. Finds LINE and LWPOLYLINE entities on wall layers, extrudes them vertically to wall_height with wall_thickness on each side. Unit convention: DXF units are millimetres (1 unit = 1 mm, real-world scale). wall_height / wall_thickness are given in METRES and converted internally (x1000). ## Return Format {"success": bool, "output": str, "data": {"vertices": int, "faces": int, "wall_count": int, "size_kb": float}} ## Examples await plan_extrude(file_name="floorplan.dxf") await plan_extrude(file_name="floorplan.dxf", wall_height=2.5, wall_…

  • plan_generate

    Design a floor plan from natural language: LLM geometry -> validated entities -> DXF. Sampling-first agentic workflow: with a sampling-capable client (Claude Desktop) the host model designs the plan via ``ctx.sample_step``. Without sampling it falls back to the local Ollama model from Settings, and refuses (no silent substitution) when none is selected. Output is validated (known types, finite mm coordinates, sane bounds) and bad entities are dropped with warnings before anything is created. ## Return Format {"success": bool, "output": str | list, "source": "sampling" | "ollama", "model": …

  • plan_glb

    Convert a plan (or existing OBJ) to GLB via headless Blender. Resonite only imports .glb/.gltf/.vrm — this is the ticket in. Materials and PNG textures from plan_obj carry through Blender's glTF exporter. Millimetre geometry is scaled to metres on export. ## Return Format {"success": bool, "output": str, "data": {"size_kb": float, ...}} ## Examples await plan_glb(file_name="office.dxf") await plan_glb(obj_name="office.obj", output_name="office.glb")

  • plan_hatch

    Add hatch/fill patterns to closed regions in a DXF drawing via QCAD Pro. Supports ANSI, architectural, earth, and solid fill patterns with configurable scale and angle. Requires QCAD Pro installed. ## Return Format {"success": bool, "output": str, "data": {"entity_count": int, "hatch_count": int}} ## Examples await plan_hatch(file_name="floorplan.dxf", hatches=[ {"points": [[0,0], [5000,0], [5000,4000], [0,4000]], "pattern": "AR-CONC", "scale": 0.5}, {"points": [[1000,1000], [2000,1000], [2000,2000], [1000,2000]], "pattern": "SOLID", "color": "#FF0000"}, ])

  • plan_info

    Read a DXF file from the depot and return metadata: layers, entity counts, bounding box, blocks. Upload DXF files first via POST /api/v1/upload or use plan_create to generate one. ## Return Format {"success": bool, "data": {"layers": [...], "entity_counts": {...}, "bounding_box": {...}, "block_count": int}} ## Examples await plan_info(file_name="floorplan.dxf")

  • plan_library

    Search 4800+ CAD blocks and the QCAD script gallery; download to the depot. ## Return Format {"success": bool, "data": {"results": [...]}, "output": str} ## Examples await plan_library(op="blocks", query="door", category="doors-windows") await plan_library(op="scripts_search", query="hatch")

  • plan_measure

    Measure distances, angles, areas, and perimeters in a DXF drawing via QCAD Pro. Uses QCAD Pro's geometry engine for precise measurements. Returns structured measurement data for all entities in the drawing. Requires QCAD Pro installed. ## Return Format {"success": bool, "data": {"entity_count": int, "entities": [...], "total_line_length": float, "total_area": float}} ## Examples await plan_measure(file_name="floorplan.dxf")

  • plan_modify

    Modify entities and layers in a DXF/DWG file. Operations are applied in order. The file is saved back to the depot. ## Return Format {"success": bool, "operations": int, "summary": [str, ...]} ## Examples await plan_modify(file_name="plan.dxf", operations=[{"op": "layer-set-color", "layer_filter": "Walls", "color": 7}]) await plan_modify(file_name="plan.dxf", operations=[{"op": "delete", "type_filter": "TEXT"}])

  • plan_obj

    Export walls to a COLORED Wavefront OBJ + MTL with procedural textures. Same wall detection as plan_extrude (incl. per-entity XDATA heights), but each layer gets an architectural material: plaster/brick walls, concrete columns, wood doors, translucent glass windows. Textures are generated PIL tiles (world-scale UVs, set RepeatWrapping in the viewer). ## Return Format {"success": bool, "output": str, "data": {"materials": [...], "textures": [...], ...}} ## Examples await plan_obj(file_name="office.dxf") await plan_obj(file_name="church.dxf", output_name="church.obj")

  • plan_pro

    Execute ECMAScript in QCAD Pro and render publication-quality output. Requires a QCAD Pro install (check qcad(op="status") first). ## Return Format {"success": bool, "output": str, "data": {...}} ## Examples await plan_pro(op="exec", code="print(transientEntityCount());") await plan_pro(op="render", file_name="floorplan.dxf", output_name="proof.pdf")

  • plan_render

    High-fidelity rendering of a DXF/DWG via QCAD Pro. Uses QCAD Pro's native rendering engine for perfect output with hatches, TrueType fonts, dimension styles, and lineweights - superior to the ezdxf+matplotlib fallback used by plan_export. Requires QCAD Pro installed. ## Return Format {"success": bool, "output": str, "data": {"size_kb": float}} ## Examples await plan_render(file_name="floorplan.dxf", format="svg") await plan_render(file_name="floorplan.dxf", format="pdf", output_name="floorplan_pro.pdf")

  • plan_script

    Execute arbitrary ECMAScript in QCAD Pro against a DXF document. This is the most powerful tool - it provides full access to QCAD Pro's ECMAScript API including entity creation, modification, layer management, block operations, and geometry queries. User code has access to: - `document` - RDocument (the drawing) - `di` - RDocumentInterface (import/export) - Full QCAD API: RLineEntity, RCircleEntity, RArcEntity, RVector, RAddObjectsOperation, RModifyObjectsOperation, RLayer, etc. - Full Qt API for data processing - `print()` outputs are captured but only the structured result is ret…

  • plan_scripts_download

    Download an ECMAScript from a library to the local depot. Gallery scripts (gallery://id) are pre-curated and served from the local bundle. Downloaded .js files go to the depot and can be viewed, edited, or used with plan_script. ## Return Format {"success": bool, "filename": str, "size_kb": float, "content": str} ## Examples await plan_scripts_download(title="Door Swing Arc", source="gallery", url="gallery://door_swing.js")

  • plan_scripts_search

    Search QCAD ECMAScript libraries for reusable CAD scripts. Searches curated gallery, GitHub Gist, and QCAD bundled examples. ## Return Format {"success": bool, "source": str, "results": [{"title": str, "description": str, "source": str, "url": str, ...}]} ## Examples await plan_scripts_search(query="dimension") await plan_scripts_search(category="drawing", source="gallery")

  • plan_stack

    Stack multiple single-storey DXF plans into one multilevel STL mesh. Each file is extruded at its base_elevation (e.g. ground 0 m, L1 3.5 m). Per-entity XDATA heights apply within each storey as usual. A floor slab is added under every storey (set slab=False to skip). ## Return Format {"success": bool, "output": str, "data": {"levels": [...], "wall_count": int, ...}} ## Examples await plan_stack(files=[{"file_name": "tower_L0.dxf", "base_elevation": 0}, {"file_name": "tower_L1.dxf", "base_elevation": 3.5}])

  • plan_text

    Add text annotations to a DXF drawing via QCAD Pro. Supports multi-line text with configurable height, alignment, rotation, and font styling (bold, italic). Requires QCAD Pro installed. ## Return Format {"success": bool, "output": str, "data": {"entity_count": int, "text_count": int}} ## Examples await plan_text(file_name="floorplan.dxf", texts=[ {"text": "Living Room", "x": 2500, "y": 3000, "height": 250, "halign": "center"}, {"text": "Kitchen", "x": 6000, "y": 2000, "height": 250, "layer": "Labels"}, ])

  • plan_to_ifc_data

    Extract wall lines, doors, and windows as a structured BIM schema JSON. Ready for consumption by `freecad-mcp` or direct IFC compilation. ## Return Format Dictionary with `success` and `data` containing BIM schema JSON details. ## Examples await plan_to_ifc_data("simple_floorplan.dxf", wall_height=3000.0)

  • plan_to_svg

    Convert a DXF file to an SVG preview image. Uses ezdxf's matplotlib backend for rendering. The SVG is saved to the outputs directory and viewable at GET /api/v1/download/{output_name}. ## Return Format {"success": bool, "output": str, "data": {"size_kb": float}} ## Examples await plan_to_svg(file_name="floorplan.dxf")

  • plan_transpile

    Translate AutoLISP to QCAD ECMAScript and execute the result. AI sampling (when a sampling-capable client is connected) asks the connected model to translate the AutoLISP using a reference mapping table - quality depends on that model, not on this code. Without sampling, falls back to a real (if limited) heuristic engine: it parses AutoLISP s-expressions properly (not regex matching), handles LINE/CIRCLE/ARC/RECTANG/TEXT/DIMLINEAR/LAYER commands, unrolls `repeat` loops with literal bounds, substitutes `defun` parameters, and translates `ssget`/`sslength` selection-set queries into live docum…

  • plan_wall_data

    Extract wall segment coordinates as structured BIM-ready JSON. Reads a DXF floor plan and exports wall line segments as structured data ready for freecad-mcp BIM tools (bim_create_wall). Each wall segment includes: start/end coordinates, length, angle, and layer name. LWPOLYLINE entities on wall layers are decomposed into individual segments. Requires QCAD Pro. ## Return Format {"success": bool, "data": {"wall_count": int, "total_length_m": float, "walls": [{"x1":.., "y1":.., "x2":.., "y2":.., "length_mm":.., "angle_deg":.., "layer":..}]}} ## Examples await plan_wall_data(file_name="floor…

  • qcad

    QCAD server itself: install status, live help catalog, orderly shutdown. ## Return Format {"success": bool, "message": str, "data": {...}} ## Examples await qcad(op="status") await qcad(op="help", topic="extrude") await qcad(op="shutdown", confirm=True)

  • qcad_help

    List server capabilities: MCP tools, REST routes, and config. Start here when you do not know which tool fits. Returns the tool catalog (8 portmanteau tools + 4 Prefab cards across 2 modules), key REST endpoints, ports, and env vars. Filter with `topic` for a focused subset. ## Return Format {"success": bool, "data": {"tools": [...], "rest": [...], "config": {...}}} ## Examples await qcad_help() await qcad_help(topic="extrude")

  • qcad_shutdown

    Shut the QCAD MCP server down gracefully (orderly exit). Responds first, then exits the process ~500 ms later so in-flight writes (depot sidecars, settings) can flush. The fleet launcher calls POST /api/shutdown before service restarts for the same reason. ## Return Format {"success": bool, "message": str} ## Examples await qcad_shutdown(confirm=True)

  • qcad_status

    Check QCAD Pro installation status, version, and capabilities. Reports whether QCAD Pro is installed, running, and the version string. Use this first to determine which QCAD Pro tools are available. ## Return Format {"success": bool, "data": {"installed": bool, "running": bool, "version": str, "install_dir": str}} ## Examples await qcad_status()

  • show_beam_analysis_card

    Show 2D beam FEA structural analysis as a rich Prefab card.

  • show_building_meta_card

    Show building storeys and level metadata as a rich Prefab card.

  • show_depot_card

    Show the CAD file depot contents as a rich Prefab card. ## Return Format ToolResult with PrefabApp card, or text summary fallback. ## Examples await show_depot_card()

  • show_qcad_status_card

    Show QCAD Pro installation status as a rich Prefab card. ## Return Format ToolResult with PrefabApp card, or text summary fallback. ## Examples await show_qcad_status_card()

Signals

Stars
17
Forks
0
Open issues
1
Last commit
Oct 24, 2026 (4 days ago)
Last release
Oct 22, 2026 (6 days ago)

From GitHub (fetched Oct 24, 2026).

Details

Registry name
io.github.sandraschi/qcad-mcp
Version
0.5.0
Auth
No auth
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from sandraschi

Cite this page

Qcad MCP. Agent Mart. https://agentmart.dev/connectors/sandraschi-qcad-mcp (last updated 2026-10-24)