Skip to main content
Glama
haianhdskt-boop

autocad-ai-mcp

AutoCAD AI MCP - Trợ Lý Kiến Trúc Sư Chuyên Nghiệp

FastMCP AutoCAD Platforms License

Hệ sinh thái Model Context Protocol (MCP) chuyên biệt hóa dành cho Kiến Trúc Sư & Kỹ Sư Xây Dựng. Tích hợp sẵn toàn bộ kho dữ liệu quy chuẩn kiến trúc architecture-reference-library vào mã nguồn (autocad_ai/knowledge/), điều khiển và tương tác theo thời gian thực trên màn hình AutoCAD (2021 - 2026) trên cả macOSWindows.

Toàn bộ các lệnh được chuẩn hóa sang tiếng Việt không dấu (tiền tố cad_) và ràng buộc nghiêm ngặt nguyên tắc "Bản vẽ sạch sẽ - Không chồng đè".


⚡ CÀI ĐẶT 1-CHẠM TỰ ĐỘNG TỪ GITHUB (ZERO BLOAT)

🍎 Dành cho máy macOS (Ở nhà):

Chạy lệnh sau trong Terminal (chỉ cài module macOS, không dính mã Windows):

curl -sSL https://raw.githubusercontent.com/haianhdskt-boop/autocad-ai-mcp/main/install-mac.sh | bash

🪟 Dành cho máy Windows (Tại văn phòng):

Chạy lệnh sau trong PowerShell (chỉ cài module COM ActiveX Windows):

irm https://raw.githubusercontent.com/haianhdskt-boop/autocad-ai-mcp/main/install-win.ps1 | iex

Related MCP server: AutoCAD LT AutoLISP MCP Server

🚫 NGUYÊN TẮC RÀNG BUỘC: BẢN VẼ SẠCH SẼ - KHÔNG CHỒNG ĐÈ (ZERO-OVERLAP)

Áp dụng bắt buộc khi VẼ (cad_ve_moi), HOÀN THIỆN (cad_hoan_thien_ho_so), CHỈNH SỬA (cad_chinh_sua)KIỂM TRA (cad_kiem_tra):

┌─────────────────────────────────────────────────────────────────────────────┐
│             5 NGUYÊN TẮC BẢN VẼ SẠCH SẼ, MẠCH LẠC & KHÔNG CHỒNG ĐÈ          │
├───────────────────────────────────┬─────────────────────────────────────────┤
│ 1. ĐỒ NỘI THẤT - TƯỜNG XÂY        │ CẤM đồ nội thất đè/lấn vào tường xây    │
│                                   │ 110/220 (trừ hộc tủ âm tường). Giữ khe  │
│                                   │ hở an toàn >= 50 - 100mm từ mặt trong.  │
├───────────────────────────────────┼─────────────────────────────────────────┤
│ 2. TƯỜNG XÂY - ĐỒ NỘI THẤT        │ CẤM nét tường chém/đè lên thiết bị vệ   │
│                                   │ sinh, bếp, sofa, giường tủ.             │
├───────────────────────────────────┼─────────────────────────────────────────┤
│ 3. CHỮ VIẾT, GHI CHÚ & CAO ĐỘ     │ CẤM chữ ghi chú đè lên nhau. CẤM chữ đè │
│                                   │ lên nét vẽ kiến trúc, thiết bị, hatch.  │
│                                   │ Text phải đặt ở vùng đệm thoáng đãng.   │
├───────────────────────────────────┼─────────────────────────────────────────┤
│ 4. ĐƯỜNG KÍCH THƯỚC (DIM)         │ CẤM các đường DIM đè lên nhau. Phân cấp │
│                                   │ 3 tầng DIM chuẩn cách nhau >= 800mm.    │
│                                   │ Không để đường gióng cắt qua số DIM.    │
├───────────────────────────────────┼─────────────────────────────────────────┤
│ 5. ĐỘ THOÁNG & THẨM MỸ BẢN VẼ     │ Bản vẽ phải mạch lạc, phân lớp layer rõ │
│                                   │ ràng, dễ đọc cho kỹ sư & công nhân.     │
└───────────────────────────────────┴─────────────────────────────────────────┘

📋 QUY TRÌNH LÀM VIỆC TIÊU CHUẨN (SOP) & BỘ QUY CHUẨN TRƯỚC KHI VẼ

┌─────────────────────────────────────────────────────────────────────────────┐
│               BẢNG THÔNG SỐ CÔNG THÁI HỌC & KÍCH THƯỚC TỐI THIỂU            │
├───────────────────────┬───────────────────────────────┬─────────────────────┤
│ HẠNG MỤC KHÔNG GIAN   │ KÍCH THƯỚC THÔNG THỦY TỐI THIỂU│ TIÊU CHUẨN THAM CHIẾU│
├───────────────────────┼───────────────────────────────┼─────────────────────┤
│ 1. Hành lang chính    │ Rộng >= 1100mm (phụ >= 900mm) │ Neufert & QCVN 04   │
│ 2. Cầu thang bộ       │ Vế thang >= 900mm; Chiếu nghỉ │ h = H/N (150-175mm) │
│                       │ >= 900mm; b = 250mm           │ b_hoàn thiện = 270mm│
│ 3. Lan can an toàn    │ Cao >= 900mm (vế), >= 1100mm  │ Khe hở nan đứng     │
│                       │ (thông tầng); Nan đứng <= 100mm│ an toàn trẻ em <=100│
│ 4. Phòng Khách        │ Diện tích >= 16m2; Rộng >=3.6m│ Cự ly xem TV >= 2.5m│
│ 5. Bếp & Phòng Ăn     │ Diện tích >= 12m2; Lối đi bếp │ Tam giác công năng  │
│                       │ >= 1000..1200mm; Bàn-tường 800│ Chu vi 4.0 - 7.5m   │
│ 6. Phòng Ngủ Master   │ Diện tích >= 14m2; Rộng >=3.3m│ Hở 2 bên giường 700 │
│ 7. Phòng Ngủ Đơn/Con  │ Diện tích >= 9m2; Rộng >= 2.7m│ Kê giường 1.2 - 1.4m│
│ 8. Vệ Sinh Tiêu Chuẩn │ Diện tích >= 3.2m2; Rộng >=1.4m│ Bệt hở trước >=600mm│
│                       │ Khoang tắm đứng >= 900x900mm  │ Hạ cốt sàn 30-50mm  │
│ 9. Giếng trời / Thông │ Nhà sâu >= 12m: Bắt buộc có ô │ Hiệu ứng ống khói   │
│    tầng lấy sáng      │ thang/giếng trời >= 5% sàn    │ Stack Effect        │
│ 10. Gara ô tô         │ Rộng >= 3.0m x Dài >= 5.5m    │ Độ dốc ram <= 15%   │
└───────────────────────┴───────────────────────────────┴─────────────────────┘

