occ-gis-mcp
occ-gis-mcp
MCP(Model Context Protocol)サーバーです。Oklahoma Corporation Commissionのオープンデータハブにある公開GISデータセットに、AIアシスタント(Claude、GitHub Copilot、その他のMCP互換クライアント)がアクセスできるようにします: https://gisdata-occokc.opendata.arcgis.com/
セットアップにコーディング経験は不要です。 以下の手順を順番に実行してください。
これは何ですか?(平たく言うと)
MCP(Model Context Protocol)は、AIチャットツールがライブデータを取得する小さなプログラム(「サーバー」)を呼び出すための標準的な方法です。このリポジトリは、まさにそれらのサーバーの1つです。セットアップが完了すると、AIアシスタントに次のような質問ができるようになります:
「OCC GISハブで利用可能なデータセットを一覧表示して」
「オクラホマ郡のすべての稼働中の油井を検索して」
「PST Tanksレイヤーで利用可能なフィールドを表示して」
アシスタントは、推測する代わりにこのサーバーを使用して、実際のライブ回答を取得します。
Related MCP server: mcp-arcgis-houston
ステップ1 — Node.jsをインストール
このサーバーはNode.js上で動作します。まだインストールしていない場合は:
https://nodejs.org にアクセスします
お使いのOSに対応するLTS(Long Term Support)版をダウンロードします
インストーラーを実行し、デフォルト設定のまま進めます
ターミナル(WindowsではPowerShell、Mac/Linuxではターミナル)を開いて、次のコマンドを実行し、動作を確認します:
node -v npm -vどちらもバージョン番号(例:
v20.11.0)が表示されるはずです。エラーが表示された場合は、ターミナルまたはコンピューターを再起動してもう一度試してください。
ステップ2 — このプロジェクトをダウンロード
オプションA:Gitを使用する(インストール済みの場合は推奨)
git clone https://github.com/MSPFE2019/occ-gis-mcp.git
cd occ-gis-mcpオプションB:Gitを使用しない
緑色のCodeボタン → Download ZIPをクリックします
覚えやすい場所に解凍します(例:ドキュメントフォルダー)
ターミナルを開き、解凍したフォルダーに
cdで移動します。例:cd "C:\Users\YourName\Documents\occ-gis-mcp"
ステップ3 — 依存関係をインストール
プロジェクトフォルダー内で次のコマンドを実行します:
npm installこれにより、サーバーが必要とする小さなライブラリがダウンロードされます。この作業は一度だけ実行すればOKです(コードが変更された場合は再度実行してください)。
ステップ4 — 動作テスト
このサーバーの実行方法は2つあります。使用する環境に応じて選択してください:
index.js— ローカルデスクトップツール用(Claude Desktop、VS Code/Copilot Chat)http.js— Copilot Studioなどのリモート/クラウドツール用(下記の専用セクションを参照)
まずローカル用を試します:
node index.js何も表示されませんが、これで正常です!MCPサーバーは静かな入出力チャンネルを介して通信し、クライアントが接続するのを待つだけです。停止するにはCtrl+Cを押してください。
より視覚的なテストには、公式のMCP Inspectorを使用します。ブラウザページが開き、ボタンをクリックしてライブ結果を確認できます:
npx @modelcontextprotocol/inspector node index.jsローカルのウェブページが開きます。Connectをクリックし、次にList Toolsをクリックして、引数なしでlist_datasetsを実行してみてください。実際のデータセットのリストがJSONとして返ってくるはずです。これが動作すれば、サーバーは正しく機能しています。
ステップ5 — AIアシスタントに接続
MCPサーバーは、AIクライアントの設定内で一度だけ設定します。お使いのツールに合ったガイドを選択してください:
Claude Desktop
Claude Desktopを開き、Settings → Developer → Edit Configの順に進みます(テキストエディターで
claude_desktop_config.jsonが開きます)次のようなエントリを追加します(パスは実際のプロジェクトフォルダーに置き換え、Windowsでは二重バックスラッシュ
\\を使用します):{ "mcpServers": { "occ-gis": { "command": "node", "args": ["C:\\Users\\YourName\\Documents\\occ-gis-mcp\\index.js"] } } }ファイルを保存し、Claude Desktopを完全に再起動します。
「どのOCC GISデータセットが利用可能ですか?」と聞いてみます。
VS Code(GitHub Copilot Chat)やその他のMCP対応エディター
MCP設定で
mcp.jsonファイルを開く(または作成)します(VS Codeの場合:Command Palette →「MCP: Open User Configuration」、またはワークスペースの.vscode/mcp.jsonに追加します)上記と同じ
mcpServersブロックを追加します。ウィンドウをリロードすると、Copilotとのチャットで新しいツールが表示されます。
その他のMCPクライアント
MCP標準をサポートするクライアントはすべて、同じ形式の設定を受け付けます:command(node)とargs(index.jsへのフルパス)です。設定ファイルの場所については、お使いのクライアントのドキュメントを参照してください。
利用可能なツール
接続すると、アシスタントは次のツールを呼び出せます:
ツール | 説明 |
| ハブ上のデータセットを検索/一覧表示します(坑井、タンクなど)。任意のフリーテキスト |
| タイトルで1つのデータセットの完全な詳細を取得します。ダウンロードリンク(CSV、GeoJSON、Shapefile、KML、File Geodatabase)とライブのArcGISサービスURLを含みます。 |
| 指定されたArcGISレイヤーURLのフィールド名、ジオメトリタイプ、範囲を取得します。 |
| レイヤーに対して属性( |
別のArcGIS Hubサイト向けにカスタマイズ
このサーバーはOCCのデータに限定されません。DCAT-USカタログフィードを公開しているArcGIS Hubサイト(ほとんどの公開ArcGIS Hubサイトが該当)であれば、どのサイトでも動作します。別のサイトを指定するには、server.jsを開き、上部付近の次の行を変更します:
const HUB_BASE = "https://gisdata-occokc.opendata.arcgis.com";対象サイトのベースURLに変更してから、サーバーを再実行します。その他すべて(ツール名、クエリロジック)は同じように動作します。
Microsoft Copilot Studioへの接続
Copilot Studioはこのサーバーを自動で実行するわけではありません。HTTPS URLとしてインターネット経由で到達できるようにする必要があります。それがhttp.jsの役割です(index.jsはClaude Desktopなどのローカルツール専用です)。作業は2つあります:(A) サーバーをインターネットから到達可能な場所に配置し、(B) Copilot Studioに登録します。
A. HTTPサーバーを公開環境にデプロイ
ご自身に最も簡単な方法を選んでください。いずれも同じコマンドを実行します:npm install、次にnpm run start:http。
初心者に最も簡単 — Azure App Service(またはAzure Container Apps)
このリポジトリを自分のGitHubアカウントにプッシュします(フォーク/コピーから読んでいる場合はすでに完了しています)
Azure PortalでWeb Appを作成 → ランタイムスタック:Node 20 LTS → GitHubリポジトリからデプロイします(AzureがCI/CDを自動設定してくれます)
Configuration → Startup Commandで次を設定します:
node http.jsデプロイが完了すると、Azureから
https://occ-gis-mcp.azurewebsites.netのようなURLが提供されます。MCPエンドポイントはそのURLに/mcpを付けたもの、例:https://occ-gis-mcp.azurewebsites.net/mcpです。
同様に簡単 — Render、Railway、Fly.io これらはいずれも、GitHub上のNode.jsリポジトリを数クリックでデプロイできます:
ビルドコマンド:
npm install開始コマンド:
npm run start:http公開用の
https://...URLが発行されます — ここでも末尾に/mcpを追加します。
ローカルテストのみ(本番用ではありません)
npm install
npm run start:httpこれでサーバーがhttp://localhost:3000/mcpで起動します。Copilot Studio(クラウドサービス)が自分のマシン上のサーバーに到達できるかテストするには、一時的な公開HTTPS URLを提供するngrok(ngrok http 3000)のようなトンネルツールが必要です。ちょっとしたデモには十分ですが、本番での継続的な利用には適していません。
B. Copilot Studioに登録
Copilot Studioでエージェントを開き、Tools(またはActions)→ Add a tool → New tool → Model Context Protocolの順に進みます。
名前を付け(例:「OCC GIS Data」)、サーバーのHTTPS URLを**
/mcpを含めて**貼り付けます。例:https://occ-gis-mcp.azurewebsites.net/mcp独自の認証レイヤーを前面に追加していない限り、No authenticationを選択します(このサーバーは読み取り専用で資格情報は不要です)。
保存します。Copilot Studioがサーバーを呼び出し、4つのツール(
list_datasets、get_dataset、get_layer_metadata、query_layer)とその説明を自動的に検出します — スキーマの手動入力は不要です。Copilot Studioのテストチャットペインでテストします:「どのOCC GISデータセットが利用可能ですか?」または「オクラホマ郡の稼働中の坑井を検索して」と聞いてみます。
利用可能なツール
接続すると、アシスタントは次のツールを呼び出せます:
ツール | 説明 |
| ハブ上のデータセットを検索/一覧表示します(坑井、タンクなど)。任意のフリーテキスト |
| タイトルで1つのデータセットの完全な詳細を取得します。ダウンロードリンク(CSV、GeoJSON、Shapefile、KML、File Geodatabase)とライブのArcGISサービスURLを含みます。 |
| 指定されたArcGISレイヤーURLのフィールド名、ジオメトリタイプ、範囲を取得します。 |
| レイヤーに対して属性( |
トラブルシューティング
node: command not found— Node.jsがインストールされていないか、インストール後にターミナルの再起動が必要です。ステップ1をやり直してください。network/fetchに関するInspectorやツール呼び出しのエラー — インターネット接続を確認してください。サーバーはリクエストのたびにライブのArcGIS Hub APIを呼び出します。
アシスタントが新しいツールを認識しない — ファイルパス(ローカル)またはURL(Copilot Studio)が正しいこと、クライアントを完全に再起動/再接続したことを再確認してください。
Copilot Studioが接続できないと言う —
/mcpで終わるURL(ドメインのみではない)を登録したか、デプロイが実際に実行されているか、通常のHTTPSで到達可能か(VPNやファイアウォールでブロックされていないか)を確認してください。
備考
データセットリストはハブのDCAT-USカタログフィードからライブで取得され、応答を速く保つために15分間キャッシュされます。
データは公開されていますが、データ提供元機関の利用条件に従う必要があります(
get_datasetの出力のライセンスフィールドに表示されます)。http.jsはステートレスモード(リクエストごとに新しいサーバー)で実行されるため、ホスティングがシンプルで、Copilot StudioがMCPツールを呼び出す方法と完全に互換性があります。
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
- AlicenseNot gradedqualityDmaintenanceMCP server for interacting with Google Earth Engine, enabling geospatial analysis such as dataset visualization, statistics computation, and search via AI assistants.13MIT
- AlicenseNot gradedqualityCmaintenanceThis MCP server provides access to City of Houston GIS open geospatial data, enabling search, query, and schema retrieval of datasets like parcels and zoning through ArcGIS feature services.7MIT
- AlicenseNot gradedqualityCmaintenanceEnables searching and querying City of Tulsa GIS open geospatial datasets (parcels, zoning, public works) via ArcGIS Feature Services through natural language or direct MCP tool calls.9MIT
- AlicenseAqualityBmaintenanceAn MCP server that gives LLM agents typed, cached access to civic open-data portals via Socrata (SODA 2.1 + Discovery API), enabling search, query, profiling, sampling, and CSV export of datasets.6MIT
Related MCP Connectors
MCP server for Mireye Earth — federal-source-cited geospatial data for any MCP-aware agent.
This MCP server provides seamless access to Malaysia's government open data, including datasets, w…
Official Microsoft MCP Server to query Microsoft Entra data using natural language
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/MSPFE2019/occ-gis-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server