Skip to content

Presentation

TopSolid MCP est un serveur Model Context Protocol qui permet a un agent IA de piloter le logiciel CAO/PDM TopSolid 7 via son API Automation.

Comment ca marche

Agent IA (OpenClaw / Claude / tout client MCP)
  |
  v
TopSolidMcpServer.exe (stdio JSON-RPC)
  |  - run_recipe : execute une des 124 recettes pre-construites
  |  - api_help : cherche les bonnes methodes API (52 synonymes FR)
  |  - execute_script : compile et execute du C# contre TopSolid
  |  - find_path / explore_paths : navigue dans le graphe de types
  |
  v
TopSolid 7 (WCF/TCP port 8090)

L'agent pose une question en langage naturel → le serveur MCP traduit en appels API → TopSolid execute.

Composants

Graphe API enrichi (graph.json)

Le coeur du systeme. Un graphe oriente representant toutes les methodes de l'API TopSolid Automation :

MetriqueValeur
Edges4119
Methodes uniques1728
Interfaces46
Description90%
Hints semantiques85%
Edges avec exemples reels1194 (29%)
Snippets de code2174

Serveur MCP (TopSolidMcpServer.exe)

Executable .NET Framework 4.8, communique en stdio JSON-RPC. 12 outils exposes a l'agent.

RecipeTool — 124 recettes

L'outil principal. Le LLM choisit une recette par nom, aucune generation de code necessaire.

CategorieRecettesExemples
PDM (lecture/ecriture)9designation, reference, fabricant
Navigation projet5chercher, ouvrir, lister documents
Parametres6lire, modifier, comparer
Masse/Volume/Dimensions7masse, volume, surface, inertie, boite englobante
Geometrie/Visualisation8shapes, esquisses, operations, couleurs
Assemblages6inclusions, occurrences, comptage pieces
Export8STEP, DXF, PDF, STL, IGES, CSV
Mise en plan6vues, echelle, format, projection, ouvrir plan
Nomenclature (BOM)4colonnes, contenu, comptage lignes
Mise a plat / Tolerie3detection, plis, dimensions depliage
Comparaison documents4parametres, operations, entites, revisions
Report modifications2copier parametres ou proprietes PDM vers un autre doc
Batch projet13audit refs/desig, masse batch, export batch, auteur, virtuel
Audit qualite6noms parametres, drivers famille, materiaux
Familles5detection, catalogue, drivers
Historique/Revisions2timeline revisions, comparaison revisions
Document7type, sauvegarder, reconstruire, proprietes utilisateur
Interactif3selection shape/face/point dans TopSolid

Dataset LoRA (lora-dataset-en.jsonl)

2114 entrees d'entrainement au format ShareGPT (v6 conversational) pour fine-tuner le sous-agent 3B. Couvre les 124 recettes + patterns multi-turn + error-handling + acknowledgments. Eval : 100/100 (50 questions, 5 tiers). Deploye en PROD comme ministral-topsolid via Ollama.

Tests

Suite de tests automatises contre une instance TopSolid vivante. Scripts PowerShell executables en batch.

Architecture Agent (OpenClaw)

OpenClaw Main (cloud, leger — routing + conversation)
  |
  ├── topsolid-recipes (3B LoRA, local)
  |     → topsolid_run_recipe
  |     124 recettes pre-construites
  |     Classification : intent → nom de recette
  |     Latence : ~2-4 secondes
  |
  └── codestral-topsolid (22B Q4_K_M vanilla, local — PROD)
        → execute_script + modify_script + api_help + find_path
           + explore_paths + compile + search_examples
        Generation C# via le graphe API + validation Roslyn
        Cas hors-recettes, scripts ad-hoc
        Latence : ~20-30 secondes

Le Main (cloud) garde la coherence conversationnelle et route les demandes :

  • Recette connue (80% des cas) → sous-agent 3B, rapide et fiable
  • Cas custom (20%) → Codestral 22B, generation de code via le graphe + compile avant execution

Le LoRA 3B v6 est en PROD (eval 100/100). Le fine-tuning LoRA 22B a ete tente mais abandonne (VRAM saturee, training > 9h30) — on shippe Codestral vanilla avec Modelfile enrichi (48 accessors TopSolidHost.* listes, Pattern D, SI-units, 6 few-shot examples).

Independance & sources

topsolid-automation-mcp est un projet open-source (MIT) maintenu par la communaute. Il n'est ni endosse, ni sponsorise, ni affilie a TOPSOLID SAS. TopSolid® est une marque deposee de TOPSOLID SAS.

Tout le contenu redistribue vient de sources publiques TopSolid :

  • Graphe API (4119 edges, 1728 methodes) : extrait par reflexion des DLL TopSolid.*.Automating.dll livrees avec chaque installation TopSolid, croise avec la reference API officielle sur help.topsolid.com.
  • Index de l'aide (5809 pages EN+FR) : converti en Markdown depuis l'aide en ligne publique help.topsolid.com.
  • Catalogue de commandes UI (2428 commandes) : parse depuis ces memes pages d'aide (fichiers *Command.md).
  • Recettes (130 snippets C#) : ecrites specifiquement pour ce projet, en reference a l'aide publique + graphe.

Aucun exemple SDK proprietaire, code client, ou code prive identifie n'est inclus dans ce qui est distribue. L'acces aux corpora prives (topsolid_search_examples) est opt-in via des variables d'environnement pointant vers le disque local du contributeur — rien n'est bundle.

Le serveur reste autonome : n'importe quel client MCP compatible stdio (Claude Desktop, Claude Code, Cursor, Windsurf, OpenClaw...) peut s'y connecter. La specification fonctionnelle ne depend d'aucun produit tiers au-dela de TopSolid 7 lui-meme.

TopSolid MCP — Serveur Model Context Protocol pour TopSolid Automation