QGIS MCP Server

Connect QGIS to any AI agent that speaks the Model Context Protocol (MCP), so the agent drives QGIS directly: manage layers, edit features, run processing algorithms, render maps, and more.

Local serverstdio

What is the QGIS MCP Server?

QGIS is an MCP project maintained in the nkarasiak/qgis-mcp repository. The maintainer describes its purpose as “Connect QGIS to any AI agent that speaks the Model Context Protocol (MCP), so the agent drives QGIS directly: manage layers, edit features, run processing…”. Read the project documentation for the complete scope.

Local setup

The project provides a local client configuration using uvx. Follow the repository’s build and installation steps before copying it, and replace example paths with the paths on your own computer.

Source

Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
CategoryTools
Projectload_project, create_new_project, save_project, get_project_info, set_project_crs
Layersget_layers, add_vector_layer, add_raster_layer, add_web_layer, remove_layer, find_layer, create_memory_layer, set_layer_visibility, zoom_to_layer…
Featuresget_layer_features, add_features, update_features, update_feature_geometry, delete_features, select_features, get_selection, clear_selection…
Fieldsadd_field, delete_field, rename_field, field_calculator
Editingstart_editing, commit_edits, rollback_edits, get_edit_status, undo_edits, redo_edits
Stylingset_layer_style (single, categorized, graduated), set_raster_style (pseudocolor, gray, RGB, hillshade), apply_style_qml, save_style_qml, get_layer_labeling…
Connectionslist_connections, create_postgresql_connection, list_connection_tables, add_layer_from_connection, import_layer_to_connection, execute_connection_sql
Renderingrender_map, get_canvas_screenshot, get_3d_screenshot, get_canvas_extent, set_canvas_extent, get_canvas_scale, set_canvas_scale
Processingexecute_processing, execute_processing_batch, list_processing_algorithms, get_algorithm_help, get_processing_providers, create_processing_model…
Sessioncreate_checkpoint, list_checkpoints, restore_checkpoint, export_session
Analysisraster_calculator, zonal_statistics, sample_raster_values, spatial_join
Layoutslist_layouts, export_layout, create_layout, add_layout_map, add_layout_label, add_layout_legend, add_layout_scalebar, add_layout_picture, add_layout_table…
Atlasconfigure_atlas, export_atlas
Queryexecute_sql, evaluate_expression, identify_features
Pluginslist_plugins, get_plugin_info, reload_plugin
Systemping, diagnose, list_qgis_instances, get_qgis_info, get_raster_info, get_message_log, execute_code, batch_commands, validate_expression, get_project_variables,

How to install the QGIS MCP Server

{
  "mcpServers": {
    "qgis": {
      "command": "uvx",
      "args": [
        "--from",
        "https://github.com/nkarasiak/qgis-mcp/archive/refs/heads/main.zip",
        "qgis-mcp-server"
      ]
    }
  }
}

From the project documentation. Replace placeholders and example paths before connecting.