Skip to main content
Glama
Sora-bluesky

building-standards-act-mcp

by Sora-bluesky

building-standards-act-mcp

npm version CI Node.js License: MIT

建築確認申請に必要な法令・告示を e-Gov 法令 API からリアルタイム取得する MCP サーバー。

AI の建築法規回答に含まれるハルシネーションを、条文原文との照合によって防ぐ。

特徴

  • 法令取得 — e-Gov 法令 API v2 から条文を Markdown 形式で取得

  • 法令検索 — キーワードで法令を横断検索

  • 法令全文取得 — 法令全体のテキストを取得

  • 告示取得 — 建築基準法が技術基準を委任している告示を国土交通省の告示データベース(PDF)から取得

  • 検索ファースト — e-Gov API 検索による動的な法令解決。プリセットに限らず、e-Gov 収録の全法令を取得可能

  • 略称マップ — 建築基準法・消防法・都市計画法ほか 112 法令の略称を登録済み。「建基法」「都計法」「消防法」等の略称で指定可能

  • キャッシュ — 検索 30 分・法令データ 24 時間の TTL キャッシュ(永続化オプションあり)

  • API 耐障害性 — 自動リトライ(exponential backoff)+ サーキットブレーカー

  • 運用可視化 — 構造化 JSON ログ + 使用量メトリクス(get_metrics ツール)

Related MCP server: e-Gov Law MCP Server

Web で使う(Vercel デプロイ)

Vercel にデプロイすると、Claude.ai からすぐに使えます。環境変数の設定は不要です(e-Gov API は公開 API)。

Deploy with Vercel

Claude.ai でのセットアップ(Free/Pro/Max/Team/Enterprise)

注意: Custom Connectors はベータ版のため、接続が不安定な場合があります。安定してご利用いただくには npx(ローカル)でのセットアップもご検討ください。

  1. 上の「Deploy with Vercel」ボタンでデプロイ(ワンクリック)

  2. claude.ai → プロフィールアイコン → Settings → Connectors

  3. 「Add custom connector」をクリック

  4. URL に https://your-app.vercel.app/api/mcp(your-app をデプロイ先に置換)を入力

  5. チャットで「+」→「Connectors」→ building-standards-act を有効化

  6. 「建築基準法第20条を教えて」と質問

参考: Get started with custom connectors using remote MCP

Vercel Free tier の制限事項

  • 関数の実行時間が 10 秒 に制限されます(Pro プランでは 60 秒)

  • get_kokuji(告示取得)は PDF ダウンロード + パースが重いため、タイムアウトする場合があります

  • check_law_updates の大規模グループ(9章: 53法令)は Free tier ではタイムアウトする場合があります(Pro プランでは並行実行により対応可能)

  • BUILDING_LAW_REQUEST_TIMEOUT=8000 を設定してタイムアウトを短縮できます


ローカルで使う(stdio)

npx(推奨)

インストール不要で実行できます。

npx -y building-standards-act-mcp

Claude Desktop

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

{
  "mcpServers": {
    "building-standards-act": {
      "command": "npx",
      "args": ["-y", "building-standards-act-mcp"]
    }
  }
}

Claude Code

claude mcp add building-standards-act -- npx -y building-standards-act-mcp

Windows + VS Code 拡張機能の場合

VS Code 拡張機能では npx 経由の起動が Connection closed エラーになる場合があります。 プロジェクトルートに .mcp.json を作成してください。

Step 1: グローバルインストール

npm install -g building-standards-act-mcp

Step 2: パスの確認

where node        # → node.exe のフルパス(例: C:\Program Files\nodejs\node.exe)
npm root -g       # → グローバル node_modules のパス

Step 3: .mcp.json を作成

取得したパスで置き換えてください(パス区切りは / を使用):

{
  "mcpServers": {
    "building-standards-act": {
      "command": "<where node の出力>",
      "args": ["<npm root -g の出力>/building-standards-act-mcp/dist/index.js"]
    }
  }
}

注意: .mcp.json にはマシン固有のパスが含まれるため、.gitignore に追加してください。

ローカル(ソースから)

