Aller au contenu
AI Agent
QGIS
Guide

Claude et QGIS : 3 façons de les connecter, testées sur une même tâche

Publié le

Il n’existe pas de plugin officiel d’Anthropic pour QGIS. Vous avez trois grandes façons d’utiliser Claude avec QGIS : connecter Claude Desktop ou Claude Code via un serveur MCP pour QGIS, demander à Claude d’écrire du code PyQGIS que vous collez dans la console Python, ou installer un plugin agent dans QGIS.

Le 7 novembre 2026, j’ai testé comment Claude s’en sort sur une vraie tâche : charger les districts et les écoles OpenStreetMap de Pune, en Inde, compter les écoles par polygone et styliser une carte choroplèthe. Aucun des deux scripts PyQGIS écrits par Claude Sonnet 5.5 n’a fonctionné tel quel, même si l’un a réussi en 44 à 48 secondes une fois l’URL de son serveur de données changée. Un agent dans QGIS a terminé le même prompt en 45 à 63 secondes, sur deux essais d’affilée.

Fenêtre QGIS montrant la carte choroplèthe des écoles de Pune par circonscription électorale, en tons bleus, l’arbre des couches à gauche et le panneau de chat d’AI Agent à droite avec le prompt, le choix Pune city wards et le décompte final de 256 écoles dans 58 circonscriptions électorales.
La carte choroplèthe des écoles de Pune construite à partir d’une seule phrase dans QGIS : 256 écoles OpenStreetMap comptées dans 58 circonscriptions électorales en 63 secondes.

Quelles sont les façons d’utiliser Claude avec QGIS ?

Connecter Claude à QGIS, c’est soit donner au modèle d’Anthropic une passerelle pour qu’il lance des outils dans votre projet ouvert, soit copier des scripts PyQGIS entre une fenêtre de chat et la console Python de QGIS. Une troisième voie se passe de passerelle et place un panneau d’agent IA directement dans QGIS.

La plupart des tutoriels ne montrent que la passerelle Model Context Protocol (MCP). Avant d’installer des outils en ligne de commande ou de modifier des fichiers de configuration, il est utile de voir ce que demande chacune des trois voies et ce qui se passe quand on leur confie le même travail.

Voie 1 : Claude + QGIS MCPVoie 2 : Claude écrit du PyQGISVoie 3 : un agent dans QGIS
Étapes d’installation5 étapes (installer le plugin, uv, le client, la configuration, cliquer sur Run MCP à chaque session)0 étape d’installation (3 clics par tâche pour ouvrir l’éditeur, coller et exécuter)3 étapes (installer depuis le gestionnaire d’extensions de QGIS, ouvrir le panneau, se connecter)
Ce qu’il vous fautClaude Desktop (gratuit ou payant) ou Claude Code (offre payante), plus uv et un serveur localN’importe quel chat Claude, sans logiciel en plusQGIS 3.28+ et un compte gratuit (sans clé API ni carte bancaire)
Qui exécute le codeClaude déclenche des outils via le port MCP localVous collez et exécutez le script dans la console PythonLe plugin lance les outils QGIS et vérifie lui-même la carte
Voit votre projet ?Oui, quand le serveur MCP tourneNon, sauf si vous tapez les noms de vos couches et votre SCR dans le promptOui, il lit les couches ouvertes, les champs et l’emprise de la carte
AnnulationNettoyage manuel dans QGISNettoyage manuel dans QGISBouton Undo changes en un clic sous chaque réponse
Résultat sur la tâche de PuneNon testé sur Pune (9 min 28 s sur une tâche comparable d’écoles à Lyon)0 script sur 2 n’a fonctionné tel quel ; 1 a fonctionné en 44 à 48 s après une modification d’URL (447 écoles dans 14 talukas)2 essais sur 2 réussis, en 63 s et environ 45 s (256 écoles dans 58 circonscriptions de la ville)

Si vous voulez faire cette tâche à la main, sans IA, la voie gratuite dans QGIS tient en quatre étapes : téléchargez les limites et les points amenity=school avec Vecteur > QuickOSM > QuickOSM..., lancez Vecteur > Outils d’analyse > Compter les points dans les polygones... (native:countpointsinpolygon), puis réglez Propriétés de la couche > Symbologie sur Gradué avec le nouveau champ de décompte.

Existe-t-il un plugin Claude dans le dépôt QGIS ?

