By Yvann Barbot, co-founder of TerraLab, the team that makes the AI Agent plugin for QGIS.
Most GIS work is not hard. It is long. You search for a dataset, download it, check the licence, reproject it, run two or three Processing tools, style the result, and only then do you see whether the idea was any good. An AI agent in QGIS changes the order: you describe the result you want in plain English, and the agent finds the data, runs the QGIS tools and builds the map in your own project.
This article shows what that looks like in practice. We ran three everyday tasks with AI Agent for QGIS, a free plugin, and kept the real answers, timings and screenshots. Then we look at how it scores on public geospatial benchmarks, and where it still needs a human.
The three tests at a glance
| Task | Data the agent found | Result | Time |
| Cycle network of Amsterdam | OpenStreetMap | 210.9 km of cycle network, 85 routes | about 25 s |
| 15-minute walk around Lyon Part-Dieu | OpenStreetMap streets and transit stops | 17 metro and tram stops in reach | about 2 min |
| Terrain map of the Mont Blanc massif | Copernicus 30 m elevation model | 405 contour lines, summit at 4,807 m | under 2 min |
All three ran at Low effort, the setting on the free plan, in a blank QGIS project.
What is an AI agent in QGIS?
A chatbot answers questions. An agent acts. In QGIS, that means a panel next to the map where you type a task, and the agent works through it step by step: it loads layers, runs Processing algorithms, writes PyQGIS when no tool fits, styles the layers and checks the map it produced.
Three things matter more than the model behind it:
- Data it can reach. A good answer starts with the right dataset. AI Agent searches open sources such as OpenStreetMap, Copernicus, national open data portals and satellite imagery, and names the source and licence of every layer it adds.
- Real QGIS tools. The work uses the same algorithms you would use by hand, so the layers stay in your project and every step can be inspected or redone.
- Control. Every run has an Undo button, and by default the agent asks before it deletes, overwrites or installs anything.
Example 1: a cycle network map of Amsterdam
The prompt:
Map the cycle network of Amsterdam on a dark basemap, with the main cycle routes in bright colours, and tell me the total length in km.
Amsterdam’s cycle routes by network level, over a dark basemap. The answer gives two lengths and explains the difference.
The agent loaded the mapped cycle routes from OpenStreetMap, added a dark basemap and styled the three network levels (local, regional, national) in three bright colours. Then it did something a hurried analyst often skips: it noticed that routes share streets. Its answer gives 210.9 km of unique cycle network, against 283.6 km if you simply add up the 85 routes, because shared segments would be counted several times.
The panel showed about 25 seconds of work, and the source line credits OpenStreetMap contributors and the basemap provider with their licences.
Example 2: a 15-minute walk around Lyon Part-Dieu
The prompt:
Show the area within a 15-minute walk of Lyon Part-Dieu station, on a light basemap, with the metro and tram stops inside it. How many stops are reachable?
The 15-minute walking area around Lyon Part-Dieu, routed on the street network, with every metro and tram stop labelled.
This is a real accessibility question, the kind planners and real estate analysts ask every day. The agent routed the walking area on the street network, so it follows real streets instead of drawing a circle. It loaded transit stops from OpenStreetMap, merged the duplicate records that OpenStreetMap keeps for each platform and line, and counted 17 reachable stops: 12 tram and 5 metro.
The first map had small markers and no names, so we asked a follow-up in the same chat: “Label each stop with its name and zoom out a little so the whole walking area is visible.” Eight seconds later, the map above was ready. The whole task took about two minutes.
Example 3: a terrain map of the Mont Blanc massif
The prompt:
Make a terrain map of the Mont Blanc massif: hillshade, elevation colours and 200 m contour lines with labels. What is the highest point in the area?
Hillshade, elevation colours and labelled 200 m contours over the Mont Blanc massif, built from the Copernicus 30 m elevation model.
The agent downloaded the Copernicus 30 m elevation model for about 1,400 km² around the massif. Before running anything, it reprojected the data to a metric grid (Lambert-93), so the hillshade and contours are computed in metres rather than degrees. It produced 405 labelled contour lines at 200 m, blended the hillshade with the elevation colours, and read the highest cell: 4,806.96 m, at the Mont Blanc summit, within about a metre and a half of the surveyed height of 4,805.6 m (2021).
Choosing a projected CRS first is the detail a GIS professional checks before anything else, and the agent did it unprompted.
How does it score on geospatial benchmarks?
Three good-looking examples do not prove much. So we also measured the agent on public benchmarks.
In October 2026, Google Research published GeoKTools and GeoExpertQueries, two benchmarks for geospatial agents. On 41 public questions from these benchmarks, each run three times and graded with Google’s own scoring code, the results were:
| AI setup for QGIS | Score (0 to 100) |
| AI Agent plugin (Low effort, the free plan setting) | 43.8 |
| Claude Sonnet 5.5 + QGIS MCP server (nkarasiak) | 24.9 |
| GPT-6 Luna + QGIS MCP server (jjsantos01) | 22.1 |
| GPT-6 Luna alone, no tools | 21.0 |
Scores on 41 public questions from GeoKTools and GeoExpertQueries, mean of 3 runs, graded with Google’s scoring code. Our own run, October 2026.
Question by question, the plugin scored higher than Claude Sonnet 5.5 with a QGIS MCP server on 26 questions and lower on 5. The model is not the main difference: the same GPT-6 Luna model scores 22.1 through a generic QGIS connection. What changes the result is what surrounds the model: access to the right data, QGIS tools that fit the task, and checks on the result.
Read these numbers with their limits. This is our own run on the public questions, not Google’s official test, whose questions stay private. 41 questions is a small sample, and we compared only the setups listed above. TerraLab is not affiliated with or endorsed by Google. The full benchmark method and results give every detail, including the checks we ran on our own setup.
Where an AI agent in QGIS still needs you
An agent saves time on the long parts. It does not replace judgment.
- Check the data. The agent names its sources, but you know whether OpenStreetMap is complete in your area, or whether a 30 m elevation model is precise enough for your project.
- Check definitions. “Total length” or “reachable” can mean several things. The answers above state their assumptions, as with the two lengths for Amsterdam. Read them.
- Check the map, not only the message. On the Mont Blanc map we asked the agent to zoom so the terrain filled the view. It said it had, but white margins remained, and it took a second, more precise request. Look at the result before you trust the summary.
In our tests, the best way to work with it is the way you would brief a junior analyst: one clear task, the place, the output you expect, then a short follow-up to refine.
How to try it
AI Agent is free on the official QGIS plugin repository and works with QGIS 3.28 and later, QGIS 4 included:
- In QGIS, open Plugins > Manage and Install Plugins.
- Search for AI Agent by TerraLab and install it.
- Click Sign in, create a free account in your browser, and the plugin connects. No API key and no card.
- Type a task in the panel, or start from the Examples library.
The free plan includes 5 tasks a month at Low effort, the same setting as every test in this article. The three prompts above make a good first test: change the city or the mountain range, and compare the result with what you would have built by hand.