🏛️ 1. QUY TRÌNH THIẾT KẾ MỚI (5 BƯỚC)

  1. Bước 1: Nạp Nhiệm Vụ Thiết Kế: KTS cung cấp kích thước đất, số tầng, danh sách phòng, sở thích/phong cách, ảnh tham khảo.

  2. Bước 2: Phân Tích Quy Chuẩn & Đề Xuất Bố Trí: AI gọi cad_tra_cuu_quy_chuan, đối chiếu quy chuẩn, lập mô tả chi tiết phương án phân chia không gian, giao thông, giếng trời, cầu thang. AI DỪNG LẠI CHỜ KTS CHỐT trước khi vẽ.

  3. Bước 3: Triển Khai Vẽ Trực Tiếp: Sau khi KTS đồng ý chốt, AI gọi cad_ve_moi vẽ trực tiếp lên AutoCAD (tuân thủ nghiêm ngặt nguyên tắc Không Chồng Đè).

  4. Bước 4: Tự Kiểm Tra & Sửa Lỗi: AI tự động chạy cad_kiem_tra (action: audit_full_plan) kiểm tra kích thước thông thủy, quét sạch các lỗi chồng đè đồ đạc, chữ viết hay đường DIM.

  5. Bước 5: Báo Cáo Hoàn Thành: Thông báo diện tích m2 chi tiết từng phòng cho KTS nghiệm thu.


🔧 2. QUY TRÌNH CHỈNH SỬA / HIỆU CHỈNH (4 BƯỚC)

  1. Bước 1: Tiếp Nhận Phản Hồi: KTS kiểm tra bản vẽ trên AutoCAD và đưa ra yêu cầu (ví dụ: "Kéo phòng khách rộng thêm 500mm").

  2. Bước 2: Thực Hiện Chỉnh Sửa: AI gọi cad_chinh_sua để STRETCH, MOVE, MIRROR trực tiếp trên AutoCAD.

  3. Bước 3: Tự Kiểm Tra Lại: AI gọi cad_kiem_tra đảm bảo việc nới rộng phòng này không làm phòng bên cạnh bị bóp hẹp dưới chuẩn và không gây đè nét lên thiết bị.

  4. Bước 4: Báo Cáo Hoàn Thành: Zoom bản vẽ vào vị trí vừa sửa và thông báo kích thước mới cho KTS.


