Skip to main content
Glama
cristoferlabs

AutoCAD MCP Server

AutoCAD MCP Server

Estado / Status: En proceso de mejora de rendimiento — work in progress. Las funcionalidades principales funcionan, pero se siguen optimizando la velocidad y estabilidad.

Servidor MCP (Model Context Protocol) que conecta Claude (u otro cliente compatible con MCP) directamente con AutoCAD, permitiendo generar planos arquitectónicos, dibujar geometría y exportar archivos DXF con solo describir lo que necesitas en lenguaje natural.

An MCP server that bridges Claude (or any MCP-compatible AI) with AutoCAD, enabling you to generate architectural floor plans, draw geometry, and export DXF files just by describing what you need in natural language.


¿Qué hace? / What does it do?

Claude / AI  →  "Diseña una vivienda de 120 m² para 4 personas"
                       │
                       ▼
              MCP AutoCAD Server
                       │
           ┌───────────┴────────────┐
           ▼                        ▼
    Exporta DXF              Dibuja en AutoCAD
 (sin AutoCAD abierto)     (COM — Windows, opcional)
~/Documents/AutocadMCP/output/
  • Interpreta un brief arquitectónico en lenguaje natural

  • Aplica reglas de construcción (mínimos RNE Perú / normativa general)

  • Genera geometría (muros, puertas, ventanas, mobiliario)

  • Exporta a DXF (compatible con AutoCAD, Revit, FreeCAD, cualquier visor CAD)

  • Controla AutoCAD directamente via COM (Windows, AutoCAD completo requerido)


Related MCP server: autocad-mcp

Requisitos / Requirements

Componente

Versión mínima

Windows

10 / 11

Python

3.10+

AutoCAD

2018+ (completo, no LT) — solo para integración COM directa

ngrok / Cloudflare Tunnel

cualquier versión — solo para Claude.ai web

La exportación a DXF funciona sin AutoCAD instalado. AutoCAD solo es necesario para dibujar directamente en él (herramientas draw_*, batch_execute, etc.).


Instalación / Installation

# 1. Clona el repositorio
git clone https://github.com/dtocjao/MCP---Autocad.git
cd MCP---Autocad

# 2. Crea el entorno virtual
python -m venv .venv
.\.venv\Scripts\Activate.ps1

# 3. Instala dependencias
pip install -e .

Dependencias instaladas automáticamente:

  • mcp[cli] — protocolo MCP (FastMCP)

  • pywin32 — integración COM con AutoCAD (Windows)

  • ezdxf — generación de archivos DXF


Cómo ejecutar / How to run

Opción A — Claude Desktop (modo local, stdio)

Edita el archivo de configuración de Claude Desktop:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "autocad": {
      "command": "C:\\RUTA\\AL\\PROYECTO\\MCP---Autocad\\.venv\\Scripts\\python.exe",
      "args": ["-m", "autocad_mcp.server"]
    }
  }
}

Reemplaza C:\\RUTA\\AL\\PROYECTO\\ con la ruta real donde clonaste el repo.
Reinicia Claude Desktop. El servidor autocad aparecerá en la lista de herramientas.

Ver claude_desktop_config.example.json como referencia.


Opción B — Claude.ai web (modo HTTP remoto con ngrok)

Claude en la web requiere una URL HTTPS pública. Sigue estos pasos:

1. Abre AutoCAD (si vas a usar la integración directa con AutoCAD).

2. Inicia el servidor HTTP:

scripts\start_for_claude.bat

O con PowerShell:

powershell -ExecutionPolicy Bypass -File .\scripts\start_for_claude.ps1

Esto levanta el servidor en el puerto 8765.

3. Expón el puerto con ngrok (en otra terminal):

ngrok http 8765

Descarga ngrok en ngrok.com/download si no lo tienes.

4. Copia la URL HTTPS que muestra ngrok, por ejemplo:

https://a1b2c3d4.ngrok-free.app

5. En Claude.ai → Añadir conector personalizado:

Campo

Valor

Nombre

Autocad

URL del servidor MCP remoto

https://a1b2c3d4.ngrok-free.app/mcp

OAuth Client ID

(dejar vacío)

Secreto OAuth

(dejar vacío)

6. Prueba con: "Usa draw_bedroom_plan para crear un dormitorio de 20 m²"

La URL de ngrok cambia cada vez que lo reinicias (plan gratuito). Elimina y vuelve a añadir el conector si cambia.

Alternativa: Cloudflare Tunnel

cloudflared tunnel --url http://localhost:8765

Usa la URL pública con el sufijo /mcp.


Herramientas disponibles / Available tools

Arquitectónicas (generan DXF + pueden dibujar en AutoCAD)

Herramienta

Descripción

get_project_schema_template

Devuelve plantilla JSON completa (Niveles 1–8)

create_architectural_project

Herramienta principal — JSON → geometría → DXF → (AutoCAD)

analyze_client_requirements

Brief en texto → JSON estructurado + distribución sugerida

create_floor_plan

Vivienda completa → DXF (por área, habitaciones, baños)

create_bedroom_suite

Suite con cama, vestidor, baño, terraza → DXF

validate_building_code

Valida geometría contra mínimos de construcción