git clone https://github.com/Sora-bluesky/building-standards-act-mcp.git
cd building-standards-act-mcp
npm install
npm run build
{
  "mcpServers": {
    "building-standards-act": {
      "command": "node",
      "args": ["/path/to/building-standards-act-mcp/dist/index.js"]
    }
  }
}

MCP ツール

ツール

説明

get_law

条番号を指定して法令の条文を取得する。略称・正式名称のいずれでも指定可能

get_full_law

法令の全文を取得する。条番号を指定せず法令全体のテキストを返す

search_law

法令名(タイトル)で建築関連法令を検索する。略称マップと e-Gov API の両方を検索。条文本文のキーワード検索は不可

get_kokuji

建築基準法が技術基準を委任している告示の全文を取得する(省エネ告示は国交省 PDF から直接取得)

check_law_updates

法令の改正状況を e-Gov API で確認する(単体/バッチ/改正履歴表示に対応)

get_laws_batch

複数の法令・条文を一括取得する(最大20件、同一法令は1回のAPI呼び出しで効率処理)

verify_citation

AIの回答に含まれる法令引用を検証する(条文存在確認・テキスト照合、最大10件)

suggest_related

指定した条文の関連法令・委任先・同法令内参照を自動抽出して提案する

analyze_article

条文の構造解析メタデータ(項数・号数・参照統計・プレビュー)をJSON形式で返す

get_metrics

サーバーの使用量メトリクスを返す(ツール呼び出し回数・APIリクエスト数・キャッシュヒット率)

パラメータ

get_law

パラメータ

説明

law_name

法令名(正式名称または略称)

建築基準法, 建基法

article_number

条文番号(附則・別表にも対応)

第20条, 附則, 別表第一

format

