---
url: /houki-hub/lib/houki-abbreviations.md
description: 法令・通達の略称を正式名と法令 ID に解決し、全角ゆらぎの正規化と鮮度判定を提供する共有ライブラリ
---

# houki-abbreviations

法令・通達の略称辞書と、それを取り巻く小さな関数群です。houki-hub family の MCP サーバーはすべてこのパッケージを依存に持ちます。
MCP サーバーではなく、開発者のコードが import するライブラリです。

* npm: [`@shuji-bonji/houki-abbreviations`](https://www.npmjs.com/package/@shuji-bonji/houki-abbreviations)（最新 0.7.1。houki-egov-mcp 0.6.0 と houki-nta-mcp 0.17.0 が取り込んでいるのは 0.4.1）
* リポジトリ: [shuji-bonji/houki-abbreviations](https://github.com/shuji-bonji/houki-abbreviations)
* 動作環境: Node.js 20 以上。依存パッケージなし
* 関数と型の一覧: [API リファレンス](/reference/lib/houki-abbreviations/)（型定義から自動生成）

## 辞書の中身

174 エントリを 6 分野に分けて持ちます。中身は v0.2.0 以降変わっていません。

| 分野 | 件数 | 例 |
| --- | --- | --- |
| 行政法（administrative） | 48 | 行政手続法、個人情報保護法、電子帳簿保存法 |
| 税法（tax） | 35 | 消費税法、法人税法、消基通、所基通 |
| 商法・会社法（commercial） | 31 | 会社法、金融商品取引法 |
| 労働法（labor） | 28 | 労働基準法、労働安全衛生法 |
| 民法（civil） | 23 | 民法、借地借家法 |
| 会計（accounting） | 9 | 財務諸表等規則 |

種別で見ると、法律 138、省令 16、政令 8、基本通達 8、個別通達 1、規則 2、憲法 1 です。
各エントリは正式名称、法令 ID（e-Gov の `law_id`）、法令番号、別名（「インボイス」→「適格請求書」など）、
そして **どの MCP が担当するか**（`source_mcp_hint`: `houki-egov` 165 件 / `houki-nta` 9 件）を持ちます。

## MCP が使っている版と最新版の関係

houki-egov-mcp と houki-nta-mcp の `package.json` は `^0.4.1` を指定しています。0.x 系の `^` は minor を跨がないので、
両 MCP に入るのは 0.4.x で、0.5 系は入りません。0.5.0 で足した逆引きと検証は MCP からは呼ばれておらず、
辞書の中身も 0.4.1 から変わっていないので、動作上の差はありません。

両 MCP が実際に読み込んでいるのは、公開している 42 記号のうち 16 記号（関数 5・定数 5・型 6）です。
どれを使っているかは、[API リファレンス](/reference/lib/houki-abbreviations/)の一覧にある「family での使用」列で確かめられます。

::: info minor を上げたとき
このパッケージを minor で上げたときは、MCP 側の依存範囲も上げて publish し直す必要があります（次は 0.6.0 の略称展開を houki-nta-mcp が使うとき）。
:::

## 提供する機能

| 機能 | 何をするか |
| --- | --- |
| 略称の解決 | 「法基通」→「法人税基本通達」、「個情法」→「個人情報の保護に関する法律」と法令 ID |
| 逆引き | 法令 ID や法令番号から辞書エントリを引く |
| 表記の正規化 | 全角英数字・記号・空白を半角に揃える。DB への取り込み時と検索時に同じ関数を通し、片方だけ揃わないことを防ぐ |
| 検索クエリの正規化 | 上の正規化に加え、検索向けの前処理を行う |
| 鮮度の判定 | 取得日時からの経過日数を、コンテンツ種別ごとのしきい値と比べて `fresh` / `stale` などに分類する |
| 似た名前の提案 | 打ち間違いに対して、編集距離の近い候補を返す |
| 辞書の検証 | 全エントリの法令 ID の形式と重複を検査する。本文から法令名を抽出する補助もある |

## 設計の方針

* 辞書のエントリは、正式名称・法令 ID・法令番号を **e-Gov の値と一致させる** ことを検証で確かめます。推測で書きません
* 管轄（`source_mcp_hint`）は「その MCP が本文を取りに行けるか」で決めます。houki-egov-mcp に「消基通」を渡すと、解決はしますが本文は取りに行かず、houki-nta-mcp への案内を返します
* 正規化は **幅（全角・半角）だけ** を揃えます。漢数字と算用数字の変換（「第三十条」と「第30条」）は別の関心事として切り分けており、次の版の課題です

## 次の版で予定していること

* 略称から複数の正式名への展開（houki-nta-mcp の検索で「消基通」と「消費税法基本通達」の両方を引くため）
* 法令番号の漢数字と算用数字の相互変換
* 法令 ID の検証を月次で自動実行する GitHub Actions
