Skip to content

listBySourceMcpHint の仕様 ​

INFO

houki-abbreviations v0.7.1 の specs/current/list_by_source_mcp_hint/spec.md から自動生成しました(仕様 ID 5 件・2026-10-11)。手で編集しないでください。再生成は node scripts/generate-reference.mjs specs です。

指定した MCP が本文を持つエントリをすべて返す

使いどころ・引数・実測の呼び出し例は、関数のページにあります。

最後に仕様が変わったのは v0.6.1 の「テストが無いだけの振る舞いに仕様 ID を振る」(2026-09-27 承認)です。それまでの経緯は承認の履歴にあります。

利用者と得られる結果 ​

この機能の利用者と、利用者が渡すもの・得られる結果を示します。

  • houki-hub family の MCP サーバー。起動時に自分の名前(例: houki-nta)を渡して、自分が本文を返せるエントリだけの一覧を受け取る。それ以外のエントリを問い合わせられたときに、本文を持つ MCP の名前を案内するために使う

入力 ​

呼び出すときに渡す値です。

引数必須内容
hint必須MCP の名前。houki-egov / houki-nta / houki-mhlw / houki-jaish / houki-court / houki-saiketsu のどれか(定数 SOURCE_MCP_HINTS)

戻り値 ​

呼び出しが返す値です。

AbbreviationEntry[]。source_mcp_hint フィールドが hint と等しいエントリの配列。エントリのフィールドは resolveAbbreviation の戻り値と同じ。各要素は辞書のエントリそのもので、凍結されている(SPEC-ABBR-ABBREVIATION-ENTRIES-019)。

v0.6.0 の辞書(174 件)での件数は次のとおり。

hint件数
houki-egov165
houki-nta9
houki-mhlw0
houki-jaish0
houki-court0
houki-saiketsu0

扱わないこと ​

この機能が意図して扱わないことです。

  • 複数の MCP をまとめて絞り込むこと(searchByName の filter.source_mcp_hint は配列を受け付ける)
  • 分野で絞り込むこと(listByDomain)
  • 種別で絞り込むこと(listByCategory)
  • 1 つの名前が、渡した MCP の担当かどうかを判定すること(resolveAbbreviation で引いたエントリの source_mcp_hint を利用者が比べる)
  • 件数だけを返すこと(getAbbreviationStats の bySourceMcpHint)

処理の流れ ​

図の中の番号は「できること」の仕様 ID の末尾 3 桁です。

仕様項目 ​

この機能の仕様項目を、仕様 ID ごとに並べています。見出しは仕様項目を 1 文で表したもので、条件・応答の細部・例は「詳細」を開くと読めます。仕様 ID はそれぞれ受入テストと対応していて、テストの無い ID があると各リポジトリの CI が止まります。

SPEC-ABBR-LIST-BY-SOURCE-MCP-HINT-001 指定した MCP が本文を持つエントリだけを返す ​

詳細

辞書のエントリのうち、source_mcp_hint フィールドが引数 hint と等しいものだけを配列で返す。ほかの MCP のエントリは含まない。

例: listBySourceMcpHint('houki-egov') は 165 件(法律・政令・省令など)を返し、どの要素も source_mcp_hint: "houki-egov"。listBySourceMcpHint('houki-nta') は 消費税法基本通達 を含む 9 件(基本通達 8 件と個別通達 1 件)を返し、どの要素も source_mcp_hint: "houki-nta"。

SPEC-ABBR-LIST-BY-SOURCE-MCP-HINT-002 エントリの無い MCP には空配列を返す ​

詳細

辞書にその MCP のエントリが 1 件も無いときは、例外を投げずに空配列を返す。v0.6.0 では houki-mhlw / houki-jaish / houki-court / houki-saiketsu の 4 つが空配列になる。

例: listBySourceMcpHint('houki-mhlw') と listBySourceMcpHint('houki-court') は []。

