mcpField
I
Indiana Code

Indiana Code

リモート
pipeworx.io法務・行政02 日前に更新
リポジトリ公式サイト

Indiana Code について

Indiana Code は、インディアナ州法を調べる法律研究者などを対象としています。条文引用検索、全文のトピック検索、年ごとの過去版に対応し、改正履歴を条文本文と分けて表示します。

主な機能

  1. 01引用番号による法令検索
  2. 02法令全文のトピック検索
  3. 03年別の過去版取得
  4. 04改正履歴と本文の分離表示
  5. 0537 の法典タイトルを収録

活用シーン

  1. 01条文の現行内容を確認
  2. 02テーマに関連する法令を検索
  3. 03条項の年ごとの変遷を比較

MCP 対応

法令検索、トピック検索、過去版取得のツールを MCP クライアントに公開します。Pipeworx 経由で接続でき、ローカルの stdio MCP サーバーとしても動作します。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://gateway.pipeworx.io/indiana-code/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

インディアナ州法典

引用によるインディアナ州法典の検索に加え、全文のトピック検索と年ごとの過去版を利用できます。キーは不要です。

Pipeworx の一部です。AI エージェントを 1,881 以上の稼働中データソースに接続する MCP ゲートウェイです。これは独立した非公式の連携であり、上流プロバイダーとの提携、承認、公開はありません。

