
QGIS MCP: плагин для QGIS и подключение к Claude Code, Codex и Cursor
Даёт агенту управлять открытым QGIS: загружать слои, править объекты, запускать алгоритмы Processing, оформлять слои, собирать макеты печати и показывать отрисованную карту.
Плагин из каталога QGIS и сервер через uvx: 125 инструментов, от слоёв и SQL по слоям до макетов, атласа и разработки плагинов; QGIS 3.28–4.x.
Как подключить
Что сделать до подключения
QGIS 3.28 или новее и uv
В QGIS: Plugins → Manage and Install Plugins → найти QGIS MCP → Install, затем перезапустить QGIS
В панели QGIS MCP нажать Start Server: плагин слушает порт 9876
Конфиг для вашего клиента
Команда в терминале, в папке проекта. Флаг --scope user подключит сервер для всех проектов. Подробно о Claude Code
claude mcp add --transport stdio qgis \
-- uvx --from https://github.com/nkarasiak/qgis-mcp/archive/refs/heads/main.zip qgis-mcp-serverПроверка: claude mcp list показывает статус рядом с каждым сервером: ✔ Connected, ! Needs authentication или ✘ Failed to connect. Внутри сессии то же видно по команде /mcp.
Файл ~/.codex/config.toml или .codex/config.toml в доверенном проекте. Можно и командой codex mcp add. Подробно о Codex
[mcp_servers.qgis]
command = "uvx"
args = ["--from", "https://github.com/nkarasiak/qgis-mcp/archive/refs/heads/main.zip", "qgis-mcp-server"]Проверка: В интерфейсе codex введите /mcp: появится список активных серверов. Из терминала то же покажет codex mcp list.
Файл ~/.cursor/mcp.json для всех проектов или .cursor/mcp.json в папке проекта. Подробно о Cursor
{
"mcpServers": {
"qgis": {
"command": "uvx",
"args": [
"--from",
"https://github.com/nkarasiak/qgis-mcp/archive/refs/heads/main.zip",
"qgis-mcp-server"
]
}
}
}Проверка: Откройте Customize в боковой панели: там список серверов с переключателями. Ошибки подключения смотрите в панели Output (Cmd+Shift+U), пункт MCP Logs в выпадающем списке.
Файл .mcp.json в корне проекта или ~/.copilot/mcp-config.json для всех проектов. Подробно о VS Code
{
"mcpServers": {
"qgis": {
"type": "stdio",
"command": "uvx",
"args": [
"--from",
"https://github.com/nkarasiak/qgis-mcp/archive/refs/heads/main.zip",
"qgis-mcp-server"
]
}
}
}Проверка: Попросите Copilot выполнить безобидную задачу через сервер и раскройте вызов инструмента в чате. Одна запись в конфиге подключение не подтверждает.
Файл ~/.qwen/settings.json или .qwen/settings.json в проекте. Подробно о Qwen Code
{
"mcpServers": {
"qgis": {
"command": "uvx",
"args": [
"--from",
"https://github.com/nkarasiak/qgis-mcp/archive/refs/heads/main.zip",
"qgis-mcp-server"
]
}
}
}Проверка: Запустите qwen и введите /mcp: откроется окно управления серверами. Из терминала статус покажет qwen mcp list.
Файл ~/.gemini/settings.json или .gemini/settings.json в проекте. Подробно о Gemini CLI
{
"mcpServers": {
"qgis": {
"command": "uvx",
"args": [
"--from",
"https://github.com/nkarasiak/qgis-mcp/archive/refs/heads/main.zip",
"qgis-mcp-server"
]
}
}
}Проверка: gemini mcp list показывает каждый сервер, его настройки и статус Connected или Disconnected. В сессии /mcp выводит CONNECTED, CONNECTING или DISCONNECTED и список инструментов.
Файл opencode.json в папке проекта или ~/.config/opencode/opencode.json. Подробно о OpenCode
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"servers": {
"qgis": {
"type": "local",
"command": [
"uvx",
"--from",
"https://github.com/nkarasiak/qgis-mcp/archive/refs/heads/main.zip",
"qgis-mcp-server"
]
}
}
}
}Проверка: opencode mcp list показывает состояние каждого сервера, подключённый выглядит как ✓ context7 connected. Внутри OpenCode то же видно в /mcps.
Настройки → Разработчик → Изменить конфиг: файл claude_desktop_config.json. После правки перезапустите приложение. Подробно о Claude Desktop
{
"mcpServers": {
"qgis": {
"command": "uvx",
"args": [
"--from",
"https://github.com/nkarasiak/qgis-mcp/archive/refs/heads/main.zip",
"qgis-mcp-server"
]
}
}
}Проверка: Нажмите «Add files, connectors, and more /» в левом нижнем углу поля ввода, наведите на Connectors и откройте Manage connectors. Выберите сервер, чтобы увидеть его инструменты.
Вкладка Program → Install → Edit mcp.json. Подробно о LM Studio
{
"mcpServers": {
"qgis": {
"command": "uvx",
"args": [
"--from",
"https://github.com/nkarasiak/qgis-mcp/archive/refs/heads/main.zip",
"qgis-mcp-server"
]
}
}
}Проверка: Попросите модель в чате выполнить задачу через инструмент сервера. Через API сервер из mcp.json вызывают по id в integrations, например mcp/playwright.
Инструменты сервера
pingпроверяет связь с плагиномget_layersперечисляет слои проектаadd_vector_layerзагружает векторный слойadd_raster_layerзагружает растровый слойget_layer_featuresчитает объекты слояupdate_featuresправит атрибуты объектовfield_calculatorсчитает поле по выражениюexecute_processingзапускает алгоритм Processinglist_processing_algorithmsперечисляет алгоритмы Processingset_layer_styleзадаёт стиль слояset_layer_labelingнастраивает подписиrender_mapотрисовывает карту в картинкуget_canvas_screenshotснимает окно картыexecute_sqlвыполняет SQL по слоямspatial_joinсоединяет слои по положениюzonal_statisticsсчитает зональную статистикуcreate_layoutсоздаёт макет печатиexport_layoutвыгружает макет в файлexport_layerсохраняет слой в файлexecute_codeвыполняет код PyQGISПоказано 20 из 125.
Плагин из ZIP сам прописывает сервер в клиент кнопкой Connect / Repair; в контекст грузит 7 базовых инструментов, остальные 100+ ищет по задаче; произвольный Python не выполняет.
Как подключить
Что сделать до подключения
QGIS 3.44 LTR или новее, вплоть до 4.x
Скачать qgis_agent_mcp-*.zip со страницы Releases и поставить: Plugins → Manage and Install Plugins → Install from ZIP
Включить QGIS Agent MCP, нажать Connect an AI client, затем Connect / Repair для своего клиента и перезапустить клиент
Python 3.10 или новее: плагин пишет запускатель ~/.qgis-mcp/bin/qgis_mcp_launcher.py и указывает его в конфиге
Конфиг для вашего клиента
Команда в терминале, в папке проекта. Флаг --scope user подключит сервер для всех проектов. Подробно о Claude Code
claude mcp add --transport stdio qgis-mcp \
-- python3 '<домашняя папка>/.qgis-mcp/bin/qgis_mcp_launcher.py'Проверка: claude mcp list показывает статус рядом с каждым сервером: ✔ Connected, ! Needs authentication или ✘ Failed to connect. Внутри сессии то же видно по команде /mcp.
Файл ~/.codex/config.toml или .codex/config.toml в доверенном проекте. Можно и командой codex mcp add. Подробно о Codex
[mcp_servers.qgis-mcp]
command = "python3"
args = ["<домашняя папка>/.qgis-mcp/bin/qgis_mcp_launcher.py"]Проверка: В интерфейсе codex введите /mcp: появится список активных серверов. Из терминала то же покажет codex mcp list.
Файл ~/.cursor/mcp.json для всех проектов или .cursor/mcp.json в папке проекта. Подробно о Cursor
{
"mcpServers": {
"qgis-mcp": {
"command": "python3",
"args": ["<домашняя папка>/.qgis-mcp/bin/qgis_mcp_launcher.py"]
}
}
}Проверка: Откройте Customize в боковой панели: там список серверов с переключателями. Ошибки подключения смотрите в панели Output (Cmd+Shift+U), пункт MCP Logs в выпадающем списке.
Файл .mcp.json в корне проекта или ~/.copilot/mcp-config.json для всех проектов. Подробно о VS Code
{
"mcpServers": {
"qgis-mcp": {
"type": "stdio",
"command": "python3",
"args": ["<домашняя папка>/.qgis-mcp/bin/qgis_mcp_launcher.py"]
}
}
}Проверка: Попросите Copilot выполнить безобидную задачу через сервер и раскройте вызов инструмента в чате. Одна запись в конфиге подключение не подтверждает.
Файл ~/.qwen/settings.json или .qwen/settings.json в проекте. Подробно о Qwen Code
{
"mcpServers": {
"qgis-mcp": {
"command": "python3",
"args": ["<домашняя папка>/.qgis-mcp/bin/qgis_mcp_launcher.py"]
}
}
}Проверка: Запустите qwen и введите /mcp: откроется окно управления серверами. Из терминала статус покажет qwen mcp list.
Файл ~/.gemini/settings.json или .gemini/settings.json в проекте. Подробно о Gemini CLI
{
"mcpServers": {
"qgis-mcp": {
"command": "python3",
"args": ["<домашняя папка>/.qgis-mcp/bin/qgis_mcp_launcher.py"]
}
}
}Проверка: gemini mcp list показывает каждый сервер, его настройки и статус Connected или Disconnected. В сессии /mcp выводит CONNECTED, CONNECTING или DISCONNECTED и список инструментов.
Файл opencode.json в папке проекта или ~/.config/opencode/opencode.json. Подробно о OpenCode
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"servers": {
"qgis-mcp": {
"type": "local",
"command": ["python3", "<домашняя папка>/.qgis-mcp/bin/qgis_mcp_launcher.py"]
}
}
}
}Проверка: opencode mcp list показывает состояние каждого сервера, подключённый выглядит как ✓ context7 connected. Внутри OpenCode то же видно в /mcps.
Настройки → Разработчик → Изменить конфиг: файл claude_desktop_config.json. После правки перезапустите приложение. Подробно о Claude Desktop
{
"mcpServers": {
"qgis-mcp": {
"command": "python3",
"args": ["<домашняя папка>/.qgis-mcp/bin/qgis_mcp_launcher.py"]
}
}
}Проверка: Нажмите «Add files, connectors, and more /» в левом нижнем углу поля ввода, наведите на Connectors и откройте Manage connectors. Выберите сервер, чтобы увидеть его инструменты.
Вкладка Program → Install → Edit mcp.json. Подробно о LM Studio
{
"mcpServers": {
"qgis-mcp": {
"command": "python3",
"args": ["<домашняя папка>/.qgis-mcp/bin/qgis_mcp_launcher.py"]
}
}
}Проверка: Попросите модель в чате выполнить задачу через инструмент сервера. Через API сервер из mcp.json вызывают по id в integrations, например mcp/playwright.
Инструменты сервера
qgis_contextсобирает контекст проекта под задачуqgis_toolsищет и включает нужные инструментыqgis_tool_callвызывает найденный инструментqgis_session_snapshotснимает состояние проекта и слоёвqgis_screenshotснимает окно или картуqgis_batchвыполняет цепочку шагов за разqgis_operationследит за долгой операциейQGIS Desktop целиком в Docker, ставить QGIS не нужно: 46 инструментов, окно QGIS видно в браузере через noVNC, готовые рецепты и выгрузка в PDF, веб-карту и QField.
Как подключить
Что сделать до подключения
Docker с docker compose
Склонировать репозиторий, скопировать .env.example в .env и выполнить docker compose up -d --build
Проверить, что http://localhost:8100/health отвечает status ok; окно QGIS открывается на http://localhost:6080
Конфиг для вашего клиента
Команда в терминале, в папке проекта. Флаг --scope user подключит сервер для всех проектов. Подробно о Claude Code
claude mcp add --transport http qgisremotemcp http://localhost:8100/mcpПроверка: claude mcp list показывает статус рядом с каждым сервером: ✔ Connected, ! Needs authentication или ✘ Failed to connect. Внутри сессии то же видно по команде /mcp.
Файл ~/.codex/config.toml или .codex/config.toml в доверенном проекте. Можно и командой codex mcp add. Подробно о Codex
[mcp_servers.qgisremotemcp]
url = "http://localhost:8100/mcp"Проверка: В интерфейсе codex введите /mcp: появится список активных серверов. Из терминала то же покажет codex mcp list.
Файл ~/.cursor/mcp.json для всех проектов или .cursor/mcp.json в папке проекта. Подробно о Cursor
{
"mcpServers": {
"qgisremotemcp": {
"url": "http://localhost:8100/mcp"
}
}
}Проверка: Откройте Customize в боковой панели: там список серверов с переключателями. Ошибки подключения смотрите в панели Output (Cmd+Shift+U), пункт MCP Logs в выпадающем списке.
Файл .mcp.json в корне проекта или ~/.copilot/mcp-config.json для всех проектов. Подробно о VS Code
{
"mcpServers": {
"qgisremotemcp": {
"type": "http",
"url": "http://localhost:8100/mcp"
}
}
}Проверка: Попросите Copilot выполнить безобидную задачу через сервер и раскройте вызов инструмента в чате. Одна запись в конфиге подключение не подтверждает.
Файл ~/.qwen/settings.json или .qwen/settings.json в проекте. Подробно о Qwen Code
{
"mcpServers": {
"qgisremotemcp": {
"httpUrl": "http://localhost:8100/mcp"
}
}
}Проверка: Запустите qwen и введите /mcp: откроется окно управления серверами. Из терминала статус покажет qwen mcp list.
Файл ~/.gemini/settings.json или .gemini/settings.json в проекте. Подробно о Gemini CLI
{
"mcpServers": {
"qgisremotemcp": {
"httpUrl": "http://localhost:8100/mcp"
}
}
}Проверка: gemini mcp list показывает каждый сервер, его настройки и статус Connected или Disconnected. В сессии /mcp выводит CONNECTED, CONNECTING или DISCONNECTED и список инструментов.
Файл opencode.json в папке проекта или ~/.config/opencode/opencode.json. Подробно о OpenCode
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"servers": {
"qgisremotemcp": {
"type": "remote",
"url": "http://localhost:8100/mcp"
}
}
}
}Проверка: opencode mcp list показывает состояние каждого сервера, подключённый выглядит как ✓ context7 connected. Внутри OpenCode то же видно в /mcps.
Настройки → Разработчик → Изменить конфиг: файл claude_desktop_config.json. После правки перезапустите приложение. Подробно о Claude Desktop
Customize → Connectors → добавить свой коннектор.
Адрес сервера: http://localhost:8100/mcpПроверка: Нажмите «Add files, connectors, and more /» в левом нижнем углу поля ввода, наведите на Connectors и откройте Manage connectors. Выберите сервер, чтобы увидеть его инструменты.
Вкладка Program → Install → Edit mcp.json. Подробно о LM Studio
{
"mcpServers": {
"qgisremotemcp": {
"url": "http://localhost:8100/mcp"
}
}
}Проверка: Попросите модель в чате выполнить задачу через инструмент сервера. Через API сервер из mcp.json вызывают по id в integrations, например mcp/playwright.
Инструменты сервера
set_study_zoneзадаёт зону по городу или адресуsmart_loadскачивает данные каталога в GPKGlist_datasourcesпоказывает каталог источниковadd_layerдобавляет слой по URIget_featuresотбирает объекты по фильтрамrun_processingзапускает алгоритм Processingsearch_algorithmsищет алгоритм по словуexecute_pythonвыполняет код PyQGISget_screenshotснимает окно картыset_layer_styleзадаёт стиль слояrun_recipeвыполняет готовый сценарийexport_pdfвыгружает макет в PDFexport_web_mapсобирает веб-карту Leafletexport_qfieldготовит проект для QFieldexport_layerсохраняет слой в GPKG, GeoJSON, CSVexecute_asyncставит долгую задачу в фонupload_fileзагружает файл в контейнерdownload_projectсохраняет проект .qgzПоказано 18 из 46.
Что попросить агента
Для каких задач
Ограничения
QGIS MCP и QGIS Agent MCP работают, только пока открыт QGIS с запущенным плагином; версии плагина и сервера QGIS MCP должны совпадать
Сокет QGIS MCP по умолчанию без пароля, а execute_code выполняет любой код PyQGIS: на общей машине задайте QGIS_MCP_TOKEN в QGIS и в env сервера
У QGIS Agent MCP 15 звёзд и последнее обновление в августе 2026, у QgisRemoteMCP 11 звёзд; многопользовательский режим QgisRemoteMCP в бете
Готовые источники данных и рецепты QgisRemoteMCP рассчитаны на Францию: открытые данные IGN, кадастр, DVF
Если не работает
No response from QGIS или connection refused
Список инструментов пуст, при ручном запуске ModuleNotFoundError
Агент пишет tool call failed на каждую команду
После обновления команды падают с ошибкой
Порт 9876 занят другой программой, например аддоном Blender MCP
Какую реализацию выбрать
| Реализация | Кто делает | Звёзды | Запуск | Ключ | Инструменты | Обновлён |
|---|---|---|---|---|---|---|
| QGIS MCP | nkarasiak | 432 | локально | не нужен | 125 | 11 ноября 2026 |
| QGIS Agent MCP | Aaa2122 | 15 | локально | не нужен | 7 | 12 августа 2026 |
| QgisRemoteMCP | nic01asFr (Cerema Méditerranée) | 11 | HTTP | не нужен | 46 | 3 октября 2026 |