Il n’existe aucun plugin officiel d’Anthropic dans le dépôt d’extensions de QGIS. Quand j’ai consulté l’index du dépôt le 7 novembre 2026 (4 399 plugins pour QGIS 3.44 et 1 697 pour QGIS 4.0), 45 plugins contenaient le mot « claude » dans leurs métadonnées, mais 36 d’entre eux se contentaient de citer Claude comme assistant de code ou avaient un auteur prénommé Claude.

Seuls neuf plugins communautaires connectent réellement un modèle ou un abonnement Claude à QGIS :

  • QGIS MCP (par Nicolas Karasiak, v0.15.2, 77 002 téléchargements au 7 novembre 2026) : ouvre un port local pour que Claude Desktop, Claude Code ou Cursor puissent lancer 125 outils dans QGIS.
  • WAI QGIS MCP (v0.3.0, 753 téléchargements) : se connecte à Claude Desktop via un unique fichier d’extension .mcpb, sans que vous ayez à installer Node.js vous-même.
  • QGIS Agent (par bunkmr, v2.4.15, 3 783 téléchargements), QGIS Agent Mcp (v0.5.0, 3 210 téléchargements), QGIS Salah MCP (v1.1.1, 2 037 téléchargements) et ClaudIA QGIS (v0.4.6, 784 téléchargements) : d’autres serveurs socket MCP ou panneaux qui utilisent votre propre clé API.
  • LandTalk.AI (v1.5.0, 5 927 téléchargements) et AI Copilot (v1.8.0, 2 098 téléchargements) : des panneaux de chat multi-modèles qui acceptent des clés Claude, OpenAI ou Gemini.
  • Mapsuke (par MIERUNE, v1.6.0, 1 242 téléchargements, mis à jour le 30 octobre 2026) : un panneau de chat pour QGIS 3.44+ qui tourne sur votre connexion Claude Code ou Codex existante, sans serveur MCP, à condition d’avoir installé la ligne de commande Claude Code.

L’offre Claude nécessaire dépend de la façon dont vous vous connectez. D’après les pages de comparaison des offres d’Anthropic (consultées le 7 novembre 2026), le chat de Claude Desktop est disponible dans l’offre Free comme dans Pro, Max, Ultra, Team et Enterprise, et vous pouvez y brancher un serveur MCP local via Settings > Developer > Edit Config ou via les Desktop Extensions. Claude Code, l’outil en ligne de commande sur lequel reposent des plugins comme Mapsuke et les flux de travail en ligne de commande, n’est pas inclus dans l’offre Free et demande un abonnement Pro, Max ou Ultra.

Le test : cartographier les écoles par district à Pune

Tous les tutoriels que j’ai lus pour l’analyse des résultats de recherche testaient Claude sur un fichier que l’auteur avait déjà sur son disque. Dans le vrai travail SIG, on demande souvent à l’outil d’aller chercher des données ouvertes pour une ville qu’il n’a jamais vue.

J’ai écrit les critères de réussite avant tout essai, le 7 novembre 2026. Le prompt tenait en une phrase :

Load the districts of Pune, India and the schools from OpenStreetMap, count schools per district and make a choropleth.

(« Charge les districts de Pune, en Inde, et les écoles depuis OpenStreetMap, compte les écoles par district et fais une carte choroplèthe. »)

J’ai choisi Pune exprès, parce que « districts de Pune » est ambigu. Pune est un district du Maharashtra divisé en 14 sous-districts (talukas ou tehsils), tandis que la ville de Pune est divisée en 15 bureaux d’arrondissement administratifs et 58 circonscriptions électorales (wards). Un bon flux de travail demande quelle limite vous voulez, ou indique clairement celle qu’il a chargée.

Voie 2 : demander à Claude du code PyQGIS à coller

Pour la voie du copier-coller, j’ai lancé Claude Sonnet 5.5 (claude-sonnet-5-5 via Claude Code 2.1.306, tous les outils et l’accès web désactivés, comme dans une simple fenêtre de chat) deux fois sur exactement le même prompt, en ajoutant seulement « I use QGIS. Write the PyQGIS code I can paste in the QGIS Python console for this task ». Si vous n’avez jamais utilisé la console, notre guide PyQGIS explique comment les scripts s’y exécutent.

Claude a mis 77 secondes à produire le premier script de 134 lignes et 67 secondes pour le second, de 108 lignes. Les deux réponses signalaient que « districts » est ambigu, choisissaient admin_level=6 (les 14 talukas du district de Pune) et expliquaient comment changer de niveau dans le code. La seconde réponse ajoutait même un avertissement honnête à la fin : « I haven't run it, so the first run is the test » (je ne l’ai pas exécuté, le premier lancement servira de test).

