>_ DevTrendsfr

Langue

Accueil

Langages

Sections

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embarqué Sécurité
Python

Contrôler FreeCAD via Claude Desktop avec MCP

Récemment tombé sur un projet intéressant : une intégration FreeCAD et Claude Desktop via le Model Context Protocol. Je cherchais un moyen de dessiner rapidement un modèle 3D simple ou une pièce à partir d'un dessin sans cliquer manuellement à travers les esquisses dans l'interface CAO. Le dépôt neka-nat/freecad-mcp résout exactement ce problème. Vous décrivez la pièce en mots ou joignez une image avec un dessin, et le modèle de langage construit la géométrie directement dans la fenêtre FreeCAD ouverte.

Ce que c'est

Le projet est un serveur MCP qui connecte FreeCAD à des clients comme Claude Desktop. L'ensemble du système se compose de deux parties : un plugin (Addon) pour FreeCAD qui lance un serveur RPC local à l'intérieur de l'éditeur, et un utilitaire Python qui traduit les commandes du protocole MCP en appels vers ce serveur RPC.

Bride dans FreeCAD

En résultat, le modèle voit la scène actuelle, peut créer des objets, exécuter du code Python arbitraire, et même effectuer des calculs d'analyse structurelle.

Comment ça fonctionne en pratique

L'auteur du dépôt a démontré plusieurs scénarios d'utilisation pratiques.

Modélisation à partir d'une description

Vous demandez de créer une bride ou une voiture-jouet avec des dimensions spécifiées. Claude crée des esquisses, extrude les faces et arrondit les coins via des appels d'outils.

Voiture-jouet

Reconstruction d'une pièce 3D à partir d'un dessin 2D

Si vous déposez un dessin technique standard avec des dimensions dans le chat, le réseau neuronal analyse les projections, génère une esquisse et construit un modèle 3D.

Dessin d'entrée

Après avoir analysé les dimensions, Claude assemble la pièce étape par étape dans l'éditeur :

Assemblage à partir du dessin

Outils et capacités disponibles

Le dépôt donne au modèle de langage accès à une douzaine de fonctions prêtes à l'emploi :

  • create_document, create_object, edit_object, delete_object pour les opérations de géométrie de base
  • execute_code pour exécuter du code Python brut à l'intérieur de la session FreeCAD
  • get_view pour capturer une capture d'écran de la vue actuelle depuis un angle spécifique
  • run_fem_analysis pour effectuer des calculs FEM via le solveur CalculiX avec retour de la contrainte de Von Mises maximale et des déformations

Un détail intéressant : chaque outil peut retourner une capture d'écran de la scène en vue isométrique ou autre. Grâce à cela, le modèle vérifie visuellement le résultat de chaque étape. Si vous souhaitez sauvegarder du contexte et des jetons, la transmission d'images peut être désactivée avec le flag --only-text-feedback.

Installation et configuration

Vous aurez besoin de FreeCAD version 1.0 ou 1.1 et de l'utilitaire uvx pour commencer.

Tout d'abord, copiez l'addon dans le dossier mod de 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/

Après avoir redémarré FreeCAD, « MCP Addon » apparaîtra dans la liste des ateliers.

Liste des ateliers

Sélectionnez-le et cliquez sur « Start RPC Server » dans la barre d'outils. Vous pouvez également activer le démarrage automatique du serveur au lancement du programme depuis là.

Démarrage du serveur RPC

Ensuite, enregistrez le serveur dans le fichier de configuration claude_desktop_config.json :

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

Si FreeCAD fonctionne sur un ordinateur séparé sur le réseau local, vous pouvez activer les connexions distantes avec le flag --host <ip-адрес> et configurer la liste des IP autorisées directement dans l'interface de l'addon.

Impressions

Le projet est idéal pour les ingénieurs, les makers avec des imprimantes 3D, et les développeurs qui écrivent fréquemment des scripts d'automatisation pour FreeCAD. Au lieu de passer beaucoup de temps à apprendre l'API Python de l'éditeur, vous pouvez demander à Claude d'écrire et d'appliquer immédiatement du code à un document. Bien sûr, pour des assemblages complexes avec des centaines de pièces, le contrôle manuel est toujours nécessaire, mais pour le prototypage et le travail avec des dessins simples, l'outil fonctionne très bien.

Projets similaires