「国土交通省のオープンデータ、AIに話しかけるだけで引き出せるようになった——mlit-dpf MCP導入と実装レポート」

国土交通省のオープンデータをAIで検索できるmlit-dpf MCPのイメージ図(森林・GIS・行政データの活用) AIの応用
AIに話しかけるだけで国土交通省のオープンデータを横断検索できる仕組み(mlit-dpf MCP)

国土交通省が整備するデータプラットフォーム(mlit-dpf)は、橋梁・道路・点群・3D都市モデルなど膨大なオープンデータを横断的に束ねたAPIだ。しかしそのUIは「人間が直接操作する画面」を持たず、専門家ですら使いこなすのが難しかった。

mlit-dpf MCP(Model Context Protocol)サーバーをClaudeにインストールすることで、この状況が一変した。 自然語(日本語の話し言葉)でAPIを横断検索できるようになり、「静岡県の森林関係データ」「浜松市の橋梁は何件?」「DEMはあるか?」といった問いに即答できる環境が整った。本稿ではその仕組みと、Jクレジット事業への実用的な応用可能性を技術的に解説する。

1. mlit-dpfとは何か——国交省データAPIの全体像

国土交通省データプラットフォーム(mlit-dpf)は、国交省が保有・整備する各種地理空間データを横断的に検索・取得できるGraphQL APIである。

🔗 エンドポイント概要

API方式: GraphQL
公開範囲: オープンデータ(無償)
主な収録データ: 橋梁点検、道路施設、国土数値情報、PLATEAU 3D都市モデル、航空レーザ点群、水文水質、工事実績(コリンズ)など 37カタログ

重要な特徴として、mlit-dpfは「タグをクリックして絞り込む」従来型のGISポータルUIを持たない。G空間情報センターや国土数値情報ダウンロードサービスのような「都道府県選択→テーマ選択→ダウンロード」という操作フローは存在しない。全アクセスはAPIコールで行い、都道府県コードやカタログIDを事前に把握していないと絞り込みすら困難だ。

# 例:prefecture_code=22(静岡県)で森林関連を検索する場合# 従来はGraphQLクエリを自力で書く必要があった query { search( term: “森林” attributeFilter: { attributeName: “DPF:prefecture_code” is: “22” } size: 20 ) { totalNumber searchResults { id title dataset_id lat lon year } } }

このクエリを書けるエンジニアでなければ、事実上アクセスできないシステムだった。

2. MCPとは何か——AIに外部ツールを持たせる仕組み

MCP(Model Context Protocol)は、Anthropicが2024年に策定したオープン標準仕様で、LLM(大規模言語モデル)に外部ツール・データソース・APIを動的に接続するためのプロトコルだ。

ユーザーの自然語入力

Claude(LLM)

MCPサーバー

外部API / DB

結果を整形して返答

MCPサーバーはJSON-RPC 2.0を基盤とし、ツール定義(toolのスキーマ)をLLMに提示することで、LLMがどのツールをどのパラメータで呼ぶべきかを自律的に判断できるようにする。ユーザーは「静岡県の森林データを見せて」と入力するだけで、Claude側がprefecture_code: "22"term: "森林"といったパラメータに変換してAPIコールを実行する。

📌 Claude for Desktop へのインストール方法

設定 → 開発者タブ → MCPサーバーを追加
コマンド:npx
パッケージ:mlit-dpf-mcp(npm公開パッケージ)
インストール後、Claude再起動で即利用可能。

3. アーキテクチャ——システム構成と通信フロー

┌─────────────────────────────────────────────┐│ Claude for Desktop (or claude.ai) ││ ││ ┌──────────────┐ MCP Protocol ││ │ Claude LLM │ ◄──────────────┐ ││ │ (Sonnet 4) │ │ ││ └──────────────┘ │ ││ │ tool_call │ ││ ▼ │ ││ ┌──────────────────┐ │ ││ │ mlit-dpf-mcp │────────────┘ ││ │ MCPサーバー │ ││ └──────────────────┘ ││ │ GraphQL / REST ││ ▼ ││ ┌──────────────────────────────────┐ ││ │ mlit-dpf API │ ││ │ data-platform.mlit.go.jp │ ││ └──────────────────────────────────┘ │└─────────────────────────────────────────────┘

