Icij Offshore Leaks について
Icij Offshore Leaks は、5つの調査に登場するオフショア法人、関係者、仲介業者を検索する MCP サーバーです。名前検索に加え、ノードの詳細情報と関連関係、各関係の出典となる調査を確認できます。
主な機能
- 01名前によるノード検索
- 02管轄区域と種類による絞り込み
- 03プロフィールと関連関係の取得
- 04関係の出典調査の表示
活用シーン
- 01オフショア法人、関係者、仲介業者の検索
- 02ノードに関連する人物や法人の確認
- 03関係が報告された調査の特定
MCP 対応
MCP 経由で offshore_search と offshore_entity ツールを公開し、データベースのノードと関係を検索できます。Pipeworx ゲートウェイへの接続、またはローカルの stdio MCP サーバーとしての実行に対応します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://gateway.pipeworx.io/icij-offshore-leaks/mcpclaude mcp add --transport http pipeworx-io-icij-offshore-leaks https://gateway.pipeworx.io/icij-offshore-leaks/mcp{"mcpServers":{"pipeworx-io-icij-offshore-leaks":{"type":"http","url":"https://gateway.pipeworx.io/icij-offshore-leaks/mcp"}}}Cursor で開く{"servers":{"pipeworx-io-icij-offshore-leaks":{"type":"http","url":"https://gateway.pipeworx.io/icij-offshore-leaks/mcp"}}}VS Code で開く{"mcpServers":{"pipeworx-io-icij-offshore-leaks":{"type":"http","url":"https://gateway.pipeworx.io/icij-offshore-leaks/mcp"}}}{"mcpServers":{"pipeworx-io-icij-offshore-leaks":{"serverUrl":"https://gateway.pipeworx.io/icij-offshore-leaks/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
43| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| q | string | いいえ | question の別名。 |
| ask | string | いいえ | question の別名。 |
| text | string | いいえ | question の別名。 |
| input | string | いいえ | question の別名。 |
| packs | array | いいえ | 任意。ルーティング対象をこれらのパックスラッグに限定します(例:["sec-form-d","sec-13f"])。その場合、ルーターは該当パック内のツールのみを選択します。省略すると、デフォルトの全カタログへのルーティングになります。スラッグは list_packs / search_packs / https://pipeworx.io/directory から取得できます。リストにない、または不明なスラッグは無視され、_meta.pack_scope.ignored に記載されます。該当するスラッグが 1 つもない場合は、カタログ全体にルーティングし、_meta.pack_scope.full_catalog:true を設定します(空の回答にはなりません)。 |
| query | string | いいえ | question の別名。 |
| prompt | string | いいえ | question の別名。 |
| message | string | いいえ | question の別名。 |
| question | string | はい | 自然言語での質問またはリクエスト。query、q、prompt、text、input、ask、message をエイリアスとして使用できます。 |
詳細
@pipeworx/icij-offshore-leaks
ICIJ Offshore Leaks Database を検索します。対象は、5つのICIJ調査(Offshore Leaks 2013、Panama Papers 2016、Bahamas Leaks 2016、Paradise Papers 2017、 Pandora Papers 2021)で名前が挙がったオフショア事業体、役員 (取締役/株主/受益者)、仲介者(登録代理人、法律事務所、銀行)です。名前で検索するか、1つのノードの完全なプロフィールと、関連するすべての役員/仲介者/事業体/住所、および各リンクの情報源となったリークを取得できます。
Pipeworx の一部です。AI エージェントを1807以上の稼働中のデータソースに接続するMCPゲートウェイです。これは独立した非公式の統合であり、上流プロバイダーとは提携・承認・公開のいずれも受けていません。
ツール
offshore_search(name, jurisdiction?, node_type?, limit?)— 事業体、役員、仲介者を対象に、名前で検索します (接頭辞に対応したFTS5)。任意で管轄区域とノードタイプによるフィルターを指定できます。各検索結果について、node_id、タイプ、管轄区域、ステータス、および情報源となったリークを返します。offshore_entity(node_id, limit?)— 1つのノードの完全なプロフィール(名前、 管轄区域、ステータス、設立/抹消の日付、登録代理人)に加え、 関連するすべての関係(役割、方向、相手ノードの名前と タイプ、および情報源となったリーク)を返します。すべてのノードタイプで利用できます。
認証
不要です。
ライセンスと注意事項 — すべてのレスポンスに両方が原文のまま含まれます
ICIJ Offshore Leaks Database は Open Database License (ODbL)(コンテンツは Creative Commons Attribution-ShareAlike のライセンスに基づきます)の下でライセンスされています。 ICIJ:「このデータを使用する際は、必ずInternational Consortium of Investigative Journalistsを出典として明記してください。」
ICIJ:「ICIJ Offshore Leaks Database に個人または事業体が含まれていることは、その個人または事業体が違法または不適切な行為に関与したことを示唆または意味するものではありません。」同じ、または 類似した名前を持つ個人や事業体は多数存在します。
このパッケージが提供するのは、ICIJ自身がすでに公開している情報(名前、役割、 管轄区域、関連情報)のみです。他の個人データソースによる情報の追加は行いません。
データソース
- International Consortium of Investigative Journalists(ICIJ)、Offshore Leaks Database(offshoreleaks.icij.org)— 公開データベースのグラフを構成するICIJの一括CSVエクスポートです。約814K件のエンティティ、約771K件の役員、約27K件の仲介者、約402K件の住所、約3K件のその他のノードと、それらを結ぶ約3.34M件の関係エッジが、5つの特定時点での調査にわたって収録されています。
保存して使用するデータであり、バンドルへのインポートでも、ライブクエリでもありません。 ICIJはこれを呼び出し可能なAPIではなく、ODbLに基づく一括CSVダウンロードとして公開しているため、このパックはデータのコピーを作成するものです(CLAUDE.md「What we will source」)。約2.0M件のノードと約3.3M件のエッジは、ゲートウェイからこのパックに _d1 として渡されるD1データベースに保存されます(pack-manifest.json の "d1Binding": "ICIJ_OFFSHORE_LEAKS_DB"、スキーマとクエリは src/store.ts)。この規模では、バンドルへのインポートはゲートウェイ Worker のバンドル上限を大幅に超えてしまいます(未圧縮で28 MiB/gzip圧縮で6.5 MiB。このデータセットだけでSQL約1 GB)。
既知のデータの癖と、ローダーでの処理: ICIJのエクスポートでは、nodes-officers.csv と nodes-intermediaries.csv の両方で、約1,139人について同じ node_id が再利用されています(氏名、国、ソースが同一。例:node_id 51122、「Peng, Wan-Hsiung」は両方に記載)。ICIJのサイト(offshoreleaks.icij.org/nodes/<id>)ではこれらのIDは「Intermediary」として解決されるため、ローダーはIDが重複する場合、仲介者の行を残し、役員の重複行を削除します(scripts/icij-offshore-leaks/fetch-icij-data.py)。
検索には LIKE ではなくFTS5を使用します — このカタログのより小規模なD1ストアのパックとは異なり、検索対象となる約1.6M件の氏名は多すぎるため、D1のクエリごとの制限内で LIKE '%term%' スキャンを確実に完了できません。offshore_name_fts はスタンドアロンのFTS5テーブル(content=/content_rowid=は使用しません)で、offshore_node のrowidとは切り離されており、node_id TEXT列で結合します。これは、D1の既知のFTS5の落とし穴を2つ避けるために特別に選ばれました。ベーステーブルを分割してインポートしてもFTS5の転置インデックスは作成されないため、ローダーはベースデータのロード完了を確認した後に、サーバー側で独自のバッチ処理を使ってインデックスを再構築します。また、ベーステーブルに存在しない列を指定した外部コンテンツFTSは、ローカルのsqliteスモークテストではエラーにならず、D1では実行時にエラーになります。
更新:
python3 scripts/icij-offshore-leaks/fetch-icij-data.py --out /tmp/icij-ndjson
node scripts/icij-offshore-leaks/load-data.mjs --ndjson /tmp/icij-ndjson --db pipeworx-icij-offshore-leaks
ICIJは独自のスケジュールで一括エクスポートを更新します(2013年以降、特定時点での調査が5回実施され、直近は2021年のPandora Papers。その後も段階的な修正が行われています)。すべてのレスポンスの data_as_of は、最後にロードしたエクスポート自体の生成日です。この処理は本番D1に書き込みます。実行する場合は、そのアクセス権限があるときに限ってください。この処理に必要なデータベースの初回作成については、以下の「本番環境のセットアップ」を参照してください。
本番環境のセットアップ(初回のみ。このパックの作成者は実施しません。D1への書き込みはBruceの判断です)
wrangler d1 create pipeworx-icij-offshore-leaks --location wnam
# then add the [[d1_databases]] block it prints to workers/gateway/wrangler.toml:
# binding = "ICIJ_OFFSHORE_LEAKS_DB"
# database_name = "pipeworx-icij-offshore-leaks"
# database_id = "<from the create output>"
python3 scripts/icij-offshore-leaks/fetch-icij-data.py --out /tmp/icij-ndjson
node scripts/icij-offshore-leaks/load-data.mjs --ndjson /tmp/icij-ndjson --db pipeworx-icij-offshore-leaks
実際の2026-09-09エクスポートを使ってローカルで検証済みです(--db ではなく --local-sqlite を使用。ネットワーク/wranglerは使用しません):ノード2,016,523件(エンティティ814,344件、役員770,176件、仲介者26,768件、住所402,246件、その他2,989件。役員/仲介者の重複1,139件を重複排除)、関係3,339,267件、FTSインデックス1,611,197行を、シングルコアで1分もかからずにロードしました。生成されたSQLiteファイルは約1.1 GBで、D1のデータベースサイズ上限である10 GB(Workers Paid)を十分に下回っています。本番環境へのロードでは、CPU処理よりもネットワークの往復通信が大部分を占めます。ローダーはファイルごとに、バイト数の上限を設けた INSERT 文を多数まとめます(D1の単一文の上限は100,000バイト、wrangler d1 execute --file は最大5 GiBのファイルに対応)。その結果、offshore_node 用に約74ファイル、offshore_relationship 用に約50ファイル、offshore_name_fts の再構築にサーバー側のバッチ41回となり、wrangler d1 execute の往復は合計で約165回です。D1のファイルごとのインポート時間によって異なりますが、所要時間は45~90分と見込まれます。
クイックスタート
MCPクライアント(Claude Desktop、Cursor、Windsurfなど)に追加します:
{
"mcpServers": {
"icij-offshore-leaks": {
"url": "https://gateway.pipeworx.io/icij-offshore-leaks/mcp"
}
}
}
このエンドポイントが実際に提供するもの
https://gateway.pipeworx.io/icij-offshore-leaks/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 も同じゲートウェイと同じ1807以上のデータソースに接続します。違いは、どのパックのツールが直接一覧表示されるかだけです。どちらからでも、ask_pipeworx を使ってすべてのツールにアクセスできます。
MCP クライアントがない場合:HTTP 経由で呼び出す
curl -X POST https://gateway.pipeworx.io/v1/tools/offshore_search \
-H 'Content-Type: application/json' \
-d '{"name":"Wintris"}'
最初の呼び出しにはアカウントは不要です。ツールの詳細を確認するには、GET https://gateway.pipeworx.io/v1/tools/offshore_search を使用します。ツールを探すには、{"query":"..."} を指定して POST https://gateway.pipeworx.io/v1/tools/search_packs を使用します。
スタンドアロン(ゲートウェイアカウント不要)
このパッケージは、ローカルの stdio MCP サーバーとしても実行できます。Pipeworx アカウントもゲートウェイ経由の通信も必要ありません。
{
"mcpServers": {
"icij-offshore-leaks": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-icij-offshore-leaks"]
}
}
}
または、直接実行して起動を確認できます。
npx -y @pipeworx/mcp-icij-offshore-leaks
標準入力/標準出力経由で MCP を使用し、initialize/tools/list/tools/call に対して、このパックのツールのみを返します。上記のゲートウェイ接続で追加される共通メタツールは含まれません。同じソース、同じツールで、ask_pipeworx によるルーティングはありません。
ask_pipeworx の使用
ツールを直接呼び出す代わりに、平易な英語で質問できます。この方法は、上記のパックエンドポイントとフルゲートウェイのどちらでも利用できます。
ask_pipeworx({ question: "your question about Icij Offshore Leaks data" })
ゲートウェイが適切なツールを選び、引数を自動的に入力します。
詳細
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。