著者: George Curta ·
AI用プライバシー保護 — Claude Desktop、Cursor、およびすべてのMCPツールで動作
AIツールをHTTPトランスポート経由でanonym.legalに直接接続 — URLとAPIキーを追加するだけです。48言語、6つの匿名化オペレータ、エンティティグループ、プリセット、個人用暗号化キー。
AI支援作業における隠れたリスク
ChatGPT、Claude、またはCursorを使用するたびに、機密情報を共有している可能性があります。ほとんどのユーザーは、自分のデータがサードパーティのAIプロバイダーに送信されていることに気づいていません。
顧客名とメールアドレス
金融口座番号
医療記録と患者ID
営業秘密と専有データ
Why Secure MCP Servers Matter — 2026 Research
8,000+
MCP servers publicly exposed
492
servers with zero authentication
36.7%
vulnerable to SSRF attacks
CVSS 8.8
CVE-2026-25253 severity
MCP servers that handle raw user prompts without PII filtering expose sensitive data to AI models and downstream tool calls. anonym.legal acts as a secure MCP gateway — anonymizing PII before it reaches any other MCP server, AI model, or external API.
仕組み:自動保護
通常通り記述します
機密データを含む
AIツール
Cursor、Claudeなど
anonym.legal MCPサーバー
1. 検出
機密情報を見つける
2. 置換
プレースホルダーを使用
3. 保存
暗号化された一時的なデータ
AIが処理します
安全なプレースホルダーのみ
値を復元
元のデータに戻す
MCPサーバーは、AIツールと機密データの間のプライバシーシールドとして機能します。AIはあなたの実際の情報を決して見ることはありません。
何が保護されますか?
システムは50以上の種類の機密情報を自動的に検出し、保護します
人々
ジョン・ドウ、ジェーン・スミス、ウィリアムズ医師
メール
john@example.com, info@company.org
電話
+1-555-1234, (555) 123-4567
クレジットカード
4532-1234-5678-9010
住所
123 メインストリート, ニューヨーク, NY
日付
2026年1月15日, 01/15/2026
医療情報
患者ID、処方番号
金融ID
IBAN、税ID、VAT番号
デジタル識別子
IPアドレス、MACアドレス、URL
その他40以上の種類
ナンバープレート、パスポート番号など
主な利点
Claude Desktop、Cursor、すべてのMCPツールで動作
HTTPトランスポート - URLとAPIキーを設定に追加するだけで動作します。Claude Desktop、Cursor、VS Code、およびあらゆるMCPツールで使用可能です。Node.jsは不要です。
5つの匿名化オペレーター
適切な方法を選択:置換、赤外、ハッシュ(SHA-256/512)、暗号化(AES-256)、マスク (API/MCP: + 保持)。エンティティタイプごとに異なるオペレーターを適用。
エンティティグループとテンプレート
事前定義されたグループ(UNIVERSAL、FINANCIAL、DACH、FRANCE、NORTH_AMERICA)を使用するか、一貫した匿名化のために個人用テンプレートを作成します。
48言語に対応
英語、ドイツ語、フランス語、スペイン語、中国語、日本語、アラビア語、及び41の他の言語でPIIを検出します。RTLサポートも含まれています。
個人用暗号化キー
暗号化オペレーター用に自分のAES-128/192/256キーを読み込みます。いつでも自分のキーで復号化できます。キーはあなたのアカウントに安全に保存されます。
セッション管理
可逆的な匿名化のためのセッションIDを持つトークン化モード。セッションをリスト、管理、削除します。24時間または30日間の持続オプション。
お気に入りのAIツールと連携
HTTPトランスポート — Claude Desktop、Cursor、任意のMCPツール
Cursor IDE
AvailableAI支援を受けながらコーディング中にコードの秘密と機密データを保護します。
Claude Desktop
AvailableHTTPトランスポート — URLとAPIキーを追加します。ローカルセットアップは不要。claude_desktop_config.jsonに追加するだけです
Continue (VS Code)
AvailableVisual Studio Codeで直接AIコーディングアシスタント統合をHTTP経由で安全に行います。
Cline (VS Code)
AvailableMCP HTTP経由で自動プライバシー保護を備えたAI駆動のコーディング。
任意のMCPツール
Availableストリーミング可能なHTTPトランスポートは、任意のMCP互換アプリケーションで機能します。
2分でセットアップ
Claude.aiではOAuthで接続 — Claude Desktop、Cursor、その他のMCPツールではAPIキーをご利用ください
APIキー不要 — サインインして承認するだけ:
- 1Claude.aiで Settings → Connectors → Add custom connector に移動します
- 2サーバーURLとして https://anonym.legal/mcp を入力します
- 3anonym.legalアカウントでサインインし、アクセスを承認します(OAuth 2.1 + PKCE)
- 4すべてのチャットで9つのプライバシーツールが利用可能 — Team/Enterprise管理者は組織全体で有効化できます
Server URL: https://anonym.legal/mcp
Authentication: OAuth 2.1 (automatic)
Sign in with your anonym.legal account
and approve access — no API key needed.管理者とユーザー向けの完全な手順に従ってください — カスタムコネクターを追加し、ツール権限の上限を設定して、実際のツール呼び出しを確認します。
Claude Desktop、Cursor、および任意のMCPツール:
- 1設定 → APIアクセスからAPIキーを取得
- 2MCPクライアント構成ファイルを開く
- 3Authorization: Bearer YOUR_KEY付きのURL https://anonym.legal/mcpを追加
- 4AIツールを再起動 — 9つのプライバシーツールが利用可能!
{
"mcpServers": {
"anonym-legal": {
"type": "http",
"url": "https://anonym.legal/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}HTTP(Cursor、VS Codeなど):
- 1設定→APIアクセスからAPIキーを取得します。
- 2MCPサーバーURLを追加します: https://anonym.legal/mcp
- 3BearerトークンでAuthorizationヘッダーを構成します。
- 4即座に動作 — Node.js不要、ローカルサーバー不要
{
"mcpServers": {
"anonym-legal": {
"type": "http",
"url": "https://anonym.legal/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}ユースケース
ソフトウェア開発
APIキー、データベースの資格情報、顧客データを含むコードをレビューし、AIプロバイダーに秘密を漏らさずに済みます。
法律事務所
AIを使用して文書を作成する際に、顧客名、ケース番号、及び機密の詳細を匿名化し、弁護士-クライアント特権を確保します。
ヘルスケア
患者のメモや報告書をAI支援で分析し、患者の身元と医療記録を完全にプライベートに保ちます。
カスタマーサポート
AIの助けを借りて顧客の問い合わせを処理し、メールアドレス、電話番号、及びアカウントの詳細を自動的に保護します。
ファイナンス
報告分析にAIを使用し、口座番号、取引詳細、及び顧客の身元を保護します。
MCPサーバー対手動赤外
| 側面 | 手動赤外 | anonym.legal MCP |
|---|---|---|
| 速度 | ドキュメントあたり数分 | < 1秒 |
| 精度 | 人為的エラーの可能性 | 273種類のエンティティにわたる文脈を考慮した検出 |
| 可逆性 | いいえ - 永続的 | はい - 完全に可逆 |
| メンテナンス | 常時監視 | 自動 |
| 言語 | 一度に1つ | 48同時に |
| 統合 | コピー/ペーストのワークフロー | ツール内でシームレス |
| コスト | スタッフの時間 | 月€15から |
anonym.legal MCP vs. Unprotected MCP
Without a secure MCP server layer, raw PII flows into AI models and all downstream tool calls — including other MCP servers, APIs, and logs. anonym.legal anonymizes data before it leaves your environment.
| Capability | Unprotected MCP Server | anonym.legal MCP |
|---|---|---|
| PII in AI prompts | Raw names, emails, SSNs sent to LLM | Anonymized tokens sent — originals never leave |
| Authentication | Often none (492 servers exposed, no auth) | Bearer token + rate limiting on every request |
| SSRF protection | 36.7% vulnerable to SSRF (CVE-2026-25253) | SSRF allowlist enforced — no private IP access |
| Data to downstream MCPs | Raw PII forwarded to all connected tools | Anonymized before forwarding — zero PII leakage |
| GDPR / HIPAA compliance | Non-compliant — PII in AI training data risk | Compliant — PII stays encrypted, reversible only by you |
| Audit trail | No log of what PII was exposed | Session-based tokens with full detokenization audit |
| Multilingual PII detection | English-only or no detection | 273 entity types across 48 languages |
すべてのプロンプトを自動的に匿名化 — 手動ステップはゼロ
Claude Codeフックはプロンプトを傍受してClaude に到達する前に、MCPサーバーでPIIを削除し、応答の元の値を復元します。1回限りのセットアップ後は、すべてのメッセージで静かに実行されます。
匿名化フックを作成
~/.claude/hooks/anonymize-prompt.py として保存 — すべての UserPromptSubmit イベントを傍受し、MCP サーバーを呼び出します。
# ~/.claude/hooks/anonymize-prompt.py
import sys, json, requests, os
data = json.load(sys.stdin)
prompt = data.get("prompt", "")
key = os.environ.get("ANONYM_API_KEY", "")
resp = requests.post("https://anonym.legal/api/mcp/anonymize",
headers={"Authorization": f"Bearer {key}"},
json={"text": prompt, "language": "en", "mode": "tokenize"})
if resp.ok:
result = resp.json()
data["prompt"] = result["anonymized_text"]
data["session_id"] = result["session_id"]
print(json.dumps(data))復元フックを作成
~/.claude/hooks/deanonymize-response.py として保存 — セッションIDを使用してClaude のレスポンスを自動的に逆トークン化します。
# ~/.claude/hooks/deanonymize-response.py
import sys, json, requests, os
data = json.load(sys.stdin)
response = data.get("response", "")
session_id = data.get("session_id", "")
key = os.environ.get("ANONYM_API_KEY", "")
if session_id:
resp = requests.post("https://anonym.legal/api/mcp/detokenize",
headers={"Authorization": f"Bearer {key}"},
json={"text": response, "session_id": session_id})
if resp.ok:
data["response"] = resp.json().get("detokenized_text", response)
print(json.dumps(data))Claude Code設定にフックを登録
両方のフックを ~/.claude/settings.json の hooks キーの下に追加します。
// ~/.claude/settings.json
{
"hooks": {
"UserPromptSubmit": [
{
"hooks": [{"type": "command",
"command": "python3 ~/.claude/hooks/anonymize-prompt.py"}]
}
],
"Stop": [
{
"hooks": [{"type": "command",
"command": "python3 ~/.claude/hooks/deanonymize-response.py"}]
}
]
}
}よくある質問
Claude DesktopまたはCursorに接続するにはどうすればよいですか?
すべてのクライアントがHTTPトランスポートを使用します — URL https://anonym.legal/mcpとAPIキーをMCP構成ファイルに追加するだけです。Node.jsまたはローカルインストールは不要。Claude Codeユーザーの場合、フックシステムはすべてのプロンプトで完全に自動化された匿名化を有効にします。
フィルタールールで利用できる論理演算子は何ですか?
5つのオペレーター:置換(偽データ)、墨消し(削除)、ハッシュ(SHA-256/512)、暗号化(あなたのキーでAES-256)、マスク(部分的に隠す)。API/MCP: + 保持(匿名化から除外)。
自分の暗号化キーを使用できますか?
はい!アカウントから個人用AESキー(16/24/32文字)を読み込むか、手動で入力します。あなたのキーで暗号化し、後で同じキーで復号化します。キーはあなたの管理下に留まります。
エンティティグループとは何で、どのように使用されますか?
事前定義されたコレクション:UNIVERSAL(一般的なPII)、FINANCIAL(銀行)、DACH(ドイツ語圏)、FRANCE、NORTH_AMERICAなど。どのエンティティを検出するかを設定する時間を節約します。
赤外モードとトークン化モードの違いは何ですか?
墨消しモードはPIIを永久に削除します。トークン化モードは可逆トークンで置き換え、session_idを返します。session_idを使用してdetokenize_textを使用すると、元の値を復元できます。
トークンの再利用のために MCP サーバーセッションはどのように動作しますか?
トークン化はセッションを作成します(24時間または30日間の持続)。list_sessionsを使用してアクティブなセッションを表示し、delete_sessionで削除します。セッションはトークンと元の値のマッピングを保存します。
API リファレンス
MCPプロトコル経由で9つのツールが利用可能(画像内のPII墨消しを含む)。無料の操作には*が付いています。
| ツール | 説明 | コスト |
|---|---|---|
| anonym_legal_analyze_text | テキストを変更せずに PII エンティティを検出 | 2-10+ トークン |
| anonym_legal_anonymize_text | 設定可能なオペレーターでテキストを匿名化 | 3-20+ トークン |
| anonym_legal_detokenize_text | トークン化されたテキストから元の PII を復元 | 1-5+ トークン |
| anonym_legal_get_balance | トークン残高と請求サイクルを確認 | 無料 * |
| anonym_legal_estimate_cost | 処理前にトークンコストを見積もる | 無料 * |
| anonym_legal_list_presets | preset パラメータ用に利用可能なプリセットを一覧表示(組み込み、個人、公開/注目) | 無料 * |
| anonym_legal_list_sessions | アクティブなトークン化セッションを一覧表示 | 無料 * |
| anonym_legal_delete_session | セッションとそのトークンマッピングを削除 | 無料 * |
| anonym_legal_redact_image | OCRを使用してPNG/JPEG画像内のPIIを墨消しまたは分析します(モード:analyze、redact) | 画像により異なる |
オペレーターリファレンス
オペレーターパラメータを使用してエンティティごとの匿名化を構成します。
| オペレーター | 説明 | パラメータ | 例の出力 |
|---|---|---|---|
| replace | カスタム値で置き換え | new_value (文字列、最大 100 文字) | <PERSON_1> |
| redact | 永久に削除 | なし | [REDACTED] |
| hash | 一方向ハッシュ | hash_type: SHA256 | SHA512 | a3f2b8c1... |
| encrypt | 可逆暗号化 | key (16-32 文字) | ENC:base64... |
| mask | 部分的な文字マスキング | chars_to_mask, masking_char, from_end | John **** |
| keep | 元の値を保持 | なし | John Smith |
リクエスト例
テキストを分析
{
"text": "John Smith lives at 123 Main St, New York. SSN: 123-45-6789",
"language": "en",
"score_threshold": 0.5,
"entities": ["PERSON", "LOCATION", "US_SSN"]
}エンティティごとのオペレーターで匿名化
{
"text": "John Smith, SSN 123-45-6789, email john@example.com",
"language": "en",
"mode": "tokenize",
"operators": {
"PERSON": { "type": "replace" },
"US_SSN": { "type": "mask", "chars_to_mask": 5, "from_end": false },
"EMAIL_ADDRESS": { "type": "hash", "hash_type": "SHA256" }
}
}レスポンス (匿名化)
{
"anonymized_text": "<PERSON_1>, SSN ***-**-6789, email a3f2b8c1d4e5...",
"entities_found": 3,
"tokens_charged": 5,
"session_id": "sess_abc123",
"entity_types": { "PERSON": 1, "US_SSN": 1, "EMAIL_ADDRESS": 1 }
}エラーコード
| コード | 説明 | 解決策 |
|---|---|---|
| 400 | 無効なリクエストパラメータ | テキストの長さを確認 (最大 100KB)、オペレーター設定 |
| 401 | 無効または欠落している API キー | 設定 → API アクセスで API キーを確認 |
| 429 | トークン残高が尽きました | 残高を確認、プランをアップグレード、またはサイクルリセットを待つ |
| 500 | サーバーエラー | 数秒後に再試行、持続する場合はサポートに連絡 |
From the Blog
View all articlesReal-Time PII Prevention Saves $2.2M
IBM found a $2.2M cost difference between prevention and detection. Here's the math that makes real-time PII interception non-optional for security teams.
Enterprise AI: Dev Access Without Risk
Banks banned ChatGPT, but developers used it from home anyway. 27.4% of content fed into enterprise AI chatbots is sensitive data. Fix: secure MCP access.
Using Cursor & Claude Without Leaking Code
Cursor loads .env files into AI context by default. A financial services firm lost $12M after proprietary trading algorithms were sent to an AI assistant.
Limitations / Important note
- Availability and limits depend on your plan and MCP client; behaviour varies across hosts.
- Detection results are probabilistic; validate before automated downstream use. This is not legal advice.