🏛️ TRỌN BỘ 8 LỆNH NGHIỆP VỤ TIẾNG VIỆT (KHÔNG DẤU)

                  ┌─────────────────────────────────────────────────────────────┐
                  │            TRỢ LÝ AI ĐIỀU KHIỂN AUTOCAD TRỰC TIẾP           │
                  └──────────────┬───────────────────────────────┬──────────────┘
                                 │                               │
            GIAI ĐOẠN THIẾT KẾ & SỬA ĐỔI            GIAI ĐOẠN HỒ SƠ, DỰ TOÁN & IN ẤN
            ┌────────────────────────────┐          ┌────────────────────────────┐
            │ 1. ✍️ cad_ve_moi           │          │ 3. 📐 cad_hoan_thien_ho_so │
            │ (Vẽ mới không gian/tường)  │          │ (Dàn trang động theo TKTC) │
            │                            │          │                            │
            │ 2. 🔧 cad_chinh_sua        │          │ 4. 📊 cad_du_toan          │
            │ (Sửa, dịch tường, đổi cửa) │          │ (Bóc dự toán chi tiết Excel│
            │                            │          │                            │
            │ 8. 📚 cad_tra_cuu_quy_chuan│          │ 7. 🖨️ cad_in_pdf           │
            │ (Tra cứu quy chuẩn tức thì)│          │ (In PDF đen trắng nét chuẩn│
            └────────────────────────────┘          └────────────────────────────┘
                                 │                               │
                                 ├───────────────────────────────┤
                                 │ 5. 🔍 cad_kiem_tra (Đo/lỗi)   │
                                 │ 6. ⚡ cad_gui_lenh (Lệnh CAD) │
                                 └───────────────────────────────┘

1️⃣ cad_ve_moi — Vẽ Mặt Bằng Kiến Trúc Mới

Vẽ trực tiếp mặt bằng lên không gian Model của AutoCAD theo đúng phân lớp layer chuẩn (KT_TUONG_220, KT_TUONG_110, KT_CUA_DI, KT_THANG, KT_NOITHAT), định vị nội thất và text không chồng đè.

  • Ví dụ ra lệnh:

    "Vẽ mặt bằng nhà phố 5x15m gồm sân trước 2.5m, phòng khách 4.5m, thang 2.5m, bếp 4m, WC và sân sau 1.5m, có bố trí nội thất cơ bản."

2️⃣ cad_chinh_sua — Sửa Đổi & Di Dời Linh Hoạt

Hiệu chỉnh, di dời mảng tường, co giãn kích thước phòng (STRETCH), đảo chiều mở cánh cửa (MIRROR), đổi layer trực tiếp trên màn hình.

  • Ví dụ ra lệnh:

    "Kéo rộng phòng khách lùi về phía sau thêm 500mm và đổi cánh cửa phòng ngủ mở vào trong tường."

3️⃣ cad_hoan_thien_ho_so — Hoàn Thiện Hồ Sơ Thi Công (Phân Trang Động & Chuẩn Thi Công)

Hệ thống TỰ ĐỘNG PHÂN TRANG THEO KHỐI LƯỢNG THỰC TẾ (không khống chế cứng số lượng trang A3 để đảm bảo bản vẽ in ra luôn rõ nét ở tỷ lệ kỹ thuật):

  • Kích thước Cầu thang chuẩn thi công (KT-09):

    • Chiều cao cổ bậc tính động: $h = \frac{H_{\text{tầng}}}{N_{\text{cổ bậc}}}$ (Ví dụ: Tầng cao 3.6m có 21 bậc $\rightarrow h = 171.4\text{mm}$; Tầng 3.9m có 23 bậc $\rightarrow h = 169.5\text{mm}$; Tầng 4.2m có 25 bậc $\rightarrow h = 168.0\text{mm}$).

    • Bề rộng mặt bậc xây thô chuẩn cố định: $b = 250\text{mm}$ (mặt bậc hoàn thiện ốp gỗ/đá là $270\text{mm}$ với mũi bậc chìa $20\text{mm}$ bo tròn R10).

  • Phân trang động Chi tiết cửa (KT-11.01, KT-11.02...):

    • Mỗi tờ A3 chỉ chứa tối đa 3-4 bộ cửa để đảm bảo tỷ lệ $1/25$ đọc rõ nét. Nếu công trình có 12 loại cửa, hệ thống tự động tách thành 4 tờ A3 riêng biệt.

  • Hệ thống các nhóm bản vẽ thi công:

    • Nhóm Mặt bằng: KT-01 (Tường xây), KT-02 (Ốp lát sàn & mốc lát, độ dốc), KT-03 (Bố trí nội thất & bảng thống kê), KT-04 (Định vị cửa & bảng bậu/lanh-tô).

    • Nhóm Mặt đứng & Mặt cắt: KT-05 (Mặt đứng chính công trình kèm vật liệu), KT-06 (Mặt cắt dọc 1-1 qua thang).

    • Nhóm Trần & Mái: KT-07 (Trần thạch cao giật cấp & đèn LED), KT-08 (Mặt bằng mái & thoát nước sê-nô).

    • Nhóm Chi tiết chuyên sâu: KT-09 (Chi tiết thang $h=H/N$, $b=250/270\text{mm}$), KT-10 (Chi tiết WC trích 1/25 & 4 vách), KT-11 (Chi tiết cửa phân trang động).

4️⃣ cad_du_toan — Bóc Tách Dự Toán Thi Công Chi Tiết (BOQ)

Tính toán khối lượng toàn diện theo định mức xây dựng Việt Nam và xuất file Excel / CSV:

  • Bê tông móng, cột, dầm, sàn ($m^3$), ván khuôn ($m^2$), cốt thép (Tấn).

  • Xây tường bao gạch ống 220 ($m^3$) & tường ngăn 110 ($m^2$) đã trừ diện tích cửa.

  • Trát tường trong/ngoài ($m^2$), ốp lát gạch nền/WC ($m^2$), sơn bả 3 lớp ($m^2$), trần thạch cao ($m^2$), hệ thống cửa ($m^2$).

  • Thiết bị điện chiếu sáng/ổ cắm, thiết bị vệ sinh cấp thoát nước.

  • Ví dụ ra lệnh:

    "Lập bảng dự toán chi tiết công trình 2 tầng 5x15m cao 3.6m xuất ra file Excel du_toan.csv"

5️⃣ cad_kiem_tra — Rà Soát Toàn Bộ Mặt Bằng, Chống Chồng Đè & Dọn Rác

Rà soát toàn diện mặt bằng (audit_full_plan) đối chiếu với toàn bộ tiêu chuẩn công thái học kiến trúc, quét sạch lỗi chồng đè đồ đạc/tường/DIM và chạy lệnh Audit / Purge dọn sạch file rác.

  • Ví dụ ra lệnh:

    "Kiểm tra toàn bộ mặt bằng xem có phòng nào bị hẹp dưới chuẩn hoặc bị đè nét không và dọn rác bản vẽ."

6️⃣ cad_gui_lenh — Gửi Lệnh AutoCAD Gốc

Gửi trực tiếp các lệnh AutoCAD như _.ZOOM _E, -PURGE ALL * N, _.REGENALL.

7️⃣ cad_in_pdf — In & Xuất Hồ Sơ PDF Chuẩn Nét Kỹ Thuật

In trực tiếp từ AutoCAD ra file PDF A3/A2 với phân cấp độ dày nét chuẩn (monochrome.ctb in đen trắng, tường/cột $0.40\text{mm}$, nét thấy $0.20\text{mm}$, dim/trục $0.13\text{mm}$, hatch $0.09\text{mm}$):

  • In hàng loạt (batch_all): In tự động toàn bộ các trang bản vẽ đã sinh ra file PDF chuẩn A3 trong thư mục chỉ định.

  • In bản vẽ đơn (single_sheet): In riêng 1 bản vẽ theo mã hiệu (ví dụ KT-01.01, KT-05, KT-09, KT-11.01).

8️⃣ cad_tra_cuu_quy_chuan — Tra Cứu Quy Chuẩn & Công Thái Học Tức Thì

Trích xuất tức thì hướng dẫn chi tiết từ kho 7 chuyên đề kiến trúc được đóng gói trực tiếp trong mã nguồn:

  • Tra cứu theo phòng (action: 'get_room', query: 'bep'): Lấy kích thước tam giác công năng, cự ly lối đi.

  • Tra cứu từ khóa (action: 'search', query: 'quy tắc 100mm'): Tìm kiếm mọi vị trí đề cập trong quy chuẩn.

  • Tra cứu chuyên đề (action: 'get_topic', query: 'cau-thang-va-hanh-lang'): Lấy trọn vẹn văn bản hướng dẫn.

  • Ví dụ ra lệnh:

    "Tra cứu tiêu chuẩn thiết kế phòng tắm vệ sinh 3 khu" hoặc "Tìm quy chuẩn khoảng cách nan lan can an toàn trẻ em"


📊 TRẠNG THÁI HIỆN TẠI & ĐỊNH HƯỚNG PHÁT TRIỂN TIẾP THEO

✅ NHỮNG NỘI DUNG ĐÃ HOÀN THÀNH:

  1. Kiến trúc MCP Server Đa Nền Tảng: Hỗ trợ 100% AutoCAD 2021-2026 trên macOS (AutoLISP/AppleScript) và Windows (COM ActiveX).

  2. Trọn bộ 8 Lệnh Nghiệp Vụ Tiếng Việt: cad_ve_moi, cad_chinh_sua, cad_hoan_thien_ho_so, cad_du_toan, cad_kiem_tra, cad_gui_lenh, cad_in_pdf, cad_tra_cuu_quy_chuan.

  3. Đóng gói Thư viện Quy chuẩn Kiến trúc: Tích hợp toàn bộ kho tri thức architecture-reference-library trực tiếp vào autocad_ai/knowledge/.

  4. Bộ 2 Quy Trình SOP Tiêu Chuẩn: Thiết kế mới 5 bước (có bước KTS duyệt chốt trước khi vẽ) và Chỉnh sửa 4 bước.

  5. Ràng buộc Chống Chồng Đè (Zero-Overlap): Đồ nội thất không đè tường, chữ/ghi chú/DIM không đè lên nhau.

  6. Động hóa Hồ sơ & Cầu thang: Cổ bậc thang $h=H/N$, mặt bậc $b=250/270\text{mm}$, phân trang động cửa tối đa 3-4 bộ/A3.

  7. Xuất PDF & Dự toán Chi tiết: In PDF A3 đen trắng chuẩn nét kỹ thuật, bóc dự toán xuất file Excel/CSV.

  8. Kiểm thử tự động: 16/16 bài unit test (pytest) Passed 100%.


⏳ NỘI DUNG CHƯA LÀM & ĐỊNH HƯỚNG BỔ SUNG TIẾP THEO:

  1. Chuẩn Hóa Bộ Template CAD (.dwt) & Thư Viện Block Riêng:

    • Khi bạn cung cấp các file mẫu .dwg / .dwt của văn phòng, hệ thống sẽ tích hợp để chèn các Block thực tế (Cửa nhôm kính Xingfa, Cửa gỗ Lim, Bệt Inax/Toto, Sofa góc chữ L, Khung tên riêng của công ty) thay vì vẽ nét vector hình học.

  2. Lệnh Chèn Block Chuyên Nghiệp (cad_chen_block):

    • Tự động gọi _.INSERT và gán thuộc tính Attribute cho Block cửa, thiết bị nội thất.

  3. Bảng Thống Kê Động Liên Kết 2 Chiều (Data Extraction):

    • Trích xuất bảng thống kê cửa trực tiếp từ Block Attribute trong AutoCAD và xuất ra Excel.

  4. Giao Diện Trực Quan Hóa (3D / Isometric Web Viewer):

    • Module xem nhanh hình khối 3D phối cảnh công trình trực tiếp trên trình duyệt trước khi xuất bản vẽ thi công.


🔌 CẤU HÌNH VÀO AI CLIENT

Antigravity / Claude Desktop / Cursor / VS Code:

Thêm vào file cấu hình MCP (~/.gemini/config/mcp_config.json hoặc claude_desktop_config.json):

Lưu ý: Nếu bạn dùng lệnh cài đặt 1-chạm (install-mac.sh / install-win.ps1), file config sẽ được ghi tự động. Chỉ cần cấu hình thủ công nếu bạn muốn tùy chỉnh.

Trên macOS:

{
  "mcpServers": {
    "autocad-ai": {
      "command": "/đường/dẫn/tới/autocad-ai-mcp/.venv/bin/python",
      "args": ["-m", "autocad_ai.servers.mac_server"]
    }
  }
}

(Thay /đường/dẫn/tới/autocad-ai-mcp/ bằng thư mục thực tế trên máy bạn)

Trên Windows:

{
  "mcpServers": {
    "autocad-ai": {
      "command": "C:\\đường\\dẫn\\tới\\autocad-ai-mcp\\.venv\\Scripts\\python.exe",
      "args": ["-m", "autocad_ai.servers.win_server"]
    }
  }
}

(Thay C:\đường\dẫn\tới\autocad-ai-mcp\ bằng thư mục thực tế trên máy bạn)


⚠️ CẢNH BÁO BẢO MẬT

Module autocad_mcp (DXF engine offline) có chức năng execute_ezdxf_script cho phép AI viết và thực thi script Python tùy ý thông qua exec(). Đây là theo thiết kế (by design) để cho phép vẽ các hình dạng phức tạp, nhưng có rủi ro bảo mật tương đương với các MCP server có tính năng chạy code. Nếu triển khai trong môi trường chia sẻ, hãy cân nhắc giới hạn quyền truy cập thư mục làm việc.

Available Tools

15 tools
add_entitiesAdd EntitiesA
Batch add geometric entities to a DXF drawing's modelspace.
Supported entity types:
- line: {"type": "line", "start": [x1, y1], "end": [x2, y2], "layer": "WALL", "color": 1}
- circle: {"type": "circle", "center": [x, y], "radius": r, "layer": "HOLES"}
- arc: {"type": "arc", "center": [x, y], "radius": r, "start_angle": a1, "end_angle": a2}
- lwpolyline: {"type": "lwpolyline", "points": [[x1, y1], [x2, y2], ...], "is_closed": true}
- rectangle: {"type": "rectangle", "corner1": [x1, y1], "corner2": [x2, y2], "layer": "FRAME"}
- text: {"type": "text", "text": "Label", "insert": [x, y], "height": 3.5}
- mtext: {"type": "mtext", "text": "Multi

Line", "insert": [x, y], "height": 3.5} - point: {"type": "point", "location": [x, y]} - ellipse: {"type": "ellipse", "center": [x, y], "major_axis": [dx, dy, 0], "ratio": 0.5} - dimension_linear: {"type": "dimension_linear", "base": [x, y], "p1": [x1, y1], "p2": [x2, y2], "text": "100mm"} - block_reference: {"type": "block_reference", "block_name": "DOOR", "insert": [x, y], "scale": 1.0, "rotation": 0.0}

ParametersJSON Schema
NameRequiredDescriptionDefault
entitiesYes
file_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It does disclose the batch-add behavior, the modelspace target, and a rich catalog of supported entity shapes. However, it does not mention side effects like whether entities are appended versus replacing existing content, whether the file must already exist, or how invalid entities are handled.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but highly information-dense: every entity type line adds necessary formatting detail that the schema lacks. The content is front-loaded with the core action and modelspace target before the examples. A more compact representation would risk losing critical type-specific parameter information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the high complexity of the entities parameter and the complete absence of schema detail, the description does enough for an agent to invoke the tool with correct entity payloads. It stops short of explaining file-path prerequisites, behavior with existing drawings, and response/error semantics, but the provided examples cover the primary invoke-correctly needs.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, and the schema itself only defines an opaque array of objects. The description compensates fully by providing detailed JSON examples for every supported entity type, including required fields like start/end, center/radius, and insert points. This is essential for constructing valid calls.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Batch add geometric entities') and a precise resource ('a DXF drawing's modelspace'). It also enumerates the supported entity types, which clearly separates this tool from siblings like add_layer, delete_entities, and query_drawing_entities.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly implies when to use the tool: whenever geometric entities need to be added to a drawing. However, it does not explicitly state when not to use it or mention alternatives like execute_ezdxf_script for more custom entity creation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

add_layerAdd LayerC

Add a new layer or update an existing layer in a DXF drawing.

  • color: ACI number (1-255), color name ('red', 'cyan', 'green'), or hex ('#FF0000').

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
colorNo
linetypeNoCONTINUOUS
file_pathYes
lineweightNo
descriptionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It does usefully reveal that the tool can update an existing layer rather than only creating one. However, it omits side effects such as file modification, whether existing layer properties are overwritten, persistence behavior, and any failure conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded with the main action, followed by a compact, useful bullet about color formats. There is no filler or repetition. It sacrifices completeness in favor of brevity, but what is present is efficiently structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutating tool with no annotations and minimal parameter documentation, the description is incomplete. It does not clarify the required file_path and name semantics, update behavior, or how the optional parameters behave. An output schema may cover return values, but the operational context is still too thin.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It explains the color parameter well with ACI numbers, color names, and hex values. However, it leaves name, file_path, linetype, lineweight, and description without any added semantic meaning beyond their types and defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear action and resource: 'Add a new layer or update an existing layer in a DXF drawing.' This distinguishes it from siblings like list_layers and add_entities, since it specifically targets layer definitions. It does not name sibling alternatives, but the core purpose is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus list_layers, add_entities, or execute_ezdxf_script. No conditions, prerequisites, or exclusions are provided, so an agent must infer when this tool is the right choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_drawingCreate DrawingA

Create a new blank DXF CAD drawing file.

  • dxf_version: e.g. 'R2018', 'R2013', 'R2010', 'R2007', 'R2000'

  • units: 'mm', 'cm', 'm', 'in', 'ft', or 'unitless'

  • layers: optional list of initial layers, e.g. [{"name": "WALL", "color": 1, "linetype": "CONTINUOUS"}]

ParametersJSON Schema
NameRequiredDescriptionDefault
unitsNomm
layersNo
file_pathYes
dxf_versionNoR2018

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full disclosure burden. It clearly says the operation creates a file, but it does not disclose overwrite behavior, handling of existing files, file-system side effects, or any other consequences. For a file-creation tool this is a notable gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: a single purpose sentence followed by concise parameter bullets. There is no filler or redundancy, and every line contributes usable information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is minimally viable for a simple creation tool: an agent can understand the main action and most parameters, and an output schema exists. Still, the required file_path is undocumented in both the description and schema, and the absence of overwrite/side-effect context leaves an important gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the bullet examples add real value for dxf_version, units, and layers. However, the required file_path parameter is completely omitted, so its semantics must be inferred from the schema field name.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Create a new blank DXF CAD drawing file.' The word 'blank' also differentiates this from sibling tools that read, query, export, or add content to existing drawings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: this tool is for creating a fresh, empty drawing. There is no explicit guidance about when to prefer it over alternatives such as add_entities or execute_ezdxf_script, nor any when-not-to-use conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_entitiesDelete EntitiesB

Delete entities from a DXF file by handle list, or by layer/entity type filter.

ParametersJSON Schema
NameRequiredDescriptionDefault
layerNo
handlesNo
file_pathYes
entity_typeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations available, the description carries the full burden of behavioral disclosure, but it mostly restates the tool's name. It does not disclose whether the file is modified in-place, whether deletion is permanent, how the selection criteria interact, or what happens when no entities match the filter.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly worded sentence that front-loads the action and resource, then states the selection modes. Every word contributes meaning, and there is no redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive tool with four parameters, no annotations, and no schema property descriptions, the description is too sparse. It omits critical side-effect information, default behavior, and parameter combination rules. While an output schema exists, it cannot convey whether the file is permanently altered or whether filters are exclusive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaning to handles, layer, and entity_type by framing them as filters, which is helpful because the schema has no property descriptions (0% coverage). However, it does not explain file_path, nor does it clarify whether layer and entity_type are combined or mutually exclusive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action (delete) on a specific resource (entities in a DXF file) and identifies two selection mechanisms: handle list or layer/entity type filter. This clearly distinguishes delete_entities from sibling tools like query_drawing_entities and add_entities.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool: when the goal is deletion of entities from a DXF file. However, it provides no explicit comparison to alternatives or exclusions, and it does not clarify when the handle-list mode should be preferred over the layer/entity type filter mode.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

execute_ezdxf_scriptExecute Ezdxf ScriptB

Execute custom Python code using ezdxf for advanced parametric drafting or calculations. Variables provided in scope: doc, msp, ezdxf, math, target_file, result. Assign any final output message to variable result.

ParametersJSON Schema
NameRequiredDescriptionDefault
script_codeYes
target_fileNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of explaining behavior. It usefully discloses that code is executed, which variables are available, and how result should be assigned. However, it does not mention side effects, whether the drawing is modified, error behavior, or security implications of arbitrary code execution.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, front-loaded, and contains only essential information. It avoids filler while still communicating the execution model and required result convention.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the high complexity of arbitrary code execution and the absence of annotations, the description is not sufficiently complete. It lacks clarity on target_file, what doc/msp represent, how the result is used, and whether changes are persisted. The presence of an output schema reduces some burden, but the core execution contract remains underspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, and the description only lightly addresses parameters. script_code is implied as custom Python code, and target_file appears in the variable list but its meaning as a parameter is not explained. The description does not compensate for the missing schema documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it executes custom Python code with ezdxf for parametric drafting or calculations, identifying both the verb and the resource. It is distinct from the sibling tools, though it does not explicitly name alternatives or contrast with them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'advanced parametric drafting or calculations' implies when it should be used, but there are no explicit conditions, exclusions, or guidance comparing it to alternatives like generate_autocad_scr or add_entities. The usage context is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_drawing_to_pdfExport Drawing To PdfB

Render and export DXF CAD drawing to PDF format.

ParametersJSON Schema
NameRequiredDescriptionDefault
bg_colorNowhite
file_pathYes
layout_nameNoModel
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must carry behavioral disclosure. It clearly states the core transformation from DXF to PDF and implies file generation, but it does not address side effects such as output_path default behavior, overwriting, or whether the source DXF is modified. No contradiction with annotations exists because no annotations are present.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one concise, front-loaded sentence with no filler. Every word contributes to the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although an output schema exists and the tool is simple, the description is too thin to be complete: it gives no selection guidance among PDF/SVG/PNG siblings and leaves four parameters effectively undocumented. An agent could invoke it, but not confidently choose or configure it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. 'DXF CAD drawing' and 'PDF format' loosely map to file_path and output_path, but the description does not explain bg_color, layout_name, or the optional output_path behavior, leaving most parameter semantics to schema names and defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb-resource pair: 'Render and export DXF CAD drawing to PDF format.' The explicit PDF format distinguishes it from sibling tools like export_drawing_to_svg and export_drawing_to_png.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to choose PDF export over the SVG or PNG export siblings, nor any exclusion criteria. The agent must infer selection from the format name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_drawing_to_pngExport Drawing To PngB

Render DXF CAD drawing to a high-resolution PNG image.

ParametersJSON Schema
NameRequiredDescriptionDefault
dpiNo
bg_colorNowhite
dark_modeNo
file_pathYes
layout_nameNoModel
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full disclosure burden. It only mentions the output format and resolution; it does not say whether the tool writes a file, what output_path null means, how DPI/color settings affect rendering, or whether the operation has side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no filler or repetition. It is concise, but the brevity comes at the cost of omitting parameter and behavioral context, so it is not fully 'appropriately sized' for the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a six-parameter tool with no annotations and zero parameter descriptions, this one-line description is not complete enough. It provides no guidance on layouts, colors, output path behavior, or when to prefer SVG/PDF siblings. The output schema may cover return values but cannot compensate for missing invocation semantics.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for six undocumented parameters. It only hints at dpi via 'high-resolution' and PNG format via 'PNG image', but leaves file_path, output_path, bg_color, dark_mode, and layout_name semantics entirely to the schema's bare property names and defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Render'), a specific resource ('DXF CAD drawing'), and a concrete output ('high-resolution PNG image'). The PNG format clearly distinguishes this tool from sibling export tools such as export_drawing_to_pdf and export_drawing_to_svg.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use case—rendering a DXF drawing as a raster PNG—is implied by the description and tool name. However, there is no explicit when-to-use/when-not-to-use guidance or comparison with sibling export tools, so the agent must infer the selection logic.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_drawing_to_svgExport Drawing To SvgC

Render DXF CAD drawing to vector SVG format for crisp browser viewing.

ParametersJSON Schema
NameRequiredDescriptionDefault
bg_colorNowhite
dark_modeNo
file_pathYes
layout_nameNoModel
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It states that a drawing is rendered to SVG, but it does not explain whether the tool writes to output_path, returns SVG content, or has side effects. The behavior around output_path defaulting to null is left entirely to inference.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler, and it front-loads the core action and output format. It is appropriately concise, though that brevity comes at the cost of behavioral and parameter detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value documentation is not strictly needed, but the description remains incomplete for a five-parameter tool with no annotations. It does not explain parameter semantics, output behavior, or when to choose this sibling over PDF/PNG exports.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not compensate by explaining any of the five parameters. While parameter names like bg_color and dark_mode are suggestive, nothing clarifies semantic details such as how layout_name selects a layout or what happens when output_path is null.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states an action: render a DXF CAD drawing to SVG format. It adds the vector and browser-viewing context, which helps distinguish it from raster exports like export_drawing_to_png. However, it does not explicitly contrast with export_drawing_to_pdf, which is also a vector-format sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no explicit guidance on when to use SVG versus PDF or PNG exports. 'Crisp browser viewing' hints at a use case, but there is no mention of alternatives, exclusions, or conditions favoring this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

extract_drawing_textsExtract Drawing TextsB

Extract all textual annotations, notes, and labels (TEXT & MTEXT) with exact coordinates, heights, rotations, and layers.

ParametersJSON Schema
NameRequiredDescriptionDefault
layerNo
file_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It usefully discloses the extraction scope and output fields, but it does not clarify whether block references or layouts are traversed, whether the layer parameter filters results, or whether the operation is strictly read-only.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single concise sentence that front-loads the action and scope with no fluff. It is efficient, though it sacrifices important parameter and usage detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The output schema may cover return values, but the input side is under-specified: the optional layer parameter and required file_path are absent from the description. Without annotations or parameter descriptions, an agent faces ambiguity about how to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage and the description does not mention either parameter. An agent cannot learn that file_path is the drawing to read or that layer optionally filters extracted text entities; the description adds no meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action and resource: extracting all TEXT & MTEXT annotations, notes, and labels. It also lists the exact output attributes (coordinates, heights, rotations, layers), which clearly distinguishes this from general sibling tools like query_drawing_entities.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to choose this tool versus query_drawing_entities, list_blocks, or other siblings. The usage context is implied by the name but not stated, and there are no exclusions or alternative routes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_autocad_lispGenerate Autocad LispC

Generate an AutoLISP (.lsp) routine file for AutoCAD users.

  • template_type: 'clean_drawing', 'create_grid', 'batch_export_pdf', or None (with custom_lisp_code).

ParametersJSON Schema
NameRequiredDescriptionDefault
parametersNo
output_pathNo
routine_nameYes
template_typeNo
custom_lisp_codeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are absent, so the description must disclose behavior but only says a file is generated. It does not state whether the tool writes to output_path, returns the LISP code, validates the template/custom code, or what happens when output_path is null.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact, front-loaded clauses with no filler. The template_type hint is useful, but the definition is so short that conciseness edges into under-specification.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with five parameters and no annotations, the description is incomplete: required routine_name and output path behavior are missing, and the output schema is the only source of return information. It is enough to identify purpose, but not to invoke correctly with confidence.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Description adds meaning beyond the schema for template_type by enumerating accepted values and linking None to custom_lisp_code. However, it leaves routine_name (required), parameters, and output_path semantically unexplained, and schema coverage is 0%.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action and artifact: generates an AutoLISP (.lsp) routine file, which differentiates it from the sibling generate_autocad_scr. It is clear but does not explicitly contrast itself with sibling tools or explain what kind of routines it supports beyond the template_type hint.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides no guidance about when to use this tool rather than generate_autocad_scr or other generation/export siblings. The template_type list implies some use cases, but no conditions, prerequisites, or exclusions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_autocad_scrGenerate Autocad ScrB

Generate an AutoCAD Script file (.scr) for batch automation inside AutoCAD.

ParametersJSON Schema
NameRequiredDescriptionDefault
commentNoGenerated by AutoCAD MCP
commandsYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the tool generates a .scr file and does not disclose side effects, such as whether existing files are overwritten, whether commands are validated, or whether the file is written locally. This is minimal behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler words. It immediately identifies the deliverable and the purpose, making it easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has three parameters, no annotations, and no description-level parameter coverage, making the definition incomplete for reliable invocation. While an output schema exists, the description still omits key context such as how commands are encoded in the .scr file, whether the output path should include the .scr extension, and what happens with the comment parameter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description adds no parameter-level clarification. The meaning of 'commands', 'output_path', and 'comment' is left entirely to the schema's field names, with no guidance on command formatting, file extension handling, or path conventions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Generate') with a specific resource ('AutoCAD Script file (.scr)') and names the use case ('batch automation inside AutoCAD'). This clearly distinguishes it from the sibling tools, which are query/export operations rather than script generation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context by stating the tool is for 'batch automation inside AutoCAD,' which implies when to use it. It does not explicitly name alternatives or when-not conditions, but the sibling tool names (list_blocks, export_drawing_to_png, etc.) make alternative purposes obvious.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_blocksList BlocksB

