QGISMCP

Integrations

  • Allows direct interaction with and control of QGIS GIS software, enabling project creation/manipulation, layer loading/management, processing algorithm execution, and running arbitrary PyQGIS code for geospatial data visualization and analysis.

QGISMCP - Integración del protocolo de contexto del modelo QGIS

QGISMCP conecta QGIS con Claude AI mediante el Protocolo de Contexto de Modelo (MCP), lo que permite a Claude interactuar y controlar directamente QGIS. Esta integración facilita la creación asistida de proyectos, la carga de capas, la ejecución de código y mucho más.

Este proyecto se basa en gran medida en el proyecto BlenderMCP de Siddharth Ahuja

Características

  • Comunicación bidireccional : conecta Claude AI a QGIS a través de un servidor basado en sockets.
  • Manipulación de proyectos : crear, cargar y guardar proyectos en QGIS.
  • Manipulación de capas : agregue y elimine capas vectoriales o rasterizadas a un proyecto.
  • Ejecutar procesamiento : Ejecutar algoritmos de procesamiento ( Caja de herramientas de procesamiento ).
  • Ejecución de código : Ejecuta código Python arbitrario en QGIS desde Claude. Es una herramienta muy potente, pero tenga mucho cuidado al usarla.

Componentes

El sistema consta de dos componentes principales:

  1. Complemento de QGIS : un complemento de QGIS que crea un servidor de socket dentro de QGIS para recibir y ejecutar comandos.
  2. Servidor MCP : un servidor Python que implementa el Protocolo de Contexto de Modelo y se conecta al complemento QGIS.

Instalación

Prerrequisitos

  • QGIS 3.X (solo probado en 3.22)
  • Escritorio en la nube
  • Python 3.10 o más reciente
  • Administrador de paquetes uv:

Si estás en Mac, instala uv como

brew install uv

En Windows PowerShell

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

De lo contrario, las instrucciones de instalación se encuentran en su sitio web: Instalar uv

⚠️ No proceda antes de instalar UV

Descargar código

Descarga este repositorio en tu ordenador. Puedes clonarlo con:

git clone git@github.com:jjsantos01/qgis_mcp.git

Complemento de QGIS

Debe copiar la carpeta qgis_mcp_plugin y su contenido en la carpeta de complementos de su perfil QGIS.

Puede obtener su carpeta de perfil en QGIS yendo al menú Settings -> User profiles -> Open active profile folder Luego, vaya a Python/plugins y pegue la carpeta qgis_mcp_plugin .

En una máquina Windows, la carpeta de complementos generalmente se encuentra en: C:\Users\USER\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins y en MacOS: ~/Library/Application\ Support/QGIS/QGIS3/profiles/default/python/plugins

Luego, cierre QGIS y vuelva a abrirlo. Vaya a la opción de menú Plugins -> Installing and Managing Plugins , seleccione la pestaña All y busque "QGIS MCP". Marque la casilla "QGIS MCP".

Claude para integración de escritorio

Vaya a Claude > Settings > Developer > Edit Config > claude_desktop_config.json para incluir lo siguiente:

Si no puede encontrar la "pestaña Desarrolladores" o el archivo claude_desktop_config.json , consulte esta documentación .

{ "mcpServers": { "qgis": { "command": "uv", "args": [ "--directory", "/ABSOLUTE/PATH/TO/PARENT/REPO/FOLDER/qgis_mcp/src/qgis_mcp", "run", "qgis_mcp_server.py" ] } } }

Uso

Iniciando la conexión

  1. En QGIS, vaya a plugins -> QGIS MCP -> QGIS MCP
  2. Haga clic en "Iniciar servidor"

Usando con Claude

Una vez que el archivo de configuración se haya configurado en Claude y el servidor se esté ejecutando en QGIS, verá un ícono de martillo con herramientas para QGIS MCP.

Herramientas

  • ping - Comando ping simple para comprobar la conectividad del servidor
  • get_qgis_info - Obtener información de QGIS sobre la instalación actual
  • load_project - Cargar un proyecto QGIS desde la ruta especificada
  • create_new_project - Crea un nuevo proyecto y guárdalo
  • get_project_info - Obtener información actual del proyecto
  • add_vector_layer - Agrega una capa vectorial al proyecto
  • add_raster_layer - Agrega una capa raster al proyecto
  • get_layers - Recupera todas las capas del proyecto actual
  • remove_layer - Elimina una capa del proyecto por su ID
  • zoom_to_layer - Zoom hasta la extensión de una capa especificada
  • get_layer_features - Recupera entidades de una capa vectorial con un límite opcional
  • execute_processing - Ejecuta un algoritmo de procesamiento con los parámetros dados
  • save_project - Guarda el proyecto actual en la ruta indicada
  • render_map - Renderiza la vista del mapa actual en un archivo de imagen
  • execute_code - Ejecuta código arbitrario de PyQGIS proporcionado como una cadena

Comandos de ejemplo

Este es el ejemplo que utilicé para la demostración :

You have access to the tools to work with QGIS. You will do the following: 1. Ping to check the connection. If it works, continue with the following steps. 2. Create a new project and save it at: "C:/Users/USER/GitHub/qgis_mcp/data/cdmx.qgz" 3. Load the vector layer: ""C:/Users/USER/GitHub/qgis_mcp/data/cdmx/mgpc_2019.shp" and name it "Colonias". 4. Load the raster layer: "C:/Users/USER/GitHub/qgis_mcp/data/09014.tif" and name it "BJ" 5. Zoom to the "BJ" layer. 6. Execute the centroid algorithm on the "Colonias" layer. Skip the geometry check. Save the output to "colonias_centroids.geojson". 7. Execute code to create a choropleth map using the "POB2010" field in the "Colonias" layer. Use the quantile classification method with 5 classes and the Spectral color ramp. 8. Render the map to "C:/Users/USER/GitHub/qgis_mcp/data/cdmx.png" 9. Save the project.
-
security - not tested
F
license - not found
-
quality - not tested

Conecta QGIS con Claude AI a través del Protocolo de Contexto de Modelo, lo que permite la creación de proyectos asistida por IA, la manipulación de capas, la ejecución de algoritmos de procesamiento y la ejecución de código Python dentro de QGIS.

  1. Features
    1. Components
      1. Installation
        1. Prerequisites
        2. Download code
        3. QGIS plugin
        4. Claude for Desktop Integration
      2. Usage
        1. Starting the Connection
        2. Using with Claude
        3. Example Commands
      ID: s4qv0wycq6