MCPサーバーはローカルプロセスとして動作(npx経由)し、Claude本体との通信はstdinout(標準入出力)を介したJSON-RPCで行われる。外部への通信はmlit-dpfのGraphQLエンドポイントのみで、データは端末とAPIの間を直接往来する。

提供されているツール関数は以下の通り:

ツール名機能
search全文キーワード検索(フレーズマッチ・部分一致対応)
search_by_attributeprefecture_code / municipality_code / catalog_id などで絞り込み
get_count_data件数集計・カタログ別クロス集計
normalize_codes「浜松市」→ 221309 などコード正規化
get_data_catalog_summary利用可能な全カタログ一覧取得
get_file_download_urlsファイルダウンロードURL取得(60秒有効)

4. 実際に何ができるか——検索デモ

以下は今日の実際の検索セッションから抜粋した結果だ。

① 静岡県の森林関係データ(全カタログ横断)

# 入力:「静岡県の森林関係のデータを見せて」# Claude が内部で実行したAPI呼び出し: search_by_attribute( attribute_name=”DPF:prefecture_code”, attribute_value=”22″, term=”森林”, phrase_match=False, size=20 ) # → totalNumber: 41件

✅ 返ってきた主なデータ

・関東森林管理局 静岡・伊豆・天竜 各森林管理署(施設情報)
・静岡県立森林公園 / 乙女森林公園 第1・第2キャンプ場
・令和2年度 賀茂地区 航空レーザ計測成果を用いた森林資源情報等解析業務(mcc)
・令和5年度 森林環境保全整備 八吉沢線6工区 調査委託(ngi)

② 静岡県のDEM・航空レーザ点群(alpcカタログ)

# 入力:「DEMは?」 search_by_attribute( attribute_name=”DPF:catalog_id”, attribute_value=”alpc”, size=20 ) # → totalNumber: 17件

✅ VIRTUAL SHIZUOKA 点群データ(5エリア)

・富士山南東部・伊豆東部(2019)
・伊豆西部(2020)
・富士山および静岡東部(2021)
・中・西部(2022)
・北部(南アルプス)(2022)
+ 安倍川 ALBデータ (1m DEM)(2013)

③ 浜松市の全データ件数(市区町村コード自動変換込み)

# 入力:「浜松市関連データは」# Step 1: コード正規化 normalize_codes(prefecture=”静岡県”, municipality=”浜松市”) # → municipality_code: “221309”# Step 2: 件数集計 get_count_data( municipality_code=”221309″, slice_type=”dataset” ) # → totalNumber: 7,472件

✅ カタログ別内訳

rsdb 道路施設点検 6,280件(橋梁 5,992 / 門型標識 116 / トンネル 60 …)
nlni_ksj 国土数値情報 1,081件(土砂災害警戒区域 544 / 公園 363 …)
mcc 地方公共団体工事データ 64件
plateau PLATEAU 3D都市モデル 2件(2022・2023年度)

5. 利用可能なカタログ一覧

カタログID名称主な用途
rsdb全国道路施設点検DB橋梁・トンネル・シェッド点検データ
nlni_ksj国土数値情報土地利用・施設・保安林・災害危険区域
alpc静岡県航空レーザ点群VIRTUAL SHIZUOKA / DEM / LiDAR
mlit_plateau3D都市モデル(PLATEAU)建物・地形の3D CityGML
hwq水文水質データベース河川水位・雨量観測
mcc地方公共団体工事データ都道府県・市区町村発注工事
ngi国土地盤情報DBボーリングデータ
crtc工事実績情報(コリンズ)国交省直轄工事
ndm自然災害伝承碑過去の災害記録位置情報
dhbダム便覧全国ダム情報

6. Jクレジット事業への応用——静岡県を例に

今回このシステムを構築した背景には、FSC認証林のJクレジット化事業がある。静岡県内の約6万ヘクタールのFSC認証林をJクレジット化する際、申請プロセスで最もコストがかかるのが「対象エリアのデータ収集・整理」だ。mlit-dpf MCPはこのボトルネックを直接解消できる。