export_dxf

Geometría JSON → archivo DXF

push_floor_plan_to_autocad

Geometría JSON → dibuja en AutoCAD

get_architecture_rules_reference

Dimensiones mínimas por tipo de estancia

CAD directas (AutoCAD COM, requiere AutoCAD abierto)

Herramienta

Descripción

draw_bedroom_plan

Dormitorio completo en 1 llamada (paredes, puerta, ventana, muebles)

batch_execute

Ejecuta muchas operaciones en 1 llamada

execute_command

Comando de línea de AutoCAD

execute_lisp / execute_lisp_safe

Expresión AutoLISP

draw_line

Línea entre dos puntos

draw_circle

Círculo

draw_rectangle

Rectángulo

draw_polyline

Polilínea

draw_arc

Arco

draw_text

Texto

create_layer / set_current_layer

Gestión de capas

get_status / ensure_autocad_ready

Estado de conexión

new_drawing

Nuevo dibujo vacío

get_drawing_info

Capas, unidades, entidades del dibujo activo

save_drawing

Guardar DWG

list_entities

Lista entidades del model space

delete_entity_by_handle

Borrar entidad por handle

get_system_variable / set_system_variable

Variables de sistema AutoCAD

zoom_extents

Zoom a extensión


Esquema de proyecto arquitectónico (Niveles 1–8)

Claude puede enviar JSON desde lo más simple hasta un plano profesional completo:

Nivel

Contenido

Campos JSON

1

Geometría básica

rooms[] (name, width, length, area)

2

Arquitectura real

walls[], doors[], windows[]

3

Normativa

projectType, code (PE/RNE), zoning

4

Sistema CAD

layers, lineweights

5

Presentación

scale, sheet, titleBlock

6

BIM básico

spaces, materials, levels

7

Profesional

grids, dimensionRules, symbols

8

Intención

architecturalIntent

Ejemplo mínimo (Nivel 1):

{
  "title": "Dormitorio",
  "rooms": [{"name": "Dormitorio", "width": 3.4, "length": 4.0, "area": 13.6}]
}

Ejemplo con normativa peruana RNE (Nivel 3+):

{
  "projectType": "vivienda_multifamiliar",
  "code": {"country": "PE", "municipality": "Lima", "rne": true},
  "layers": {"walls": "ARQ_MUROS", "doors": "ARQ_PUERTAS"},
  "architecturalIntent": {"includeTitleBlock": true, "includeGrid": true}
}

Ejemplos de uso con Claude / Usage examples

"Conecta con AutoCAD y dime qué dibujo tengo abierto"
"Diseña una vivienda de 120 m² para una familia de 4 personas"
"Crea un dormitorio suite de 5x4 metros con cama king y baño"
"Dibuja un rectángulo de 0,0 a 100,50 en la capa Paredes"
"Valida este plano contra las normas mínimas de construcción"
"Exporta el plano a DXF y guárdalo"

Estructura del proyecto / Project structure

autocad_mcp/
├── server.py               # Punto de entrada MCP (stdio y HTTP)
├── autocad_client.py       # Cliente COM de AutoCAD (pywin32)
├── floor_plan.py           # Generador de planos (legacy)
└── architecture/
    ├── pipeline.py         # Orquestación end-to-end
    ├── project_builder.py  # JSON → geometría + validación
    ├── project_schema.py   # Modelo ArchitecturalProject (Niveles 1–8)
    ├── dxf_export.py       # Exportador DXF (capas, cotas, ejes, cartela)
    ├── rules.py            # Reglas mínimas, RNE Perú
    ├── layout.py           # Distribución automática de estancias
    ├── wall_engine.py      # Motor de muros
    ├── cad_model.py        # Modelo de datos CAD
    └── ...
scripts/
├── start_for_claude.bat    # Inicia servidor HTTP (Windows CMD)
└── start_for_claude.ps1    # Inicia servidor HTTP (PowerShell)

Solución de problemas / Troubleshooting

Problema

Solución

No conecta a AutoCAD

Abre AutoCAD antes de usar las herramientas CAD directas

Error pywin32

pip install pywin32 y reinicia el terminal

Claude no ve el MCP

Revisa rutas absolutas en el JSON de configuración

AutoCAD LT

Algunas versiones LT no exponen COM — usa AutoCAD completo

URL ngrok no funciona

La URL cambia al reiniciar ngrok — actualiza el conector en Claude.ai


Estado del proyecto / Project status

Este proyecto está en proceso de mejora activa. Las funcionalidades principales (exportación DXF, integración COM, herramientas arquitectónicas) ya funcionan. Se está trabajando en:

  • Mejorar la velocidad de la integración COM con AutoCAD

  • Optimizar la generación de geometría compleja

  • Ampliar soporte de normativas internacionales

  • Mejorar compatibilidad con Cursor y otros clientes MCP

Contribuciones y reportes de bugs son bienvenidos.


Licencia / License

MIT

Related MCP Connectors

Related MCP Servers

  • 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 npm
    6
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables LLMs like Claude to create and edit AutoCAD drawings via natural language, supporting both headless DXF generation and live AutoCAD LT connection through file-based IPC.
    9
    MIT