List all block definitions and their usage/instance count in modelspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states what it lists but doesn't disclose behavioral details like whether it returns aggregated counts across the whole drawing, whether it scans modelspace only (it does say 'in modelspace', which is a useful scoping detail), or what happens if the file_path is invalid. The output schema exists, which helps, but the description adds limited behavioral context beyond the basic call.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the primary action and result. No wasted words, though it could add a hint about file_path format without bloating.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has a single required parameter and a provided output schema, the description covers the core purpose. It lacks details like file format expectations and edge-case behavior, but for a simple list operation with output schema available, it's fairly complete. The absence of annotations and explicit usage alternatives slightly lowers this from a 5.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. The description clarifies that file_path refers to a drawing file containing modelspace, but it doesn't specify the format, whether it's a DXF/DWG, or what the expected file extension is. With only one parameter and no enum, a brief format hint would be helpful but isn't present.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'List' and the resource 'block definitions', plus the specific output (usage/instance count) in modelspace. It distinguishes from siblings like list_layers and query_drawing_entities by focusing on block definitions and instance counts, though it doesn't explicitly name a sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: call this tool to get block definitions and their instance counts. It doesn't explicitly state when to prefer this over siblings like query_drawing_entities, but the scope (blocks vs entities vs layers) is reasonably clear. No exclusions or alternatives are mentioned, so it's implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_layersList LayersA