Aucun des deux scripts n’a fonctionné tel quel dans QGIS 3.44.15 :

  1. La réponse 1 a échoué au bout d’une seconde avec URLError: <urlopen error [Errno 61] Connection refused>. Le script appelait le principal serveur Overpass public (overpass-api.de), qui refusait ce matin-là les connexions venant de notre adresse IP.
  2. La réponse 2 a échoué à la ligne 3, avant tout appel réseau. Elle a levé ImportError: cannot import name 'QgsClassificationNaturalBreaks' from 'qgis.core'.
Console Python de QGIS affichant un Traceback rouge avec ImportError: cannot import name QgsClassificationNaturalBreaks from qgis.core à la ligne 3 du script collé.
Le second script PyQGIS de Claude s’est arrêté à la ligne 3 : QgsClassificationNaturalBreaks n’existe pas dans QGIS 3.44.15 (la vraie classe est QgsClassificationJenks).

Dans QGIS 3.44, la classe des seuils naturels s’appelle QgsClassificationJenks, et non QgsClassificationNaturalBreaks. Comme un chatbot sans outils ne peut pas tester ses propres imports sur votre version de QGIS, un seul nom de classe inventé bloque tout le script. Nous avions observé exactement le même schéma de suppositions à l’aveugle en testant ChatGPT pour QGIS sur trois tâches à Annecy.

Pour voir si le premier script de Claude tenait la route par ailleurs, j’ai changé une constante dans la réponse 1, en remplaçant overpass-api.de par le miroir français overpass.openstreetmap.fr, et je l’ai lancé trois fois sur un arbre des couches vide. Avec un serveur qui répond, il a terminé en 48, 44 et 45 secondes.

Carte des 14 talukas du district de Pune stylée en tons rouges gradués, avec les points noirs des écoles par-dessus, générée par le premier script PyQGIS de Claude après le changement d’URL du serveur Overpass.
Le premier script de Claude après le changement d’URL Overpass : 447 écoles comptées dans 14 talukas de Pune, stylées par quantiles.

Les calculs de la réponse 1 étaient justes : il a chargé 14 polygones de talukas et 447 écoles, et quand j’ai recalculé de façon indépendante le décompte des points dans les polygones, les 447 écoles correspondaient au champ n_schools, sans aucun écart (246 dans Pune City Subdistrict, 75 à Haveli, 55 à Mulshi, jusqu’à 0 à Indapur, Velhe et Ambegaon). La carte avait tout de même des défauts qu’un humain doit corriger : la légende par quantiles affichait des seuils décimaux comme 0,0000 - 1,2000 pour des nombres entiers d’écoles, et les étiquettes du centre se chevauchaient au zoom par défaut.

Voie 1 : connecter Claude Desktop ou Claude Code via QGIS MCP

Donner à Claude un serveur MCP pour QGIS règle le problème de la cécité : Claude peut inspecter vos couches, lancer execute_code, voir la trace d’erreur et réessayer.

Je n’ai pas relancé le serveur MCP sur Pune, parce que le serveur Overpass public refusait notre réseau ce matin-là et aurait bloqué les mêmes appels OpenStreetMap. En revanche, nous avions déjà mesuré Claude Sonnet 5.5 pilotant QGIS MCP (v0.15.0 à 0.15.2) dans Claude Code sur quatre vraies tâches et un benchmark de 41 questions, fin septembre et en octobre 2026 :

  • L’installation prend 5 étapes et environ 3 minutes une fois uv et un client installés, plus 16 secondes au premier appel, le temps de télécharger un serveur de 90 Mo qui expose 125 outils. À chaque redémarrage de QGIS, il faut penser à recliquer sur Run MCP, sinon Claude renvoie Error executing tool ping. Notre guide d’installation et de test de QGIS MCP détaille chaque étape et chaque fichier de configuration.
  • Sur une tâche d’écoles comparable à Lyon (compter les écoles à moins de 300 m d’un arrêt de tram), Claude + QGIS MCP a trouvé le bon nombre (87 écoles) en 9 minutes 28 secondes. Six de ses dix étapes étaient du Python brut, et QGIS s’est figé pendant environ 7 minutes pendant que le script recevait des erreurs Overpass 406, 504 et 502.
  • Quand les données sont déjà propres, MCP est rapide. Sur une tâche de bâtiments et de mise en page à Porto, Claude + QGIS MCP a terminé en 2 minutes 48 secondes, devant les 5 minutes 26 secondes de notre propre agent.
  • Sur le benchmark GeoExpertQueries de Google (41 tâches tenues à l’écart), Claude Sonnet 5.5 avec QGIS MCP dans Claude Code a obtenu 24,9 sur 100, contre 43,8 pour AI Agent à l’effort Low (voir les résultats complets du benchmark).

