houki-abbreviations — API リファレンス
INFO
v0.7.1 の dist/index.d.ts から自動生成しました(関数 21 個・定数 6 個・インターフェース 13 個・型 6 個・2026-10-10)。手で編集しないでください。再生成は node scripts/generate-reference.mjs です。
このページは自動生成の API リファレンスの入り口です。 関数と値は 1 つずつページがあり、シグネチャ・説明・例をパッケージの型定義(dist/index.d.ts)から、利用者と得られる結果・扱わないこと・処理の流れを各機能の仕様書(specs/current/)から写しています。辞書の中身や設計の方針は解説ページにあります。
houki-hub family の MCP サーバーが共有するために公開しているパッケージです。0.x の間は minor で破壊的変更が入ることがあります。安定した互換性が要るときは版を固定してください。
公開しているのは関数 21 個・定数 6 個・インターフェース 13 個・型 6 個です。そのうち houki-egov-mcp と houki-nta-mcp が実際に import しているのは 17 個で、残りは公開しているだけです(テストコードの import は数えていません)。一覧は下に用途ごとにまとめてあり、記号の名前から、その記号のページ(型とインターフェースは型のページの見出し)を開けます。
読み込み方
import { resolveAbbreviation } from '@shuji-bonji/houki-abbreviations';入口は . の 1 つだけで、深いパスは公開していません。ESM 専用です(package.json の "type": "module")。CommonJS の require では読めません。Node.js は >=20.0.0 が要ります。実行時の依存パッケージはありません。
辞書の解決
利用者や LLM が書く「消法」「個情法」のような略称を、e-Gov の API を引ける正式名称と law_id に直すための関数です。分野・種別・管轄 MCP でエントリを絞り込むものもここに置いています。
| 記号 | 種類 | 一言 | 仕様書ページ | 追加された版 | family での使用 |
|---|---|---|---|---|---|
getAbbreviationStats | 関数 | 辞書全体の統計を返す。 | 仕様 | v0.1.0 | 未使用 |
listByCategory | 関数 | 指定カテゴリのエントリ一覧を返す。 | 仕様 | v0.1.0 | 未使用 |
listByDomain | 関数 | 指定ドメインのエントリ一覧を返す。 | 仕様 | v0.1.0 | 未使用 |
listBySourceMcpHint | 関数 | 指定 MCP が管轄するエントリ一覧を返す。 | 仕様 | v0.1.0 | houki-egov-mcp |
resolveAbbreviation | 関数 | 略称・通称・正式名称のいずれかから辞書エントリを引く。 | 仕様 | v0.1.0 | houki-egov-mcphouki-nta-mcp |
abbreviationEntries | 定数 | 全分野を結合した辞書 | 仕様 | v0.1.0 | 未使用 |
AbbreviationStats | インターフェース | getAbbreviationStats が返す辞書統計。 | — | v0.1.0 | 未使用 |
ResolveAbbreviationOptions | インターフェース | resolveAbbreviation に渡せるオプション。 | — | v0.3.0 | 未使用 |
表記の正規化
全角の数字・記号・空白を半角に揃えます。DB に取り込むときと検索するときに同じ関数を通すことで、片方だけ揃わずにヒットしなくなるのを防ぎます。
| 記号 | 種類 | 一言 | 仕様書ページ | 追加された版 | family での使用 |
|---|---|---|---|---|---|
kanjiToNumber | 関数 | 漢数字を数値にする。 | 仕様 | v0.6.0 | 未使用 |
normalizeJpText | 関数 | 日本語テキストの全角ゆらぎを保守的に半角化する。 | 仕様 | v0.3.0 | houki-egov-mcphouki-nta-mcp |
normalizeLawNum | 関数 | 法令番号の表記を、照合に使える 1 つの形に揃える。 | 仕様 | v0.6.0 | 未使用 |
normalizeSearchQuery | 関数 | 検索クエリ向けの積極的な正規化。 | 仕様 | v0.3.0 | houki-egov-mcphouki-nta-mcp |
検索とあいまい一致
辞書に無い言い方や打ち間違いで 0 件になったときに、近い候補を返すための関数です。部分一致で候補を並べるものと、編集距離で打ち間違いを拾うものがあります。
| 記号 | 種類 | 一言 | 仕様書ページ | 追加された版 | family での使用 |
|---|---|---|---|---|---|
findSimilar | 関数 | あいまい一致 (Levenshtein 距離ベース)。 | 仕様 | v0.4.0 | 未使用 |
levenshtein | 関数 | Levenshtein 距離 (動的計画法、O(m*n) 時間 / O(min(m,n)) 空間)。 | 仕様 | v0.4.0 | 未使用 |
searchByName | 関数 | 名前で検索 (部分一致)。 | 仕様 | v0.4.0 | 未使用 |
suggestCorrection | 関数 | 「もしかして」サジェスト。 | 仕様 | v0.4.0 | 未使用 |
FuzzyMatch | インターフェース | findSimilar が返す 1 件。 | — | v0.4.0 | 未使用 |
FuzzyOptions | インターフェース | findSimilar のオプション | — | v0.4.0 | 未使用 |
SearchFilter | インターフェース | filter 構造。 | — | v0.4.0 | 未使用 |
SearchOptions | インターフェース | searchByName のオプション | — | v0.4.0 | 未使用 |
SearchMode | 型 | 部分一致モード | — | v0.4.0 | 未使用 |
逆引き
名前ではなく e-Gov の law_id や法令番号からエントリを引きます。検索結果に付いてきた ID を、人が読める名前に戻すときに使います。
| 記号 | 種類 | 一言 | 仕様書ページ | 追加された版 | family での使用 |
|---|---|---|---|---|---|
getAllNames | 関数 | abbr / formal / aliases のいずれかから、そのエントリの 全別表記 を文字列配列で返す。 | 仕様 | v0.5.0 | 未使用 |
lookupByLawId | 関数 | e-Gov law_id から辞書エントリを引く。 | 仕様 | v0.5.0 | 未使用 |
lookupByLawNum | 関数 | 法令番号から辞書エントリを引く。 | 仕様 | v0.5.0 | 未使用 |
GetAllNamesOptions | インターフェース | getAllNames に渡せるオプション。 | — | v0.7.0 | 未使用 |
LookupByLawIdOptions | インターフェース | lookupByLawId に渡せるオプション。 | — | v0.7.0 | 未使用 |
鮮度の判定
取得日時からの経過日数を fresh / stale / outdated に分類します。しきい値を family 全体で共有し、どの MCP でも同じ基準で古さを判定するためのものです。
| 記号 | 種類 | 一言 | 仕様書ページ | 追加された版 | family での使用 |
|---|---|---|---|---|---|
computeDaysSince | 関数 | fetched_at (ISO 8601) と現在時刻から経過日数を計算する純関数。 | 仕様 | v0.4.1 | houki-egov-mcphouki-nta-mcp |
judgeStaleness | 関数 | 経過日数から staleness レベルを判定する純関数。 | 仕様 | v0.4.1 | houki-egov-mcphouki-nta-mcp |
STALENESS_THRESHOLDS | 定数 | family 共通の閾値定数 (日数)。 | 仕様 | v0.4.1 | houki-egov-mcphouki-nta-mcp |
StalenessLevel | 型 | staleness の判定レベル。 | — | v0.4.1 | houki-egov-mcphouki-nta-mcp |
検証
law_id の形式や、エントリの重複・欠損を検査します。文章の中に法令名が含まれているかを調べる extractLawNames もここに入れています。
| 記号 | 種類 | 一言 | 仕様書ページ | 追加された版 | family での使用 |
|---|---|---|---|---|---|
extractLawNames | 関数 | 入力テキスト中の 法令名らしき文字列 を辞書マッチで抽出する。 | 仕様 | v0.5.0 | 未使用 |
isValidLawId | 関数 | e-Gov の law_id 形式が妥当かを判定する純粋関数。 | 仕様 | v0.5.0 | 未使用 |
validateAllEntries | 関数 | 辞書全体の静的整合性をチェックする。 | 仕様 | v0.5.0 | 未使用 |
ExtractOptions | インターフェース | extractLawNames のオプション。 | — | v0.5.0 | 未使用 |
LawNameMatch | インターフェース | テキスト中の法令名抽出結果。 | — | v0.5.0 | 未使用 |
ValidationIssue | インターフェース | 静的整合性チェックの error / warning 共通型。 | — | v0.5.0 | 未使用 |
ValidationReport | インターフェース | 辞書全体の検証レポート。 | — | v0.5.0 | 未使用 |
エントリの構造と取りうる値
辞書 1 件の形と、分野・種別・管轄 MCP が取りうる値です。上の関数の引数と戻り値は、すべてこれらで書かれています。
| 記号 | 種類 | 一言 | 仕様書ページ | 追加された版 | family での使用 |
|---|---|---|---|---|---|
CATEGORIES | 定数 | 法令カテゴリ — どの種類のテキスト(法律本体・通達・判例など)を指すか。 | 仕様 | v0.1.0 | houki-nta-mcp |
DOMAINS | 定数 | ドメインタグ(実務分野での分類) | 仕様 | v0.1.0 | houki-egov-mcphouki-nta-mcp |
LAW_TYPE_CODES | 定数 | e-Gov law_id の種別プレフィックス | 仕様 | v0.1.0 | houki-egov-mcp |
SOURCE_MCP_HINTS | 定数 | 参照すべき MCP のヒント。 | 仕様 | v0.1.0 | houki-nta-mcp |
AbbreviationEntry | インターフェース | 略称辞書エントリ | — | v0.1.0 | houki-egov-mcphouki-nta-mcp |
Category | 型 | CATEGORIES の要素型。 | — | v0.1.0 | houki-nta-mcp |
Domain | 型 | DOMAINS の要素型。 | — | v0.1.0 | houki-egov-mcphouki-nta-mcp |
LawTypeCode | 型 | LAW_TYPE_CODES のキー。 | — | v0.1.0 | houki-egov-mcp |
SourceMcpHint | 型 | SOURCE_MCP_HINTS の要素型。 | — | v0.1.0 | houki-nta-mcp |