Washington Code について
Washington Codeは、法令調査や規則検索向けに、ワシントン州のRCW法令とWAC行政規則を提供します。引用番号・テーマ検索に加え、構成の閲覧、過去年版、規則制定記録を調べられ、出典とデータ日付も示します。
主な機能
- 01引用番号でRCW・WAC本文を取得
- 02WAC規則を全文検索
- 03WACの編・章・条を閲覧
- 04年次アーカイブの規則本文を取得
- 05規則制定届出と履歴を確認
活用シーン
- 01ワシントン州の法令や行政規則を調べる
- 02テーマからWACの条文を探す
- 03過去年の規則本文を確認
- 04規則制定の届出を追跡
MCP 対応
RCW法令とWAC行政規則を検索するMCPツールを、Pipeworxゲートウェイまたはローカルのstdio MCPサーバーとして提供します。ゲートウェイ接続にはPipeworx共通のメタツールも含まれます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://gateway.pipeworx.io/washington-code/mcpclaude mcp add --transport http pipeworx-io-washington-code https://gateway.pipeworx.io/washington-code/mcp{"mcpServers":{"pipeworx-io-washington-code":{"type":"http","url":"https://gateway.pipeworx.io/washington-code/mcp"}}}Cursor で開く{"servers":{"pipeworx-io-washington-code":{"type":"http","url":"https://gateway.pipeworx.io/washington-code/mcp"}}}VS Code で開く{"mcpServers":{"pipeworx-io-washington-code":{"type":"http","url":"https://gateway.pipeworx.io/washington-code/mcp"}}}{"mcpServers":{"pipeworx-io-washington-code":{"serverUrl":"https://gateway.pipeworx.io/washington-code/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
Washington Code — RCW 法令および WAC 行政規則
ワシントン州議会の公式サイトから取得する、API キー不要のワシントン州法です。Revised Code of Washington(RCW、法令)は引用番号で、Washington Administrative Code(WAC、行政規則)は引用番号、トピック、構成、年末アーカイブ、規則制定履歴から検索できます。
Pipeworx の一部です。AI エージェントを 1715 以上のライブデータソースに接続する MCP ゲートウェイです。これは独立した非公式の連携であり、上流プロバイダーとの提携、承認、公開はありません。
ツール
| ツール | 回答する内容 |
|---|---|
wa_rcw_section({section: "9A.32.030"}) | RCW 法令の全文と見出しです。 |
wa_wac_section({section: "296-800-110"}) | WAC 規則の現行テキストです。表題、本文、制定権限の履歴行、および当局が制定根拠として引用した RCW 条項を返します。 |
wa_wac_search({query: "safety bulletin board", limit?, cite_prefix?}) | ワシントン州議会の公式サイトの検索インデックスを通じて、すべての WAC 条項を全文検索します。引用番号、表題、強調表示された抜粋、インデックス全体の一致件数を返します。cite_prefix(「296」または「296-800」)を指定すると、編または章に絞り込めます。 |
wa_wac_browse({cite?}) | 構成を表示します。引用番号を指定しない場合は各 WAC 編と所管機関を、編(「296」)を指定した場合は章を、章(「296-800」)を指定した場合は各条項と表題および小見出しを返します。 |
wa_wac_archived_section({section, year}) | 過去の年末時点での WAC 規則のテキストです(2019 年以降は全文、2004~2018 年は PDF のみ。下記参照)。 |
wa_wac_filings({cite}) | 条項または章に関係するワシントン州公報(WSR)の規則制定届出をすべて返します。番号、種類、届出日、リンクを含み、新しいものから順に表示します。 |
引用番号には RCW/WAC の接頭辞、英字付きの編および章(296-14A-100、132C-120-010)、活字用ダッシュを使用できます。すべてのレスポンスには data_as_of、source、正確な上流 url が含まれます。
4 つの機能と、一部のみ対応している機能
| 機能 | WAC | 方法 |
|---|---|---|
| 引用番号による条項取得 | はい | wa_wac_section が app.leg.wa.gov/WAC/default.aspx?cite=… から直接取得します。 |
| トピック検索 | はい、全文検索 | wa_wac_search は leg.wa.gov/search の背後にある SearchUnify インデックスを呼び出し、WAC の情報に絞り込みます。表題だけでなく、規則の本文も検索します。 |
| 過去の版 | 2019 年以降は対応、それ以前はリンクのみ | wa_wac_archived_section はワシントン州議会の年末 HTML アーカイブを読み込みます。2004~2018 年は PDF のみで公開されているため、このツールは 2016~2018 年については章の PDF リンクを、それ以前の年についてはアーカイブディレクトリを found:false, reason:"pdf_only_year" として返します。テキストを推測することはありません。 |
| 改正/履歴 | はい | wa_wac_section.history([Statutory Authority: … WSR …] 行。authority_rcw を解析して抽出)と wa_wac_filings(保留中の提案や緊急規則を含む WSR 届出一覧)を使用します。 |
見つからないことを示すシグナル — 推測ではなく肯定的な判定
- RCW: 引用番号が無効な場合、ID
pnlCitationNotFoundのパネルが表示されます(HTTP 200)。このパックはそのパネルを判定します。 - WAC: 存在しない条項の場合、章の処分ページ(
?dispo=true&cite=296-800)へ HTTP 302 でリダイレクトされます。このパックはredirect: 'manual'を指定して取得し、ステータス行から見つからないことを判定します。処分ページへのリンクとともにfound:false, reason:"section_not_found"を返します。 - 200 以外のその他のステータスでは、上流のステータスを示す明確なエラーが発生します。 通信失敗を
found:falseに置き換えることはありません(src/index.test.tsがこの動作を固定しています。これは oklahoma-code の教訓、fleet #2742 に基づいています)。
アーカイブのファイル名は固定幅です(2026-10-07測定)
lawfilesext.leg.wa.gov/law/wacarchive/<year>/htm/… では、空白で埋められたフィールドを使ってファイル名が付けられています。タイトル番号と章番号は3文字に右寄せされ、4文字になるよう埋められ、セクションは入力どおりに連結されます。
296-800-110 → WAC 296 -800 -110.htm
1-04-010 → WAC 1 - 04 -010.htm
2019~2023年は WAC 296 TITLE/WAC 296 -800 CHAPTER/ の下にファイルが格納され、2024年以降は WAC 296 -800 CHAPTER/ の直下に格納されます。リゾルバーは、その年に該当する可能性が高いレイアウトを先に試し、次にもう一方を試します。両方で404が返された場合は、試行したURLとともに section_not_in_archive を返します。そのため、空白が1つ違うだけで「その年には規則が存在しなかった」と誤認されることはありません。テストでは両方のレイアウトを確認しています。
検索インデックスは、州議会独自のものをクライアントと同じ方法で読み取ります
leg.wa.gov/search は、SearchUnify インスタンスを利用する薄いクライアントです。そのホスト、クライアント UID、クライアントごとのアクセストークンは、クライアントバンドル(an.js)内で匿名の訪問者全員に提供されるため、これは私たちが保持する認証情報ではなく、読み取る設定情報です。パックはこれらをキャッシュし、API が拒否した場合はバンドルを1回再読み込みします。リクエストでは pipeworx-mcp-washington-code として識別されます。Origin も Referer も送信せず、どちらも必要ありません(2026-10-07に検証済み:送信の有無で結果は同一)。cite_prefix による絞り込みは上位50件のインデックスヒットを対象にクライアント側で行われ、そのことはレスポンスの total_matches_note に記載されています。
エッジプローブ(2026-10-07)
新しい上流ホストについての常設ルールに従い、デプロイ前に、本番アカウント上の使い捨て wrangler dev --remote Worker から WAC ツールが使用するすべてのURL形式にアクセスしました。すべて、ノートPCからアクセスした場合と同様に Cloudflare Worker から応答があり、中継は不要でした。
app.leg.wa.gov/WAC/default.aspx?cite=296-800-110 200 117,345 B
app.leg.wa.gov/WAC/default.aspx?cite=296-800-99999 302 → /WAC/default.aspx?dispo=true&cite=296-800
app.leg.wa.gov/WAC/ 200 144,207 B
app.leg.wa.gov/WAC/default.aspx?cite=296-800 200 187,138 B
app.leg.wa.gov/WAC/registerfiling.aspx?cite=296-800-110 200 109,878 B
lawfilesext…/wacarchive/2020/htm/WAC 296 TITLE/… 200 10,076 B
lawfilesext…/wacarchive/2024/htm/WAC 296 -800 CHAPTER/… 200 10,076 B
lh112524p.searchunify.com/search/searchResultByPost 200 11,313 matches for "safety bulletin board"
スモークテスト(デプロイ前、2026-10-07)
smoke.json に引数を記録しています。6つのツールすべてが空でないペイロードを返しました:
wa_wac_section 296-800-110 テキスト1,386文字+過去の4件の届出、
wa_wac_search "safety bulletin board" 11,313件中5件、
wa_wac_browse 296-800 136セクション、
wa_wac_archived_section 296-800-110 @2020 1,386文字、
wa_wac_filings 296-800-110 WSR届出4件。
注意事項
- RCW番号とWAC番号は連続していません。廃止されたセクションや再編番号が付与されたセクションは通常どおり存在します。章に対して
wa_wac_browseを実行すると、現在存在するものを確認できます。 cite_prefix検索で結果が0件の場合、それは上位50件に該当する接頭辞の結果が実際にないことを示し、失敗ではありません。noteにインデックス全体での一致件数が記載されます。
データソース
ワシントン州議会 — app.leg.wa.gov(現行のRCWおよびWAC、WSR届出)、lawfilesext.leg.wa.gov(年次WACアーカイブ)、州議会のサイト内検索インデックス。認証キーは不要です。ワシントン州の法令および行政機関の規則は公開記録です。
クイックスタート
MCP クライアント(Claude Desktop、Cursor、Windsurf など)に追加します:
{
"mcpServers": {
"washington-code": {
"url": "https://gateway.pipeworx.io/washington-code/mcp"
}
}
}
このエンドポイントが実際に提供するもの
https://gateway.pipeworx.io/washington-code/mcp の tools/list は、上の表にあるツールに加えて、共有 Pipeworx メタツール(ask_pipeworx、discover_tools、search_within、remember/recall など、ゲートウェイ全体で利用できるツール一式)を返します。そのため、表示されるツール数はこの表より多くなります。現在、単一パックのエンドポイントには、そのパック独自のツールとともに、共有ツールがおよそ30個一覧表示されます。接続の initialize レスポンスに正確な対象範囲が記載されており、その日における確定情報はこれです。
これは意図した動作であり、偶発的な多重化ではありません。メタツールを使うと、このパックでは扱わない質問にも、すべてのカタログを横断する ask_pipeworx を通じて回答できます。そのため、MCP サーバーを追加する必要はありません。現時点では、メタツールなしでパックのエンドポイントをマウントする方法はありません。追加のスキーマによるコンテキスト消費がルーティングの利点を上回る場合は、複数のパックエンドポイントではなく、フルゲートウェイに一度接続してください。
また、フル Pipeworx ゲートウェイに接続すると、このパックのツールだけでなく、すべてのパックのツールが直接一覧表示されます:
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
どちらのURLも、同じゲートウェイと同じ1,715以上のデータソースに接続します。唯一の違いは、どのパックのツールが直接一覧表示されるかです。どちらからでも、ask_pipeworx を通じてすべてのツールにアクセスできます。
MCP クライアントがありませんか?HTTP 経由で呼び出せます
curl -X POST https://gateway.pipeworx.io/v1/tools/wa_rcw_section \
-H 'Content-Type: application/json' \
-d '{"section":"9A.32.030"}'
最初の呼び出しにアカウントは不要です。任意のツールを確認するには、GET https://gateway.pipeworx.io/v1/tools/wa_rcw_section を使用します。ツールを探すには、{"query":"..."} を指定して POST https://gateway.pipeworx.io/v1/tools/search_packs を使用します。
スタンドアロン(ゲートウェイアカウント不要)
このパッケージはローカルの stdio MCP サーバーとしても実行できます。Pipeworx アカウントも、ゲートウェイを経由したラウンドトリップも不要です。
{
"mcpServers": {
"washington-code": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-washington-code"]
}
}
}
または、直接実行して起動を確認できます。
npx -y @pipeworx/mcp-washington-code
stdin/stdout 経由で MCP を使用し、このパックのツールのみを対象に initialize/tools/list/tools/call に応答します。上記のゲートウェイ接続で追加される共有メタツールはありません。同じソース、同じツールで、ask_pipeworx によるルーティングもありません。
ask_pipeworx の使用
ツールを直接呼び出す代わりに、自然な英語で質問できます。上記のパックエンドポイントでも、ゲートウェイ全体でも利用できます。
ask_pipeworx({ question: "your question about Washington Code data" })
ゲートウェイが適切なツールを選び、引数を自動的に入力します。
詳細
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。