houan-mcpとe-Gov法令MCPの調査フロー|法案から現行法まで
国会提出法案をhouan-mcpで特定し、成立・公布を確認してからe-Gov法令検索へつなぐ実務フローです。法案名と法律名を混同せず、現行条文・過去時点・一次URLを証拠として残す方法を解説します。
- mcp
- egov
- legal-tech
- houan-mcp
- source-attribution
- research-workflow
- 情報確認
- 参考リンク
- 6件
- 更新性
- 長く使える
- 読了目安
- 約8分
仕様・料金・提供範囲が変わりやすいテーマは、公開日・更新日・情報確認日を分けて管理します。 導入前には必ず記事末尾の一次情報と公式ドキュメントで最新状況を確認してください。
結論
法案から現行法までを一度に検索しようとせず、国会での法案調査は houan-mcp、成立・公布後の法令調査はe-Govに分けるのが安全です。接続点は「名前が似ていること」ではありません。国会の審議経過で成立を確認し、公布後の正式な法律名・法律番号を特定してから、e-GovのlawIdへつなぎます。
調査結果には、法案側と法令側の一次URL、検索基準日、取得日時、未確認事項を別々に残します。これで「提出時の案を現行条文として要約した」「改正後の条文を過去の事案へ当てた」という事故を防げます。
この記事の対象読者
この記事は、政策調査、法務リサーチ、議会ウォッチ、行政データ活用でMCPサーバーを使う人向けです。houan-mcpの公開デモやe-Gov法令MCPのClaude Codeデモを動かせる状態から、調査を再現可能な手順へ整えたい場合を想定しています。
ここではセットアップ方法や「便利な質問例」を広く扱いません。ある法案を見つけ、その審議結果を確認し、成立していれば現行法の条文へ到達するという一本のワークフローに限定します。なお、本稿は調査手順の解説であり、個別案件の法的判断ではありません。
なぜ法案検索と法令検索を分けるのか
法案は国会へ提出された案です。法律は成立・公布されても、全部または一部がまだ施行されていない場合があります。また「法令」には法律だけでなく政令・省令なども含まれます。法案は提出後に修正されたり、継続審査や廃案になったり、別の正式名称で公布されたりする可能性があるため、法案本文に目的の文言があるだけでは「基準日時点でその条文が施行されている」とは言えません。
houan-mcpの公開リポジトリが公開する search_bills と get_bill は、衆参両院の公式情報から法案と審議経過をたどるための道具です。一方、egov-law-mcpの公開リポジトリが公開する search_laws、get_law、get_article、find_related_laws は、e-Gov上の法令を探し、条文や関連法令を読むための道具です。
| 調べたいこと | 使う入口 | 固定すべき識別情報 | 最後に残す証拠 |
|---|---|---|---|
| 国会へ何が提出されたか | houan-mcp.search_bills | 会期、提出院、法案名、議案番号 | 検索結果の公式URL |
| 審議がどう進んだか | houan-mcp.get_bill | 戻り値の proceedingURL | 経過、委員会、本文URL |
| 成立・公布され、基準日に施行されているか | 衆参の議案情報・官報・e-Gov | 成立日、公布日、法律番号、各規定の施行日 | 該当行・該当ページのURL |
| 現行条文は何か | egov-law-mcp / e-Gov | lawIdまたは法律番号、条番号 | e-Govの法令・条文URL |
| 指定日時点の条文は何か | e-Gov法令API v2 | lawId、asof、revision ID | API URLと取得結果 |
大事なのは、MCPサーバー名ではなく資料の状態で切り替えることです。「国会提出中・審議中」は法案側、「成立・公布後」は法令側、「過去時点」はリビジョン側へ進みます。ただし、現行条文として扱う前に、基準日時点で対象規定が施行されているか、経過措置がないかを別に確認します。
ステップ1:質問と基準日を先に固定する
最初に、自然言語の質問を次の4項目へ分解します。
- 対象テーマまたは法案名
- 対象会期と提出院
- 確認したい状態(提出、審議、成立、施行、現行条文)
- 条文を評価する基準日
たとえば「情報に関する法案は今どうなっており、成立したなら現行法の第○条は何か」という依頼でも、基準日がなければ「今」がいつか分かりません。調査票には最初から asOf: "2026-08-13" のように日付を書きます。
{ "question": "対象テーマの法案は成立し、現在どの条文として施行されているか", "session": 221, "chamber": "both", "asOf": "2026-08-13", "requiredEvidence": [ "法案の審議経過URL", "法案本文URL", "公布後の法律番号", "e-Gov法令URL" ]}この時点では結論を書きません。「法案が見つかる」と「成立している」を別の判定項目にします。
ステップ2:search_billsで候補を出す
search_bills には、広すぎない題名キーワードと、分かる範囲で会期・提出院を渡します。次はMCPクライアントから送るツール引数の概念例です。実際のJSON-RPC包みは利用するクライアントが生成します。
{ "name": "search_bills", "arguments": { "keyword": "情報", "chamber": "both", "session": 221, "limit": 20 }}候補が複数あるときは、題名だけで一つに決めません。提出院、会期、議案番号、提出日を並べます。衆議院の議案一覧と参議院の議案情報も開き、対象会期の公式表示と一致するかを確認します。
ここで保存するのは、少なくとも次の項目です。
- 法案名(検索結果の表記どおり)
- 会期、提出院、議案番号
- 提出日
proceedingURLなど結果に含まれる一次URL- 候補を採用・除外した理由
検索語、limit、取得日時も残せば、後日結果が変わったときに再実行できます。
ステップ3:get_billは検索結果のURLをそのまま渡す
get_bill は、search_bills が返した chamber と proceedingURL を入力にします。人間がURLを推測して組み立てると、院や会期を取り違える余地が増えます。次は衆議院候補を選んだ場合のテンプレートで、参議院候補なら chamber を sangiin にします。
{ "name": "get_bill", "arguments": { "chamber": "shugiin", "proceedingURL": "search_billsが返した公式の審議経過URL" }}結果から、審議経過、付託委員会、議決状況、法案本文へのリンクを記録します。MCPの要約だけを証拠にせず、戻り値に含まれる公式URLを開いて該当箇所を確認してください。get_bill で見たいのは、次の分岐です。
| 状態 | 次の行動 | やってはいけないこと |
|---|---|---|
| 審議中・継続審査 | 法案側で更新を追う | 現行法として要約する |
| 否決・撤回・審議未了 | 調査記録を法案で閉じる | 同名法令を成立結果と決める |
| 修正議決 | 修正後本文と経過を確認する | 提出時本文だけを採用する |
| 成立 | 公布後の法律番号を確認する | 法案名だけでe-Gov候補を確定する |
「可決」という文字だけでなく、両院の経過と公布情報まで追うのが境界条件です。
ステップ4:成立した法案を法律番号へつなぐ
成立を確認したら、国会の公式な審議経過と官報発行サイトなどの公布情報から、公布後の正式な法律名と「令和○年法律第○号」のような法律番号を確定します。法案名と法律名が同じなら結果として一致しただけで、最初から一致を前提にしません。公布済みでも未施行の規定はあり得るため、法律番号を確定した時点では「施行済み」と決めません。
接続記録は次のように、法案側と法令側を別オブジェクトにします。
{ "bill": { "title": "公式表示の法案名", "session": "対象会期", "billNumber": "公式表示の議案番号", "proceedingUrl": "国会の審議経過URL" }, "promulgatedLaw": { "officialTitle": "公布後の正式な法律名", "lawNumber": "令和○年法律第○号", "promulgatedAt": "YYYY-MM-DD", "evidenceUrl": "成立・公布を確認した公式URL" }, "linkStatus": "verified"}法律番号が確認できない場合は linkStatus を unresolved にして止めます。題名検索で似た法令が出ても、推測で結びません。
ステップ5:e-GovでlawIdを固定して条文を読む
公布後の正式名称または法律番号を search_laws に渡し、候補のlawIdを確定します。次に get_law で法令全体、get_article で対象条文、必要なら find_related_laws で委任先の政省令などを確認します。
{ "name": "search_laws", "arguments": { "keyword": "公布後の正式な法律名または法律番号" }}{ "name": "get_article", "arguments": { "lawId": "search_lawsで確認したlawId", "article": "対象条番号" }}ツールの正確な引数は利用中のパッケージ版が公開する tools/list を優先してください。ここでの要点は、二回目以降の検索を名称ではなくlawIdへ切り替えることです。実際の利用例はe-Gov法令MCPのデモ、サーバーの役割分担はMCPサーバー戦略にもまとめています。
ステップ6:過去時点は法令API v2で分岐する
「現在の条文」でよければ、現行法を取得する get_law や get_article で進められます。しかし、契約締結日や行政処分日のように過去の基準日があるなら、現行条文だけでは足りません。
e-Gov法令API v2の公式Swaggerには、法令の改正履歴を扱う law_revisions と、asof による時点指定を含む law_data などが定義されています。利用中のMCPサーバーがその機能を公開していなければ、v2 APIを直接確認します。
GET https://laws.e-gov.go.jp/api/2/law_revisions/{law_id}GET https://laws.e-gov.go.jp/api/2/law_data/{law_id}?asof=YYYY-MM-DD公式仕様上、law_data の asof は「指定時点以前で最新の履歴に対応する法令本文」を選ぶパラメーターです。個別事案への法的適用を確定するものではないため、取得した本文に加えて、対象規定の施行日、段階施行、経過措置を確認します。
asof の挙動と現行MCPとの差はe-Gov法令API v2の時点指定を実測した記事を参照してください。APIのJSON形式による法令本文は試行提供と案内される可能性があるため、仕様表示と公式法令ページを最終確認先にします。
証拠バンドルを一件にまとめる
調査の最後に、モデルの回答とは別に機械可読な証拠バンドルを残します。重要なのは「出典URLが一つある」ことではなく、法案・成立接続・現行法の三段がそろうことです。
{ "question": "調査質問", "asOf": "2026-08-13", "retrievedAt": "2026-08-13T10:00:00+09:00", "billEvidence": [ { "kind": "proceeding", "url": "国会の審議経過URL", "locator": "対象となる議決・経過" }, { "kind": "billText", "url": "法案本文URL", "locator": "対象条項" } ], "linkEvidence": { "lawNumber": "公布後の法律番号", "url": "成立・公布を示す公式URL" }, "lawEvidence": [ { "lawId": "e-GovのlawId", "url": "e-Gov法令URL", "article": "対象条番号", "revision": "現行または指定日以前で最新の履歴に対応するrevision ID" } ], "unresolved": []}この形なら、回答文を更新しても証拠の連鎖を再検証できます。出典情報そのものをMCPの構造化出力に組み込む設計は、MCPのprovenance用outputSchema設計で詳しく扱います。
公開前チェックリスト
- 質問、対象会期、提出院、基準日を記録した
-
search_billsの検索語・条件・取得日時を残した -
get_billには検索結果のchamberとproceedingURLをそのまま渡した - 審議経過と法案本文の一次URLを開いた
- 成立していない法案を現行法として扱っていない
- 成立した場合、公布後の正式名称と法律番号を確認した
- e-Govでは候補名だけでなくlawIdを固定した
- 法案本文、公布後の法令、現行条文を混同していない
- 過去時点なら
asofとrevision IDに加え、施行日・経過措置を確認した - 回答に取得日時、基準日、未解決事項を明記した
- 重要な法的判断は公式ページと専門家による確認へ戻した
よくある質問
houan-mcpだけで現行条文まで確認できますか?
役割を分けるのが安全です。houan-mcpは提出法案、審議経過、委員会、法案本文の確認に使い、成立・公布後の現行条文はe-Gov法令検索またはegov-law-mcpで確認します。法案の本文と施行中の条文は同じ資料ではありません。
法案名をそのままe-Govで検索すればよいですか?
そのまま一致するとは限りません。修正、他法案への統合、公布時の題名変更などがあり得るため、国会の審議経過で成立を確認し、官報・公式ページに示された法律番号と公布後の正式名称を接続キーにしてください。
過去時点の条文が必要な場合はどうしますか?
現行法を返すMCPツールだけで確定せず、e-Gov法令API v2のlaw_revisionsやlaw_dataのasof指定で、指定日以前で最新の履歴に対応する法令本文を確認します。asofは個別事案への法的適用を確定しないため、基準日、取得したrevision ID、各規定の施行日、経過措置を調査記録に残してください。
まとめ
法案から現行法へつなぐ調査では、検索を一回で終わらせないことが品質を決めます。houan-mcp で法案と審議経過を特定し、成立・公布を法律番号で確認し、e-GovでlawIdと条文を固定します。過去時点が問われたら法令API v2のリビジョンへ分岐し、対象規定の施行日と経過措置も確認します。
法案名、法律名、lawId、基準日、一次URLを段階ごとに残せば、MCPの要約が変わっても結論を再検証できます。便利な横断検索ではなく、資料の状態をまたぐたびに証拠を引き継ぐワークフローとして運用してください。
一次情報・参考リンク
- SHAYOUWORLD/houan-mcp https://github.com/SHAYOUWORLD/houan-mcp
- 衆議院 議案 https://www.shugiin.go.jp/internet/itdb_gian.nsf/html/gian/menu.htm
- 参議院 議案情報 https://www.sangiin.go.jp/japanese/joho1/kousei/gian/index.htm
- 官報発行サイト https://www.kanpo.go.jp/
- SHAYOUWORLD/egov-law-mcp https://github.com/SHAYOUWORLD/egov-law-mcp
- e-Gov 法令API Version 2 Swagger UI https://laws.e-gov.go.jp/api/2/swagger-ui
関連して読む
- · 参考リンク 7件
e-Gov法令MCPとは?Claude Codeで日本法令を参照する設計と作り方
e-Gov法令APIをClaude CodeやCursorから使うMCPサーバーの仕組み、stdio設定、出典付き条文取得、安全境界、既存実装との差別化を解説します。
- · 参考リンク 5件
e-Gov法令XMLをMCP向けJSONへ変換する:条・項・号と出典を壊さない設計
e-Gov法令APIのXMLを、AIが引用しやすいMCPレスポンスへ変換する設計を解説。条・項・号の順序、施行時点、改正履歴、原文参照を失わない型と実装手順を示します。
- · 参考リンク 4件
法令をAIで扱うときの安全境界:出典・施行日・改正履歴の確認チェックリスト
法令調査をAIやMCPで補助するとき、何を自動化し、どこで人が確認するかを整理。法令ID、公布日、施行日、基準日、改正履歴、引用位置を残す実務チェックリストです。