GIS MCP Server

Integrations

  • Planned integration with GDAL/OGR for expanded GIS capabilities including raster operations and advanced spatial analysis.

  • Leverages Python GIS libraries (Shapely and PyProj) to provide geometric operations, coordinate transformations, and geodetic calculations for AI assistants.

ГИС MCP Сервер

Реализация сервера Model Context Protocol (MCP), которая подключает большие языковые модели (LLM) к операциям ГИС с использованием библиотек ГИС (в настоящее время поддерживаются Shapely и PyProj), позволяя помощникам ИИ выполнять геопространственные операции и преобразования.

Альфа

Версия 0.2.0 (Альфа) находится в стадии активной разработки. Мы приветствуем вклады и разработчиков, которые присоединятся к нам в создании этого проекта.

🎥 Демо

📋 Содержание

🚀 Особенности

  • 🔍 Комплексные геометрические операции (пересечение, объединение, буферизация и т. д.)
  • 🌐 Расширенные преобразования координат и проекции
  • 📏 Точные расчеты расстояния и площади
  • 🗺️ Пространственный анализ и проверка
  • 🛠️ Простая интеграция с MCP-совместимыми клиентами

📋 Предварительные условия

  • Python 3.10 или выше
  • MCP-совместимый клиент (например, Claude Desktop или Cursor)
  • Интернет-соединение для установки пакета

🛠️ Установка

Выберите наиболее подходящий для ваших нужд способ установки:

📦 Установка пипа

Установка pip рекомендуется для большинства пользователей:

  1. Установите менеджер пакетов UV:
pip install uv
  1. Создание виртуальной среды (Python 3.10+):
uv venv --python=3.10
  1. Установите пакет:
uv pip install gis-mcp
  1. Запустите сервер:
gis-mcp
Конфигурация pip

Чтобы использовать установку pip с Claude или Cursor, добавьте следующую конфигурацию:

Клод Десктоп:

Окна:

{ "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": [] } } }

Курсор IDE (создать .cursor/mcp.json ):

Окна:

{ "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": [] } } }

После настройки:

  1. Обязательно замените YourUsername на свое фактическое имя пользователя.
  2. Для установки в режиме разработки замените /path/to/gis-mcp на фактический путь к вашему проекту.
  3. Перезапустите IDE, чтобы применить изменения.
  4. Теперь вы можете использовать все операции ГИС через Клода или Курсор!

🛠️ Разработка Установка

Для участников и разработчиков:

  1. Установите менеджер пакетов UV:
pip install uv
  1. Создайте виртуальную среду:
uv venv --python=3.10
  1. Установите пакет в режиме разработки:
uv pip install -e .
  1. Запустите сервер:
python -m gis_mcp
Конфигурация разработки

Чтобы использовать установку разработки с Claude или Cursor, добавьте следующую конфигурацию:

Клод Десктоп:

Окна:

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

Курсор IDE (создать .cursor/mcp.json ):

Окна:

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

После настройки:

  1. Обязательно замените YourUsername на свое фактическое имя пользователя.
  2. Для установки в режиме разработки замените /path/to/gis-mcp на фактический путь к вашему проекту.
  3. Перезапустите IDE, чтобы применить изменения.
  4. Теперь вы можете использовать все операции ГИС через Клода или Курсор!

🛠️ Доступные инструменты

Операции Shapely

Основные операции
ИнструментОписание
bufferСоздайте буфер вокруг геометрических объектов с настраиваемыми параметрами
intersectionНайти пересечение двух геометрий
unionОбъединить две геометрии
differenceНайдите разницу между геометриями
symmetric_differenceНайдите симметричную разницу между геометриями
Геометрические свойства
ИнструментОписание
convex_hullВычислить выпуклую оболочку геометрии
envelopeПолучить ограничивающую рамку геометрии
minimum_rotated_rectangleПолучить минимальный повернутый прямоугольник геометрии
get_centroidПолучить центроид геометрии
get_boundsПолучить границы геометрии
get_coordinatesПолучить координаты геометрии
get_geometry_typeПолучить тип геометрии
Трансформации
ИнструментОписание
rotate_geometryПоворот геометрии на заданный угол и начало координат
scale_geometryМасштабировать геометрию с помощью коэффициентов x и y
translate_geometryПеремещение геометрии со смещениями по осям x, y и z
Расширенные операции
ИнструментОписание
triangulate_geometryСоздать триангуляцию геометрии
voronoiПостроить диаграмму Вороного из точек
unary_union_geometriesСоздать объединение нескольких геометрий
Измерения
ИнструментОписание
get_lengthПолучить длину геометрии
get_areaПолучить площадь геометрии
Проверка и упрощение
ИнструментОписание
is_validПроверьте правильность геометрии
make_validСделать геометрию допустимой
simplifyУпростить геометрию с заданным допуском

