← 返回目录
Q

QGISMCP

社区
通过模型上下文协议(MCP)连接 Claude AI 与 QGIS Desktop。
GitHub 源仓库 ↗
★ 1.1k Stars 分类 · 其他 热门 源版本 e37bf6f095e1
30FMRS · D
可靠性
4/20
安全与权限
3/20
维护活跃度
3/20
文档质量
10/20
安装易用性
10/20

通过 MCP 将 QGIS 与 Claude AI 集成的实用服务器,提供广泛工具实现 GIS 自动化。但需要直接访问 QGIS 桌面和任意代码执行,存在安全风险,不适用于新手或不安全的环境。

查看 FMRS 评分方法 →

QGISMCP 通过模型上下文协议(MCP)将 QGIS 连接到 Claude AI,使 Claude 能够直接与 QGIS 交互并控制它。该集成支持通过提示协助创建项目、加载图层、执行代码等。该项目主要基于 BlenderMCP 项目。它包含两个主要组件:一个 QGIS 插件(在 QGIS 内创建套接字服务器以接收和执行命令)和一个 MCP 服务器(实现 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 3.X(仅在 3.22 上测试过)、Claude Desktop、Python 3.10 或更新版本、uv 包管理器。安装 uv 后,克隆仓库,将 qgis_mcp_plugin 文件夹复制到 QGIS 配置文件的插件目录,然后在 QGIS 的插件管理器中启用 QGIS MCP 插件。对于 Claude Desktop,编辑 claude_desktop_config.json 添加 MCP 服务器配置,指定 uv 命令和指向 src/qgis_mcp/qgis_mcp_server.py 的绝对路径。

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"
      ]
    }
  }
}

选型与风险

适合谁

  • 希望利用 Claude AI 通过自然语言交互来控制和自动化 QGIS 任务的 GIS 用户和开发者。
  • 熟悉 QGIS 和 Python,希望简化工作流程的人。
  • 需要自动化复杂 GIS 操作(如加载图层、运行处理算法和生成地图)的用户。

不适合谁

  • 希望使用 QGIS 的公共服务器或云服务的用户。
  • 不熟悉 QGIS 和 PyQGIS 的初学者。
  • 需要生产级或企业级支持的用户。
  • 不适合在不使用 QGIS 桌面环境的情况下运行。

所需权限

  • 文件系统访问:加载和保存项目、读取图层文件、渲染地图。
  • 网络访问:MCP 服务器与 QGIS 插件之间的套接字通信。
  • 执行代码:execute_code 允许在 QGIS 环境中运行任意 Python 代码,具有与 QGIS 相同的权限。

风险与副作用

  • 执行任意代码可能带来安全风险,如果提示被恶意引导,可能会导致数据丢失或系统损坏。
  • 处理大型数据集时,可能意外覆盖项目或输出文件。
  • QGIS MCP 插件和 MCP 服务器之间的通信未加密,可能在本地网络中被拦截。
  • 插件和服务器未经官方 QGIS 项目或 Claude 认证,可能存在错误或未维护。

常见排障

  1. 确保 QGIS 插件已正确安装并启用,必要时重新启动 QGIS。
  2. 确保 MCP 服务器已在 QGIS 中启动(插件菜单 → QGIS MCP → 开始服务器)。
  3. 检查 Claude Desktop 配置中的命令和路径是否正确,特别是绝对路径。
  4. 确保 uv 已安装并在 PATH 中,或使用完整路径。
  5. 检查防火墙或安全软件是否阻止 QGIS 和 Python 之间的本地套接字通信。

使用场景

提示辅助的 GIS 项目创建和图层管理。
运行空间分析处理算法。
通过自然语言指令执行 PyQGIS 代码。
渲染地图以进行可视化。

支持客户端

Claude Desktop完整支持