dsh-arcgis-pro-bridge
dsh-arcgis-pro-bridge
DeepSeek Harness (DSH) 内のモデルがローカルの ArcGIS Pro を直接呼び出せるようにします:プロジェクト、レイヤー、GDB 構造を読み取り、Buffer / Clip / カスタム ArcPy を実行します。
このプロジェクトは、ArcGIS-Pro-Bridge-MCP-Server の Python MCP サービスを DSH バンドルプラグインに組み込み、DSH 標準の公式 @deepseek-ai/dsh-mcp-client を介して stdio 方式で起動します。モデルから見えるツール名は次のようになります:
mcp__arcgis__pingmcp__arcgis__health_checkmcp__arcgis__doctormcp__arcgis__detect_arcgis_environmentmcp__arcgis__debug_runtime_contextmcp__arcgis__list_gis_layersmcp__arcgis__inspect_project_contextmcp__arcgis__inspect_gdbmcp__arcgis__buffer_featuresmcp__arcgis__clip_featuresmcp__arcgis__execute_arcpy_codemcp__arcgis__build_gis_resource_urimcp__arcgis__generate_sync_plan
アーキテクチャ
DSH (Node.js)
└─ 本插件 bundle(cordis.patch.yml,插入两行)
├─ dsh-arcgis-pro-bridge:提供 arcgisProBridge 服务(启动配方)
└─ @deepseek-ai/dsh-mcp-client(DSH 官方内置桥接,注入该服务)
└─ stdio: uv run --project <包内 server/> arcgis_mcp_server.py
└─ ArcPy 逻辑通过 ArcGIS Pro 自带 Python 子进程执行ポイント:
ローカルのみで動作し、ネットワークポートを公開しません。
ArcPy は常に ArcGIS Pro 付属の Python で実行され、DSH の Node 環境を汚染しません。
DSH 公式 MCP ブリッジは現時点では Tools のみをブリッジします。アップストリームの
arcgis://Resources は登録されないため、読み取り操作は同名の Tool(例:inspect_gdb)を使用してください。execute_arcpy_codeはローカルでコードを実行することと同等です。信頼できるマシンでのみ有効にし、書き込み操作の前にデータをバックアップしてください。
Related MCP server: ArcGIS Pro Bridge MCP Server
環境要件
Windows(ArcGIS Pro は Windows のみサポート)
ArcGIS Pro がインストールされ、正常に起動できること
DeepSeek Harness(開発プレビュー版、本プラグインは
0.1.0-rc.6で検証済み;Node.js >= 22.19)uv のインストールを推奨。uv がない場合は、
mcpパッケージがインストールされた Python 3.11+ を使用できます。
インストール(推奨:GitHub 直接インストール)
このプロジェクトは純粋な ESM JavaScript + vendored Python であり、ビルド手順はありません。そのため GitHub 直接インストールでは build 権限は不要です。特定の commit に固定することをお勧めします:
dsh plugin --profile web add github:y0urday/dsh-arcgis-pro-bridge#<commit-sha>パッチが設定に反映されたことを確認:
dsh --profile web --dump-config出力に arcgis-pro-bridge の行が表示され、name がこのパッケージとして解決されるはずです。その後、dsh web を完全に再起動してください。
代替案:npm に公開してからインストール
パッケージ内に files ホワイトリストが含まれているため、そのまま公開できます:
npm publish
dsh plugin --profile web add dsh-arcgis-pro-bridge@0.1.0GitHub 直接インストール + ビルドスクリプトなしを推奨する理由
DSH プラグインには3つの配布方法があります:ローカルディレクトリ、npm パッケージ、github: 直接インストール。TypeScript + prepare ビルドを使用すると、GitHub 直接インストールでは、ユーザーが自分の profile で allowBuilds を設定する必要があり、これはインストール時にあなたのコードを実行することを許可することに等しいため、ハードルが高くなります。このリポジトリは意図的に純粋な JavaScript に保たれており、3つの方法すべてでそのまま使用でき、GitHub 直接インストールの体験が最も良くなっています。将来 npm に公開する場合も構造を変更する必要はありません。
GitHub への公開
cd dsh-arcgis-pro-bridge
git remote add origin git@github.com:y0urday/dsh-arcgis-pro-bridge.git
git push -u origin mainリポジトリに dsh-plugin トピックを追加して、エコシステムで見つかりやすくすることをお勧めします。公開後は、上記のインストールコマンドを自分の owner と commit に置き換えてください:
dsh plugin --profile web add github:y0urday/dsh-arcgis-pro-bridge#<commit-sha>npm も同時に公開する場合は、パッケージ内の files ホワイトリストが準備されているので、npm publish を実行するだけです。npm と GitHub の2つのインストール方法は併用できます。
設定
デフォルト設定は cordis.patch.yml に書き込まれており、通常は変更の必要はありません。すべてのフィールドは index.js の Config schema にデフォルト値を持っています:
フィールド | デフォルト | 説明 |
|
| モデル側のツールプレフィックス |
|
|
|
|
|
|
|
| Python サービスプロセスに追加する引数 |
|
| 追加の環境変数。例: |
|
| 単一の ArcGIS ツール呼び出しのタイムアウト(ミリ秒) |
|
| 初回接続失敗時にプラグインのアクティベーションを失敗させるかどうか |
| 下記参照 | 子プロセス切断後の指数バックオフ再接続戦略 |
reconnect のデフォルト値:enabled: true、initialDelayMs: 500、maxDelayMs: 30000、maxAttempts: 10。
ユーザー上書きの例
$DSH_HOME/profiles/web/cordis.patch.yml(または起動時に --patch)内で id を指定して設定行を上書きします:
- id: arcgis-pro-bridge
config:
serverName: arcgis
launcher: python
pythonExecutable: python
failOnStartupError: true
env:
ARCGIS_PRO_PYTHON: C:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\python.exe注意:パッチの上書きは
config全体を置き換えるものであり、深いマージではありません。記述されていないフィールドは schema のデフォルト値に戻ります。
初回テストの順序
モデルに
mcp__arcgis__pingを呼び出させ、実際にツールチェーンに入ったことを確認します。mcp__arcgis__health_checkを呼び出し、続けてmcp__arcgis__doctorを呼び出して、ArcGIS Pro Python を検出でき、ArcPy がインポート可能であることを確認します。現在のプロジェクトを読み取る:
mcp__arcgis__list_gis_layers(または.aprxパスを渡す)。GDB を読み取る:
mcp__arcgis__inspect_gdb。最後に
mcp__arcgis__buffer_features/clip_features/execute_arcpy_codeを試し、書き込み操作の前にバックアップします。
次のプロンプトをモデルにコピーして渡すことができます:
shell を使用しないでください。テストスクリプトを書かないでください。利用可能な
mcp__arcgis__pingを直接呼び出し、次にmcp__arcgis__health_checkを呼び出して、2つの戻り結果を完全に教えてください。
トラブルシューティング
ツールが表示されない:最初に
dsh --profile web --dump-configを実行し、arcgis-pro-bridgeの行が存在し、ロードエラーがないことを確認します。dsh webを再起動済みであることも確認します。uvが見つからない:where uv(CMD)/Get-Command uv(PowerShell)で PATH に存在することを確認します。存在しない場合はlauncher: pythonに変更し、pip install "mcp[cli]>=1.9.4"をインストールします。ArcGIS Pro を検出できない:
detect_arcgis_environmentを呼び出すか、env.ARCGIS_PRO_PYTHON/ARCGIS_PRO_INSTALL_DIRで明示的に指定します。現在のプロジェクトを読み取れない:
ArcGISProject("CURRENT")は ArcGIS Pro の実行コンテキストに依存します。失敗した場合は、ツールに.aprxパスを直接渡します。ArcPy のロックエラー:編集中のレイヤー/セッションを閉じるか、データを占有している外部プログラムを終了してから再試行します。
ログ:
dshはarcgis-pro-bridgeとmcp-client(arcgis)の接続・再接続ログを出力します。mcp-clientは接続失敗時にfailOnStartupError: falseの場合、起動しますがツールは一時的に登録されず、reconnect戦略に従って再試行します。
ローカル検証
npm run check # node --check index.js
npm test # vendored 文件清单一致性测试
uv run --project server server/arcgis_mcp_server.py # 直接启动服务,应进入等待状态アップストリームとの同期
server/ 内は、アップストリームリポジトリの MIT ライセンスコードの vendored コピーであり、出典とコミット番号は NOTICE に記録されています。更新するとき:
npm run sync-upstreamスクリプトはアップストリームの最新コードを再クローンし、server/*.py、pyproject.toml、uv.lock を上書きし、NOTICE 内の commit 番号を自動更新します。同期後は、まず上記の検証を実行し、その後に Windows + ArcGIS Pro で ping → health_check → doctor のスモークテストを実施してください。
ライセンス
このリポジトリは MIT です。vendored Python サービスコードは Sangwxx/ArcGIS-Pro-Bridge-MCP-Server(MIT)に由来し、完全なライセンスは server/UPSTREAM_LICENSE に、説明は NOTICE にあります。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityDmaintenanceExposes ArcGIS Pro geoprocessing capabilities to LLMs via the arcpy library, enabling automated spatial analysis and data management. It provides a comprehensive suite of tools for vector geoprocessing, terrain analysis, and raster operations designed for GIS workflows.4
- AlicenseCqualityCmaintenanceA local MCP server that enables AI clients to read ArcGIS Pro project information and execute ArcPy geoprocessing in the native ArcGIS Pro Python environment.1382MIT
- AlicenseAqualityCmaintenanceEnables natural language control of live ArcGIS Pro sessions through the Model Context Protocol, allowing inspection of projects, layers, and attributes, and execution of geoprocessing tasks.251MIT
- AlicenseAqualityAmaintenanceEnables AI assistants to control ArcGIS Pro through natural language, executing geoprocessing tools, editing data, and automating GIS workflows via a persistent ArcPy session.12Apache 2.0
Related MCP Connectors
OCR, transcription, file extraction, and image generation for AI agents via MCP.
MCP server exposing the Backtest360 engine API as tools for AI agents.
MCP connector that lets ChatGPT list, search, and run your Apple Shortcuts via a local Mac agent
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/y0urday/dsh-arcgis-pro-bridge'
If you have feedback or need assistance with the MCP directory API, please join our Discord server