McpQualityAutocad

McpQualityAutocad

Validates AutoCAD VRD (Roads and Utilities) drawings against graphic standards through automated quality checks for layers, blocks, and conventions. Enables Claude to verify drawing compliance and generate quality reports.

Category
Visit Server

README

McpQualityAutocad

Serveur MCP (Model Context Protocol) de verification qualite pour les dessins AutoCAD VRD. Ce serveur expose des outils de controle qualite que Claude peut appeler directement pour valider vos fichiers AutoCAD selon la charte graphique VRD.

Prerequis

  • Python 3.10+
  • AutoCAD installe sur la machine (necessaire pour pyautocad)
  • Claude Desktop ou Claude Code pour utiliser le serveur MCP

Installation

1. Cloner le depot

git clone https://github.com/mickael62800/Mcps.git
cd Mcps/McpQualityAutocad

2. Creer un environnement virtuel (recommande)

python -m venv venv
venv\Scripts\activate   # Windows

3. Installer les dependances

pip install -r requirements.txt

Configuration MCP avec Claude

Option A : Claude Desktop

Editez le fichier de configuration Claude Desktop :

  • Windows : %APPDATA%\Claude\claude_desktop_config.json
  • macOS : ~/Library/Application Support/Claude/claude_desktop_config.json

Ajoutez le serveur MCP dans la section mcpServers :

{
  "mcpServers": {
    "quality-autocad": {
      "command": "python",
      "args": ["C:/chemin/vers/McpQualityAutocad/script.py"],
      "env": {}
    }
  }
}

Remplacez C:/chemin/vers/McpQualityAutocad/script.py par le chemin absolu vers votre fichier script.py.

Redemarrez Claude Desktop pour que le serveur soit detecte.

Option B : Claude Code (CLI)

Ajoutez le serveur MCP via la commande :

claude mcp add quality-autocad -- python C:/chemin/vers/McpQualityAutocad/script.py

Ou editez manuellement le fichier ~/.claude/settings.json :

{
  "mcpServers": {
    "quality-autocad": {
      "command": "python",
      "args": ["C:/chemin/vers/McpQualityAutocad/script.py"]
    }
  }
}

Utilisation

Une fois le serveur configure, Claude a acces aux outils suivants que vous pouvez invoquer en langage naturel :

Outils disponibles