出力形式(text または structured、省略時は text

structured

get_full_law

パラメータ

説明

law_name

法令名(正式名称または略称)

建築基準法施行令, 建基令

search_law

パラメータ

説明

keyword

検索キーワード

耐火構造, 用途変更

get_kokuji

パラメータ

説明

kokuji_name

告示名

耐火構造の構造方法を定める件

check_law_updates

パラメータ

説明

law_name

法令名または略称(単体チェック)

建築基準法

group

章グループ(バッチチェック、省略時は全章)

1章

show_history

改正履歴の詳細を表示(law_name 指定時)

true

get_laws_batch

パラメータ

説明

requests

取得対象の配列。各要素に law_name, article_number, format を指定

verify_citation

パラメータ

説明

citations

検証対象の配列。各要素に law_name, article_number, claimed_text(省略可)

パラメータ

説明

law_name

法令名(正式名称または略称)

建築基準法

article_number

条文番号

第20条

analyze_article

パラメータ

説明

law_name

法令名(正式名称または略称)

建築基準法

article_number

条文番号

第20条

get_metrics

パラメータなし。サーバー起動後の稼働時間・ツール呼び出し回数・API リクエスト数・キャッシュヒット率を返す。

使用例

条文取得

建築基準法第20条を取得して
→ get_law(law_name="建築基準法", article_number="20")

略称使用

建基法第6条の2を取得して
→ get_law(law_name="建基法", article_number="第6条の2")

法令検索

耐火構造に関する法令を検索して
→ search_law(keyword="耐火構造")

全文取得

建築基準法施行令の全文を取得して
→ get_full_law(law_name="建築基準法施行令")

告示取得

耐火構造の構造方法を定める件を取得して
→ get_kokuji(kokuji_name="耐火構造の構造方法を定める件")

附則取得

建築基準法の附則を取得して
→ get_law(law_name="建築基準法", article_number="附則")

建築基準法施行令の附則第1条を取得して
→ get_law(law_name="建築基準法施行令", article_number="附則第1条")

別表取得

建築基準法の別表第一を取得して
→ get_law(law_name="建築基準法", article_number="別表第一")

ハルシネーション防止ワークフロー

AI が建築法規について回答する際、条文の引用ミスや存在しない条文の捏造(ハルシネーション)が発生することがあります。本ツールは 4 段階の防止メカニズム でこれを解決します。

基本ワークフロー(自動実行)

ユーザーの質問
  ↓
1. AI が仮回答を作成
  ↓
2. get_law / get_kokuji で引用した条文・告示の原文を取得
  ↓
3. 原文と仮回答を照合 → 誤りがあれば修正
  ↓
4. 2〜3 を収束するまで繰り返す(最大 4 ラウンド)
  ↓
照合済みの条文番号・告示番号を引用元として明示した最終回答

このワークフローは MCP サーバーの システムプロンプト に組み込まれており、AI が自動的に実行します。

追加の検証ツール

基本ワークフローに加えて、以下の専用ツールを使用することでさらに精度を高められます。

ツール

用途

使い方

verify_citation

AI の回答に含まれる 法令引用を自動検証 する

回答テキストから条文番号・法令名を自動抽出し、e-Gov API から原文を取得して照合。不一致があれば指摘し、正しい条文を提示する(最大 10 件同時検証)

suggest_related

指定条文の 関連法令を自動提案 する

条文間の参照(委任先・同法令内参照)を解析し、見落としがちな関連規定を提示。施行令への委任や別の章への参照を漏れなく把握できる

analyze_article

条文の 構造を解析 する

項数・号数・参照先の統計情報をメタデータとして返す。複雑な条文の全体像を把握し、読み落としを防ぐ

get_laws_batch

複数条文を一括取得 する

関連する複数の条文をまとめて取得し、条文間の整合性を確認する(最大 20 件)

使用例:引用検証

「建築基準法第20条で木造建築物の構造計算が必要な条件を教えて」

→ AI が回答を作成
→ verify_citation で回答内の引用を自動検証
→ 「第20条第1項第四号の引用が正確であることを確認しました」
  または
→ 「第20条第1項第三号の記載に誤りがあります。正しくは…」

対応法令一覧(112 法令 + e-Gov 全法令)

以下の 112 法令は略称マップに登録済みです。略称マップに含まれない法令も、正式名称を指定すれば e-Gov API 検索で動的に取得できます。

総則(4 法令)

法令名

略称

建築基準法

建基法, 基準法

建築基準法施行令

建基令, 基準法施行令

建築基準法施行規則

建基規則

民法

手続関連規定(6 法令)

法令名

略称

建築士法

士法

建築士法施行令

士法施行令

建築士法施行規則

士法施行規則

建設業法

建設業法施行令

建設業法施行規則

集団規定・街づくり(13 法令)

法令名

略称

都市計画法

都計法

都市計画法施行令

都計令

都市再開発法

再開発法

景観法

密集市街地における防災街区の整備の促進に関する法律

密集法

都市の低炭素化の促進に関する法律

低炭素法

屋外広告物法

文化財保護法

土地区画整理法

区画整理法

都市緑地法

生産緑地法

国土利用計画法

国土利用計画法, 国土法

都市計画法施行規則

都計規則

防火・耐火規定(4 法令)

法令名

略称

消防法

消防法施行令

消防令

消防法施行規則

消防規則

危険物の規制に関する規則

危険物規則

構造規定(7 法令)

法令名

略称

地震防災対策特別措置法

地震防災特措法

津波防災地域づくりに関する法律

津波防災法

特定都市河川浸水被害対策法

特定都市河川法

住宅地区改良法

建築物における衛生的環境の確保に関する法律

建築物衛生法, ビル管法

建築物の耐震改修の促進に関する法律施行令

耐震改修促進法施行令

建築物の耐震改修の促進に関する法律施行規則

耐震改修促進法施行規則

建築材料(3 法令)

法令名

略称

産業標準化法

JIS法, 産業標準化法

製造物責任法

PL法, 製造物責任法

石綿障害予防規則

石綿則, アスベスト規則

設備関連規定(5 法令)

法令名

略称

浄化槽法

電気工事士法

電気用品安全法

電安法

浄化槽法施行令

環境省関係浄化槽法施行規則

浄化槽法施行規則

その他(5 法令)

法令名

略称

特定住宅瑕疵担保責任の履行の確保等に関する法律

住宅瑕疵担保履行法

不動産登記法

不登法

借地借家法

不動産の鑑定評価に関する法律

不動産鑑定法

住宅宿泊事業法

民泊新法

建築基準関係規定・建築関連法令(52 法令)

法令名

略称

旅館業法

食品衛生法

風俗営業等の規制及び業務の適正化等に関する法律

風営法, 風適法

興行場法

公衆浴場法

医療法

児童福祉法

社会福祉法

老人福祉法

学校教育法

駐車場法

火薬類取締法

高圧ガス保安法

液化石油ガスの保安の確保及び取引の適正化に関する法律

液石法, LPガス法

ガス事業法

電気事業法

宅地造成及び特定盛土等規制法

盛土規制法, 宅造法

宅地建物取引業法

宅建業法

道路法

土地収用法

農地法

森林法

河川法

港湾法

地すべり等防止法

急傾斜地の崩壊による災害の防止に関する法律

急傾斜地法

土砂災害警戒区域等における土砂災害防止対策の推進に関する法律

土砂災害防止法

危険物の規制に関する政令

危険物政令

水道法

下水道法

廃棄物の処理及び清掃に関する法律

廃棄物処理法, 廃掃法

土壌汚染対策法

労働安全衛生法

安衛法, 労安法

建設工事に係る資材の再資源化等に関する法律

建設リサイクル法

大気汚染防止法

水質汚濁防止法

騒音規制法

振動規制法

悪臭防止法

高齢者、障害者等の移動等の円滑化の促進に関する法律

バリアフリー法

高齢者、障害者等の移動等の円滑化の促進に関する法律施行令

バリアフリー法施行令

道路交通法

道交法

都市公園法

自然公園法

古都における歴史的風土の保存に関する特別措置法

古都保存法

空家等対策の推進に関する特別措置法

空家対策特措法

介護保険法

障害者の日常生活及び社会生活を総合的に支援するための法律

障害者総合支援法

墓地、埋葬等に関する法律

墓地埋葬法

高齢者の居住の安定確保に関する法律

高齢者住まい法

労働安全衛生法施行令

安衛令

宅地造成及び特定盛土等規制法施行令

盛土規制法施行令

省エネ・住宅関連法(14 法令)

法令名

略称

建築物のエネルギー消費性能の向上等に関する法律

建築物省エネ法

建築物のエネルギー消費性能の向上等に関する法律施行令

建築物省エネ法施行令

建築物エネルギー消費性能基準等を定める省令

省エネ基準省令

エネルギーの使用の合理化及び非化石エネルギーへの転換等に関する法律

省エネ法

住宅の品質確保の促進等に関する法律

品確法, 住宅品質確保法

長期優良住宅の普及の促進に関する法律

長期優良住宅法

マンションの管理の適正化の推進に関する法律

マンション管理適正化法

マンションの建替え等の円滑化に関する法律

マンション建替え法

建物の区分所有等に関する法律

区分所有法

住宅の品質確保の促進等に関する法律施行令

品確法施行令

住宅の品質確保の促進等に関する法律施行規則

品確法施行規則

長期優良住宅の普及の促進に関する法律施行令

長期優良住宅法施行令

長期優良住宅の普及の促進に関する法律施行規則

長期優良住宅法施行規則

建築物のエネルギー消費性能の向上等に関する法律施行規則

建築物省エネ法施行規則

既存建築物関連(3 法令)

法令名

略称

建築物の耐震改修の促進に関する法律

耐震改修促進法

被災市街地復興特別措置法

被災市街地復興法

被災区分所有建物の再建等に関する特別措置法

被災マンション法

告示の取得

e-Gov API は告示を収録していないため、get_kokuji は国土交通省の告示・通達データベース(Excel → PDF)から正式名称で動的に取得します。見つからない場合は e-Gov API のキーワード検索にフォールバックします。

ハードコードされたプリセットは持たず、常に最新の告示データベースから取得するため、改正後も陳腐化しません。

耐火構造の構造方法を定める件を取得して
→ get_kokuji(kokuji_name="耐火構造の構造方法を定める件")

木造建築物の軸組の設置の基準を定める件を取得して
→ get_kokuji(kokuji_name="木造建築物の軸組の設置の基準を定める件")

法令解決の仕組み

  • 法令名(正式名称または略称)を受け取ると、e-Gov API のキーワード検索で law_id を動的に解決します

  • 略称マップに登録済みの法令は、略称から正式名称に展開した上で検索します

  • 略称マップに含まれない法令も、正式名称を指定すれば取得可能です

  • check_law_updates ツールで法令の改正状況を確認できます(e-Gov API のリビジョン履歴を参照)

注意: 自治体条例(都道府県・市区町村の条例)は e-Gov API の収録対象外のため取得できません。対象は国の法律・政令・省令・告示のみです。 例: 東京都建築安全条例、横浜市建築基準条例などは取得不可

環境変数

変数

説明

デフォルト

BUILDING_LAW_CACHE

キャッシュモード(memory / file

memory

BUILDING_LAW_CACHE_DIR

ファイルキャッシュの保存先ディレクトリ

~/.cache/building-standards-act-mcp/

BUILDING_LAW_LOG_LEVEL

ログレベル(debug / info / warn / error

info

BUILDING_LAW_REQUEST_TIMEOUT

API リクエストタイムアウト(ミリ秒)

30000

BUILDING_LAW_RATE_LIMIT_MS

API 呼び出し間隔(ミリ秒)

200

BUILDING_LAW_CONCURRENCY

最大並行 API 呼び出し数

5

永続キャッシュの有効化

{
  "mcpServers": {
    "building-standards-act": {
      "command": "npx",
      "args": ["-y", "building-standards-act-mcp"],
      "env": {
        "BUILDING_LAW_CACHE": "file"
      }
    }
  }
}

技術仕様

項目

e-Gov API ベース URL

https://laws.e-gov.go.jp/api/2

MLIT 告示データベース

https://www.mlit.go.jp/notice/

検索キャッシュ TTL

30 分

法令データキャッシュ TTL

24 時間

MLIT Excel キャッシュ TTL

6 時間

告示 PDF テキストキャッシュ

24 時間

リビジョン履歴キャッシュ TTL

1 時間

リクエストタイムアウト

30 秒(環境変数で変更可能)

API 並行呼び出し

最大 5 並行(200ms 間隔)

Vercel デプロイ

対応(MCP-over-HTTP + REST API)

Vercel 関数タイムアウト

60 秒(maxDuration)

Node.js

>= 20.0.0

セキュリティ

  • 読み取り専用: 本サーバーは法令テキストの取得のみを行い、書き込み・変更・削除操作は一切ありません

  • 公開データのみ: e-Gov 法令 API および国土交通省告示データベースから公開情報を取得します。API キーや認証情報は不要です

  • 入力バリデーション: 全ツールの入力パラメータに文字数上限を設定しています(OWASP MCP Top 10 MCP05 対応)

  • SSRF 対策: PDF 取得先を政府ドメイン(www.mlit.go.jp)に限定しています

  • キャッシュ制限: インメモリキャッシュにエントリ数上限と TTL 自動失効を設定し、メモリ枯渇を防止しています

  • 引用検証: verify_citation ツールで AI が生成した法令引用を条文原文と照合できます

データソース

免責事項

本 MCP サーバーは、e-Gov 法令検索および国土交通省告示・通達データベースから取得した情報を提供しますが、掲載情報の正確性・完全性を保証するものではありません。

本ツールの利用に伴って発生した不利益や問題について、開発者は一切の責任を負いません。正確な条文の確認には、必ず官報または法令集の原本を参照してください。

国土交通省は掲載されている情報の正確性については万全を期すよう努力しておりますが、本ページのデータの利用に伴って発生した不利益や問題について、責任を負うものではありません。 — 国土交通省 告示・通達データベース

謝辞

本プロジェクトは tax-law-mcp(MIT License, Copyright (c) 2026 Kentaro Ajisaka)のアーキテクチャおよびコードを参考に開発しました。

ライセンス

MIT

Available Tools

10 tools
analyze_articleB

条文の構造を解析し、項数・号数・参照統計・プレビューなどのメタデータをJSON形式で返す。AIが要約・解説を生成する際の素材データとして活用。

ParametersJSON Schema
NameRequiredDescriptionDefault
law_nameYes法令名(正式名称または略称。例: 建築基準法、建基法)
article_numberYes条文番号(例: 第20条、20)

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It states the tool returns JSON metadata, implying a read-only operation, but does not explicitly confirm this or disclose any side effects, rate limits, or authentication needs. The description adds some transparency about the output nature but lacks full disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. It front-loads the main action (structural analysis and metadata return) and adds context (use as source for AI generation). It is appropriately sized for the tool's simplicity, though it could be slightly more precise about output details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 2 parameters, no nested objects, no output schema, and 100% schema coverage, the description is adequate but not complete. It mentions the output format (JSON) and lists example metadata fields, but does not specify the exact structure or any edge cases. Relative to the complexity, it meets a minimum viable standard.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% because both law_name and article_number have descriptive examples in the schema. The description does not add new meaning beyond the schema, so the baseline score of 3 applies. No param-specific guidance is provided beyond what the schema already contains.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool analyzes legal article structure and returns metadata like paragraph counts and reference statistics. It uses a specific verb-resource combination ('逐条の構造を解析し...メタデータを返す') and mentions the use case for AI summaries. However, it does not explicitly differentiate from sibling tools like get_law or search_law, which limits clarity for agent selection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for structural analysis but provides no explicit guidance on when to use this tool versus alternatives (e.g., get_law for full text, search_law for searching). No when-not-to-use or prerequisite conditions are mentioned, leaving the agent to infer the tool's niche without concrete direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_law_updatesA

法令の改正状況をe-Gov APIで確認する。法令名指定で単体チェック、グループ指定でバッチチェック、show_historyで改正履歴表示が可能。

ParametersJSON Schema
NameRequiredDescriptionDefault
groupNo検証対象の章グループ(例: 1章)。省略時は全プリセットをチェック。
law_nameNo法令名または略称(例: 建築基準法、建基法)。単体チェックに使用。
show_historyNotrue で改正履歴の詳細を表示。law_name 指定時のみ有効。

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description mentions external API dependency and the three functionalities, but lacks details on error handling, rate limits, or behavior when law_name is missing. No annotations provided, so description carries full burden.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single, well-structured sentence with no wasted words; each clause adds essential information about a different mode.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 3 optional parameters and no output schema, the description covers the main behaviors and parameter interactions, though output format and error scenarios are not detailed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Parameter schema covers 100% with descriptions; tool description adds value by grouping parameters into usage modes and noting that show_history only works with law_name, clarifying relationships beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool checks law revision status via e-Gov API, and distinguishes three usage modes (single, batch, history), effectively differentiating from sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use each mode (single check with law_name, batch with group, history with show_history), but does not explicitly exclude other uses or compare to siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_full_lawA

法令の全文を取得する。条番号を指定せず法令全体のテキストを返す。

ParametersJSON Schema
NameRequiredDescriptionDefault
law_nameYes法令名(正式名称、略称のいずれか。例: 建築基準法施行令、建基令)

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states the action (get text) and scope (full law), which is adequate for a read-only operation. However, it does not disclose any additional behavioral traits like rate limits or authentication, though these are less critical for a simple retrieval.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no wasted words. It front-loads the purpose and is efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (one parameter, no output schema, no annotations), the description is sufficient. It clearly communicates the tool's function and input. It could mention the output format or language, but it is not critically missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the input schema already fully describes the parameter 'law_name'. The description does not add extra meaning beyond what is in the schema, so a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'get' and resource 'full law text'. It distinguishes from siblings by explicitly saying it returns the entire law without article numbers, which differentiates it from tools like 'get_law' or 'analyze_article'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description indicates when to use: when you need the full text without specifying article numbers. It implicitly suggests using other tools for article-level queries, but does not explicitly name alternatives or state when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_kokujiA

建築基準法が技術基準を委任している告示の全文を取得する。国土交通省の告示データベース(PDF)から取得し、見つからない場合はe-Gov APIで検索を試みる。

ParametersJSON Schema
NameRequiredDescriptionDefault
kokuji_nameYes告示名(例: 耐火構造の構造方法を定める件、不燃材料を定める件)

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the two-step retrieval process (database then fallback API), but lacks detail on output format (e.g., PDF text), error handling, or limitations—especially important since no annotations exist.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences efficiently convey purpose and method. No fluff, though the structure could separate purpose from process more cleanly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers purpose and retrieval logic adequately for a simple tool, but omits the return format and any prerequisites (e.g., internet access), which could confuse an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter is fully described in the schema (including examples), so the description adds no extra semantic value. Baseline 3 applies due to 100% schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves the full text of notifications (kokuji) delegated by the Building Standards Law, distinct from sibling tools that handle laws, articles, or searches.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for retrieving kokuji text, but does not explicitly indicate when to use it over alternatives like get_law or search_law, nor does it provide exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_lawB

条番号を指定して法令の条文を取得する。附則・別表にも対応。略称・正式名称のいずれでも指定可能。format=structured で条→項→号の階層構造をJSON形式で取得可能。

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNo出力形式。text: 従来のテキスト形式、structured: 条→項→号の階層を持つJSON構造化形式text
law_nameYes法令名(正式名称、略称のいずれか。例: 建築基準法、建基法)
article_numberYes条文番号(例: 第20条、20、第6条の2、附則、附則第3条、別表第一)

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

注釈が一切ないため、説明文が行動開示の全責任を負う。format=structuredでの階層構造JSON出力が可能であることを追加で説明しているが、エラー時や認証要件、レート制限などについての言及はなく、最小限の開示にとどまる。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

3文で必要十分な情報を提供しており、無駄がない。最初の文でツールの主要目的を明確に述べ、続けてスコープ(附則・別表対応)と指定方法(略称可)、特殊出力形式(structured)を簡潔に説明している。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

出力スキーマがなく、注釈もない状況で、説明文はツールの機能をある程度カバーしているが、返却されるデータの構造(text形式の場合)、エラーハンドリング、ページネーションなどの実用的な詳細が欠けており、完全とは言えない。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

入力スキーマのカバレッジは100%で、スキーマ自体がパラメータをよく説明している。説明文は、正式名称/略称の両方が指定可能であること、article_numberに附則・別表が使えること、formatの効果を補足しており、スキーマを超える価値を追加している。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

明確に、「条番号を指定して法令の条文を取得する」と記述されており、附則・別表への対応や略称使用も明示。 siblings(get_full_law, search_law等)との差別化はされていないが、目的は具体的で理解しやすい。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

どのような場合にこのツールを使うべきか、あるいは使うべきでないかについてのガイダンスがない。 siblingsとの比較や、代替手段の示唆がないため、エージェントが適切な選択をするための情報が不足している。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_laws_batchB

複数の法令・条文を一括取得する。同一法令の複数条文はAPI呼び出し1回で効率的に処理。最大20件。

ParametersJSON Schema
NameRequiredDescriptionDefault
requestsYes取得対象の条文リスト(最大20件)

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral disclosure. It mentions efficiency and max items but fails to disclose whether the operation is read-only, authorization needs, rate limits, or error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with main action, no superfluous text. Efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description omits return value details, error handling, and potential side effects. For a batch tool, this leaves the agent uncertain about what the response contains.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameters are already documented. The description adds context about batching but no additional semantic meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool batches retrieval of multiple laws/articles, emphasizing efficiency for same-law articles and a max of 20 items. It distinguishes from siblings like get_law (single) and search_law (search).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for batch retrieval but does not provide explicit guidance on when to use versus alternatives. No 'when not to use' or trade-offs are mentioned, though the batch context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_metricsA

サーバーの使用量メトリクスを返す(ツール呼び出し回数・APIリクエスト数・キャッシュヒット率・稼働時間)

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description bears full responsibility for behavioral disclosure. It states the tool returns metrics, implying a read operation, but does not mention possible side effects, permission requirements, or performance implications. The lack of parameters simplifies but still leaves gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that efficiently conveys the tool's purpose and included metrics. It is front-loaded with the action and resource, with zero wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description enumerates specific metrics returned, which is sufficient for a simple read-only tool with no parameters. However, without an output schema, some detail about the format or aggregation period could enhance completeness. Overall, it provides adequate context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has no parameters, and schema description coverage is 100% by default. With zero parameters, the description does not need to add parameter-level detail. Baseline score of 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns server usage metrics, listing specific types (tool calls, API requests, cache hit rate, uptime). The verb '返す' (returns) indicates a read operation. The resource 'メトリクス' (metrics) is distinct from sibling tools which focus on law-related functions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool over alternatives or any prerequisites. Usage is implied by the tool's purpose (getting server metrics), but there is no explicit context or exclusion list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_lawA

キーワードで建築関連法令を横断検索する。登録済みエイリアスとe-Gov APIの両方を検索する。注意: 検索対象は法令名(タイトル)のみ。条文本文のキーワード検索は不可。条文内の用語を探す場合は get_law で条番号を直接指定するか、get_full_law で全文取得してください。

ParametersJSON Schema
NameRequiredDescriptionDefault
keywordYes検索キーワード(例: 耐火構造、避難階段、建築確認)

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, but the description fully discloses the tool's behavior: it searches only law names/titles, not article text, and uses both registered aliases and the e-Gov API. The limitation is clearly stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with purpose, immediate limitations, and alternatives. Every sentence is informative and necessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (search over multiple sources, sibling tools) and absence of output schema, the description provides sufficient context: domain (building laws), data sources, limitation, and referral to sibling tools. It is complete for an AI agent to decide when to use it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides a description of the 'keyword' parameter with examples. The tool description adds context about how the keyword is used (searches titles, both data sources) and explains the limitation. This adds value beyond the schema, though the schema already covers the parameter well.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it cross-searches building-related laws by keyword, searching both aliases and e-Gov API. It distinguishes itself from siblings like get_law and get_full_law by specifying the search scope (title only) and providing alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when not to use this tool (for article text search) and points to alternative tools (get_law, get_full_law), providing clear usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_citationA

AIの回答に含まれる法令引用を検証する。条文の存在確認、テキスト照合による正確性チェックが可能。最大10件。

ParametersJSON Schema
NameRequiredDescriptionDefault
citationsYes検証対象の引用リスト(最大10件)

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It describes capabilities (existence check, text matching) and a limit of 10 items, but lacks details on side effects, authentication, or error handling. Transparency is moderate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences in Japanese, front-loaded with the core action and capabilities. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description does not explain the output or return value of the verification, which is critical for an agent to interpret results. Nor does it mention prerequisites or error handling. Given no output schema, this is a significant gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The tool description adds only the maxItems constraint, which is already present in the schema. Little added value beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: verifying legal citations in AI responses, with existence check and text matching. It distinguishes from sibling tools like search_law or get_law which are for retrieval, not verification.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for verifying AI-generated legal citations but does not explicitly mention when not to use it or provide alternatives. The context is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 10 tool updatesv1.7.0
    • First observedanalyze_article
    • First observedcheck_law_updates
    • First observedget_full_law
    • First observedget_kokuji
    • First observedget_law
    • First observedget_laws_batch
    • First observedget_metrics
    • First observedsearch_law
    • First observedsuggest_related
    • First observedverify_citation

TDQS

A4/5.0

Scored across 10 tools

Disambiguation5/5

すべてのツールが明確に異なる目的を持ち、重複がありません。analyze_article、check_law_updates、get_full_lawなど、各ツールの役割が一意に定義されています。

Naming Consistency5/5

一貫してスネークケース、動詞+名詞のパターン(例:analyze_article、get_full_law)が使用されており、命名規則は一貫しています。

Tool Count5/5

10個のツールは建築基準法というドメインに適切な数であり、必要な機能が過不足なく揃っています。

Completeness4/5

条文本体のキーワード検索ができない点など、わずかなギャップはあるが、全体として条文取得、更新確認、引用検証など主要なユースケースをカバーしています。

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables intelligent search and retrieval of Japanese legal statutes through the e-Gov API. Supports smart lookup of laws and articles with abbreviation recognition, batch processing, and multi-tier caching for high-performance legal research.
    8
    13
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables querying Japanese national laws and ordinances via the e-Gov Law API, allowing AI agents to access legal data through natural language questions.
    9
    MIT