List all layers in a DXF drawing with properties (name, color ACI/Hex, linetype, lineweight, status on/frozen/locked, entity count).

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It accurately indicates a read-only listing operation and enumerates the returned properties, but does not disclose edge cases (e.g., empty drawings, invalid files, or performance behavior). The behavior is straightforward enough that a score of 3 reflects adequate but not deep transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core action and lists the output contents in parentheses. Every word contributes meaningful information, with no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity, one parameter, and an existing output schema that already defines the return structure, the description covers the essential calling context: what the tool does and what data it returns. It omits direct usage guidance, but the operational completeness is strong.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the file_path parameter has no schema description, so the description must compensate. It does so by establishing that the tool operates on a DXF drawing, implicitly clarifying that file_path is the path to that drawing. While explicit path format details are absent, this is sufficient for a single obvious parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb and resource ('List all layers in a DXF drawing') plus the properties returned (name, color, linetype, lineweight, status, entity count). This distinguishes it from sibling tools like list_blocks, which target a different resource type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit guidance on when to prefer this tool over alternatives. Siblings like list_blocks or query_drawing_entities are not mentioned, and no conditions or exclusions are provided. Usage context is only implied by the tool's name and basic function.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

query_drawing_entitiesQuery Drawing EntitiesA

Query entities in the drawing with optional filtering by type (e.g. 'LINE', 'CIRCLE', 'LWPOLYLINE', 'TEXT', 'INSERT') and/or layer. Returns coordinates, dimensions, layers, and properties for each matched entity.

