Model Context Protocol (MCP) sunucusu uygulaması, GIS kütüphaneleri kullanarak Büyük Dil Modellerini (LLM) coğrafi bilgi sistemi (GIS) işlemleriyle bağlayan ve AI asistanlarının doğru mekânsal operasyonlar ve dönüşümler gerçekleştirmesini sağlayan bir çözüm.
Claude Desktop config.json'a ekle
{
"mcpServers": {
"mahdin75-gis-mcp": {
"command": "python",
"args": [
"-m",
"gis_mcp"
]
}
}
} Kaynak kodu al ve yerel olarak çalıştır
git clone https://github.com/mahdin75/gis-mcp.git ~/.mcp/gis-mcp
cd ~/.mcp/gis-mcp GIS-MCP'yi yükleyin ve AI'nızın mekansal yeteneklerini dönüştürün!
Model Context Protocol (MCP) sunucusu uygulaması, GIS kütüphanelerini kullanarak Büyük Dil Modellerini (LLM'ler) GIS işlemlerine bağlayarak AI asistanlarının jeouzamsal işlemler ve dönüşümler gerçekleştirmesini sağlar.
🌐 Web Sitesi: gis-mcp.com
Mevcut sürüm 0.14.0 (Beta):
Katkı ve geliştiricileri bu projeyi inşa etmede bize katılmaya davet ediyoruz.
GIS MCP Sunucusu, AI asistanlarına gelişmiş jeouzamsal zeka sağlar. Temel özellikler şunlardır:
🌟 İpucu: GIS MCP Sunucusu ile AI'nız artık "mekansal olarak düşünebilir" ve çevresel analiz, haritalama ve konum zekası için yeni yetenekler kilidini açabilir.
Vibe kodlaması ile ajanlar oluştururken, düzenleyicinizde bu bağlam dosyalarını kullanın, böylece LLM GIS MCP sunucusunu anlar:
llms.txt: daha küçük pencereler için özet bağlam.llms-full.txt: modelinizin daha büyük bir penceresi olduğunda tam bağlam.İhtiyaçlarınıza en uygun kurulum yöntemini seçin:
GIS MCP Sunucusu Docker kullanılarak çalıştırılabilir ve bu, tüm bağımlılıklar önceden yüklenmiş izole bir ortam sağlar.
Önemli: Hem Dockerfile hem de Dockerfile.local varsayılan olarak HTTP taşıma modunu etkinleştirmiştir. Sunucu 9010 portunda çalışır ve http://localhost:9010/mcp adresinde erişilebilir.
Ana Dockerfile, paketi PyPI'den yükler:
docker build -t gis-mcp .
docker run -p 9010:9010 gis-mcp
Dockerfile.local, paketi yerel kaynak dosyalarından yükler (geliştirme veya özel derlemeler için kullanışlı):
docker build -f Dockerfile.local -t gis-mcp:local .
docker run -p 9010:9010 gis-mcp:local
Sunucu HTTP taşıma modunda http://localhost:9010/mcp adresinde kullanılabilir.
Docker yapılandırması ve ortam değişkenleri hakkında daha fazla ayrıntı için Docker kurulum kılavuzuna bakın.
pip kurulumu çoğu kullanıcı için önerilir:
pip install uv
uv venv --python=3.10
Windows (PowerShell) üzerinde:
.\.venv\Scripts\Activate.ps1
Linux üzerinde:
source .venv/bin/activate
uv pip install gis-mcp
Görselleştirme yetenekleriyle (interaktif haritalar için Folium ve PyDeck) yüklemek için:
uv pip install gis-mcp[visualize]
Bu, aşağıdaki ek bağımlılıkları yükleyecektir:
folium>=0.15.0 - İnteraktif web harita oluşturmak içinpydeck>=0.9.0 - Gelişmiş 3D görselleştirmeler içingis-mcp
Varsayılan olarak, sunucu STDIO taşıma modunda çalışır ve bu, yerel geliştirme ve Claude Desktop veya Cursor IDE ile entegrasyon için idealdir.
Ağ dağıtımları için sunucuyu HTTP taşıma modunda da çalıştırabilirsiniz:
export GIS_MCP_TRANSPORT=http
export GIS_MCP_PORT=8080
gis-mcp
HTTP veya SSE taşıma modunda çalışırken, aşağıdaki uç noktalar kullanılabilir:
http://host:port/mcp (HTTP) veya http://host:port/sse (SSE)POST /storage/upload - Sunucu depolamasına dosya yükleyinGET /storage/download?path=<file> - Sunucu depolamasından dosya indirinGET /storage/list?path=<dir> - Sunucu depolamasında dosyaları listeleyinTaşıma modları ve tam uç nokta belgeleri hakkında daha fazla ayrıntı için bakınız:
pip kurulumunu Claude veya Cursor ile kullanmak için aşağıdaki yapılandırmayı ekleyin:
Claude Desktop:
Windows:
{
"mcpServers": {
"gis-mcp": {
"command": "C:\\Users\\YourUsername\\.venv\\Scripts\\gis-mcp",
"args": []
}
}
}
Linux/Mac:
{
"mcpServers": {
"gis-mcp": {
"command": "/home/YourUsername/.venv/bin/gis-mcp",
"args": []
}
}
}
Cursor IDE (.cursor/mcp.json oluşturun):
Windows:
{
"mcpServers": {
"gis-mcp": {
"command": "C:\\Users\\YourUsername\\.venv\\Scripts\\gis-mcp",
"args": []
}
}
}
Linux/Mac:
{
"mcpServers": {
"gis-mcp": {
"command": "/home/YourUsername/.venv/bin/gis-mcp",
"args": []
}
}
}
Yapılandırmadan sonra:
YourUsername yerine gerçek kullanıcı adınızı koymayı unutmayın/path/to/gis-mcp yerine projenize giden gerçek yolu koymayı unutmayınKatkı yapanlar ve geliştiriciler için:
pip install uv
uv venv --python=3.10
uv pip install -e .
python -m gis_mcp
Geliştirme kurulumunu Claude veya Cursor ile kullanmak için aşağıdaki yapılandırmayı ekleyin:
Claude Desktop:
Windows:
{
"mcpServers": {
"gis-mcp": {
"command": "C:\\path\\to\\gis-mcp\\.venv\\Scripts\\python",
"args": ["-m", "gis_mcp"]
}
}
}
Linux/Mac:
{
"mcpServers": {
"gis-mcp": {
"command": "/path/to/gis-mcp/.venv/bin/python",
"args": ["-m", "gis_mcp"]
}
}
}
Cursor IDE (.cursor/mcp.json oluşturun):
Windows:
{
"mcpServers": {
"gis-mcp": {
"command": "C:\\path\\to\\gis-mcp\\.venv\\Scripts\\python",
"args": ["-m", "gis_mcp"]
}
}
}
Linux/Mac:
{
"mcpServers": {
"gis-mcp": {
"command": "/path/to/gis-mcp/.venv/bin/python",
"args": ["-m", "gis_mcp"]
}
}
}
Yapılandırmadan sonra:
YourUsername yerine gerçek kullanıcı adınızı koymayı unutmayın/path/to/gis-mcp yerine projenize giden gerçek yolu koymayı unutmayınJeouzamsal işlemler gerçekleştirebilecek kendi AI agentnizi oluşturmaya hazır mısınız? Kapsamlı eğitimimiz sizi sıfırdan kahramana kadar rehberlik edecek!
🎥 YouTube'da öğreticileri izleyin →
Öğretici başlangıç seviyesi ve AI veya GIS konusunda önceki deneyim gerektirmez. Yapabileceğiniz çalışan bir ajan oluşturacaksınız:
Uygun olan: Geliştiriciler, veri bilimciler, GIS uzmanları ve AI destekli jeouzamsal uygulamalar oluşturmakla ilgili herkes.
Bu bölüm, kütüphaneye göre organize edilmiş tüm kullanılabilir fonksiyonların kapsamlı bir listesini sağlar.
Temel Geometrik İşlemler:
buffer - Geometrinin etrafında buffer oluşturintersection - İki geometrinin kesişimini bulununion - İki geometriyi birleştirindifference - Geometriler arasındaki farkı bulunsymmetric_difference - Simetrik fark bulunGeometrik Özellikler:
convex_hull - Convex hull hesaplaenvelope - Sınırlayıcı kutuyu alminimum_rotated_rectangle - Minimum döndürülen dikdörtgeni alget_centroid - Merkez noktasını alget_bounds - Geometri sınırlarını alget_coordinates - Koordinat dizisini çıkartget_geometry_type - Geometri türü adını alDönüşümler:
rotate_geometry - Geometriyi açı kadar döndürscale_geometry - Geometriyi faktörlerle ölçekletranslate_geometry - Geometriyi ofset kadar taşıGelişmiş İşlemler:
triangulate_geometry - Üçgenleme oluşturvoronoi - Voronoi diyagramı oluşturunary_union_geometries - Birden çok geometriyi birleştirÖlçümler:
get_length - Geometri uzunluğunu hesaplaget_area - Geometri alanını hesaplaDoğrulama & Yardımcılar:
is_valid - Geometri geçerliliğini kontrol etmake_valid - Geçersiz geometriyi düzeltsimplify - Geometriyi basitleştirsnap_geometry - Referans geometrisine yapıştırnearest_point_on_geometry - En yakın noktayı bulunnormalize_geometry - Yöneliş normalleştirgeometry_to_geojson - GeoJSON'a dönüştürgeojson_to_geometry - GeoJSON'dan dönüştürKoordinat Dönüşümleri:
transform_coordinates - Nokta koordinatlarını dönüştürproject_geometry - Geometriyi CRS'ler arasında projelendirCRS Bilgileri:
get_crs_info - Ayrıntılı CRS bilgisi alget_available_crs - Kullanılabilir CRS sistemlerini listeleget_utm_zone - Koordinatlar için UTM bölgesini alget_utm_crs - Koordinatlar için UTM CRS'sini alget_geocentric_crs - Geocentric CRS'sini alGeodetik Hesaplamalar:
get_geod_info - Elipsoid bilgisini alcalculate_geodetic_distance - Elipsoid üzerinde mesafe hesaplacalculate_geodetic_point - Mesafe/azimut adında nokta hesaplacalculate_geodetic_area - Elipsoid üzerinde alan hesaplaG/Ç İşlemleri:
read_file_gpd - Jeouzamsal dosyayı ön izleme ile okuwrite_file_gpd - GeoDataFrame'i dosyaya dışa aktarBirleştirme & Birleşim İşlemleri:
append_gpd - GeoDataFrame'leri dikey olarak birleştirmerge_gpd - Veritabanı stilinde öznitelik birleştirmelerioverlay_gpd - Mekansal bindirme işlemleridissolve_gpd - Özniteliğe göre çözexplode_gpd - Çok parçalı geometrileri bölMekansal İşlemler:
clip_vector - Geometrileri kırpsjoin_gpd - Mekansal birleştirmelersjoin_nearest_gpd - En yakın komşu mekansal birleştirmeleripoint_in_polygon - Noktanın çokgene ait olup olmadığını test etTemel Raster İşlemleri:
metadata_raster - Raster meta verilerini alget_raster_crs - Raster CRS'sini alextract_band - Tek bant çıkartraster_band_statistics - Band istatistiklerini hesaplaraster_histogram - Piksel histogramını hesaplaRaster İşleme:
clip_raster_with_shapefile - Raster'ı çokgenlerle kırpresample_raster - Ölçek faktörüne göre yeniden örneklereproject_raster - Yeni CRS'e yeniden projelendirtile_raster - Palalara bölRaster Analizi:
compute_ndvi - Bitki indeksini hesaplaraster_algebra - Band'lar üzerinde matematiksel işlemlerconcat_bands - Tek-band raster'ları birleştirweighted_band_sum - Ağırlıklandırılmış band kombinasyonuGelişmiş Analiz:
zonal_statistics - Çokgenler içinde istatistiklerQGIS Desktop'u Claude AI'ye MCP aracılığıyla bağlayan bir eklenti. Bu entegrasyon, komut yardımıyla proje oluşturma, layer yükleme, kod çalıştırma ve daha fazlasını sağlar.
OpenStreetMap entegrasyonlu, konum tabanlı hizmetler ve coğrafi veri sağlayan bir MCP sunucusu.