Field notes
A colleague sent me a WhatsApp message: a proposal due, a property in western Mexico, and biodiversity research on hummingbirds. Could I work out what it would take to hear the birds across the whole site. I had four KMZ files, no time, and I have never set foot on the place.
What changes when you can just keep asking.
The researchers want to study hummingbird movements on the property, and they already had a good instinct about where: two field stations, sited where there is power and Starlink, in the areas that offer the best opportunity for that work. Tag birds, listen closely, find out how they move.
My job was to figure out what it takes to hear them, and to answer a fair question sitting next to it. This is a 2,768-hectare property. How much of the rest of it could we also cover, and is it worth trying?
So I opened QGIS, connected an AI assistant to it, and started asking.
First answer: build more towers
It pulled a free 30-meter elevation model for the site, reprojected everything into meters, and ran line-of-sight viewsheds from a 9-meter mast. Two stations covered 19.2 percent of the property. They sit at around 1,800 meters on a site that climbs to 2,637, so that is about what you would expect.
Then it scored every 30-meter cell on the property for elevation, slope and vegetation, and picked five more sites that complement each other rather than overlap. Seven stations: 87.4 percent.
Which reads as an argument for spending money on towers. And bare earth is exactly the assumption you should not leave sitting there on a forested mountain.
Second answer: the trees are the problem
So I asked for the canopy. There are global canopy height models now at 10-meter resolution, free, and it went and got one and re-ran the same seven stations with the treetops as an obstruction.

87.4 percent became 2.9 percent.
Median canopy height on this property is 27.5 meters. Only 6.7 percent of it has canopy under 6 meters. A 9-meter mast is not a tower here, it is a stick in the understory, and you cannot guy a 30-meter one to a mountainside in Jalisco.

Neither number is the answer, and that is worth saying plainly. Bare earth pretends the forest is not there; solid canopy pretends a leaf is a wall. Radio attenuates through vegetation rather than stopping dead, so the truth is somewhere in between, and the useful thing to hand a client is that range with both assumptions stated.
But the direction is not ambiguous. The forest is the binding constraint, not siting and not mast height. Long-range detection from a tower is going to be opportunistic here no matter how cleverly I place the towers.
Third answer: the field stations were the right call
So the extra towers come off the table, and the answer points back at the two sites the researchers had already picked. Which is the useful outcome, not a disappointing one. It means the money goes into instrumenting those two areas properly rather than into masts on ridgelines that the canopy was going to swallow.
Nodes are small receivers you scatter in a grid. They sit under the trees near the birds and only have to reach a station a few hundred meters away, which is a problem the forest does not veto. So the question became the one worth asking: where do you put 50 of them so they are close to the birds, close to a station, reachable on a service interval, and able to stay charged.
That last one turned out to be the real cost driver. Under closed canopy a solar panel will not keep a node topped up, and 16 of 50 nodes need a non-solar power source. Optimizing where the grid sits is what pulls that number down from most of them to about a third, which is the single most useful thing the whole analysis bought.
It also grabbed OpenStreetMap on its own initiative, which is how I found out that the median distance from anywhere inside the property to the nearest track is 671 meters. When a third of your nodes need their batteries physically swapped, that is not a map detail, it is a staffing plan.
What went back was two options: two grids of 25, one at each station, or all 49 in a single block at one of them. Two grids give better link margin and easier power and let you compare two areas. One grid gives a single 700-meter block, big enough to follow a bird moving between territories instead of losing it at the edge of a small window. That choice belongs to whoever wrote the hypotheses, not to me, so both are in the project with the trade-offs priced.

The part that actually matters
Look at the shape of that. Three passes, each one changing the recommendation, and the useful one is third.
None of it came from a single well-posed query. It came from a loop: ask, look at the map, notice what the map is quietly assuming, ask again. The canopy question was not clever. It was obvious the moment I looked at the bare-earth result and thought about the site. What used to make that loop expensive was not the thinking, it was the four hours of finding data, reprojecting it, writing the viewshed, and restyling the layout between each turn of the crank.
That cost is what collapsed. Two pieces did it. An AI assistant that can go get data from public APIs, and the QGIS MCP plugin, which lets that assistant drive an actual GIS: load layers, style them, run processing, build a print layout, and look at what it rendered. Free elevation, free canopy height, free imagery, free roads. No accounts, no keys, nothing downloaded on my end. I never typed a dataset name.
Which puts something in reach that mostly was not before. The people asking the sharpest ecological questions are usually not the people with a spare week to build a GIS project. They are field biologists and project leads with a boundary file, a real question, and a deadline. The distance between having the points and interrogating them has always been about a semester of coursework wide, and it just got a lot narrower.
The judgment is still entirely yours. Bare earth versus canopy is a domain call, not a software feature, and nobody was going to make it for me. But you no longer need to be able to build the analysis in order to ask for it, look hard at what comes back, and ask the next thing.
If you want to try it. Install QGIS, add the QGIS MCP plugin by Nicolas Karasiak, and point an AI assistant that can use tools at it. This ran on Claude with Opus 5.0; any MCP-capable assistant that can run code and look at images should work.
Then open with something like: "Here is my property boundary and my sensor locations. I want to know whether these sensors cover the site. Before you do anything, tell me what data you would use, what each source assumes, and what input you most want that you do not have." That last clause is the one that finds the canopy model on the first pass instead of the second.
As for the mountain: the rest of it stays quiet for now, and it is much better to know that before the hardware ships than after. What we will do instead is exactly what the researchers were already pointed at, done properly. A tight grid of nodes in the forest near the two field stations, batteries carried out to a third of them on a schedule, and fifty hectares listened to very well rather than two thousand listened to badly.
Narrower footprint. Better study. Three questions to get there.