udir-mcp について
udir-mcp はオープンな REST API を介して、ノルウェーの NSR 学校登録簿と NBR 幼稚園登録簿を利用可能にします。登録情報の検索向けで、市町村ごとの検索や住所・座標などの組織情報の取得に対応します。
主な機能
- 01市町村別の学校検索
- 02名称や種類による学校の絞り込み
- 03市町村別の幼稚園検索
- 04組織の詳細と座標の取得
活用シーン
- 01市町村内の学校一覧の取得
- 02設置者区分による幼稚園の検索
- 03地図表示や距離計算用の位置情報取得
MCP 対応
MCP クライアントに NSR と NBR 登録簿の検索・詳細取得ツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
4掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| navn | string | いいえ | 学校名の部分文字列フィルター(大文字と小文字を区別しない) |
| type | enum | いいえ | 学校種別フィルター(デフォルト:すべての運営中の学校)grunnskole | videregaaende | privat | offentlig | spesialskole | alle |
| kommunenummer | string | はい | 4 桁の自治体番号。例:Oslo の場合は '0301'(先頭のゼロが必要です。'301' は正規化されます) |
| inkluder_inaktive | boolean | いいえ | 閉鎖/非アクティブの施設を含めます(デフォルト false) |
詳細
@nor-data/udir-mcp
UDIRのオープンレジストリをラップするMCPサーバー — Nabodataのマッピング(#4:学校/幼稚園)向けに構築されています。
- NSR(国立学校レジストリ):
https://data-nsr.udir.no/v3 - NBR(国立幼稚園レジストリ):
https://data-nbr.udir.no/v3
どちらも公開されており、認証不要のREST APIです。
ツール
| ツール | 説明 |
|---|---|
sok_skole | 自治体ごとの学校(4桁の自治体番号。先頭のゼロを正規化)。フィルター:名前の部分一致、種類(小学校/中等学校/私立/公立/特別支援学校)、非アクティブな学校を含める |
hent_skole | 組織番号ごとの詳細情報:住所、座標(緯度/経度、GeoNorge)、生徒数、従業員数の範囲、使用言語、連絡先 |
sok_barnehage | 自治体ごとの幼稚園。フィルター:名前、所有形態(私立/公立)、非アクティブな施設を含める |
hent_barnehage | 組織番号ごとの詳細情報:住所、座標、所有形態、カテゴリー |
データ品質に関する注記(2026年6月6日確認)
- UDIRはジオコーディングされていない施設に
{Lengdegrad:0, Breddegrad:0, GeoKilde:"Undefined"}を返します。サーバーはこれを座標なしとして扱います(フィールドを除外します)。 /v3/enheterのNavnクエリパラメーターはUDIRによって無視されるため、名前によるフィルタリングは自治体ごとにクライアント側で行います。- レジストリにはテスト用施設(組織番号
U999…、自治体番号2599)が含まれています。自治体で検索すると暗黙的に除外されます。
ビルドとテスト
npm install && npm run build
npm test # E2E med ekte UDIR-kall (11 sjekker)
Nabodataでの使用方法
sok_grunnkrets(kartverket)→ 自治体番号 → sok_skole/sok_barnehage → 座標を取得するために hent_* → クライアント側で距離を計算します。将来のフェーズB:バッチで詳細情報を取得し、ハーバーサイン距離を使って半径を指定する skoler_naer_punkt。
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。