ParametersJSON Schema
NameRequiredDescriptionDefault
layerNo
limitNo
offsetNo
file_pathYes
entity_typeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the disclosure burden. It clearly communicates that this is a read-style query operation and specifies the returned data categories: coordinates, dimensions, layers, and properties. It does not discuss pagination or result limits, but the operation's non-destructive nature is strongly implied by 'Query'.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences with no filler. The purpose and filtering capability are front-loaded, and the return value summary is placed second. Every sentence contributes useful information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is adequate for selecting the tool and understanding its core behavior, and an output schema exists for return details. However, it leaves gaps around pagination semantics, exact matching behavior for filters, and any file-format assumptions, which matter given five parameters and no annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, but it only adds meaning for entity_type and layer. Parameters like file_path, limit, and offset receive no semantic explanation, leaving the agent to infer their roles solely from names and defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Query') and resource ('entities in the drawing'), and clarifies optional filtering by type and layer. It also distinguishes itself from siblings like list_layers and list_blocks by covering arbitrary entity types and returning geometric/property data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes the usage context clear: use this when you need drawing entities filtered by type/layer and their coordinates or properties. It does not explicitly name alternatives or exclusion conditions, but the context is strong enough for an agent to select it over obvious siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

read_dxf_summaryRead Dxf SummaryA

