変更履歴(changelog)

API・MCP・データに関わる変更を新しい順に記録します。フィールドの追加・削除、破壊的変更、新しいエンドポイントの追加はここに載せます。

指定区域を種類ごとの数と、町字代表点周辺の参考照合で示すようにしました

市区町村ページと API /v1/munis/{muni_code}/disaster-context・MCP get_disaster_context では、国土数値情報に収録された指定区域(土砂災害警戒区域・土砂災害特別警戒区域、地すべり防止区域、急傾斜地崩壊危険区域、災害危険区域、砂防指定地)を種類ごとの数で返します。種類ごとの数は、区域の形と位置から市区町村を判定して数えています。これまでの区域数とは数え方が違うため、件数の差は区域の増減を示すものではありません。これまでの土砂災害の区域数(total_hazard_count)とスコア・区分(score・coverage_category)は、全ての市区町村で値を返さなくなります。町字ページと API /v1/profile・MCP get_disaster_risk_point では、町字の代表地点の周囲約375m四方で収録区域と照らし合わせた参考情報(designated_zone_check)を返し、土砂災害の区域内・区域外の判定(hazards.landslide の status・value.zone_level と flags の各区域)は返さなくなります。土砂災害のスコアと全国百分位は引き続き返します。

土砂災害の区域区分の表示を訂正しました

2026年9月10日から10月15日まで、一部の地点で土砂災害警戒区域と土砂災害特別警戒区域の区分を誤って表示していました。訂正後は、特別警戒区域と表示する地点が増えます。

住所を指定する /v1/profile の呼び出しを POST に変更しました

住所(q)は URL に含めず、POST /v1/profile の JSON 本文で送ってください(例: {"q": "東京都千代田区霞が関一丁目"})。URL に入った住所はサーバーの記録に残るためです。GET /v1/profile?q= は 400(address_in_url_not_accepted)を返します。muni_code と place_id は引き続き GET でも使えます。

レイヤーIDの形式チェックを API と MCP でそろえました

API /v1/license/resolve と /v1/license/ledger で、レイヤー一覧に載っている「+」を含むID(例 KSJ:L01+L02)を受け付けます。URL では「+」を %2B と書いてください。許諾の判定は変わらず、台帳に同じIDの行が無い場合は unclassified(提供不可)を返します。あわせて MCP の resolve_license も同じ形式チェックを行うようにしたため、形式に合わないIDには、これまでの unclassified ではなくエラーを返します。

API /v1/profile の place に町字コード(chocho_code)を追加しました

住所または place_id から町字(丁目・字)まで場所を特定できた場合に、12桁の町字コードを返します。特定できなかった場合は null です。muni_code で指定した呼び出しには含まれません。MCP の応答は変わりません。

土砂災害のスコアと区分(区域内・区域外)を、区域数を市区町村単位で集計できた市区町村にだけ表示するようにしました

スコアと区分は区域数から計算していたため、区域数を表示していない市区町村(県内の平均で補っていた市区町村と、区域データを収録していない山梨県の市区町村)では表示をやめます。

自治体ページの災害履歴で、雪崩を土砂災害と区別しました

2026-09-15 訂正: 雪崩を土砂災害から分離(山林火災(計上なし)は集計対象外)。国土数値情報(土砂災害・雪崩メッシュ)由来の記録のうち、雪崩の記録が土砂災害として数えられていました。対象は34市区町村(自治体ページの「過去に何が起きた?」の記録件数と、区域別の内訳)。API /v1/munis/{muni_code}/disaster-context・MCP get_disaster_context の events_by_hazard_type も同様に区別されます。

土砂災害の区域数を、市区町村単位で集計できた市区町村にだけ表示するようにしました

これまで、市区町村コードが付いた区域データが無い市区町村では、同じ都道府県内で区域数を把握できた市区町村の平均値を表示していました。その市区町村の区域数ではないため、表示をやめます。対象は564ページで、自治体ページの区域数欄と、API /v1/munis/{muni_code}/disaster-context・MCP get_disaster_context の total_hazard_count が対象です(値は返さなくなります)。あわせて、常に0を返していた warning_count・special_count は値を返さなくなります。土砂災害のスコアは変わりません。集計の方法は手法ページに記載しています。

「国土DB」のβ版を公開しました

2026年8月18日にサイトを公開してから、Claude・ChatGPTのコネクタからの接続、都市計画決定の履歴、災害のとき情報などを追加してきました。データと接続方法が整ったので、β版として公開し、プレスリリースでお知らせしました。

APIキーごとの1日の上限を設けました

これまでは1分あたりの上限(60 req/min)だけを見ていましたが、1日あたり通常1,000リクエストの上限を追加しました。どちらかを超えると 429 を返します。429 の Retry-After には待つべき秒数が入ります(分の上限なら60秒、日次の上限なら日本時間0時までの秒数)。β期間中の課金がないことは変わりません。β終了後のFreeプランは100回/日を予定しており、β期間中の上限とは異なります。

災害のとき情報(disaster-context)を公開

自治体ページの「災害のとき」タブ、API /v1/munis/{muni_code}/disaster-context、MCP ツール get_disaster_context を公開しました。災害リスク要約・過去の災害履歴・防災計画の要点・避難所/インフラ文脈を返します。2026-08-23 のエントリで非公開としていたものを有効化しました。

/v1/license/resolve から内部メモ(notes)を削除

/v1/license/resolve(REST・MCP resolve_license 共通)のレスポンスから、台帳の内部判断メモである notes フィールドを削除しました。/v1/license/ledger と同じ公開列規律に揃えるための変更です。layer_id / license_class / license_label / evidence_url / confirmed_at / reconfirm_due / matched_ledger_id / servable は従来どおり返します。

ClaudeやChatGPTのコネクタから接続できるようにしました

MCPサーバーをOAuthに対応させました。ClaudeやChatGPTのカスタムコネクタに https://kokudodb.jp/mcp を登録し、Googleアカウントでサインインすれば使えます。APIキーを自分で発行・入力する必要はありません。同日まで「ブラウザ版のカスタムコネクタは使えません」と案内していましたが、この対応でつながるようになりました。手順は「Claudeから使う」「ChatGPTから使う」に画面つきで載せています。APIキーをヘッダで渡す従来の方法も引き続き使えます。

災害のとき情報(disaster-context)を追加(非公開ベータ)

自治体の災害リスク要約・過去の災害履歴・防災計画の要点・避難所/インフラ文脈を取得できる API エンドポイント(/v1/munis/{muni_code}/disaster-context 相当)と MCP ツール get_disaster_context を追加しました。データ移管・品質確認が完了するまで非公開(無効化)です。

developers ページのAPIキー管理を刷新

サインインとAPIキー発行を別アクションに分離しました(サインインのみでは新規キーを発行しない)。既存キーの一覧表示・追加発行・失効に対応し、有効なAPIキーは1ユーザーあたり最大5件までとしています。

都市計画決定の履歴(planning-history)を追加

自治体の都市計画決定の履歴を取得できる API エンドポイント(/v1/munis/{muni_code}/planning-history 相当)と MCP ツール get_planning_history を追加しました。

国土DBのサイトを公開

住所や自治体コードから用途地域・地価・人口・都市計画の記録をまとめて返す Web・API・MCP を、kokudodb.jp で動かし始めました。

APIリファレンスは /docs/api-reference、エンドポイント一覧は /docs を参照してください。