Model Context Protocol (MCP) server & QGIS plugin that lets LLMs (e.g. Claude) programmatically control QGIS Desktop – create/load projects, add layers, run processing tools, execute PyQGIS code, render maps, etc.
https://github.com/jjsantos01/qgis_mcpStop clicking through QGIS menus. Start describing what you want, and let Claude do the heavy lifting.
This MCP server creates a direct bridge between Claude and your QGIS Desktop, letting you control the entire application through natural language. Load datasets, run processing algorithms, execute PyQGIS code, generate maps—all by describing your workflow in plain English.
You know the drill: open QGIS, load three different data sources, run a centroid calculation, apply a choropleth style with quantile classification, zoom to extent, export the map. That's about 20 clicks and several dialog boxes for something you could describe in one sentence.
Now you can literally tell Claude: "Load the census data, calculate centroids, create a population choropleth using 5 quantile classes with the Spectral color ramp, and export a PNG." Done.
Eliminate Repetitive Tasks: Those multi-step workflows you run weekly? Describe them once, let Claude execute them perfectly every time.
Learn PyQGIS Naturally: Instead of digging through documentation, ask Claude to "add a buffer analysis using the native buffer algorithm" and see the exact PyQGIS code that runs.
Rapid Prototyping: Test different processing chains, styling approaches, and data combinations by describing variations instead of manually reconfiguring.
Documentation That Actually Works: Your analysis becomes self-documenting when described in natural language rather than buried in a series of menu clicks.
Automated Report Generation: "Load the monthly sales data, create a heat map, add the regional boundaries layer, and export a map for each region."
Batch Geoprocessing: "For each shapefile in this directory, calculate the area, run a buffer analysis, and export the results as GeoJSON."
Interactive Analysis: "Show me the correlation between elevation and population density using a scatter plot and highlight outliers on the map."
Teaching Tool: Perfect for GIS education—students can focus on spatial thinking rather than memorizing interface mechanics.
The system runs two components: a QGIS plugin that creates a socket server inside your QGIS session, and an MCP server that translates Claude's requests into QGIS operations. Install the plugin, configure Claude to use the MCP server, and start the connection.
From there, Claude has access to 13 core tools covering everything from project management to arbitrary PyQGIS execution. It can ping for connectivity, manipulate layers, run processing algorithms, render maps, and execute custom Python code within your QGIS environment.
You'll need QGIS 3.22+, Python 3.10+, and the uv package manager. Copy the plugin to your QGIS plugins folder, configure Claude's desktop app to point to the MCP server, and start the connection from within QGIS.
The complete setup takes about 10 minutes. After that, you're describing GIS workflows instead of clicking through them.
Try it: Clone the repo, follow the installation steps, and ask Claude to create a simple choropleth map. You'll immediately see why 547 developers have already starred this—it fundamentally changes how you interact with QGIS.
This isn't just automation; it's turning QGIS into a conversational interface where your spatial thinking drives the analysis, not interface navigation.