ソース(フリート #2724)

インディアナ州議会の法典ビューアー(iga.in.gov)は React SPA です。独自の JS バンドルでデータソースを直接指定しており(REACT_APP_API_URL)、タイトルを表示するページは、タイトルごと、年ごとに 1 件のプレーンなドキュメントを取得します。

https://iga.in.gov/ic/<year>/Title_<N>.html

ドキュメントは条項ごとではなく、タイトルごとに 1 件です。Title_9.html(自動車)は約 5.9 MB で、その年の Title 9 に含まれる約 2,300 条項すべてが記載されています。<year> は SPA が in_code_year と呼ぶフィールドと同じです。これが過去版に対応できる仕組みです。in_code_section の year 引数を指定すると、別のアーカイブ API は不要で、過去の年(例:2018 年)について同じ形式のデータを取得できます。2026-10-06 に測定したところ、Title 9 には 2017 年まで遡る実データがありました。タイトルによって最も古い年は異なるため、アーカイブにデータがない年を指定すると、固定の下限年ではなく year_or_title_not_found が返されます。

上流はブラウザー形式の User-Agent を必要とします。 通常の UA("Mozilla/5.0" のみの場合も含む)では、HTTP 200 と 691 バイトの SPA シェルが返されます。これはエラーではなく、気づきにくい空の応答です。Mozilla/5.0 (compatible; pipeworx-mcp-indiana-code/1.0; +https://pipeworx.io) は、このリポジトリの他の箇所(19hz、fed-comms)でも使用している、同じ誠実なボット UA の慣例に沿ったもので、通過します。Referer、Cookie、JS チャレンジは不要です。ブラウザー外から通常の curl を使って確認済みです。

引用による検索

in_code_section は、タイトルドキュメント内で引用自体をキーとする section クラスの要素(境界マーカー)を見つけて、引用(例:"9-21-5-5"、"32-31-3-6")を解決します。ソース内のタイトル、編、章、節はすべて同じ形式のマーカーを持つため、階層の深さに関係なく、境界を一度スキャンすれば節の正確な開始位置と終了位置を特定できます。

現行の法典では、まず取得済みバンドル(scripts/ingest-indiana-statutes.mjs が作成し、共有 pipeworx-datasets R2 バケットの statutes/in/<title>.json に保存されたもの。タイトルごとに 1 バンドル、合計 37 個)を試し、バンドルがない場合はライブ取得にフォールバックします。バンドルに取り込まれた年とは異なる year が明示された場合は、常にライブ取得します。取得済みバンドルには現行法典のみが含まれ、過去の年は事前取り込みされません。ライブ取得経路にスロットリングがないためです(mcps/north-carolina-code の ncleg.gov に対する節ごとの取得経路とは異なります)。

各節の末尾にある「As added by...」/「Amended by...」の注記(および "[Pre-&lt;year&gt; Recodification Citation: ...]" の行)は、text 内に残さず、独立した history フィールドに分離しています。これはタスクで求められた改正履歴機能であり、mcps/california-code が末尾の制定に関する括弧書きを分離する方法と同じです。

トピック検索

in_code_search は、「貸主による報復的な立ち退き」や「大型車両許可」など、引用検索では答えられない質問に、共有 SEARCH_SHARD Durable Object(workers/gateway/src/search-shard.ts、シャード名 in-statutes)の FTS5 を使って回答します(docs/gateway-text-binding-limit.md に従い、新しい Cloudflare バインディングは追加しません)。検索結果には引用と見出しが含まれます。全文を取得するには、結果内の節を指定して in_code_section を呼び出してください。

対象範囲

別個のドキュメントとして存在するインディアナ州法典の全 37 タイトルが対象です(Title 7 は完全に 7.1 に統合されているため、個別のコンテンツは返されません。Titles 17/18/19 は「REPEALED」のスタブで、マーカーはあるものの節は 0 件です。いずれも欠落として扱わず、実在する 0 節の結果として保持します)。2026 年版の法典では、37 タイトルにわたって 77,780 節を取り込みました。

更新

node scripts/ingest-indiana-statutes.mjs — 定期的に再実行してください(州議会は毎年開会するため、毎日の更新は必要ありません)。スケジュールは設定されていないため、scripts/ingest-nc-statutes.mjs と同じパターンで手動実行してください。

データソース

州議会の公式サイト(iga.in.gov)です。インディアナ州法は公的記録であり、ここで使用しているタイトル別の一括ドキュメント取得用パスについて、再利用の制限は確認されていません。

クイックスタート

MCP クライアント(Claude Desktop、Cursor、Windsurf など)に追加します。

{
  "mcpServers": {
    "indiana-code": {
      "url": "https://gateway.pipeworx.io/indiana-code/mcp"
    }
  }
}
このエンドポイントが実際に提供するもの

https://gateway.pipeworx.io/indiana-code/mcp の tools/list は、上の表にあるツールに加えて、共有 Pipeworx メタツール(ask_pipeworx、discover_tools、search_within、remember/recall など、ゲートウェイ全体で利用できるツール群)も返します。そのため、表示されるツール数はこの表より多くなります。現在、単一パックのエンドポイントには、そのパック独自のツールとともに、およそ30個の共有ツールが一覧表示されます。接続の initialize 応答には正確な範囲が示されており、その日の状況を確認する際の確かな情報源となります。

これは意図的な設計であり、偶然に多重化されているわけではありません。メタツールを使うと、このパックが対応していない質問にも、カタログ全体を横断してルーティングする ask_pipeworx を通じて回答できます。そのため、MCP サーバーをもう1つ追加する必要はありません。現時点では、これらのメタツールを含めずにパックのエンドポイントをマウントする方法はありません。追加のスキーマによるコンテキスト消費がルーティングの利点を上回る場合は、複数のパックエンドポイントに接続するのではなく、フルゲートウェイに一度だけ接続してください。

このパックのツールだけでなく、すべてのパックのツールを直接一覧表示するには、フル Pipeworx ゲートウェイに接続します。

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

どちらの URL も、同じゲートウェイと同じ1881以上のデータソースに接続します。異なるのは、どのパックのツールが直接一覧表示されるかだけです。どちらからでも、ask_pipeworx を使ってすべてのツールにアクセスできます。

MCP クライアントがない場合は、HTTP 経由で呼び出す

curl -X POST https://gateway.pipeworx.io/v1/tools/in_code_section \
  -H 'Content-Type: application/json' \
  -d '{"section":"9-21-5-5"}'

最初の呼び出しにはアカウントは不要です。ツールの詳細は GET https://gateway.pipeworx.io/v1/tools/in_code_section で確認できます。ツールを検索するには、{"query":"..."} を指定して POST https://gateway.pipeworx.io/v1/tools/search_packs を呼び出してください。

スタンドアロン(ゲートウェイアカウント不要)

このパッケージは、ローカルの stdio MCP サーバーとしても実行できます。Pipeworx アカウントも、ゲートウェイへの往復通信も必要ありません。

{
  "mcpServers": {
    "indiana-code": {
      "command": "npx",
      "args": ["-y", "@pipeworx/mcp-indiana-code"]
    }
  }
}

または、起動することを確認するために、直接実行してください。

npx -y @pipeworx/mcp-indiana-code

stdin/stdout 経由で MCP を使用し、initialize/tools/list/tools/call に対して、このパックのツールのみで応答します。上記のゲートウェイ接続で追加される共有メタツールは含まれません。同じソース、同じツールを使用しますが、ask_pipeworx によるルーティングはありません。

ask_pipeworx の使用

ツールを直接呼び出す代わりに、平易な英語で質問できます。これは上記のパックエンドポイントとフルゲートウェイの両方で使えます。

ask_pipeworx({ question: "your question about Indiana Code data" })

ゲートウェイが適切なツールを選び、引数を自動的に設定します。

詳細

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。