Si vous payez déjà Claude Pro ou Max et que vous passez vos journées dans Claude Code, MCP ne coûte rien de plus et vous laisse toute liberté pour combiner scripts shell, fichiers locaux et QGIS dans un seul terminal.

Voie 3 : utiliser un plugin agent dans QGIS

Nous développons AI Agent : cette section porte donc sur notre propre plugin. Au lieu de relier une application externe à QGIS, il ancre un panneau de chat juste à côté du canevas de carte, lit l’état de votre projet, puise dans un catalogue de données intégré (environ 90 sources et 2 800 jeux de données, plus OpenStreetMap et Overture Maps), vérifie un rendu de la carte avant de répondre et place un bouton Undo changes sous chaque réponse.

J’ai lancé exactement la même phrase sur Pune deux fois dans QGIS 3.44.15 (permissions Balanced, effort Medium).

Au premier essai, au bout de 11 secondes, le panneau s’est mis en pause et a affiché une carte de clarification demandant « Which subdivisions of Pune should the school counts use? » (quelles subdivisions de Pune utiliser pour compter les écoles ?) avec deux choix cliquables : Pune city wards (les circonscriptions de la ville) et Pune district tehsils (les tehsils du district). En choisissant Pune city wards, la durée totale, du clic sur Envoyer à la fin, a été de 63 secondes, en 15 étapes.

Gros plan du rendu de la carte des 58 circonscriptions électorales de Pune, colorées en cinq classes de Jenks du bleu clair au bleu marine, avec les points sombres des 256 écoles OpenStreetMap.
La carte rendue lors de l’essai 1 : 58 circonscriptions électorales (limites DataMeet de 2022) en cinq classes de Jenks, avec le plus grand nombre (39 écoles) dans la circonscription 16 Fergusson College - Erandwane.

Au second essai, dans un nouveau chat, il n’a pas posé la question ; il a indiqué dans sa réponse qu’il utilisait les 58 circonscriptions électorales de Pune comme districts de la ville, et il a terminé en environ 45 secondes (16 étapes), avec une palette orange pour les circonscriptions.

Fenêtre QGIS du second essai montrant les circonscriptions électorales de Pune stylées en carte choroplèthe orange à cinq classes à gauche, et la réponse d’AI Agent à droite qui confirme 256 écoles OpenStreetMap dans 58 circonscriptions.
Essai 2 sur le même prompt : terminé en environ 45 secondes, avec les mêmes 256 écoles dans 58 circonscriptions et cinq classes de Jenks (0-1, 1-5, 5-11, 11-22, 22-39).

Pourquoi les deux essais ont-ils réussi alors que les scripts collés se heurtaient à des erreurs de connexion ? Parce que l’agent n’a pas appelé le point d’accès surchargé overpass-api.de depuis un script brut : il a récupéré les circonscriptions électorales de 2022 chez DataMeet et les 256 écoles (108 nœuds et 148 ways, les écoles en polygone étant converties en points sur surface) via ses outils de données intégrés. Quand j’ai lancé une vérification indépendante des points dans les polygones sur les deux résultats, les 256 points d’écoles se trouvaient bien dans les 58 circonscriptions, sans aucun écart avec le champ attributaire schools.

Il a aussi gardé l’arbre des couches propre en rangeant trois couches intermédiaires dans un groupe masqué Working layers, et m’a rappelé dans sa réponse qu’OpenStreetMap n’est pas un recensement officiel des écoles. Mon seul reproche : entre l’essai 1 et l’essai 2, il a changé d’avis sur le fait de me poser la question circonscriptions ou tehsils, ou de trancher seul.

Essayer AI Agent gratuitement dans QGIS, sans carte bancaire

Quelle voie choisir ?

Dans mon propre travail, j’utilise encore Claude seul, dans un navigateur ou un terminal, quand j’écris un script de traitement réutilisable ou que je débogue un plugin maison réparti sur vingt fichiers. Là, on veut lire le Python, le versionner dans Git et l’exécuter hors de l’interface. Pensez simplement à coller votre version de QGIS, les noms de vos couches et de vos champs et votre SCR dans le prompt, et attendez-vous à corriger un import ou deux.