Get a comprehensive high-level summary of a DXF CAD drawing. Returns: DXF version, units, layer count, block count, entity breakdown by type, total entities, and bounding box.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full disclosure burden. It clearly frames the operation as read-only ('Get') and lists the exact output fields. It does not cover error behavior or file-path requirements, but for a simple summary tool this is reasonably transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences: the first states the core purpose, the second gives a concrete return list. No filler, no repetition of schema information, and every sentence contributes value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter read-only tool, the description lists the output categories and is therefore usable. However, with no annotations and no parameter documentation, it leaves gaps around when to choose this tool versus siblings and what exactly file_path must point to. The output schema exists but is not shown, so the description remains the only explanatory source.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the only parameter file_path has no description. The tool description implies the path refers to a DXF CAD drawing, but it does not add explicit parameter semantics such as path format, file type requirements, or accessibility expectations. The description does not compensate for the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action ('Get') and resource ('a comprehensive high-level summary of a DXF CAD drawing'), and enumerates the returned contents (version, units, counts, entity breakdown, bounding box). This clearly distinguishes it from sibling tools that focus on specific details like blocks, layers, or entities.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when a high-level overview is needed, but it does not explicitly say when to use this tool instead of siblings such as list_layers or query_drawing_entities. No exclusions or alternative tool references are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

