>_ DevTrendsit

Lingua

Home

Linguaggi

Sezioni

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embedded Sicurezza
Python

Controllare FreeCAD tramite Claude Desktop usando MCP

Recentemente mi sono imbattuto in un progetto interessante: un'integrazione tra FreeCAD e Claude Desktop tramite il Model Context Protocol. Cercavo un modo per schizzare rapidamente un semplice modello 3D o un componente da un disegno senza dover cliccare manualmente attraverso gli schizzi nell'interfaccia CAD. Il repository neka-nat/freecad-mcp risolve esattamente questo problema. Descrivi il componente a parole o allega un'immagine con un disegno, e il modello linguistico costruisce la geometria direttamente nella finestra FreeCAD aperta.

Cos'è

Il progetto è un server MCP che connette FreeCAD con client come Claude Desktop. L'intero sistema è composto da due parti: un plugin (Addon) per FreeCAD che avvia un server RPC locale all'interno dell'editor, e un'utilità Python che traduce i comandi del protocollo MCP in chiamate a questo server RPC.

Flangia in FreeCAD

Di conseguenza, il modello vede la scena corrente, può creare oggetti, eseguire codice Python arbitrario e persino eseguire calcoli di analisi strutturale.

Come funziona in pratica

L'autore del repository ha dimostrato diversi scenari pratici d'uso.

Modellazione da descrizione

Chiedi di realizzare una flangia o un'automobilina con dimensioni specificate. Claude crea schizzi, estlude facce e arrotonda gli spigoli attraverso chiamate agli strumenti.

Automobilina

Ricostruzione di un componente 3D da un disegno 2D

Se trascini un disegno tecnico standard con dimensioni nella chat, la rete neurale analizza le proiezioni, genera uno schizzo e costruisce un modello 3D.

Disegno di input

Dopo aver analizzato le dimensioni, Claude assembla il componente passo dopo passo nell'editor:

Assemblaggio da disegno

Strumenti e funzionalità disponibili

Il repository fornisce al modello linguistico l'accesso a una dozzina di funzioni pronte all'uso:

  • create_document, create_object, edit_object, delete_object per operazioni di geometria di base
  • execute_code per eseguire codice Python raw all'interno della sessione FreeCAD
  • get_view per catturare uno screenshot del viewport corrente da un angolo specifico
  • run_fem_analysis per eseguire calcoli FEM attraverso il solver CalculiX con ritorno della sollecitazione Von Mises massima e delle deformazioni

Un dettaglio interessante: ogni strumento può restituire uno screenshot della scena in vista isometrica o un'altra vista. Grazie a questo, il modello verifica visivamente il risultato di ogni passaggio. Se vuoi risparmiare contesto e token, la trasmissione delle immagini può essere disabilitata con il flag --only-text-feedback.

Installazione e configurazione

Avrai bisogno di FreeCAD versione 1.0 o 1.1 e dell'utilità uvx per iniziare.

Prima di tutto, copia l'addon nella cartella mod di FreeCAD:

git clone https://github.com/neka-nat/freecad-mcp.git
cd freecad-mcp

# Для Ubuntu / Debian
mkdir -p ~/.FreeCAD/Mod/
cp -r addon/FreeCADMCP ~/.FreeCAD/Mod/

# Для macOS
mkdir -p ~/Library/Application\ Support/FreeCAD/v1-1/Mod/
cp -r addon/FreeCADMCP ~/Library/Application\ Support/FreeCAD/v1-1/Mod/

Dopo aver riavviato FreeCAD, "MCP Addon" apparirà nella lista degli ambienti di lavoro.

Lista ambienti di lavoro

Selezionalo e clicca su "Start RPC Server" nella barra degli strumenti. Puoi anche abilitare l'avvio automatico del server all'apertura del programma da lì.

Avvio del server RPC

Poi registra il server nel file di configurazione claude_desktop_config.json:

{
  "mcpServers": {
    "freecad": {
      "command": "uvx",
      "args": [
        "freecad-mcp"
      ]
    }
  }
}

Se FreeCAD è in esecuzione su un computer separato nella rete locale, puoi abilitare le connessioni remote con il flag --host <ip-адрес> e configurare la lista degli IP consentiti direttamente nell'interfaccia dell'addon.

Impressioni

Il progetto è ottimo per ingegneri, maker con stampanti 3D e sviluppatori che scrivono frequentemente script di automazione per FreeCAD. Invece di trascorrere molto tempo ad apprendere l'API Python dell'editor, puoi chiedere a Claude di scrivere e applicare immediatamente il codice a un documento. Certo, per assemblaggi complessi con centinaia di componenti, il controllo manuale è ancora necessario, ma per il prototipaggio e il lavoro con disegni semplici, lo strumento funziona benissimo.

Progetti correlati