About io.github.mapsmith-ai/mapsmith
io.github.mapsmith-ai/mapsmith is an MCP server in the Maps category: deterministic geoprocessing for AI agents, with verifiable provenance on every output.
Install
uvx mapsmithpip install mapsmithThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (28)
aspectDownslope azimuth from a DEM, 0 = north; flat cells are −1, not nodata (`[whitebox]` extra)
Parameters not published.
buffer_layerMetric buffer with automatic UTM estimation for geographic CRS
Parameters not published.
centroid_layerGeometric centroids computed in a metric CRS, never on degrees (decision recorded)
Parameters not published.
clip_layerClip a layer with a mask layer
Parameters not published.
convert_formatConvert between GeoParquet/GeoPackage/GeoJSON by output extension, re-read and verified (count and CRS). Two conversions are refused with the reason rather than performed: shapefile output, which truncates field names to 10 characters silently, and GeoJSON for a non-WGS84 layer
Parameters not published.
describe_datasetCRS, schema/bands, extent, nodata and statistics of any vector or raster dataset
Parameters not published.
dissolve_layerMerge features per key; the aggregation is recorded in the manifest and the group count verified
Parameters not published.
execute_planValidate then run a plan step by step, with per-step provenance and a plan-level manifest
Parameters not published.
explode_layerMulti-part to single-part, with the part count verified in closed form
Parameters not published.
flow_accumulationD8 flow accumulation with automatic depression filling (`[whitebox]` extra)
Parameters not published.
Show all 28 tools
get_provenanceReturn the manifest of any MapSmith output: one operation, its inputs and their digests, and what was checked
Parameters not published.
hillshadeShaded relief from a DEM, in-memory Whitebox engine (`[whitebox]` extra)
Parameters not published.
list_operationsCatalog search: narrows on what you declare, then returns the surviving set to choose from (`status: "choose"`) or a ranking by `engine` — BM25, embeddings, or auto; `detail=true` returns parameters and worked examples
Parameters not published.
measure_areaArea in m², always: ground on the ellipsoid, or planar converted with the CRS's own declared linear unit (survey feet are not metres). Invalid rings repaired *before* measuring, and a plane that is not equal-area here comes back with the ratio against the ground area
Parameters not published.
merge_layersAppend layers (schema union); null-filled columns are named in the manifest, the count verified against the sum
Parameters not published.
nearest_joinNearest neighbour with the distance in meters, UTM-measured on geographic CRS (decision recorded)
Parameters not published.
overlay_layersSet-theoretic overlay (intersection/union/difference/…); dropped lower-dimension pieces are declared in the manifest
Parameters not published.
preview_mapInteractive in-chat map (MCP Apps) of any datasets, with a provenance card and verification status per layer
Parameters not published.
reproject_layerReproject to any CRS (EPSG code or WKT)
Parameters not published.
run_operationRun any catalog operation by name, including those with no tool of their own; arguments validated against the catalog before anything runs
Parameters not published.
run_sqlSpatial SQL (DuckDB dialect) over GeoParquet and GDAL formats
Parameters not published.
server_infoVersion, license, available engines
Parameters not published.
simplify_layerDouglas-Peucker with the drift measured: area/length before and after recorded in the manifest
Parameters not published.
slopeSlope gradient from a DEM in degrees, percent or radians; geographic-CRS DEMs refused (`[whitebox]` extra)
Parameters not published.
spatial_joinJoin by spatial predicate, auto-routed to the fastest engine (SedonaDB > DuckDB > GeoPandas)
Parameters not published.
validate_planStatically validate a multi-step plan before running anything: operations, arguments, references, input files, simulated CRS flow
Parameters not published.
watershedWatershed delineation from a DEM and pour points (`[whitebox]` extra)
Parameters not published.
zonal_statisticsRaster statistics per vector zone with exact fractional pixel coverage (`[raster]` extra)
Parameters not published.
Ask AI
Ask AI about io.github.mapsmith-ai/mapsmith
Powered by Claude · Grounded in docs
Security checks
6 checks have not been run yet.