Skip to main content
Glama
cadcraft-electrical-mcp

cadcraft-electrical-mcp

cadcraft-electrical-mcp

Servidor MCP para generar planos eléctricos industriales con Claude y CADCraft.

Describe tu máquina en lenguaje natural ("PLC S7-1200, HMI KTP400, switch Balluff, 4 electroválvulas SMC, gabinete Spacial 500×400...") y Claude produce el juego completo de planos:

  • Esquemas eléctricos: portada con índice, potencia AC, control y distribución 24 VDC con referencias cruzadas y espejo de contactos, y hojas de E/S del PLC.

  • Layout de gabinete y platina: a escala 1:1 en un DXF de fabricación (con perforaciones y cotas) y a escala reducida en el juego de planos. Usa tus modelos 2D reales del fabricante.

  • Red PROFINET / Ethernet / IO-Link: topología con puertos y cables.

  • Plano de borneras, BOM, lista de cables, lista de E/S y lista de red en XLSX/CSV.

  • Validación normativa: designaciones, conflictos de E/S y de puertos, referencias cruzadas, espacio de reserva y encimamientos en la platina.

Todo cumple un perfil normativo configurable:

  • IEC: IEC 81346, 60617, 61082-1 y 60204-1.

  • IEC legado: códigos de una letra (-K/-F/-Q).

  • NFPA 79: escalera horizontal JIC/ANSI.

Los planos se generan como DXF y CADCraft los publica en PDF multipágina, PNG y DWG, y los puede abrir en vivo en la aplicación de escritorio.

Las funcionalidades traen ejemplos de instrucciones, la arquitectura incluye una guía de "si falla X, revisa Y", y hay una página con las normas y la configuración.


Cómo funciona

Claude ──MCP (stdio)──> cadcraft-elec-mcp
                          │ proyecto .elec.yaml (fuente de verdad, versionable en git)
                          │ → generadores → DXF determinista (ezdxf)
                          └──> CADCraft: cadcraft-cli (PDF / PNG / DWG / DWG→DXF)
                                         cadcraft --control 7979 (abrir en la app viva)
  • CADCraft ya trae su propio MCP genérico (cadcraft-cli mcp) con primitivas de dibujo.

  • Este servidor agrega la capa eléctrica que CADCraft no tiene: dispositivos, potenciales, bornes, E/S, cables, símbolos IEC/NFPA, cajetín, normas y validación.

  • El dibujo se hace en Python (ezdxf) en lugar de comando por comando en CADCraft (pre-alfa). Así el resultado es reproducible y probado, y CADCraft se usa para lo que hace mejor: renderizar, publicar y visualizar.

Related MCP server: THE_Studio5000_AI_Assistant_V35

Requisitos

  • Windows 10/11.

  • CADCraft 0.18 o superior (cadcraft-0.18.0-windows-x64.msi).

  • Una de estas dos opciones:

    • el ejecutable cadcraft-elec-mcp.exe de la página de Releases (no requiere Python);

    • Python 3.11 o superior (con uv o pipx).

Instalación para el equipo

Opción A: script automático (recomendada)

git clone https://github.com/alfresonico666/cadcraft-electrical-mcp
cd cadcraft-electrical-mcp
powershell -ExecutionPolicy Bypass -File scripts\install.ps1

El script:

  1. Crea un entorno en %LOCALAPPDATA%\cadcraft-elec-mcp e instala el paquete.

  2. Registra el servidor en Claude Code (alcance de usuario) y en Claude Desktop.

  3. Opcionalmente registra también el MCP nativo de CADCraft (-WithCadcraftMcp).

Al final ejecuta doctor para comprobar que todo responde.

Opción B: manual

# con uv
uv tool install git+https://github.com/alfresonico666/cadcraft-electrical-mcp
# o con pipx
pipx install git+https://github.com/alfresonico666/cadcraft-electrical-mcp

cadcraft-elec-mcp doctor            # verifica CADCraft y la configuración
claude mcp add --scope user cadcraft-elec -- cadcraft-elec-mcp

En Claude Desktop, agrega esto a %APPDATA%\Claude\claude_desktop_config.json:

{ "mcpServers": { "cadcraft-elec": { "command": "cadcraft-elec-mcp", "args": [] } } }

Con el .exe de Releases, usa la ruta completa del ejecutable como command.

Uso rápido

En Claude Code o Claude Desktop:

