mcpField
Q
QGISMCP - QGIS Model Context Protocol Integration

QGISMCP - QGIS Model Context Protocol Integration

github.com/kicker315デスクトップアプリ783 週間前に更新

QGISMCP - QGIS Model Context Protocol Integration について

QGISMCP は MCP を通じて QGIS を Claude AI に接続し、Claude が QGIS を直接制御できるようにします。プロジェクト操作、レイヤー管理、処理アルゴリズム、Python コード実行をサポートします。

主な機能

  1. 01QGIS と Claude 間の双方向通信
  2. 02プロジェクトの作成、読み込み、保存
  3. 03ベクターおよびラスターレイヤー管理
  4. 04処理アルゴリズム実行
  5. 05任意の Python コード実行

活用シーン

  1. 01AI 支援 GIS プロジェクト作成
  2. 02自然言語による地理空間操作の制御
  3. 03レイヤー処理と分析の自動化
  4. 04Claude で PyQGIS スクリプト作成

MCP 対応

QGISMCP は MCP サーバーで、ソケット通信を通じて Claude クライアントに QGIS 機能を公開し、プロジェクト管理、レイヤー操作、処理アルゴリズムのツールを提供して直接的な Claude-QGIS 相互作用を実現します。

詳細

QGISMCP - QGIS Model Context Protocol インテグレーション

QGISMCP は QGIS を Model Context Protocol (MCP) を通じて Claude AI に接続し、Claude が QGIS と直接やり取りして制御できるようにします。このインテグレーションにより、プロンプト支援プロジェクト作成、レイヤー読み込み、コード実行などが可能になります。

このプロジェクトは Siddharth Ahuja による BlenderMCP プロジェクトに強く基づいています。

機能

  • 双方向通信: ソケットベースのサーバーを通じて Claude AI を QGIS に接続します。
  • プロジェクト操作: QGIS でプロジェクトを作成、読み込み、保存します。
  • レイヤー操作: プロジェクトにベクターまたはラスターレイヤーを追加および削除します。
  • 処理の実行: 処理アルゴリズムを実行します (Processing Toolbox)。
  • コード実行: Claude から QGIS 内で任意の Python コードを実行します。非常に強力ですが、このツールを使用する際は十分に注意してください。

コンポーネント

システムは 2 つの主要コンポーネントで構成されています:

  1. QGIS プラグイン: QGIS 内でソケットサーバーを作成し、コマンドを受け取って実行する QGIS プラグインです。
  2. MCP サーバー: Model Context Protocol を実装し、QGIS プラグインに接続する Python サーバーです。

インストール

前提条件
  • QGIS 3.X (3.22 でのみテスト)
  • Cloud desktop
  • 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 [email protected]:jjsantos01/qgis_mcp.git
QGIS プラグイン

フォルダ qgis_mcp_plugin とその内容を QGIS プロファイルプラグインフォルダにコピーする必要があります。

QGIS でメニュー Settings -> User profiles -> Open active profile folder に進んでプロファイルフォルダを取得できます。その後、Python/plugins に進み、フォルダ 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 を閉じて再度開きます。メニューオプション Plugins -> Installing and Managing Plugins に進み、All タブを選択して「QGIS MCP」を検索し、QGIS MCP チェックボックスをマークします。

Claude for Desktop インテグレーション

Claude > Settings > Developer > Edit Config > claude_desktop_config.json に進み、以下を含めます:

「Developers」タブまたは 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"
            ]
        }

    }
}

使用方法

接続の開始
  1. QGIS で、plugins -> QGIS MCP-> QGIS MCP に進みます。 plugins menu
  2. 「Start Server」をクリックします。 start server
Claude での使用

設定ファイルが Claude で設定され、サーバーが QGIS で実行されている場合、QGIS MCP のツールを示すハンマーアイコンが表示されます。

Claude tools

ツール
  • 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コードを実行
コマンド例

以下はデモで使用した例です:

You have access to the tools to work with QGIS. You will do the following:
	1. Ping to check the connection. If it works, continue with the following steps.
	2. Create a new project and save it at: "C:/Users/USER/GitHub/qgis_mcp/data/cdmx.qgz"
	3. Load the vector layer: ""C:/Users/USER/GitHub/qgis_mcp/data/cdmx/mgpc_2019.shp" and name it "Colonias".
	4. Load the raster layer: "C:/Users/USER/GitHub/qgis_mcp/data/09014.tif" and name it "BJ"
	5. Zoom to the "BJ" layer.
	6. Execute the centroid algorithm on the "Colonias" layer. Skip the geometry check. Save the output to "colonias_centroids.geojson".
	7. Execute code to create a choropleth map using the "POB2010" field in the "Colonias" layer. Use the quantile classification method with 5 classes and the Spectral color ramp.
	8. Render the map to "C:/Users/USER/GitHub/qgis_mcp/data/cdmx.png"
	9. Save the project.

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。