申請ステップ従来の作業mlit-dpf MCP 活用後
対象森林の位置特定複数サイトを渡り歩き手動で確認自然語で即座に国土数値情報(保安林・森林地域)を抽出
施業履歴の証明衛星・LiDARデータを別途調達(有償)VIRTUAL SHIZUOKA LiDAR点群(無償)を即取得
リスク評価資料ハザードマップを手動でスクリーンショット土砂災害警戒区域・急傾斜地データをAPI経由で取得
審査機関への説明根拠データが主観的になりがち公的APIからの取得データで客観的裏付け

📊 静岡県でJクレジット申請に使えるデータ(確認済み)

VIRTUAL SHIZUOKA(alpc): 県全域の高精度LiDAR点群・DEM(5エリア、無償)
土砂災害警戒区域 a54(nlni_ksj): 静岡県内 1,092件
急傾斜地崩壊危険区域 a32(nlni_ksj): 49件
地すべり防止区域 a27(nlni_ksj): 96件
PLATEAU 3D都市モデル(浜松市): 2022・2023年度
保安林解除申請業務(mcc): 保安林エリア特定に活用

特筆すべきはすべて無償のオープンデータであることだ。バイウィルや三井物産が手作業で収集していたデータ収集フェーズを、コストゼロ・即時で代替できる。申請プロセスの9割以上を削減した既存の施業履歴可視化システムと組み合わせることで、さらなる前工程自動化が可能になる。

7. 従来手法との比較

項目G空間情報センター / 国土数値情報DLmlit-dpf MCP(Claude経由)
操作方法メニュー・タグをクリックして絞り込み自然語で話しかけるだけ
横断検索❌ サイトをまたいで手動✅ 37カタログを一括検索
コード知識不要(UIで完結)不要(Claude が変換)
データ取得コスト無償(DL手続きあり)無償(API直接)
所要時間30分〜数時間数秒〜数分
非エンジニアの利用△ GIS知識が必要なケースあり✅ 日本語で即利用可能

8. 限界と注意点

⚠️ 正直に書く——万能ではない

① 森林台帳・森林簿はmlit-dpfにない
農林水産省管轄のため、静岡県森林クラウド公開システムへの別アクセスが必要。

② 地番図(公図)もない
法務省管轄。homukyoku MCPサーバーを別途インストールして対応。

③ 「入口」であって「全自動」ではない
ダウンロードURLの有効期限は60秒。大量データの解析はダウンロード後の別処理が必要。

④ 件数ゼロ問題
「地番図」「地籍」などのキーワードは0件になる。mlit-dpfの収録範囲を事前に理解しておく必要がある。

9. まとめ

📌 要点整理

  • mlit-dpfは国交省の全データAPIを横断するGraphQLプラットフォーム(37カタログ)
  • 従来はGraphQLクエリを書けるエンジニアのみが実用的に使えた
  • mlit-dpf MCPをClaudeにインストールすることで自然語検索が可能になった
  • 「静岡県の森林」「浜松市のDEM」「静岡県内の橋梁は何件?」→ 数秒で回答
  • すべてオープンデータ・無償——データ収集コストがゼロになる
  • Jクレジット申請の前工程(データ収集・リスク評価・審査資料作成)に直接応用可能
  • 森林台帳・地番図は別MCPサーバー(homukyoku)との組み合わせが必要

「タグをクリックして探す」時代から「話しかければ横断検索できる」時代へ。mlit-dpfというAIファースト設計のAPIと、MCPという接続標準が揃ったことで、GIS専門家でなくてもオープンデータの恩恵を直接受けられる環境が整いつつある。

データの民主化は、インフラの見方を変える。そしてその恩恵が最も大きいのは、データを探す時間に追われていた現場の専門家たちかもしれない。

#MCP#国土交通省#mlit-dpf#オープンデータ#Claude#GIS#AI活用#GraphQL#VIRTUAL SHIZUOKA#Jクレジット#PLATEAU#LiDAR#DEM#森林#カーボンクレジット#業務効率化#DX

コメント

タイトルとURLをコピーしました