本文へスキップ

契約書レビューをClaude Code+e-Gov法令MCPで回す実務フロー:条文特定から人の確認まで

契約書レビュー・コンプライアンス確認をClaude Codeとe-Gov法令MCPで進める手順。対象条文の特定、asofでの施行時点確認、条文引用、人が確認する境界の順に、フリーランス法・取適法をe-Gov法令API v2で実際にcurl実行した2026-09-14のログを根拠に解説。CLAUDE.md追記例付き。

codeagent.jp編集部 更新 約7分

契約書レビューやコンプライアンス確認にClaude Codeとe-Gov法令MCPを使うとき、AIに任せるのは「どの法令の、どの時点の、どの条文か」を出典付きで固定するところまでです。 その契約に条文が適用されるか、違反しているか、修正が要るかは、原文を見た人が決めます。

この記事では、業務委託契約のレビューを題材に、対象条文の特定→施行時点の確認→条文引用→人が確認する境界、の順で手順を示します。e-Gov法令API v2はキー不要なので、フロー中のAPI呼び出しは2026年9月14日にすべてcurlで実行し、その出力を根拠にしています。

  1. 法令名で探し、lawIdで固定する。 laws?law_title= で候補を出し、以後は lawId で引く。通称で0件なら止まる。
  2. 基準日を決めてから時点を確認する。 law_revisions で施行日を見て、law_data?asof= でリビジョンIDを取る。asofは施行前の日付でもエラーにならないので、施行日との比較は自分で行う。
  3. 条文は原文・見出し・リビジョンID・URL・取得日時のセットで引用する。 同じ「第三条」でも改題前後で中身が別物だった。
  4. 適用・違反・修正案は書かせない。 AIの出力は「確認が必要な点」までにして、判断は人に戻す。

想定する場面と道具

題材は、発注側の会社がフリーランスや中小企業に業務を委託する基本契約のレビューです。関係しそうな法令として、特定受託事業者に係る取引の適正化等に関する法律(フリーランス法、505AC0000000025)と、2026年1月1日に改題された製造委託等に係る中小受託事業者に対する代金の支払の遅延等の防止に関する法律(取適法、331AC0000000120)を扱います。

道具は2つです。

Terminal window
claude mcp add --transport stdio egov-law -- npx -y @codeagentjp/egov-law-mcp

「現行条文の検索と取得はMCP、時点はv2」という分担はasof指定の実測記事で決めたもので、この記事もそれに従います。

手順1:対象条文を特定する

契約の事実(誰が誰に何を委託し、報酬をいつ払うか)から候補法令を挙げ、法令名で検索してlawIdを固定します。v2の lawslaw_title が正式名称だけでなく略称(abbrev)にもマッチします。

Terminal window
curl -s "https://laws.e-gov.go.jp/api/2/laws?law_title=特定受託事業者"

2026年9月14日の結果は4件で、本法と政令・省令・規則がそろって返りました。

total_count 4
505AC0000000025 令和五年法律第二十五号 特定受託事業者に係る取引の適正化等に関する法律
abbrev=フリーランス・事業者間取引適正化等法 CurrentEnforced 施行 2024-11-01
506CO0000000200 令和六年政令第二百号 同法施行令 CurrentEnforced 施行 2024-11-01
506M60000100094 令和六年厚生労働省令第九十四号 厚生労働省関係 同法施行規則 CurrentEnforced 施行 2024-11-01
506M60200000003 令和六年公正取引委員会規則第三号 公正取引委員会関係 同法施行規則 CurrentEnforced 施行 2026-05-21

通称「フリーランス」でも本法1件がヒットしました。一方で「下請代金」で引くと5件返り、本法は改題後のタイトルで abbrev=取適法,中小受託取引適正化法、旧名を含む公正取引委員会規則3件は Repeal(廃止)でした。廃止された規則が検索に混ざるので、current_revision_status を見ずに件数だけで判断してはいけません。

通称が abbrev に登録されていない法令は0件になります。同日に「電帳法」で引いた結果は {"total_count":0,"count":0,"laws":[]} でした。0件は「規定なし」ではなく「名前が違う」なので、エージェントには候補を推測させず、正式名称か法令番号を人が渡します。通称と正式名称のズレは「下請法」で法令検索すると0件になるに事例があります。

この段階でレビュー記録に残すのは、law_idlaw_numlaw_titleabbrev、検索に使った文字列、取得日時です。

手順2:施行時点を確認する(asof)

契約書レビューでは「いつの条文か」が効きます。締結日、更新日、行為があった日のどれを基準日にするかは人が決め、エージェントには基準日を渡してから時点確認をさせます。

改正履歴は law_revisions で一覧できます。