Outil Description
generate_quality_report Genere un rapport qualite complet en executant tous les controles
check_layer_0_usage Verifie qu'aucun objet n'est dessine sur le Layer 0
check_layer_naming_convention Valide le nommage des calques selon la charte VRD
check_block_naming_convention Valide le nommage des blocs (pas d'espaces)
check_mnt_tn_file_naming Verifie le nommage des fichiers MNT TN
check_visual_clutter Detecte l'encombrement visuel excessif
check_title_block_completeness Verifie la completude du cartouche
check_consistent_north_reference Verifie la coherence de l'orientation Nord
check_standardized_symbols_blocks Verifie l'utilisation de symboles standards

Exemples de prompts

Peux-tu verifier la qualite de mon dessin AutoCAD ?

Verifie que les calques de mon fichier respectent la charte graphique VRD.

Genere un rapport qualite complet pour mon plan.

Format des donnees attendu

Les outils attendent un dictionnaire drawing_data contenant :

{
    "layers_with_objects": ["Voirie-Axe", "Assainissement-Regard"],
    "layer_names": ["Voirie-Axe", "Assainissement-Regard", "TN-Courbes"],
    "block_names": ["Regard_EU", "Bouche_Incendie"],
    "file_name": "MOA-12.34.5678-PHASE1-MonProjet-MNT_TN.dwg",
    "has_excessive_clutter": false,
    "title_block": {
        "title": "Plan de masse",
        "scale": "1/200",
        "date": "2026-04-03",
        "version": "A",
        "author": "M. Verdin"
    },
    "north_reference_inconsistent": false,
    "non_standard_assets_used": false
}

Statuts de retour

Chaque controle retourne un statut :

  • PASS : Le controle est conforme
  • FAIL : Non-conformite detectee
  • WARN : Avertissement (verification manuelle recommandee)
  • N/A : Controle non applicable

Structure du projet

McpQualityAutocad/
├── script.py                    # Point d'entree du serveur MCP
├── requirements.txt             # Dependances Python
├── README.md
├── 03_production_graphique.md   # Guide de production graphique VRD
├── 08_charte_graphique_vrd.md   # Charte graphique VRD (reference)
└── tools/                       # Modules de controle qualite
    ├── autocad_quality_report.py
    ├── check_layer_0_usage.py
    ├── check_layer_naming_convention.py
    ├── check_block_naming_convention.py
    ├── check_mnt_tn_file_naming.py
    ├── check_visual_clutter.py
    ├── check_title_block_completeness.py
    ├── check_consistent_north_reference.py
    └── check_standardized_symbols_blocks.py

Depannage

Le serveur n'apparait pas dans Claude

  1. Verifiez que le chemin vers script.py est correct et absolu
  2. Verifiez que Python est accessible depuis le terminal (python --version)
  3. Verifiez que les dependances sont installees (pip list | grep fastmcp)
  4. Redemarrez Claude Desktop / Claude Code

Erreur "pyautocad"

pyautocad necessite qu'AutoCAD soit installe sur la machine. Si vous n'avez pas AutoCAD, les outils fonctionneront quand meme avec des donnees fournies manuellement dans drawing_data.

Tester le serveur manuellement

python script.py

Le serveur demarre et attend les connexions MCP sur stdin/stdout. Vous devriez voir MCP server started... dans stderr.

Ameliorations prevues

Filtrage des resultats cote serveur

Probleme actuel : Le systeme envoie l'integralite des donnees du dessin AutoCAD sous forme d'un JSON volumineux a Claude, qui doit ensuite analyser et traiter toutes ces donnees. Cela consomme beaucoup de tokens et ralentit le traitement, surtout sur des fichiers complexes avec de nombreux calques, blocs et objets.

Objectif : Deplacer la logique de filtrage cote serveur MCP afin de ne transmettre a Claude que les resultats pertinents : les WARN et FAIL uniquement.

Approche envisagee :

  1. Pre-traitement dans le serveur : Executer les controles qualite directement dans le serveur MCP a partir des donnees brutes AutoCAD, au lieu de tout deleguer a Claude
  2. Filtrage des resultats : Ne retourner que les non-conformites (FAIL) et avertissements (WARN), en excluant les controles passes (PASS) et non applicables (N/A)
  3. Resume synthetique : Fournir un resume compact (ex: "6/8 controles OK, 1 FAIL, 1 WARN") avec le detail uniquement pour les problemes detectes

Benefices attendus :

  • Reduction significative du volume de tokens consommes
  • Reponses plus rapides de Claude
  • Claude se concentre sur l'interpretation et les recommandations plutot que sur l'analyse brute des donnees

Correction automatique via MCP complementaires

En combinant ce serveur de controle qualite avec d'autres serveurs MCP capables d'editer les fichiers AutoCAD, Claude pourrait non seulement detecter les erreurs mais aussi les corriger ou les signaler directement dans le plan :

  • Annotation des erreurs par nuages de revision : Placer automatiquement des nuages de revision dans un calque dedie (ex: QC-Erreurs) pour signaler visuellement les anomalies detectees : lignes superposees sur un meme calque, trames incorrectes, objets mal places, etc.
  • Correction orthographique des calques : Detecter et corriger automatiquement les fautes d'orthographe dans les noms de calques (ex: Asainissement -> Assainissement)
  • Detection des doublons geometriques : Identifier les lignes, polylignes ou objets superposes sur un meme calque et proposer leur suppression
  • Ajout de trames de signalement : Appliquer des hachures ou trames de couleur sur les zones problematiques pour faciliter la relecture

Principe : Ce serveur MCP reste dedie a l'analyse et au diagnostic. Les actions correctives seraient assurees par un ou plusieurs serveurs MCP complementaires disposant des droits d'ecriture sur les fichiers DWG, permettant une chaine complete : detection -> signalement visuel -> correction.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured