Location Services Python ★ 161

mahdin75/gis-mcp

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"
      ]
    }
  }
}

GIS MCP Sunucusu

Kategori Rozetler
Paket PyPI version PyPI downloads Tests
Kurulum & Taşıma Docker Installation Transport Storage
Veri Kaynakları Climate Biodiversity LandCover Movement Satellite Administrative
Agentic AI LangChain Agent Example OpenAI Agent Example
Topluluk Discord YouTube DeepWiki

✨ Chatbot'unuzda doğru jeouzamsal analiz gerçekleştirmek istiyor musunuz? ✨

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.

🎥 Demo

📋 İçindekiler

🚀 Özellikler

GIS MCP Sunucusu, AI asistanlarına gelişmiş jeouzamsal zeka sağlar. Temel özellikler şunlardır:

  • 🔹 Kapsamlı Geometri İşlemleri – Kesişim, birleşim, buffer, fark ve diğer geometrik dönüşümleri kolaylıkla gerçekleştirin.
  • 🔹 Gelişmiş Koordinat Dönüşümleri – Koordinat referans sistemleri arasında geometrileri zahmetsizce yeniden projeksiyon yapın ve dönüştürün.
  • 🔹 Doğru Ölçümler – Mesafeleri, alanları, uzunlukları ve merkez noktalarını hassas bir şekilde hesaplayın.
  • 🔹 Mekansal Analiz & Doğrulama – Geometrileri doğrulayın, yakınlık kontrolleri çalıştırın ve mekansal bindirme veya birleştirme gerçekleştirin.
  • 🔹 Raster & Vektör Desteği – Raster katmanlarını işleyin, NDVI gibi indeksler hesaplayın, kırpın, yeniden örnekleyin ve vektör verileriyle birleştirin.
  • 🔹 Mekansal İstatistik & Modelleme – PySAL'ı mekansal oto-korelasyon, kümeleme ve komşuluk analizi için kullanın.
  • 🔹 Kolay Entegrasyon – Claude Desktop veya Cursor IDE gibi MCP uyumlu istemcilerle sorunsuz bir şekilde bağlanın.
  • 🔹 HTTP/SSE Taşıması – Dosya yükleme/indirme işlemleri için RESTful depolama uç noktalarına sahip HTTP hizmeti olarak çalıştırın.
  • 🔹 Esnek & Genişletilebilir – Python tabanlı GIS kütüphanelerini destekler ve özel araçlar veya iş akışı uzantıları için hazırdı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.


📋 Ön Koşullar

  • Python 3.10 veya üstü
  • MCP uyumlu client (Claude Desktop veya Cursor gibi)
  • Paket kurulumu için internet bağlantısı

Vibe Kodlama

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.

🛠 Kurulum

İhtiyaçlarınıza en uygun kurulum yöntemini seçin:

🐳 Docker Kurulumu

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.

Dockerfile Kullanımı

Ana Dockerfile, paketi PyPI'den yükler:

  1. Docker görüntüsünü oluşturun:
docker build -t gis-mcp .
  1. Kapsayıcıyı çalıştırın (HTTP modu varsayılan olarak etkindir):
docker run -p 9010:9010 gis-mcp

Dockerfile.local Kullanımı

Dockerfile.local, paketi yerel kaynak dosyalarından yükler (geliştirme veya özel derlemeler için kullanışlı):

  1. Docker görüntüsünü oluşturun:
docker build -f Dockerfile.local -t gis-mcp:local .
  1. Kapsayıcıyı çalıştırın (HTTP modu varsayılan olarak etkindir):
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

pip kurulumu çoğu kullanıcı için önerilir:

  1. uv paket yöneticisini yükleyin:
pip install uv
  1. Sanal Ortam Oluşturun (Python 3.10+):
uv venv --python=3.10
  1. Sanal Ortamı Etkinleştirin:

Windows (PowerShell) üzerinde:

.\.venv\Scripts\Activate.ps1

Linux üzerinde:

source .venv/bin/activate
  1. Paketi yükleyin:
uv pip install gis-mcp

Görselleştirme Özellikleriyle Kurulum

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çin
  • pydeck>=0.9.0 - Gelişmiş 3D görselleştirmeler için
  1. Sunucuyu başlatın:
gis-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:

  • MCP uç noktası: http://host:port/mcp (HTTP) veya http://host:port/sse (SSE)
  • Depolama uç noktaları:
    • POST /storage/upload - Sunucu depolamasına dosya yükleyin
    • GET /storage/download?path=<file> - Sunucu depolamasından dosya indirin
    • GET /storage/list?path=<dir> - Sunucu depolamasında dosyaları listeleyin

Taşıma modları ve tam uç nokta belgeleri hakkında daha fazla ayrıntı için bakınız:

pip Yapılandırması

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:

  1. YourUsername yerine gerçek kullanıcı adınızı koymayı unutmayın
  2. Geliştirme kurulumu için /path/to/gis-mcp yerine projenize giden gerçek yolu koymayı unutmayın
  3. Değişiklikleri uygulamak için IDE'nizi yeniden başlatın
  4. Artık Claude veya Cursor aracılığıyla tüm GIS işlemlerini kullanabilirsiniz!

🛠 Geliştirme Kurulumu

Katkı yapanlar ve geliştiriciler için:

  1. uv paket yöneticisini yükleyin:
pip install uv
  1. Sanal Ortam Oluşturun:
uv venv --python=3.10
  1. Paketi geliştirme modunda yükleyin:
uv pip install -e .
  1. Sunucuyu başlatın:
python -m gis_mcp

Geliştirme Yapılandırması

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:

  1. YourUsername yerine gerçek kullanıcı adınızı koymayı unutmayın
  2. Geliştirme kurulumu için /path/to/gis-mcp yerine projenize giden gerçek yolu koymayı unutmayın
  3. Değişiklikleri uygulamak için IDE'nizi yeniden başlatın
  4. Artık Claude veya Cursor aracılığıyla tüm GIS işlemlerini kullanabilirsiniz!

🤖 İlk GIS AI Agentnizi Oluşturun

Jeouzamsal 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!

Öğrenecekleriniz

  • ✅ GIS MCP sunucusunu HTTP modunda nasıl ayarlayacağınız
  • ✅ Sıfırdan LangChain ajanı nasıl oluşturacağınız
  • ✅ Agentnizi GIS araçlarına nasıl bağlayacağınız
  • ✅ Birden çok AI modeline erişmek için OpenRouter'ı nasıl kullanacağınız (DeepSeek, Gemini, GPT-4, Claude, vb.)
  • ✅ Agentnizi nasıl özelleştireceğiniz ve genişleteceğiniz

Başlayın

👉 Tam öğreticiyi takip edin →

📝 Medium makalesini okuyun →

🎥 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:

  • Noktalar arasındaki mesafeleri hesaplamak
  • Koordinatları farklı sistemler arasında dönüştürmek
  • Konumların etrafında buffer'lar oluşturmak
  • Mekansal analiz gerçekleştirmek
  • Ve çok daha fazlası!

Uygun olan: Geliştiriciler, veri bilimciler, GIS uzmanları ve AI destekli jeouzamsal uygulamalar oluşturmakla ilgili herkes.

📚 Kullanılabilir Fonksiyonlar

Bu bölüm, kütüphaneye göre organize edilmiş tüm kullanılabilir fonksiyonların kapsamlı bir listesini sağlar.

🔷 Shapely Fonksiyonları (29 toplam)

Temel Geometrik İşlemler:

  • buffer - Geometrinin etrafında buffer oluştur
  • intersection - İki geometrinin kesişimini bulun
  • union - İki geometriyi birleştirin
  • difference - Geometriler arasındaki farkı bulun
  • symmetric_difference - Simetrik fark bulun

Geometrik Özellikler:

  • convex_hull - Convex hull hesapla
  • envelope - Sınırlayıcı kutuyu al
  • minimum_rotated_rectangle - Minimum döndürülen dikdörtgeni al
  • get_centroid - Merkez noktasını al
  • get_bounds - Geometri sınırlarını al
  • get_coordinates - Koordinat dizisini çıkart
  • get_geometry_type - Geometri türü adını al

Dönüşümler:

  • rotate_geometry - Geometriyi açı kadar döndür
  • scale_geometry - Geometriyi faktörlerle ölçekle
  • translate_geometry - Geometriyi ofset kadar taşı

Gelişmiş İşlemler:

  • triangulate_geometry - Üçgenleme oluştur
  • voronoi - Voronoi diyagramı oluştur
  • unary_union_geometries - Birden çok geometriyi birleştir

Ölçümler:

  • get_length - Geometri uzunluğunu hesapla
  • get_area - Geometri alanını hesapla

Doğrulama & Yardımcılar:

  • is_valid - Geometri geçerliliğini kontrol et
  • make_valid - Geçersiz geometriyi düzelt
  • simplify - Geometriyi basitleştir
  • snap_geometry - Referans geometrisine yapıştır
  • nearest_point_on_geometry - En yakın noktayı bulun
  • normalize_geometry - Yöneliş normalleştir
  • geometry_to_geojson - GeoJSON'a dönüştür
  • geojson_to_geometry - GeoJSON'dan dönüştür

🔷 PyProj Fonksiyonları (13 toplam)

Koordinat Dönüşümleri:

  • transform_coordinates - Nokta koordinatlarını dönüştür
  • project_geometry - Geometriyi CRS'ler arasında projelendir

CRS Bilgileri:

  • get_crs_info - Ayrıntılı CRS bilgisi al
  • get_available_crs - Kullanılabilir CRS sistemlerini listele
  • get_utm_zone - Koordinatlar için UTM bölgesini al
  • get_utm_crs - Koordinatlar için UTM CRS'sini al
  • get_geocentric_crs - Geocentric CRS'sini al

Geodetik Hesaplamalar:

  • get_geod_info - Elipsoid bilgisini al
  • calculate_geodetic_distance - Elipsoid üzerinde mesafe hesapla
  • calculate_geodetic_point - Mesafe/azimut adında nokta hesapla
  • calculate_geodetic_area - Elipsoid üzerinde alan hesapla

🔷 GeoPandas Fonksiyonları (13 toplam)

G/Ç İşlemleri:

  • read_file_gpd - Jeouzamsal dosyayı ön izleme ile oku
  • write_file_gpd - GeoDataFrame'i dosyaya dışa aktar

Birleştirme & Birleşim İşlemleri:

  • append_gpd - GeoDataFrame'leri dikey olarak birleştir
  • merge_gpd - Veritabanı stilinde öznitelik birleştirmeleri
  • overlay_gpd - Mekansal bindirme işlemleri
  • dissolve_gpd - Özniteliğe göre çöz
  • explode_gpd - Çok parçalı geometrileri böl

Mekansal İşlemler:

  • clip_vector - Geometrileri kırp
  • sjoin_gpd - Mekansal birleştirmeler
  • sjoin_nearest_gpd - En yakın komşu mekansal birleştirmeleri
  • point_in_polygon - Noktanın çokgene ait olup olmadığını test et

🔷 Rasterio Fonksiyonları (20 toplam)

Temel Raster İşlemleri:

  • metadata_raster - Raster meta verilerini al
  • get_raster_crs - Raster CRS'sini al
  • extract_band - Tek bant çıkart
  • raster_band_statistics - Band istatistiklerini hesapla
  • raster_histogram - Piksel histogramını hesapla

Raster İşleme:

  • clip_raster_with_shapefile - Raster'ı çokgenlerle kırp
  • resample_raster - Ölçek faktörüne göre yeniden örnekle
  • reproject_raster - Yeni CRS'e yeniden projelendir
  • tile_raster - Palalara böl

Raster Analizi:

  • compute_ndvi - Bitki indeksini hesapla
  • raster_algebra - Band'lar üzerinde matematiksel işlemler
  • concat_bands - Tek-band raster'ları birleştir
  • weighted_band_sum - Ağırlıklandırılmış band kombinasyonu

Gelişmiş Analiz:

  • zonal_statistics - Çokgenler içinde istatistikler
  • `reclassify_raster

Benzer MCP sunucuları

Daha fazla: Location Services →