SPEC-ABBR-LIST-BY-SOURCE-MCP-HINT-003 辞書の並びのまま返す ​

詳細

返す配列の要素は、辞書(abbreviationEntries)での並びのまま並ぶ。abbreviationEntries.filter((e) => e.source_mcp_hint === hint) と同じエントリを同じ順で返す。

例: listBySourceMcpHint('houki-egov') の先頭の 3 件は 所法 / 所令 / 所規、listBySourceMcpHint('houki-nta') の先頭の 3 件は 消基通 / 所基通 / 法基通 で、どれも abbreviationEntries での順と同じ。

SPEC-ABBR-LIST-BY-SOURCE-MCP-HINT-004 呼ぶたびに新しい配列を返す ​

詳細

呼ぶたびに新しい配列を返す。返した配列に要素を足したり、配列から要素を除いたりしても、次の呼び出しの結果は変わらない。

例: const a = listBySourceMcpHint('houki-nta'); a.push({}) の後も、listBySourceMcpHint('houki-nta') は 9 件を返す。a.splice(0) の後も同じ。同じ引数で 2 回呼んだ結果は別の配列(!==)。

SPEC-ABBR-LIST-BY-SOURCE-MCP-HINT-005 SOURCE_MCP_HINTS に無い値には空配列を返す ​

詳細

JavaScript から SOURCE_MCP_HINTS に無い値を渡したときは、例外を投げずに空配列を返す。大文字と小文字は区別する。

例: listBySourceMcpHint('xxx') と listBySourceMcpHint('HOUKI-EGOV') は []。

実装する人に向けた情報 ​

ここから下は、この機能を実装する人と、仕様の変更を追う人に向けた節です。使い方を知りたいだけなら、読まなくて構いません。

検討中のこと ​

仕様を書き起こしたときに見つかった項目のうち、扱いを Issue で検討しているものです。ここに挙げたことは、今後の版で変わることがあります。開くと、元の仕様書の記述をそのまま読めます。

仕様書の「未決」の節

初版起こしで見つけた、意図か不具合かを人が決める項目です。決まったら「できること」に ID を振るか、specs/changes/ の差分にします。

意図か不具合かの判断が要る項目は houki-abbreviations の Issue に移し、ここには題と Issue の番号だけを残します。今の振る舞いのままでよくテストが無いだけの項目は、受入テストを書いてから「できること」に ID を振ります。

  1. 返すエントリは凍結されておらず、書き換えると辞書に残る。 → SPEC-ABBR-ABBREVIATION-ENTRIES-019
  2. 返す順序。 → SPEC-ABBR-LIST-BY-SOURCE-MCP-HINT-003
  3. 返す配列は呼ぶたびに新しい。 → SPEC-ABBR-LIST-BY-SOURCE-MCP-HINT-004
  4. SOURCE_MCP_HINTS に無い値。 → SPEC-ABBR-LIST-BY-SOURCE-MCP-HINT-005
  5. houki-jaish と houki-saiketsu。 → SPEC-ABBR-LIST-BY-SOURCE-MCP-HINT-002(テストを足した)

承認の履歴 ​

この機能の仕様が、いつ、どの変更で承認されたかを新しい順に並べています。各リポジトリの npx spec-ids history list_by_source_mcp_hint と同じ内容です。変更の名前から、変更の理由と前後の振る舞いを書いた文書(GitHub)を開けます。

承認の履歴(3 件)
承認日版変更仕様 PR
2026-09-27v0.6.1テストが無いだけの振る舞いに仕様 ID を振る#27
2026-09-27v0.6.1「未決」のうち判断が要る 52 件を Issue に移す#26
2026-09-27—初版#10

関連ページ ​

このページの元になった文書と、あわせて読むページです。

本サイトの内容は調査の出発点であり、法的助言ではありません。個別の事案は資格を持つ専門家に相談してください。免責事項と利用範囲