Terminal window
curl -s "https://laws.e-gov.go.jp/api/2/law_revisions/331AC0000000120"
  1. 2010-01-01
    平成二十一年法律第五十一号による改正が施行
    law_revision_id 331AC0000000120_20100101_421AC0000000051。題名は下請代金支払遅延等防止法
  2. 2025-05-23
    令和七年法律第四十一号が公布・一部施行
    331AC0000000120_20250523_507AC0000000041。この時点の題名はまだ下請代金支払遅延等防止法。現在は PreviousEnforced
  3. 2026-01-01
    改題が施行
    331AC0000000120_20260101_507AC0000000041。製造委託等に係る中小受託事業者に対する代金の支払の遅延等の防止に関する法律。CurrentEnforced
law_revisions/331AC0000000120 の3リビジョン(2026-09-14取得)

基準日が2025年6月1日の契約なら、asof を付けて本文を引きます。

Terminal window
# 現行
curl -s "https://laws.e-gov.go.jp/api/2/law_data/331AC0000000120"
# 2025年6月1日時点
curl -s "https://laws.e-gov.go.jp/api/2/law_data/331AC0000000120?asof=2025-06-01"

revision_info はこう分かれました。

asofなし -> 331AC0000000120_20260101_507AC0000000041 CurrentEnforced 施行 2026-01-01
asof=2025-06-01 -> 331AC0000000120_20250523_507AC0000000041 PreviousEnforced 施行 2025-05-23

ここまでは期待どおりです。問題は次の実験でした。

レビュー記録に残すのは、基準日、law_revision_idamendment_enforcement_datecurrent_revision_status、そして基準日と施行日を比べた結果です。

手順3:条文を引用する(elm)

条文単位で取るには elm パラメータを使います。フリーランス法第3条(取引条件の明示)はこう引けます。

Terminal window
curl -s "https://laws.e-gov.go.jp/api/2/law_data/505AC0000000025?elm=MainProvision-Article_3"

law_full_textArticle 要素1つになり、見出しと本文が構造で返ります。

ArticleCaption (特定受託事業者の給付の内容その他の事項の明示等)
ArticleTitle 第三条
Paragraph 1 業務委託事業者は、特定受託事業者に対し業務委託をした場合は、直ちに、
公正取引委員会規則で定めるところにより、特定受託事業者の給付の内容、
報酬の額、支払期日その他の事項を、書面又は電磁的方法(…)により
特定受託事業者に対し明示しなければならない。(以下略)
Paragraph 2 業務委託事業者は、前項の規定により同項に規定する事項を電磁的方法により
明示した場合において、(以下略)

「公正取引委員会規則で定めるところにより」とあるので、明示事項の細部は手順1で見つけた公正取引委員会規則(506M60200000003、施行2026-05-21)に委任されています。エージェントには本法だけで止まらず、委任先の規則も同じ形で引かせます。

同じ elm を取適法の現行と2025年6月1日時点で比べると、条番号だけの引用がどれほど危ないかが分かります。

2025-06-01時点(…_20250523_…)
現行(…_20260101_…)
題名
下請代金支払遅延等防止法
製造委託等に係る中小受託事業者に対する代金の支払の遅延等の防止に関する法律
第三条の見出し
(書面の交付等)
(製造委託等代金の支払期日)
第三条第1項の主語
親事業者は、下請事業者に対し製造委託等をした場合は、直ちに、…書面を下請事業者に交付しなければならない
製造委託等代金の支払期日は、…給付を受領した日…から起算して、六十日の期間内において…定められなければならない
当事者の呼称
親事業者/下請事業者
委託事業者/中小受託事業者
law_revision_id
331AC0000000120_20250523_507AC0000000041
331AC0000000120_20260101_507AC0000000041
law_data/331AC0000000120?elm=MainProvision-Article_3 を asof の有無で2回実行(2026-09-14)

同じ法令の同じ「第三条」で、片方は書面交付、もう片方は支払期日です。 契約書の条項に「下請法第3条に基づき」と書いてあっても、どの時点の第3条かで内容が変わります。引用には条番号だけでなく、条見出し、law_revision_id、e-GovのURL、取得日時を必ず添えます。

Claude Codeから現行条文だけを取るなら、MCPの get_articlelawIdarticle を渡せば、本文と source.url が返ります。時点が効く条文はこの手順のとおりv2で取り、law_revision_id を残します。取得した条文とAIの要約は同じ欄に混ぜず、原文・引用・AIメモの3層に分けて保存します。この分け方は法令をAIで扱うときの安全境界で詳しく書きました。

手順4:人が確認する境界

ここまでの出力を受け取った後、人が見る項目と、AIに書かせない項目を分けます。

AIが出力するもの人が判断するもの
候補法令の一覧(lawId・題名・abbrev・状態)どの法令が本当に関係するか
基準日時点のリビジョンIDと施行日の比較結果基準日をいつにするか
条文の原文、見出し、委任先の政省令契約の事実が条文の要件に当たるか
契約書の条項と条文の対応表(「確認が必要な点」として)違反の有無、修正の要否、修正案の採否
0件・時点不一致・取得失敗の明示専門家に相談するかどうか