Crea el proyecto 26HA076 "Máquina LVDT" para un cliente automotriz con perfil IEC. Agrega un S7-1200 1214C DC/DC/DC, una HMI KTP400, una fuente de 24 VDC 10 A con su magnetotérmico, 4 electroválvulas SMC SY7320 en las salidas Q0.0–Q0.3 y 4 sensores inductivos en I0.0–I0.3 pasando por la bornera -XD3. Genera las hojas de potencia, 24 VDC, E/S y red, configura el gabinete NSYCRN54250P, valida y construye el PDF. Muéstrame la hoja de E/S.

Claude seguirá este flujo:

  1. project_create

  2. library_search y device_add

  3. sheet_add

  4. plc_io_assign y terminals_assign_io

  5. network_link

  6. cabinet_configure

  7. validate y build

  8. sheet_preview

Los archivos quedan en Documentos\CadElec\<proyecto>\output\:

Archivo

Contenido

<código> - Planos Electricos.dxf / .pdf / .dwg

juego completo de hojas

<código> - Platina Electrica.dxf

platina 1:1 para taller (perforaciones, cotas)

<código> - Listas.xlsx + csv/

BOM, cables, bornes, E/S, red

preview/hoja-NN.png

vistas previas

Para ver el resultado en CADCraft: "ábrelo en CADCraft" (herramienta cadcraft_open).

Usar tus modelos 2D del fabricante

Importa C:\...\Modelos\Siemens - PLC\PLC_Terminales.dxf como modelo del catálogo siemens-6es7214-1ag40-0xb0.

library_import_model hace lo siguiente:

  • convierte DWG a DXF con CADCraft;

  • quita ATTDEF de CADENAS, puntos de conexión y cotas;

  • normaliza a mm con la esquina en 0,0;

  • registra el modelo en tu catálogo.

Desde entonces, la platina dibuja el equipo real. Los modelos no se suben al repositorio (licencias de los fabricantes).

Ejemplo completo

examples/build_26ha076.py reproduce el proyecto 26HA076 completo (8 hojas):

python examples\build_26ha076.py --workspace C:\temp\CadElec --models "C:\...\26HA076\Modelos"

Desarrollo

python -m venv .venv; .venv\Scripts\activate
pip install -e ".[dev]"
ruff check src tests; mypy; pytest            # las pruebas de integración se omiten si no hay CADCraft
pyinstaller packaging\cadcraft-elec-mcp.spec  # genera dist\cadcraft-elec-mcp.exe

Hay CI en GitHub Actions (Windows) con lint, tipos y pruebas. Al crear un tag v* se publica el .exe en Releases.

Solución de problemas

Síntoma

Causa / solución

cadcraft_not_installed

Instala CADCraft o define cadcraft_cli en config.toml (configuración).

cadcraft_connection al abrir en vivo

La app no tiene puerto de control. cadcraft_open la lanza sola; si no, abre cadcraft --control 7979.

pip install falla descargando mcp (InvalidChunkLength)

Proxy o red corporativa. Usa el .exe de Releases o pip install https://files.pythonhosted.org/.../mcp-2.3.0-py3-none-any.whl.

Un equipo sale como rectángulo en la platina

No tiene modelo. Impórtalo con library_import_model o da width_mm/height_mm reales.

cabinet_fit reporta equipos sin colocar

La placa es chica: más placa, canaletas más delgadas (duct_width) o menos equipos por riel.

Los registros quedan en Documentos\CadElec\logs\cadcraft-elec-mcp.log.

Licencia

Apache-2.0. CADCraft es © storytold, Apache-2.0/MIT. Este proyecto no incluye modelos CAD de terceros.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables an LLM agent to assemble, wire, run, fault and observe electromechanical motor-control circuits through 26 tools covering component placement, terminal connections, button/switch operation, fault injection, and simulation control. Also lets agents load and save circuits and generate PDF drawing sets, screenshots and scripted demo videos.
    MIT
  • F
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to create, edit, validate, and read back production-grade CAD drawings — including P&ID sheets, mechanical parts and assemblies, and architectural floor plans with measured areas and schedules — through a single typed tool contract that runs either live via COM on Windows or headlessly via ezdxf anywhere. It also supports standards-aware dimensioning, ISO GD&T and tolerance checks, takeoff workbooks, and drawing understanding, diffing, and critique.
    -