DEVELOPER · API REFERENCE

日本の学校検索 API 仕様

全国の学校情報を取得できる REST API のドキュメント。 認証キー不要、商用利用可、レート制限なし。

§ 01

概要

key_off

認証不要

API キー、トークン、サインアップは一切必要ありません。

payments

完全無償

個人・商用問わず無料。出典の明記のみお願いいたします。

all_inclusive

レート制限なし

回数や頻度の制限はありません。常識の範囲でご利用ください。

info

学校コードや関連コードの意味については 入門ガイド をご覧ください。

QUALITY

品質と信頼性

プロダクションで安心して採用いただけるよう、開発・運用の指標をすべて公開しています。

ENDPOINTS
35
REST アクション
RECORDS
59,723
学校マスタ
UPTIME
99.9%
外部監視
SCHEMA
v3
OpenAPI 3.0
Ruby 4.0 Rails 8 OpenAPI 3
verified_user
公的オープンデータに準拠

文部科学省「学校コード」と総務省「全国地方公共団体コード」を一次ソースとして使用。独自加工は最小限です。

schedule
月次自動更新 (cron)

毎月 1 日に文科省・総務省の最新オープンデータを再取り込み。差分は post_transition_school_code として履歴も保持します。

cloud_done
CDN + ヘルスチェック

Cloudflare CDN によるエッジキャッシュと、Coolify によるコンテナレベルのヘルスチェックで自動ロールバック。

science
テスト + カバレッジ計測

RSpec + SimpleCov による継続的なカバレッジ測定。テストはリポジトリで確認できます。

verified
官公庁データ 100%

独自加工は最小限。文部科学省・総務省が公表しているデータをそのまま再配布する形をとっています。

§ 02

REST API 仕様書

OpenAPI 3 フォーマットで全エンドポイントを記述しています。 パラメータ・レスポンス・サンプルが Swagger UI ライクな画面で参照できます。

OPEN API 3 / REDOC
REST API 仕様書を開く
エンドポイント・パラメータ・サンプルレスポンス
arrow_forward
§ 03

稼働状況

BetterUptime による外部監視を 24 時間体制で実施しています。 過去 30 日のアップタイムやレイテンシ、稼働履歴を確認できます。

EXTERNAL MONITOR · BETTERUPTIME
API 稼働状況ダッシュボード
アップタイム · レスポンスタイム · 障害履歴
open_in_new
§ 04

呼び出し例

ターミナルからすぐ試せる実用的な curl サンプル集。

全国の学校を CSV で取得(最初の 50 件)

description API 仕様
schools_to_csv.sh
# 全国の学校を CSV 形式で取得
curl -s 'https://school.teraren.com/schools.json?page=1' \
  | jq -r '.[] | [.code, .name] | @csv'

"A101210330020","札幌市立ひがしなえぼ幼稚園"
"A101210440027","札幌市立きくすいもとまち幼稚園"
"A101210550103","札幌市立かっこう幼稚園"
"A101210660011","札幌市立もいわ幼稚園"
"A101210770027","札幌市立はまなす幼稚園"
"A101210845028","札幌市立あつべつきた幼稚園"
"A101220200017","函館市立戸井幼稚園"
"A101220600193","釧路市立認定こども園阿寒幼稚園"
"A101220600200","釧路市立マリモ幼稚園"
"A101220900010","夕張市立ユーパロ幼稚園"

学校コードで 1 校の情報を取得

description API 仕様
single_school.sh
# 学校コード B101110000010 の詳細を取得
curl -s https://school.teraren.com/schools/B101110000010.json | jq

{
  "code": "B101110000010",
  "name": "北海道教育大学附属札幌小学校",
  "postal_code": "0028075",
  "location": "北海道札幌市北区...",
  "school_type": "B1",
  "establishment_category": 1
}

キーワード検索(「東京大学」)

description API 仕様
search_by_keyword.sh
# s パラメータで部分一致検索
curl -s 'https://school.teraren.com/schools.json?s=東京大学' \
  | jq -r '.[] | "\(.code)  \(.name)"'

D213110000011  東京大学教育学部附属中等教育学校
F113110102700  東京大学

都道府県マスタを JSON で取得

description API 仕様
prefectures.sh
# 47 都道府県すべて取得
curl -s https://school.teraren.com/prefectures.json | jq -r '.[] | .name'

北海道
青森県
岩手県
…
沖縄県
§ 05

MCP サーバー

AI エージェントから本 API を直接呼び出せる Model Context Protocol サーバー。Claude Desktop / Claude Code などに追加するだけで利用できます。

smart_toy

AI 連携

REST を意識せず、自然言語で学校データを問い合わせ。

terminal

npx で起動

インストール不要。npx で即起動。

build

13 ツール提供

学校・教育委員会・都道府県・標準地域などのツールを公開。

Claude Desktop / Claude Code に追加

claude_desktop_config.json または .mcp.json に以下を追加してください。

claude_desktop_config.json
{
  "mcpServers": {
    "school": {
      "command": "npx",
      "args": ["-y", "@matsubokkuri/school-mcp"]
    }
  }
}

提供ツール

list_schools学校レジストリの検索・ページング。
get_school13 桁の MEXT コードで学校を 1 件取得。
list_education_committees教育委員会の検索・ページング。
get_education_committee教育委員会コードで 1 件取得。
list_prefectures47 都道府県マスタ。
get_prefecture2 桁コードで都道府県を 1 件取得。
list_standard_areas総務省標準地域コードの検索・ページング。
get_standard_area5 桁コードで標準地域を 1 件取得。
list_standard_areas_in_prefecture指定都道府県内の標準地域。
list_schools_in_area指定地域・学校種の学校。
list_school_typesマスタ:学校種。
list_establishment_categoriesマスタ:設置区分。
list_main_branch_indicatorsマスタ:本校・分校区分。
NEXT STEP

すべての エンドポイント を確認する。