MCP-сервер для QGIS Desktop: управление картографическими слоями, геопространственный анализ, SQL-запросы к геоданным и рендеринг карт через Python-консоль. AI-агент работает с профессиональным ГИС-редактором на естественном языке.
Требуется QGIS 3.x и uv (https://docs.astral.sh/uv/).
# Шаг 1 — установить QGIS-плагин:
Plugins → Manage and Install Plugins → найти "QGIS MCP" → Install
# Шаг 2 — клонировать MCP-клиент:
git clone https://github.com/jjsantos01/qgis_mcp
cd qgis_mcp
# Шаг 3 — в QGIS запустить сервер:
Plugins → QGIS MCP → QGIS MCP → Start Server
# Claude Desktop — claude_desktop_config.json:
{
"mcpServers": {
"qgis": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/qgis_mcp/src/qgis_mcp",
"run",
"qgis_mcp_server.py"
]
}
}
}
# Claude Code (CLI):
claude mcp add qgis -- uv --directory /ABSOLUTE/PATH/TO/qgis_mcp/src/qgis_mcp run qgis_mcp_server.py
# OpenCode — ~/.config/opencode/opencode.json:
{
"mcp": {
"qgis": {
"type": "local",
"command": ["uv", "--directory", "/ABSOLUTE/PATH/TO/qgis_mcp/src/qgis_mcp", "run", "qgis_mcp_server.py"]
}
}
}
QGISMCP связывает QGIS с Claude AI через протокол модели контекста (MCP), позволяя Claude напрямую взаимодействовать с QGIS и управлять им. Эта интеграция обеспечивает создание проектов с помощью подсказок, загрузку слоёв, выполнение кода и многое другое.
Данный проект в значительной степени основан на проекте BlenderMCP от Siddharth Ahuja
Система состоит из двух основных компонентов:
Если вы используете Mac, установите uv командой:
brew install uv
На Windows Powershell
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
В остальных случаях инструкции по установке находятся на их веб-сайте: Установка uv
⚠️ Не продолжайте установку, пока не установите UV
Скачайте этот репозиторий на компьютер. Вы можете клонировать его с помощью:
git clone git@github.com:jjsantos01/qgis_mcp.git
Вам нужно скопировать папку qgis_mcp_plugin и её содержимое в папку плагинов вашего профиля QGIS.
Вы можете найти папку профиля в QGIS, перейдя в меню Настройки -> Профили пользователей -> Открыть папку активного профиля. Затем перейдите в Python/plugins и вставьте папку qgis_mcp_plugin.
На компьютере под управлением Windows папка плагинов обычно находится по адресу:
C:\Users\ПОЛЬЗОВАТЕЛЬ\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins
и на MacOS: ~/Library/Application\ Support/QGIS/QGIS3/profiles/default/python/plugins
Затем закройте QGIS и откройте его снова. Перейдите в пункт меню Плагины > Установка и управление плагинами, выберите вкладку Все и найдите "QGIS MCP", затем установите флажок QGIS MCP.
Перейдите в Claude > Настройки > Для разработчиков > Редактировать конфигурацию > claude_desktop_config.json, чтобы включить следующее:
Если вы не можете найти вкладку "Для разработчиков" или файл
claude_desktop_config.json, ознакомьтесь с этой документацией.
{
"mcpServers": {
"qgis": {
"command": "uv",
"args": [
"--directory",
"/АБСОЛЮТНЫЙ/ПУТЬ/К/РОДИТЕЛЬСКОЙ/ПАПКЕ/РЕПОЗИТОРИЯ/qgis_mcp/src/qgis_mcp",
"run",
"qgis_mcp_server.py"
]
}
}
}
Плагины > QGIS MCP > QGIS MCP


После того как файл конфигурации будет настроен в Claude и сервер запущен в QGIS, вы увидите значок молотка с инструментами для QGIS MCP.

ping - Простая команда ping для проверки соединения с серверомget_qgis_info - Получение информации о QGIS и текущей установкеload_project - Загрузка проекта QGIS по указанному путиcreate_new_project - Создание нового проекта и его сохранениеget_project_info - Получение информации о текущем проектеadd_vector_layer - Добавление векторного слоя в проектadd_raster_layer - Добавление растрового слоя в проектget_layers - Получение всех слоев в текущем проектеremove_layer - Удаление слоя из проекта по его IDzoom_to_layer - Масштабирование до extents указанного слояget_layer_features - Получение объектов из векторного слоя с опциональным ограничениемexecute_processing - Выполнение алгоритма обработки с заданными параметрамиsave_project - Сохранение текущего проекта по указанному путиrender_map - Рендеринг текущего вида карты в файл изображенияexecute_code - Выполнение произвольного кода PyQGIS, предоставленного в виде строкиЭто пример, который я использовал для демо:
У вас есть доступ к инструментам для работы с QGIS. Вы выполните следующее:
1. Выполните ping для проверки соединения. Если он работает, продолжите со следующих шагов.
2. Создайте новый проект и сохраните его по пути: "C:/Users/USER/GitHub/qgis_mcp/data/cdmx.qgz"
3. Загрузите векторный слой: ""C:/Users/USER/GitHub/qgis_mcp/data/cdmx/mgpc_2019.shp" и назовите его "Colonias".
4. Загрузите растровый слой: "C:/Users/USER/GitHub/qgis_mcp/data/09014.tif" и назовите его "BJ"
5. Масштабируйте до слоя "BJ".
6. Выполните алгоритм центроидов для слоя "Colonias". Пропустите проверку геометрии. Сохраните выходные данные в "colonias_centroids.geojson".
7. Выполните код для создания карты с градуированной заливкой, используя поле "POB2010" в слое "Colonias". Используйте метод классификации квантилей с 5 классами и цветовую шкалу Spectral.
8. Отрендерите карту в "C:/Users/USER/GitHub/qgis_mcp/data/cdmx.png"
9. Сохраните проект.