← GeoAI SkillsCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to GeoAI Skills
Snapshot Sep 30, 2026 · 23:13 UTC · version 0.4.0
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Automate controlled local ArcGIS Pro and ArcPy workflows through arcgis-mcp-bridge: inspect .aprx projects and file geodatabases, run geoprocessing, projection, raster, network, spatial-statistics, editing, symbology, and layout export with path and mutation guards. Use when the user explicitly names ArcGIS Pro, ArcPy, .aprx, .gdb, Esri geoprocessing, muend/arcgis-mcp-bridge, its health_check, PathGuard, or confirmation gates, or sketch-to-GIS extraction. Do not trigger for ArcGIS Online or Enterprise administration, QGIS or PyQGIS, generic open-source GIS, or live GUI control of an already-open ArcGIS Pro session.",
"included_files": [
{
"relative_path": "agents/openai.yaml",
"size_in_bytes": 217
},
{
"relative_path": "references/authoritative-sources.md",
"size_in_bytes": 1612
},
{
"relative_path": "references/runtime-and-licensing.md",
"size_in_bytes": 4000
},
{
"relative_path": "references/safety-and-validation.md",
"size_in_bytes": 4955
},
{
"relative_path": "references/tool-routing.md",
"size_in_bytes": 5644
}
],
"name": "arcgis-pro-automation",
"skill_md_contents": "---\nname: arcgis-pro-automation\ndescription: >-\n Automate controlled local ArcGIS Pro and ArcPy workflows through\n arcgis-mcp-bridge: inspect .aprx projects and file geodatabases, run\n geoprocessing, projection, raster, network, spatial-statistics, editing,\n symbology, and layout export with path and mutation guards. Use when the\n user explicitly names ArcGIS Pro, ArcPy, .aprx, .gdb, Esri geoprocessing,\n muend/arcgis-mcp-bridge, its health_check, PathGuard, or confirmation\n gates, or sketch-to-GIS extraction. Do not trigger for ArcGIS Online or\n Enterprise administration, QGIS or PyQGIS, generic open-source GIS, or\n live GUI control of an already-open ArcGIS Pro session.\nlicense: MIT\nmetadata:\n author: Muhammed Enes Duran\n---\n\n# ArcGIS Pro Automation\n\nOperate saved ArcGIS Pro projects and local GIS datasets through the guarded\n`arcgis-mcp-bridge` tool surface. Treat the bridge as an execution backend,\nnot as permission to mutate data or claim a result that was never observed.\n\n## Establish the boundary\n\n- Require Windows, a licensed ArcGIS Pro installation, and a bridge worker\n interpreter that can import ArcPy for real geoprocessing.\n- Use the bridge for local, headless, repeatable ArcPy work. It does not drive\n the visible ArcGIS Pro UI and does not administer ArcGIS Online or Enterprise.\n- If the bridge tools are not callable, provide setup or a dry execution plan.\n Never simulate tool output or imply that an `.aprx` or `.gdb` changed.\n- Use the schemas exposed by the connected MCP server. Tool names may be host-\n namespaced; match the semantic catalog name and never invent parameters.\n- Keep every read and write inside the configured allowed roots. Use absolute\n paths and a dedicated scratch geodatabase for intermediate outputs.\n\nRead [runtime and licensing](references/runtime-and-licensing.md) before the\nfirst execution or whenever setup, extension availability, or worker failures\nare in scope.\n\n## Execute the workflow\n\n1. **Define the contract.** Identify inputs, intended output artifacts, CRS and\n units, whether a saved `.aprx` must change, and which operations create,\n overwrite, append, or edit data.\n2. **Preflight.** Call `health_check` first. Inspect its worker interpreter,\n allowed roots, scratch GDB, timeout, and concurrency. Because this call does\n not import ArcPy, follow it with a non-mutating ArcPy-backed request such as\n `get_spatial_reference`, `describe_dataset`, or `list_layers` before treating\n the runtime as execution-ready.\n3. **Inspect before acting.** Read dataset descriptions, counts, fields, CRS,\n extents, project maps/layers, and required extension licenses. Resolve datum\n transformations, units, and output naming before analysis.\n4. **Plan exact tools.** Select the smallest declarative sequence from\n [tool routing](references/tool-routing.md). Separate read-only inspection,\n new-output creation, and in-place mutation. Prefer new outputs and working\n copies over edits to source data.\n5. **Authorize mutations.** Read [safety and validation](references/safety-and-validation.md)\n before any write. Set `confirm=true` only when the user's request clearly\n authorizes the exact mutating operation and target. Treat `overwrite=true`\n as a separate explicit decision. Stop on ambiguous target, scope, or intent.\n6. **Execute incrementally.** Run one dependent step at a time; preserve returned\n output paths and geoprocessing messages. Parallelize only independent jobs\n when license seats, memory, and `max_workers` are known to support them.\n7. **Verify independently.** Re-open outputs and test the relevant invariants:\n existence, count, geometry validity, CRS and units, raster statistics and\n NoData, network solve status, project contents, or exported layout dimensions.\n A success status alone is not evidence of a correct GIS result.\n\n## Route domain method and execution separately\n\nUse this skill for the ArcGIS execution layer. Pair it with the relevant domain\nskill when method choice or scientific validity is substantive:\n\n- DEM, slope, drainage, or viewsheds → `terrain-hydrology`\n- routing, service areas, OD, or facilities → `network-accessibility-analysis`\n- Moran's I, Gi*, kernel density, or spatial inference → `spatial-statistics`\n- raster/imagery preprocessing and interpretation → `remote-sensing-analysis`\n- map design before `.aprx` styling or layout export → `cartography-geoviz`\n- multi-stage cross-domain delivery → `geoai-orchestrator`\n\nDo not activate ArcGIS automation merely because an open format can be read by\nArcGIS. A GeoPackage, GeoJSON, raster, or `.gdb` request that explicitly chooses\nGDAL, GeoPandas, QGIS, PostGIS, or another runtime belongs to that specialist.\n\n## Handle failures without bypasses\n\n- `validation`: correct the payload against the live schema; do not relax types.\n- `security`: move or copy only with user authorization; never broaden allowed\n roots merely to make a call pass.\n- `license`: report the unavailable base or extension license. Use an alternative\n only when it is methodologically equivalent and disclose the change.\n- `geoprocessing`: preserve ArcPy messages, inspect inputs/environment, and retry\n only after a concrete correction. Never retry an in-place mutation blindly.\n- `internal` or worker crash: preserve the error boundary and stop claiming state.\n\n## Deliver evidence\n\nReport the tool sequence, inspected inputs, exact output paths, mutations and\nauthorization basis, relevant ArcPy messages, verification results, license and\nruntime constraints, and unresolved limitations. For current tool or platform\nclaims, consult [the authoritative source registry](references/authoritative-sources.md)\nand record the checked date.\n\n## Execution contract\n\n- **Workflow:** establish the local ArcGIS boundary; preflight server and ArcPy separately; inspect data and project state; plan exact tools; authorize writes; execute incrementally; reopen and verify outputs.\n- **Decision rules:** use the bridge only for explicit local ArcGIS Pro or ArcPy work, pair it with domain-method skills when needed, prefer new outputs, and reserve confirmation and overwrite flags for clearly authorized targets.\n- **Verification protocol:** reconcile counts, geometry, CRS and units, raster or network diagnostics, `.aprx` contents, exported artifacts, returned paths, and geoprocessing messages against the stated success criteria.\n- **Failure modes:** stop for absent bridge tools, failed ArcPy preflight, unknown CRS or datum transform, paths outside allowed roots, missing licenses, ambiguous mutation scope, worker crashes, or unverified output state.\n- **Deliverables:** reproducible tool plan and calls, exact inputs and outputs, mutation record, ArcPy messages, validation evidence, runtime and license provenance, and limitations.\n- **Source freshness:** consult [the authoritative source registry](references/authoritative-sources.md) before applying bridge, ArcPy, licensing, or platform rules and record the checked date.\n"
}SHA-256 of public snapshot: 7836eb9e2d10d92da895935cf7eeaa28d73a9fafb0493571a5e14f05fa2736c9