Choisissez Claude + QGIS MCP si vous avez déjà un abonnement Claude payant, que uv et les fichiers de configuration JSON ne vous font pas peur, et que vous voulez mélanger opérations sur des fichiers locaux et appels à QGIS dans Claude Desktop ou Claude Code. C’est gratuit en plus de votre offre actuelle, et rapide quand vos couches de données sont déjà chargées.

Choisissez un agent dans QGIS quand vous voulez la carte et les chiffres sans surveiller des traces d’erreur Python, des délais dépassés sur Overpass ou des ports cassés. Pour un analyste pressé par une échéance ou une équipe qui a besoin d’une symbologie cohérente, de sources de données citées et d’une annulation en un clic, avoir l’agent et le catalogue de données intégrés à QGIS fait gagner le plus de temps. Vous pouvez lire en quoi l’architecture diffère dans notre guide qu’est-ce qu’un agent IA dans QGIS, ou parcourir tous les outils actuels sur le hub QGIS IA.

Comment nous avons mesuré. Tous les essais sur Pune ont eu lieu le 7 novembre 2026 entre 10 h 29 et 11 h 03, heure de Paris, sous macOS avec QGIS 3.44.15-Solothurn (Qt 5.15.19). Les critères de réussite ont été écrits à 10 h 14, avant le premier prompt. Claude Sonnet 5.5 (claude-sonnet-5-5) a été appelé via Claude Code 2.1.306 (claude -p --safe-mode --tools "" --model sonnet) dans un dossier vide, sans serveur MCP ni accès web ; les deux scripts obtenus ont été exécutés dans le Python de QGIS et contrôlés par un script indépendant de points dans les polygones. AI Agent 1.9.4 (mode Balanced, effort Medium) a été lancé deux fois sur la même phrase, dans des projets vierges. D’autres sessions QGIS tournaient sur le même Mac pendant les tests : les durées mesurées sont donc plus longues que sur une machine au repos. Deux essais par voie sur une seule tâche, c’est un petit échantillon, et le refus de connexion de overpass-api.de a été observé depuis un seul réseau, un seul matin.

Questions fréquentes

Existe-t-il un plugin Claude officiel pour QGIS ?

Non. Anthropic ne publie pas de plugin QGIS. Au 7 novembre 2026, le dépôt d’extensions de QGIS compte neuf plugins communautaires qui connectent Claude à QGIS, soit via un serveur Model Context Protocol (MCP) local (comme QGIS MCP et WAI QGIS MCP), soit via votre propre clé API, soit via une connexion locale à Claude Code (Mapsuke). Autre option : AI Agent s’installe directement depuis le gestionnaire d’extensions de QGIS, avec le modèle d’IA et le catalogue de données intégrés.

Claude Desktop peut-il piloter QGIS gratuitement ?

Oui, avec des limites. D’après la documentation des offres d’Anthropic, le chat de Claude Desktop est disponible dans l’offre Free et prend en charge les serveurs MCP locaux via claude_desktop_config.json ou les Desktop Extensions (.mcpb). Utiliser Claude Code dans le terminal demande une offre Claude Pro, Max ou Ultra payante.

Claude peut-il écrire du code PyQGIS qui fonctionne dans QGIS 3.44 ?

Oui, Claude Sonnet 5.5 écrit du PyQGIS bien structuré, mais comme il ne voit pas votre installation de QGIS et ne peut pas tester son propre code, il invente parfois des noms de classes ou s’appuie sur des serveurs externes qui tombent en panne. Dans notre test à deux échantillons sur QGIS 3.44.15, un script a échoué avec ImportError sur QgsClassificationNaturalBreaks (la vraie classe est QgsClassificationJenks) et l’autre a échoué jusqu’à ce que nous changions l’URL de son API Overpass.

Quelle est la façon la plus simple d’utiliser l’IA dans QGIS sans configurer de MCP ?

Installez un plugin agent intégré depuis Extensions > Installer/Gérer les extensions dans QGIS. Avec AI Agent, il n’y a ni environnement Python, ni gestionnaire de paquets uv, ni fichier de configuration à maintenir : vous vous connectez gratuitement, vous avez 5 tâches par mois (300 avec Pro), et vous tapez votre demande dans le panneau ancré.

Essayer AI Agent gratuitement

Faites-le dans QGIS en le demandant

AI Agent réalise la tâche que vous décrivez, dans votre propre projet QGIS. Gratuit, sans carte bancaire.

Essayer AI Agent gratuitement