エージェントが止まるべき条件も先に決めておきます。

  • 法令名の検索が0件、または候補が複数で絞れない
  • 基準日より amendment_enforcement_date が後(基準日時点で未施行の可能性)
  • 条文が政省令・規則に委任していて、委任先を取得できていない
  • law_data がHTTP 404(404004)など取得失敗を返した
  • 質問が「違反しているか」「どう直すべきか」の形をしている

止まるときは「回答不能」だけで終わらず、ここまで確定できた識別子と、次に人が開くべきURLを出させます。

CLAUDE.mdへの追記例

プロジェクトのCLAUDE.md(または AGENTS.md)に、次のブロックを足します。

## 法令確認のルール(契約書レビュー)
- 法令名で検索したら lawId を固定し、以後は lawId で引く。候補が0件または複数なら止まって候補を提示する
- 基準日(契約締結日・行為日)を私が示すまで asof を付けない。示したら law_revisions で施行日を確認し、
law_revision_id と amendment_enforcement_date を併記する。基準日より施行日が後なら「基準日時点で未施行」と書く
- 条文は原文をそのまま引用し、条見出し・law_revision_id・e-Gov URL・取得日時を付ける。要約は原文の後に分けて書く
- 委任先(施行令・施行規則)があれば同じ形で引く。取れなければ「未取得」と書く
- 適用の有無、違反の有無、修正案の採否は書かない。「確認が必要な点」として列挙する
- 取得できない・0件・時点不一致のときは推測で埋めず、その旨を出力の最初の行に書く

指示ファイルの書き方全般はAGENTS.md・CLAUDE.mdの実務テンプレートにまとめています。

やってはいけないこと

  • 法的助言を生成させる。 「この条項は違法です」「この修正で問題ありません」は、原文取得の正確さとは別の判断で、AIの出力を根拠にできません
  • 要約だけで判断する。 要約では「ただし書」「正当な理由があるもの」「公正取引委員会規則で定める」のような条件が落ちます。上のフリーランス法第3条第1項も、ただし書で明示を要しない場合を定めています
  • 通称や条番号だけで引用する。 「下請法第3条」は時点で中身が変わりました
  • 現行条文を過去の契約に当てる。 MCP 0.1.0は常に現行を返します。時点が効くならv2で asof を付け、施行日を比較します
  • 0件を「規定なし」と読む。 「電帳法」の0件は名前の問題でした

まとめ

  • AIに任せる範囲は、候補法令の提示、lawIdの固定、基準日時点のリビジョン確認、原文の引用まで。適用・違反・修正の判断は人が行う
  • laws?law_title= は略称にもマッチするが、廃止規則が混ざり、未登録の通称は0件になる。current_revision_status を見る
  • asof は施行前の日付でもエラーにならず、施行日が後のリビジョンを返した。amendment_enforcement_date と基準日の比較を自分で行う
  • 取適法の「第三条」は改題前後で書面交付と支払期日に変わった。引用は条見出し・law_revision_id・URL・取得日時のセットで
  • 止まる条件をCLAUDE.mdに書き、止まったときは確定済みの識別子と次に開くURLを出させる

法案段階からの調査はhouan-mcpとe-Gov法令MCPの調査フロー、MCPが応答しないときの切り分けはegov-law-mcpが動かない時の対処法を参照してください。

この記事の情報・検証メモ
Tags
公開日
情報確認
参考リンク
5件
更新性
長く使える
更新管理

仕様・料金・提供範囲が変わりやすいテーマは、公開日・更新日・情報確認日を分けて管理します。 導入前には必ず記事末尾の一次情報と公式ドキュメントで最新状況を確認してください。

検証メモ
e-Gov 法令API v2 — curl 実行日 2026-09-14
図解を保存・共有

記事の要点を1枚にまとめました。画像は新しいタブで開いて保存できます。

契約書レビューをClaude Code+e-Gov法令MCPで回す実務フロー:条文特定から人の確認まで AIに任せるのは「どの法令の・どの時点の・どの条文か」を出典付きで固定するまで。適用と判断は人が行う 条文を固定する:契約の事実から候補法令を出し、lawIdで確定する。基準日を決めてlaw_revisionsで施行日を確認する。asofとリビジョンIDを併記して条文を引用する。 実測で分かった落とし穴:施行前の日付をasofに付けてもエラーにならず施行日の版が返る。取適法の「第三条」は改題前後で中身が別物。「電帳法」のような通称は0件で止まる。 人が確認する境界:適用の有無・違反の有無・修正案の採否は書かせない。要約だけで判断せず原文と見出しを残す。0件や時点不一致は推測で埋めず最初の行に書かせる。
契約書レビューをClaude Code+e-Gov法令MCPで回す実務フロー:条文特定から人の確認まで 記事の要約 2026.09.14 設計・ワークフロー
Primary sources

一次情報・参考リンク

About the author
codeagent.jp編集部

Claude Code / Codex / MCP を個人開発サイト運用と公開MCPサーバー開発で試し、一次情報・検証ログ・失敗例をもとに整理します。