Операции PyProj

Преобразования координат
ИнструментОписание
transform_coordinatesПреобразование координат между CRS
project_geometryПроецирование геометрии между CRS
Информация CRS
ИнструментОписание
get_crs_infoПолучите подробную информацию о CRS
get_available_crsПолучить список всех доступных CRS
get_utm_zoneПолучить зону UTM для заданных координат
get_utm_crsПолучить UTM CRS для заданных координат
get_geocentric_crsПолучить геоцентрическую систему отсчета координат для заданных координат
Геодезические расчеты
ИнструментОписание
get_geod_infoПолучить информацию о геодезическом расчете
calculate_geodetic_distanceРассчитать геодезическое расстояние между точками
calculate_geodetic_pointВычислить точку на заданном расстоянии и азимуте
calculate_geodetic_areaВычислить площадь многоугольника с помощью геодезических расчетов

🛠️ Развитие клиентов

Пример использования инструментов:

Буферная операция

Tool: buffer Parameters: { "geometry": "POINT(0 0)", "distance": 10, "resolution": 16, "join_style": 1, "mitre_limit": 5.0, "single_sided": false }

Преобразование координат

Tool: transform_coordinates Parameters: { "coordinates": [0, 0], "source_crs": "EPSG:4326", "target_crs": "EPSG:3857" }

Геодезическое расстояние

Tool: calculate_geodetic_distance Parameters: { "point1": [0, 0], "point2": [10, 10], "ellps": "WGS84" }

🔮 Планируемые функции

  • Добавить поддержку большего количества библиотек ГИС — GDAL/OGR
  • Внедрить расширенную пространственную индексацию
  • Добавить поддержку растровых операций
  • Реализовать возможности сетевого анализа
  • Добавить поддержку 3D-геометрии
  • Реализовать оптимизацию производительности

🤝 Вклад

Мы приветствуем ваши вклады! Вот как вы можете помочь:

  1. Форк репозитория
  2. Создайте ветку функций ( git checkout -b feature/AmazingFeature )
  3. Зафиксируйте ваши изменения ( git commit -m 'Add some AmazingFeature' )
  4. Отправка в ветку ( git push origin feature/AmazingFeature )
  5. Открыть запрос на извлечение

Убедитесь, что описание вашего PR четко описывает проблему и ее решение. Включите соответствующий номер проблемы, если применимо.

📄 Лицензия

Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE.

🔗 Связанные проекты

📞 Поддержка

Для получения поддержки, пожалуйста, создайте запрос в репозитории GitHub.

🏆 Значки

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

local-only server

The server can only run on the client's local machine because it depends on local resources.

Сервер протокола контекста модели, который подключает LLM к операциям ГИС, позволяя помощникам на основе ИИ выполнять точный геопространственный анализ, включая геометрические операции, преобразования координат и пространственные измерения.

  1. 🎥 Демо
    1. 📋 Содержание
      1. 🚀 Особенности
        1. 📋 Предварительные условия
          1. 🛠️ Установка
            1. 📦 Установка пипа
            2. 🛠️ Разработка Установка
          2. 🛠️ Доступные инструменты
            1. Операции Shapely
            2. Операции PyProj
          3. 🛠️ Развитие клиентов
            1. Буферная операция
            2. Преобразование координат
            3. Геодезическое расстояние
          4. 🔮 Планируемые функции
            1. 🤝 Вклад
              1. 📄 Лицензия
                1. 🔗 Связанные проекты
                  1. 📞 Поддержка
                    1. 🏆 Значки

                      Related MCP Servers

                      • A
                        security
                        A
                        license
                        A
                        quality
                        A Model Context Protocol server that provides LLM Agents with a comprehensive toolset for IP geolocation, network diagnostics, system monitoring, cryptographic operations, and QR code generation.
                        Last updated -
                        16
                        3
                        4
                        TypeScript
                        Apache 2.0
                      • A
                        security
                        A
                        license
                        A
                        quality
                        A Model Context Protocol server that provides basic mathematical and statistical functions to LLMs, enabling them to perform accurate numerical calculations through a simple API.
                        Last updated -
                        13
                        2
                        TypeScript
                        MIT License
                      • A
                        security
                        A
                        license
                        A
                        quality
                        A Model Context Protocol server that provides Google Maps API integration, allowing users to search locations, get place details, geocode addresses, calculate distances, obtain directions, and retrieve elevation data through LLM processing capabilities.
                        Last updated -
                        7
                        43
                        15
                        TypeScript
                        MIT License
                      • -
                        security
                        F
                        license
                        -
                        quality
                        A Model Context Protocol server that connects LLMs to the Compiler Explorer API, enabling them to compile code, explore compiler features, and analyze optimizations across different compilers and languages.
                        Last updated -
                        Python

                      View all related MCP servers

                      ID: irl5u9uw6f