QGISMCP - QGIS Model Context Protocol Integration
Model Context Protocol (MCP) that allows LLMs to use QGIS Desktop
Overview
QGISMCP is a project that integrates QGIS Desktop with Claude AI through the Model Context Protocol (MCP), enabling AI-assisted project creation and manipulation within QGIS.
To use QGISMCP, install the QGIS plugin, set up the MCP server, and start the server in QGIS. Then, configure Claude AI to connect to the QGIS server and use the available tools for project manipulation.
- Two-way communication between Claude AI and QGIS. - Project manipulation capabilities including creating, loading, and saving projects. - Layer manipulation for adding and removing vector or raster layers. - Execution of processing algorithms and arbitrary Python code in QGIS.
- Automating GIS project workflows with AI assistance.
- Enhancing data analysis and visualization in QGIS.
- Streamlining the process of loading and manipulating geospatial data.
Add to your AI client
Use these steps to connect QGISMCP - QGIS Model Context Protocol Integration in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.
Cursor
Add this to your .cursor/mcp.json file in your project root, then restart Cursor.
.cursor/mcp.json
{
"mcpServers": {
"qgis-mcp-jjsantos01": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-qgis-mcp-jjsantos01"
]
}
}
}Claude Desktop
Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
"mcpServers": {
"qgis-mcp-jjsantos01": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-qgis-mcp-jjsantos01"
]
}
}
}Claude Code
Add this to your project's .mcp.json file. Claude Code will detect it automatically.
.mcp.json (project root)
{
"mcpServers": {
"qgis-mcp-jjsantos01": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-qgis-mcp-jjsantos01"
]
}
}
}VS Code (Copilot)
Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.
.vscode/mcp.json
{
"servers": {
"qgis-mcp-jjsantos01": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-qgis-mcp-jjsantos01"
]
}
}
}Windsurf
Add this to your Windsurf MCP config file, then restart Windsurf.
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"qgis-mcp-jjsantos01": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-qgis-mcp-jjsantos01"
]
}
}
}Cline
Open Cline settings, navigate to MCP Servers, and add this server configuration.
Cline MCP Settings (via UI)
{
"mcpServers": {
"qgis-mcp-jjsantos01": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-qgis-mcp-jjsantos01"
]
}
}
}FAQ
Can QGISMCP work with any version of QGIS?
It is tested on QGIS 3.22, and compatibility with other versions may vary.
Is there a cost to use QGISMCP?
QGISMCP is open-source and free to use.
What are the prerequisites for using QGISMCP?
You need QGIS 3.X, Python 3.10 or newer, and the uv package manager installed.