MCP Hub
Back to servers

ArcGIS MCP Server

Exposes ArcGIS Pro geoprocessing capabilities to LLMs via the arcpy library, enabling automated spatial analysis and data management. It provides a comprehensive suite of tools for vector geoprocessing, terrain analysis, and raster operations designed for GIS workflows.

glama
Stars
1
Updated
Mar 25, 2026
Validated
May 3, 2026

ArcGIS MCP Server

MCP (Model Context Protocol) server yang mengekspos ArcGIS Pro geoprocessing via arcpy ke Claude dan LLM lainnya.

Dirancang untuk tim GIS perkebunan kelapa sawit yang menggunakan ArcGIS Pro 3.x.


Status Instalasi

KomponenStatus
ArcGIS Pro3.4.0 — C:\Program Files\ArcGIS\Pro\
Python Environmentarcgispro-py3 (Python 3.11.10)
arcpyTersedia

Struktur Project

arcgis-mcp/
├── server.py                   # Entry point — FastMCP server
├── tools/
│   ├── __init__.py
│   ├── data_io.py              # Describe, list, export, create GDB
│   ├── geoprocessing.py        # Clip, buffer, intersect, dissolve, dll
│   ├── terrain.py              # Slope, aspect, hillshade, hidrologi
│   └── raster_analysis.py     # Zonal stats, reclassify, extract, kalkulator
├── utils/
│   ├── __init__.py
│   └── helpers.py              # Shared utilities (run_arcpy, error handling)
├── requirements.txt
├── claude_desktop_config.json  # Contoh config untuk Claude Desktop
└── README.md

Daftar Tools (30 tools)

Data I/O

ToolDeskripsi
arcgis_describe_dataDeskripsi lengkap dataset: geometry, CRS, extent, fields
arcgis_list_workspaceList semua dataset dalam folder/GDB/GeoPackage
arcgis_list_fieldsList semua field/kolom beserta tipe dan panjangnya
arcgis_get_feature_countHitung jumlah feature, opsional dengan filter WHERE
arcgis_export_dataExport feature class ke format lain (SHP/GDB/GPKG)
arcgis_create_gdbBuat File Geodatabase baru

Geoprocessing Vector

ToolDeskripsi
arcgis_clipPotong features menggunakan boundary polygon
arcgis_bufferBuat buffer di sekeliling features
arcgis_intersectOverlay intersect 2+ feature class
arcgis_unionGabung semua geometry dari 2+ polygon
arcgis_dissolveMerge polygon berdasarkan atribut + statistik
arcgis_spatial_joinGabung atribut berdasarkan relasi spasial
arcgis_projectReproject ke sistem koordinat lain (EPSG/WKID)
arcgis_select_by_attributePilih dan export features berdasarkan SQL
arcgis_eraseHapus area tertentu dari features (kebalikan clip)
arcgis_repair_geometryPerbaiki geometry yang rusak/invalid

Terrain Analysis (Butuh Spatial Analyst)

ToolDeskripsi
arcgis_slopeHitung kemiringan lereng dari DEM (derajat / persen)
arcgis_aspectHitung arah hadap lereng dari DEM
arcgis_hillshadeBuat hillshade/bayangan relief untuk visualisasi
arcgis_contourGenerate garis kontur dari DEM
arcgis_fill_demIsi sink di DEM untuk analisis hidrologi
arcgis_flow_directionHitung arah aliran air per sel
arcgis_flow_accumulationHitung akumulasi aliran (jumlah sel hulu)
arcgis_watershedDelineasi DAS / catchment area
arcgis_slope_classificationKlasifikasi kemiringan untuk perencanaan kebun

Raster Analysis (Butuh Spatial Analyst)

ToolDeskripsi
arcgis_zonal_statistics_as_tableStatistik raster per zona (blok, afdeling)
arcgis_reclassifyReklasifikasi nilai raster ke kelas baru
arcgis_extract_by_maskPotong raster menggunakan mask polygon/raster
arcgis_raster_calculatorKalkulasi map algebra (NDVI, conditional, diff)
arcgis_raster_to_polygonKonversi raster terklasifikasi ke polygon
arcgis_polygon_to_rasterKonversi polygon ke raster
arcgis_resample_rasterUbah resolusi/cell size raster

Instalasi

1. Install dependensi MCP ke arcgispro-py3

# Aktifkan environment arcgispro-py3
"C:/Program Files/ArcGIS/Pro/bin/Python/Scripts/conda.exe" activate arcgispro-py3

# Install mcp
"C:/Program Files/ArcGIS/Pro/bin/Python/envs/arcgispro-py3/python.exe" -m pip install mcp pydantic

2. Test server berjalan

"C:/Program Files/ArcGIS/Pro/bin/Python/envs/arcgispro-py3/python.exe" "D:/04 Claude/arcgis-mcp/server.py"

3. Konfigurasi Claude Desktop

Edit file %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "arcgis": {
      "command": "C:/Program Files/ArcGIS/Pro/bin/Python/envs/arcgispro-py3/python.exe",
      "args": ["D:/04 Claude/arcgis-mcp/server.py"]
    }
  }
}

Restart Claude Desktop setelah mengubah config.


Contoh Penggunaan

Analisis terrain untuk perencanaan kebun

1. arcgis_slope (DEM → slope raster)
2. arcgis_slope_classification (slope → kelas kemiringan)
3. arcgis_raster_to_polygon (kelas → polygon)
4. arcgis_intersect ([blok_tanam, kelas_lereng] → overlay)
5. arcgis_dissolve (overlay → luas per kelas per blok)

Buffer riparian dan erase dari plantable area

1. arcgis_buffer (sungai → buffer 30m)
2. arcgis_erase (blok_tanam, buffer → blok tanpa riparian)
3. arcgis_get_feature_count (verifikasi hasil)

Zonal statistics slope per plot

1. arcgis_describe_data (cek CRS plot dan DEM sama)
2. arcgis_slope (DEM → slope raster)
3. arcgis_zonal_statistics_as_table (slope, plots → tabel statistik)

Sistem Koordinat Indonesia yang Umum

WKIDNamaDigunakan di
4326WGS 1984GPS, data umum
32647WGS84 UTM Zone 47NSumatra Barat, sebagian Sumatra
32648WGS84 UTM Zone 48NSumatra Tengah-Timur
32649WGS84 UTM Zone 49NKalimantan Barat-Tengah
32650WGS84 UTM Zone 50NKalimantan Timur-Utara
32748WGS84 UTM Zone 48SSumatra bagian selatan
32750WGS84 UTM Zone 50SKalimantan Timur bagian selatan
23830DGN95/TM Zone 50NKadastral Indonesia

Catatan Penting

  • Semua path harus menggunakan forward slash / atau double backslash \\
  • Tool terrain dan raster membutuhkan lisensi Spatial Analyst
  • Server berjalan sebagai subprocess stdio — satu koneksi per client
  • arcpy bersifat synchronous; semua panggilan dijalankan di thread pool agar tidak memblokir event loop
  • Untuk data besar, pastikan koneksi ArcGIS Pro tidak terputus selama eksekusi

Reviews

No reviews yet

Sign in to write a review