QGISMCP - QGIS模型上下文协议集成
QGISMCP通过模型上下文协议(MCP)将QGIS连接到Claude AI,允许Claude直接与QGIS交互并控制它。这种集成支持提示辅助的项目创建、图层加载、代码执行等。
该项目主要基于Siddharth Ahuja的BlenderMCP项目。
功能
- 双向通信:通过基于套接字的服务器连接Claude AI和QGIS。
- 项目操作:在QGIS中创建、加载和保存项目。
- 图层操作:向项目添加和删除矢量或栅格图层。
- 执行处理:执行处理算法(处理工具箱)。
- 代码执行:从Claude在QGIS中运行任意Python代码。功能非常强大,但使用此工具时也需非常谨慎。
组件
系统由两个主要组件组成:
安装
前置条件
- QGIS 3.X(仅测试过3.22版本)
- 云桌面
- Python 3.10或更高版本
- uv包管理器:
如果你使用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插件
你需要将qgis_mcp_plugin文件夹及其内容复制到你的QGIS配置文件插件文件夹。
你可以在QGIS中通过菜单 设置 -> 用户配置文件 -> 打开当前活动配置文件文件夹 找到配置文件文件夹。然后进入 Python\插件 并粘贴 qgis_mcp_plugin 文件夹。
在Windows机器上,插件文件夹通常位于:
C:\Users\USER\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins和在MacOS上:~/Library/Application\ Support/QGIS/QGIS3/profiles/default/python/plugins
然后关闭并重新打开QGIS。进入菜单选项 插件 -> 安装和管理插件,选择 全部 标签,搜索 "QGIS MCP",然后勾选 "QGIS MCP" 复选框。
Claude for Desktop集成
前往 Claude > 设置 > 开发者 > 编辑配置 > claude_desktop_config.json 以包含以下内容:
如果你找不到 "开发者" 选项或
claude_desktop_config.json,请参考此文档。
{
"mcpServers": {
"qgis": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/PARENT/REPO/FOLDER/qgis_mcp/src/qgis_mcp",
"run",
"qgis_mcp_server.py"
]
}
}
}
使用
启动连接
- 在QGIS中,前往
插件->QGIS MCP->QGIS MCP
- 点击 "启动服务器"

与Claude一起使用
配置文件在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- 通过ID从项目中删除图层zoom_to_layer- 缩放到指定图层的范围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. 执行代码以使用 "Colonias" 图层的 "POB2010" 字段创建分级统计图。使用5类和Spectral颜色渐变。
8. 将地图渲染为 "C:/Users/USER/GitHub/qgis_mcp/data/cdmx.png"
9. 保存项目。