New here? This page walks you through everything you can do with GeoSpark in about 10 minutes.
GeoSpark is an open-source geospatial intelligence engine that gives AI models real spatial reasoning. On their own, language models often get spatial questions wrong: in our benchmark, small open models got numeric distances wrong about 95% of the time. GeoSpark gives them tools that compute the answer, and every model that made valid tool calls then answered 76–96% correctly.
Beyond the spatial engine, GeoSpark is also a multi-agent platform with persistent memory, a tiered context database, and live data channels. Everything runs on your hardware at $0 cost.
Every result comes with a Proof panel: the status (ok, partial or cannot_answer), each source with its licence and method, caveats such as an ambiguous place name or a DEM's vertical accuracy, and the units of every number. You can download any result as GeoJSON (RFC 7946) and open it in QGIS.
Where can you walk, bike or drive in 10, 20 or 30 minutes? Isochrones and travel times come from a self-hosted Valhalla over OpenStreetMap. Coverage is Australia; points outside it are refused, not approximated.
Try it →Places, buildings, roads and the boundaries around any point, from Overture Maps. No API key. Distances, footprint areas and road lengths are geodesic.
Try it →GeoJSON, GeoPackage, Shapefile, GeoParquet or CSV. The CRS is read from the file; a Shapefile without a .prj is refused until you name its CRS, and a CSV's latitude/longitude columns are read as WGS 84 with a caveat.
geospark layer count-within stops.csv suburbs.gpkg
Record what an analysis did, replay it later, and get a verdict: reproduced, data changed (and which source) or code changed.
geospark record isochrone --minutes 10 -- -37.818 144.969geospark replay run.json
One input, intelligent routing. The coordinator picks the right specialist (GeoAgent, SpatialReport, SiteSelector) automatically.
Try it →Store facts and timestamped episodes. Vector-based recall with automatic contradiction detection across sessions.
Try it →Hierarchical storage with tiered loading (L0/L1/L2). Keep LLM prompts small by sending abstracts instead of full data.
Try it →Geocode, measure distances, check topology relationships, get elevations. Computed by tools, with their sources shown.
Try it →Weather forecasts, air quality measurements, active fire detections. Real-time from Open-Meteo, OpenAQ, NASA FIRMS.
Try it →Three specialists: GeoAgent for general spatial tasks, SpatialReport for location dossiers, SiteSelector for optimal site finding.
Try it →User / LLM
|
v
Coordinator (Agents tab) - classifies your goal
|
v
Specialist Agents - GeoAgent, SpatialReport, SiteSelector
|
v
Spatial Memory + Context DB - persistent knowledge across sessions
|
v
Spatial Reasoning Engine - topology, distance, CRS, buffer
|
v
Tools + Data Channels - geocoder, elevation, weather, air quality, fires