B3.3/5.0
Disambiguation4/5

Most tools map to a distinct resource/action pair: layers, blocks, entities, texts, exports, and script generation. The main overlaps are query_drawing_entities vs list_blocks/extract_drawing_texts for INSERT/TEXT entities, and execute_ezdxf_script is a catch-all that could replace many tools, but the descriptions make the intended specializations reasonably clear.

Naming Consistency4/5

Tool names overwhelmingly follow a snake_case verb_noun pattern: list_blocks, create_drawing, add_entities, delete_entities, export_drawing_to_pdf, generate_autocad_scr. Minor deviations like read_dxf_summary vs list_layers and the one-off execute_ezdxf_script keep it from being perfectly consistent.

Tool Count5/5

At 15 tools, the set is at the upper edge of the well-scoped range, but each tool covers a distinct CAD workflow: create, inspect, modify, export, and generate automation scripts. There is no obvious bloat or redundancy.

Completeness3/5

The surface covers create, read, list, add, delete, and export operations well, but there is no direct entity update/modify tool, no layer deletion, and no block definition creation. execute_ezdxf_script can fill these gaps with custom code, but agents would need to fall back to a generic escape hatch for common editing tasks.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables controlling CAD software (AutoCAD, GstarCAD, ZWCAD) through natural language instructions, allowing users to create and modify drawings without manually operating the CAD interface.
    518
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Connects Claude AI to AutoCAD for architectural design, enabling natural language to execute 684 commands. Automates drawing creation and editing through the Model Context Protocol.
    21
    5
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/haianhdskt-boop/autocad-ai-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server