mcpField
P
privacyscrubber-mcp

privacyscrubber-mcp

ローカル
github.com/moxnoセキュリティ21 日前に更新

privacyscrubber-mcp について

PrivacyScrubberは、AIリクエストが端末外へ送られる前に個人情報や認証情報、シークレットをマスクするローカルMCPサーバーです。メモリ内の対応表を使って値を復元できます。

主な機能

  1. 01テキストとファイルのローカル処理
  2. 02個人情報・シークレット・認証情報のマスキング
  3. 03カスタム正規表現ルール
  4. 04メモリ内の復元可能なトークン対応表
  5. 05クライアントの自動インストールと設定

活用シーン

  1. 01AI IDEへ送るプロンプト内のシークレットのマスキング
  2. 02LLMにコンテキストを渡す前のファイル処理
  3. 03応答テキスト内の元の値の復元

MCP 対応

MCPサーバーは、機密情報をローカルでマスクしてトークン値を復元する `sanitize_text` と `reveal_text` ツールを提供します。stdioで通信します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"moxno-privacyscrubber": {
"command": "npx",
"args": [
"-y",
"@privacyscrubber/mcp-server"
],
"env": {
"PRIVACYSCRUBBER_KEY": "<PRIVACYSCRUBBER_KEY>"
}
}
}
}
起動コマンドnpx -y @privacyscrubber/mcp-server
設定が必要な環境変数
PRIVACYSCRUBBER_KEYシークレットOptional PRO or TEAMS license key to unlock specialized detection profiles.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@privacyscrubber/mcp-server2.2.5

ツール

23

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
textstringはい監査する生のテキスト、コード、プロンプト、またはログ。
formatenumいいえ出力形式:'detailed'(デフォルト、Markdown)、'summary'、または 'json'。detailed | summary | json
profilestringいいえ使用する検出プロファイル(例:'General'、'Dev'、'Medical'、'Finance'、'Legal')。デフォルトは 'General' です。

詳細

@privacyscrubber/mcp-server

NPM Version NPM Downloads PyPI Version PyPI Downloads NPM SDK Presidio Alternative Zero Dependencies License: MIT DOI OSF DOI SSRN IETF Specification ZTDS Verified smithery badge Cursor Directory Glama.ai TensorBlock MCP Index There's An AI For That Security: 100% Local Parity: 100% Core Match Patent Pending Developer SDK TEAMS Plan GitHub Stars

Cursor、Windsurf、Claude Desktop 向けの、CISO 承認済みゼロトラスト型 PII・シークレット削除 MCP サーバーです。 リモート LLM プロバイダーに送信される前に、ファイルやテキストのコンテキストから PII、シークレット、認証情報、カスタム正規表現ルールに一致する内容をローカルで除去し、API 漏えいを防止して、開発者のエンドポイントで HIPAA/SOC 2 への準拠を確保します。

ゼロトラストのオープンソースを応援してください: PrivacyScrubber がモデルへの漏えいから API キー、ソースコード、開発者の認証情報を守っている場合は、**GitHub でこのリポジトリにスターを付ける**か、gh repo star moxno/privacyscrubber-mcp を実行してください。 直接商用ライセンスと本番環境向けインフラストラクチャ:
バックエンドマイクロサービス、ETL パイプライン、または LangChain/LlamaIndex エージェント内でゼロトラストの PII マスキングを自動化したいとお考えですか?

  • Developer SDK(月額一律 $299 または年額 $2,990): 内部バックエンドノード数無制限、ネットワークへのデータ送信なし、メモリ内レイテンシー <1ms。Developer SDK に登録 | 技術仕様
  • TEAMS(月額一律 $99): 暗号化された P2P セッション引き継ぎ機能により、ドメイン全体でチームのシート数が無制限です。TEAMS プランを導入
  • PRO(月額 $15 または買い切り $110): 30 種類すべての業種別プロファイルで、1 シートあたりのスループットが無制限です。PRO ライセンスを取得

🔒 ゼロトラストのデータフロー

機密性の高いすべてのパラメーター、識別子、変数は、お使いのマシンの RAM 内でローカルに傍受されます。AI に送信される前に、トークン(例:[EMAIL_1])に置き換えられます。AI の応答後、ローカルコンテキスト内でトークンが元の値に安全に置き換えられます。

[Raw Input / Files] ──> [MCP sanitize_text] ──> [Masked Tokens] ──> [LLM API]
                               │                                       │
                        (In-Memory Map)                             (Result)
                               │                                       │
[Original Output] <─── [MCP reveal_text] <─────────────────────────────┘

🚀 インストール

1. ワンクリックの汎用自動インストーラー(推奨)

お使いのマシンにインストール済みの AI IDE を自動検出し、既存のツールを破損させることなく PrivacyScrubber を安全に設定します。

# Auto-detect and configure all installed clients (Cursor, Claude Desktop, Claude Code, Windsurf, VS Code, Cline, Zed):
npx -y @privacyscrubber/mcp-server install --all

# Or target specific environments directly:
npx -y @privacyscrubber/mcp-server install --claude-code
npx -y @privacyscrubber/mcp-server install --vscode
npx -y @privacyscrubber/mcp-server install --zed
npx -y @privacyscrubber/mcp-server install --cursor
npx -y @privacyscrubber/mcp-server install --claude
2. Smithery 経由でインストール

お好みのクライアントで自動設定して実行するには、Smithery を使ってインストールします。

npx -y @smithery/cli install @privacyscrubber/mcp-server --write-to-clients
3. NPX ですぐに実行

ローカルにインストールせずに、サーバーを直接実行します。

npx -y @privacyscrubber/mcp-server
4. UVX ですぐに実行(Python/PyPI)

Python エージェントのワークフロー(CrewAI、LangChain、AutoGen、LlamaIndex)内でサーバーを直接実行します。

uvx privacyscrubber-mcp

または pip 経由:

pip install privacyscrubber-mcp
privacyscrubber-mcp
5. Node.js/TypeScript プログラム向け SDK(軽量な Presidio 代替)

MCP サーバーではなく、バックエンドマイクロサービス、Next.js アプリ、または RAG ベクトルパイプラインで、メモリ内のゼロトラスト PII サニタイズを直接行いたい場合は、依存関係ゼロの公式 SDK をご利用ください。

npm install @privacyscrubber/sdk
import OpenAI from 'openai';
import { wrapOpenAI } from '@privacyscrubber/sdk';

// Transparently masks PII before sending to LLM and rehydrates responses:
const openai = wrapOpenAI(new OpenAI({ apiKey: process.env.OPENAI_API_KEY }));

// Outbound prompt is sanitized in local RAM before leaving your machine:
// "Schedule a call with [NAME_1] at [EMAIL_1] regarding API key [AWS_KEY_1]."
const completion = await openai.chat.completions.create({
  model: 'gpt-4o',
  messages: [{ role: 'user', content: 'Schedule a call with Alice Smith at [email protected] with AKIAIOSFODNN7EXAMPLE.' }]
});

// Incoming LLM answer is automatically rehydrated with "Alice Smith ([email protected])":
console.log(completion.choices[0].message.content);
⚡ Microsoft Presidio ではなく @privacyscrubber/sdk を選ぶ理由

Microsoft Presidio は Python の標準的な選択肢ですが、Node.js/TypeScript スタックに導入するには、重量級の Python マイクロサービス、Docker コンテナ、500MB 以上の spaCy NLP モデルが必要となり、レイテンシーは 35~120ms に達します。@privacyscrubber/sdk は 依存関係ゼロで、100%プロセス内で動作します。

機能/指標@privacyscrubber/sdkMicrosoft PresidioAWS Comprehend/Google Cloud DLP
ランタイムと依存関係依存関係なし(約150KB)Python + Docker + spaCy(約500MB)重量級のクラウド SDK
実行レイテンシーRAM 内で 1 ミリ秒未満(<1ms)HTTP/gRPC の往復で 35~120ms外部クラウドとの往復で 180~400ms
Docker/サイドカーの要否不要(純粋なプロセス内 Node/WASM)Docker コンテナが必須VPC エンドポイントと IAM の設定が必要
ネットワークへのデータ送信0 バイト(100%エアギャップ)ローカル内部ネットワークへのホップ暗号化されていないペイロード全体をクラウドに送信
データ損失と可逆性損失なし(restore() により RAM 内で復元可能)トークン保管庫の手動設定が必要マスキング/ハッシュ化は不可逆
OpenAI/LangChain のワンライナー組み込み(wrapOpenAI、wrapAiStream)複雑なカスタムパイプラインの接続が必要カスタムプロキシアーキテクチャが必要
DevOps シークレットの傍受組み込み(AWS、JWT、DB URI、GitHub PAT)カスタム正規表現の認識器が必要クラウド固有の分類器
ストリーミングの再構成組み込み(wrapAiStream、TransformStream)バッファリング/チャンク分割による失敗リアルタイムストリームでは非対応

👉 NPM で @privacyscrubber/sdk を見る | 完全なドキュメント、Express ミドルウェア、LangChain 変換機能、25 種類のコンプライアンスプロファイルを掲載しています。

🤖 AI オーケストレーターのレシピ:LangChain、LlamaIndex、CrewAI、AutoGPT

単一ユーザー向けの IDE プロンプトではなく、自律型エージェント、RAG ベクトルパイプライン、またはバックエンドサービスを構築している場合は、@privacyscrubber/sdk を使用してメモリ内でデータをサニタイズしてください。

1. LangChain.js(LCEL と RAG ドキュメントの取り込み)
import { ChatOpenAI } from '@langchain/openai';
import { createLangChainTransform, createDocumentTransformer } from '@privacyscrubber/sdk';

// A. RAG Pre-Ingestion: sanitize documents before embedding into vector stores
const docTransformer = createDocumentTransformer({
  profile: 'General',
  sensitiveMetadataKeys: ['account_owner', 'submitter_email'],
  attachTelemetry: true
});
const sanitizedDocs = await docTransformer.transformDocuments(rawDocs);

// B. LCEL Runtime Chains: sanitize prompts and restore responses in local RAM
const transform = createLangChainTransform({ defaultProfile: 'Dev' });
const { scrubbedText, tokenMap } = transform.preprocess(
  "Deploying database with user admin and pwd postgresql://user:[email protected]:5432/prod"
);
const model = new ChatOpenAI({ model: 'gpt-4o' });
const response = await model.invoke(scrubbedText);
const finalOutput = transform.postprocess(response.content, tokenMap);
2. LlamaIndex.TS と汎用ベクトル DB の取り込み(Chroma、Pinecone、Qdrant)
import { createVectorIngestionGuard, createLlamaIndexTransform } from '@privacyscrubber/sdk';

// Initialize in-memory Vector Ingestion Guard (<1ms per batch, zero network egress)
const guard = createVectorIngestionGuard({
  profile: 'Finance',
  sensitiveMetadataKeys: ['contractor_email', 'billing_contact']
});

// A. Sanitize Chroma columnar batches ({ ids, documents, metadatas })
const cleanChroma = guard.sanitizeRecords(chromaBatch);

// B. Sanitize Pinecone / Qdrant record arrays ({ id, text/payload, metadata })
const cleanRecords = guard.sanitizeRecords(pineconeRecords);

// C. Align search query tokens with sanitized vector space before embedding
const { query: alignedQuery } = guard.sanitizeQuery("Search user [email protected] records");

// D. Transparent Vector Store Proxy: auto-sanitizes on write, re-hydrates on query
const guardedStore = guard.wrapVectorStore(nativeVectorStore);

すぐに実行できる完全なレシピは、npm パッケージ内の @privacyscrubber/sdk/examples/ に含まれています(または npx @privacyscrubber/sdk を実行してください)。

3. CrewAI とマルチエージェントスウォーム(サイドカーモード/Python 相互運用)
# Run lightweight zero-dependency local daemon (<1ms in-memory, 0 external network calls):
npx @privacyscrubber/sdk sidecar --port 3100
# In your Python CrewAI / AutoGen Agent tools:
import requests

def sanitize_agent_input(prompt: str) -> tuple[str, dict]:
    res = requests.post("http://127.0.0.1:3100/sanitize", json={"text": prompt, "profile": "Dev"}).json()
    return res["scrubbedText"], res["tokenMap"]

def restore_agent_output(ai_response: str, token_map: dict) -> str:
    res = requests.post("http://127.0.0.1:3100/restore", json={"text": ai_response, "tokenMap": token_map}).json()
    return res["restoredText"]
4. AutoGPT/複数ターンの自律型エージェント
import { PrivacyScrubberEngine, createGuardedTools } from '@privacyscrubber/sdk';

const engine = new PrivacyScrubberEngine({ defaultProfile: 'Dev' });
// Equips agent with tools that intercept commands, file reads, and git diffs before model exposure:
const guardedTools = createGuardedTools(engine);

エンタープライズおよび本番環境向けライセンス:

  • セルフサービス型開発者 SDK(月額一律 299 ドル、または年額 2,990 ドル): 内部バックエンドノード、マイクロサービス、RAG パイプラインを無制限に利用できます。開発者 SDK に登録 | 開発者 SDK の仕様
  • PrivacyScrubber TEAMS(月額一律 99 ドル): チームメンバー数無制限、ポリシーの一元適用、暗号化されたセッションの引き継ぎ。TEAMS プランを導入
  • エンタープライズ向けエアギャップライセンス: オンプレミスでのソースコード配布、ネットワーク接続なしでのカスタムモデル。エンタープライズ窓口にお問い合わせ
🛡️ アーキテクチャとセキュリティの詳細(ゼロトラストとクラウド DLP の比較)

AI IDE(Cursor、Claude Desktop、Windsurf)がモデルプロバイダーに接続すると、開発者の認証情報、データベース接続文字列、社内顧客の PII は、プロンプトの流出による継続的なリスクにさらされます。@privacyscrubber/mcp-server は、変更不可能な次の 4 つのアーキテクチャ上の保証を提供します。

  1. stdio によるエアギャップ通信: MCP サーバーは、IDE が起動したローカルの標準入出力(stdio)子プロセスとのみ通信します。外部からの接続を待ち受けるポートは一切開かず、リモートネットワークリクエストも一切開始しません。
  2. 揮発性 RAM のみを使用するトークンマップ: 合成トークン([AWS_KEY_1]、[EMAIL_1])と元の平文との対応表は、一時的なノードメモリ内だけに保持され、IDE セッションが終了した時点で消去されます。
  3. ローカル ZTDS™ インメモリエンジンとクラウドプロキシのオーバーヘッド: 200~400 ミリ秒の遅延を追加し、暗号化されていないコードを第三者に送信するクラウド DLP ゲートウェイ(Nightfall、Skyflow)とは異なり、@privacyscrubber/mcp-server はデータを外部に送信せず、ローカルで 2 ミリ秒未満で動作します。
  4. 恒久的な標準規格と学術的検証:

⚙️ クライアントとの連携

Claude Desktop

Claude Desktop の設定ファイルに以下を追加してください。

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "privacyscrubber": {
      "command": "npx",
      "args": ["-y", "@privacyscrubber/mcp-server"],
      "env": {
        "PRIVACYSCRUBBER_KEY": "YOUR_OPTIONAL_PRO_LICENSE_KEY"
      }
    }
  }
}
Cursor

プロジェクトの .cursor/mcp.json(ワークスペース)または ~/.cursor/mcp.json(グローバル)に追加してください。

{
  "mcpServers": {
    "privacyscrubber": {
      "command": "npx",
      "args": ["-y", "@privacyscrubber/mcp-server"],
      "env": {
        "PRIVACYSCRUBBER_KEY": "YOUR_PRO_OR_TEAMS_LICENSE_KEY"
      }
    }
  }
}

または Cursor の GUI から: Settings(Cmd/Ctrl + ,)を開き、Features → MCP → + Add New MCP Tool の順に選択します。

  • 名前: privacyscrubber
  • 種類: command
  • コマンド: npx -y @privacyscrubber/mcp-server
Windsurf(Codeium)

~/.codeium/windsurf/mcp_config.json に追加します。

{
  "mcpServers": {
    "privacyscrubber": {
      "command": "npx",
      "args": ["-y", "@privacyscrubber/mcp-server"],
      "env": {
        "PRIVACYSCRUBBER_KEY": "YOUR_PRO_OR_TEAMS_LICENSE_KEY"
      }
    }
  }
}

Windsurf GUI から追加する場合: Settings → MCP Settings を開き、新しいコマンドサーバー npx -y @privacyscrubber/mcp-server を追加します。

サポートされているすべてのクライアント向けの、コピーしてすぐ使える JSON テンプレートは examples/configs/ で入手できます。

Cline / Roo Code

cline_mcp_settings.json に追加します:

{
  "mcpServers": {
    "privacyscrubber": {
      "command": "npx",
      "args": ["-y", "@privacyscrubber/mcp-server"],
      "env": {
        "PRIVACYSCRUBBER_KEY": "YOUR_OPTIONAL_PRO_LICENSE_KEY"
      }
    }
  }
}
Claude Code CLI

ターミナルから直接追加します:

claude mcp add privacyscrubber -- npx -y @privacyscrubber/mcp-server
VS Code Native MCP(.vscode/mcp.json)

VS Code Native MCP の公式サポートを利用するには、プロジェクトの .vscode/mcp.json を設定します:

{
  "servers": {
    "privacyscrubber": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@privacyscrubber/mcp-server"],
      "env": {
        "PRIVACYSCRUBBER_KEY": "YOUR_OPTIONAL_PRO_LICENSE_KEY"
      }
    }
  }
}
Zed IDE(settings.json)

Zed の設定(~/.config/zed/settings.json または %APPDATA%\Zed\settings.json)に追加します:

{
  "context_servers": {
    "privacyscrubber": {
      "command": "npx",
      "args": ["-y", "@privacyscrubber/mcp-server"],
      "env": {
        "PRIVACYSCRUBBER_KEY": "YOUR_OPTIONAL_PRO_LICENSE_KEY"
      }
    }
  }
}

🛠️ 提供されるツールと JSON-RPC 仕様

1. sanitize_text

テキストブロックから個人情報、秘密情報、API キー、認証情報をマスキングし、揮発性のローカル置換マッピングに登録します。

  • 引数:
    • text(文字列、必須):サニタイズする生のコンテンツまたはログです。
    • profile(文字列、任意):業界検出プロファイルを指定します(例:'General'、'Dev'、'Medical'、'Legal'、'Compliance')。デフォルトは 'General' です。
  • JSON-RPC 呼び出し例:
    {
      "method": "tools/call",
      "params": {
        "name": "sanitize_text",
        "arguments": {
          "text": "Contact me at dev-key-1234 or [email protected]",
          "profile": "General"
        }
      }
    }
    
  • 応答例:
    {
      "content": [
        {
          "type": "text",
          "text": "Contact me at [SECRET_1] or [EMAIL_1]"
        }
      ]
    }
    
2. reveal_text

AI の応答に含まれるトークンを、ローカルで元の値に戻します。

  • 引数:
    • text(文字列、必須):トークン化されたプレースホルダーを含む LLM からの応答です。
  • JSON-RPC 呼び出し例:
    {
      "method": "tools/call",
      "params": {
        "name": "reveal_text",
        "arguments": {
          "text": "Please reach out to [EMAIL_1] regarding the update."
        }
      }
    }
    
  • 応答例:
    {
      "content": [
        {
          "type": "text",
          "text": "Please reach out to [email protected] regarding the update."
        }
      ]
    }
    
3. sanitize_file

ローカルファイルを読み込み、テキストを抽出してサニタイズし、LLM による分析用にマスキング済みテンプレートを返します。

  • **対応形式:**プレーンテキスト(ソースコード、ログ、CSV、JSON、Markdown)および Microsoft Word(.docx)文書。
  • 引数:
    • filePath(文字列、必須):読み込んでサニタイズするファイルの絶対パスです。
    • profile(文字列、任意):業界検出プロファイルです。
4. guard_exec(コマンド実行ファイアウォール)

ターミナルコマンドを分離された子プロセスで安全に実行し、AI エージェントに渡す前に、標準出力/標準エラーに含まれる個人情報、データベース認証情報、API キーをローカル RAM 内でマスキングします。標準エラー出力には CISO 監査レシートが含まれます。

  • 引数:
    • command(文字列、必須):実行するシェルコマンドです(例:cat .env、docker logs web、git diff)。
    • cwd(文字列、任意):作業ディレクトリです。
    • profile(文字列、任意):検出プロファイルです(デフォルトは Dev)。
    • timeout_ms(数値、任意):タイムアウト(ミリ秒)です(デフォルトは 15000)。
5. guard_read_file(認証情報マスキングファイルリーダー)

ファイル(.env、設定ファイル、ソースコード、データベースダンプ)を読み込み、パスワード、JWT、個人情報をすべて揮発性メモリ内でトークン化して、AI による推論用に安全なマスキング済みコンテンツを返します。

  • 引数:
    • file_path(文字列、必須):ファイルへのパスです。
    • profile(文字列、任意):検出プロファイルです(デフォルトは Dev)。
    • max_lines(数値、任意):大きなファイルに対する行数上限です(デフォルトは 500)。
6. guard_git_diff(コミット前の差分サニタイズ)

ステージ済み(--cached)または未ステージのリポジトリ差分を検査し、AI によるコードレビューやコミットメッセージの生成前に、新たに含まれたシークレットや PII をローカルの RAM 上でマスキングします。

  • 引数:
    • staged(ブール値、任意):true の場合、ステージ済みの変更(git diff --cached)を検査します。デフォルトは false です。
    • cwd(文字列、任意):作業ディレクトリです。
    • profile(文字列、任意):検出プロファイルです(デフォルトは Dev)。
7. guard_apply_patch(安全なパッチ適用)

AI が生成したコードやテキスト内のトークンプレースホルダー([API_KEY_1]、[SECRET_1])を、ローカルの RAM セッションマップを参照して元に戻します。.bak バックアップを作成し、元の平文をディスクに直接書き込みます。リモート LLM が実際のシークレットを見ることはありません。

  • 引数:
    • file_path(文字列、必須):対象ファイルのパスです。
    • content(文字列、必須):ディスク上で復元するトークンを含むコンテンツです。
    • create_backup(ブール値、任意):書き込み前に既存ファイルをバックアップします(デフォルトは true)。
8. create_agent_rules(ワンクリックのエージェントルール注入)

CISO グレードのゼロトラスト指示を .cursorrules、.windsurfrules、CLAUDE.md、.github/copilot-instructions.md、または .clinerules に自動的に作成します。

  • 引数:
    • agent_types(配列、任意):["all"]、["cursor"]、["windsurf"]、["claude_code"]、["copilot"]、["cline"]。デフォルトは ["all"] です。
    • workspace_dir(文字列、任意):ワークスペースディレクトリです。
9. check_status

現在のティア、セッションリクエスト数、有効なプロファイル、アップグレード手順を示す視覚的なダッシュボードを返します。ライセンスの状態を確認したり、セットアップのサポートを受けたりするには、いつでも使用できます。

  • 引数: (必須の引数はありません)
  • JSON-RPC 呼び出し例:
    {
      "method": "tools/call",
      "params": { "name": "check_status", "arguments": {} }
    }
    
  • 応答例(無料ティア):
    ╔══════════════════════════════════════════════════╗
    ║       PrivacyScrubber MCP Server v2.4.4          ║
    ╠══════════════════════════════════════════════════╣
    ║  🔓 Tier: FREE                                   ║
    ║  📊 Session requests: 5                          ║
    ║  📁 Input size limit: 15,000 characters/request  ║
    ╠══════════════════════════════════════════════════╣
    ║  🏷️  Profiles: General only — PRO unlocks 30 more ║
    ║  📋 Custom rules: 🔒 Locked — requires PRO       ║
    ╠══════════════════════════════════════════════════╣
    ║  💳 Upgrade to PRO — $110 Lifetime               ║
    ║     https://privacyscrubber.com/pricing?utm_source=npm&utm_medium=readme&utm_campaign=mcp_server          ║
    ╠══════════════════════════════════════════════════╣
    ║  After purchase, add your key to MCP config:     ║
    ║  "PRIVACYSCRUBBER_KEY": "<your-key-here>"        ║
    ║  Full setup guide:                               ║
    ║  https://privacyscrubber.com/pii-mcp/?utm_source=npm&utm_medium=readme&utm_campaign=mcp_server          ║
    ╚══════════════════════════════════════════════════╝
    
10. generate_procurement_memo(CISO および DPO 向け調達ハブ)

CISO、DPO、法務部門の承認に向けて、組織内のビジネスケース、規制リスクの内訳、調達メモを作成します。データ侵害の罰金およびクラウド DLP のデータ送信料金と比較した ROI を決定論的に算出します。

  • 引数:
    • targetTier(string、任意):対象プラン("teams":月額 $99、または "sdk":月額 $299)。デフォルトは "teams" です。
    • teamSize(number、任意):開発者/アナリストの想定シート数(デフォルトは 10)。
    • primaryFramework(string、任意):主要なコンプライアンスフレームワーク("gdpr"、"hipaa"、"soc2"、または "pci_dss")。デフォルトは "gdpr" です。
  • JSON-RPC 呼び出し例:
    {
      "method": "tools/call",
      "params": {
        "name": "generate_procurement_memo",
        "arguments": {
          "targetTier": "teams",
          "teamSize": 15,
          "primaryFramework": "gdpr"
        }
      }
    }
    
  • 出力: 社内 RFC、Confluence ウィキ、または企業向け購入申請書にすぐに挿入できる、書式設定済みのエンタープライズ調達メモを出力します。

🛡️ スタンドアロン CLI:ps-guard

PrivacyScrubber には、Unix パイプ、pre-commit、エージェント型ワークフロー向けの ps-guard が含まれています。

# Run on-demand via scoped npx (zero external lookup):
cat .env | npx -y -p @privacyscrubber/mcp-server ps-guard --profile dev

# Or install globally for direct command access:
npm install -g @privacyscrubber/mcp-server

# Pipe any output through RAM redaction
cat .env | ps-guard --profile dev

# Execute commands through the ZTDS safety wrapper
ps-guard -- npm test

# Review git diff with secrets redacted
ps-guard --diff --staged

# Generate rules for all AI IDEs (.cursorrules, .windsurfrules, CLAUDE.md, copilot, cline)
ps-guard --rules

🌐 ブラウザー拡張機能と Web クライアント

Web ブラウザー内でリアルタイムに直接保護する方法をお探しですか?

  • Chrome 拡張機能: PrivacyScrubber Chrome 拡張機能 を入手すると、ChatGPT、Claude、Gemini 内のプロンプトをリアルタイムで直接サニタイズできます。
  • Web サンドボックス: PrivacyScrubber ホームページで、サーバーを介さないブラウザーサニタイズツールをご利用ください。

📄 ライセンスと商用アップグレード

デフォルトでは、サーバーは Free Tier で動作します(1 リクエストあたり 15,000 文字まで、基本の General PII プロファイルに制限)。30 種類の専門分野向けエンジニアリング、医療、法務、金融の PII プロファイルと、チーム全体で使用できるカスタムルールを利用するには、商用ライセンスを購入できます。

商用プランと機能の比較
機能Community FreePRO TierTEAMS TierDeveloper SDK
実行アーキテクチャローカル Stdio RAMローカル Stdio RAMローカル Stdio RAMプロセス内 Node/WASM
揮発性トークン化はい(RAM のみ)はい(RAM のみ)はい(RAM のみ)はい(RAM のみ)
標準 PII マスキングはいはいはいはい
最大文字処理量1 回の呼び出しにつき 15,000 文字無制限無制限無制限
30 種類の業界プロファイルGeneral のみ(5,000 文字の試用)30 種類すべてのプロファイル30 種類すべてのプロファイル30 種類すべてのプロファイル
カスタム正規表現ルールロック済み無制限無制限無制限
チームルールの同期(GPO)いいえいいえはい(共有リンク)はい(設定可能)
マイクロサービス/RAG エクスポートいいえいいえいいえはい(@privacyscrubber/sdk)
サブプロセッサーの責任0(クライアント側)0(クライアント側)0(クライアント側)0(プロセス内 Node/WASM)
ライセンス費用$0月額 $15 または買い切り $110月額定額 $99月額 $299 または年額 $2,990
直接有効化デフォルトで付属PRO を購入TEAMS を導入SDK を申し込む

👉 privacyscrubber.com/pricing で商用ライセンスキーを購入


🔐 購入後:MCP クライアントで PRO を有効化する

privacyscrubber.com/pricing で PRO ライセンスを購入すると、ライセンスキーが届きます。環境変数 PRIVACYSCRUBBER_KEY として、MCP クライアントの設定に追加してください。

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json(macOS)または %APPDATA%\Claude\claude_desktop_config.json(Windows)を編集します。

{
  "mcpServers": {
    "privacyscrubber": {
      "command": "npx",
      "args": ["-y", "@privacyscrubber/mcp-server"],
      "env": {
        "PRIVACYSCRUBBER_KEY": "YOUR_LICENSE_KEY_HERE"
      }
    }
  }
}

保存後、Claude Desktop を再起動してください。

Cursor
  1. Settings → Features → MCP Servers に移動します。
  2. privacyscrubber を見つけて、Edit をクリックします。
  3. 環境変数 PRIVACYSCRUBBER_KEY=YOUR_LICENSE_KEY_HERE を追加します。
  4. Cursor を再起動します。

または、システム全体でエクスポートして、すべてのツールで利用できるようにします。

# macOS / Linux — add to ~/.zshrc or ~/.bashrc
export PRIVACYSCRUBBER_KEY="YOUR_LICENSE_KEY_HERE"
Windsurf

~/.codeium/windsurf/mcp_config.json を編集します。

{
  "mcpServers": {
    "privacyscrubber": {
      "command": "npx",
      "args": ["-y", "@privacyscrubber/mcp-server"],
      "env": {
        "PRIVACYSCRUBBER_KEY": "YOUR_LICENSE_KEY_HERE"
      }
    }
  }
}
有効化を確認する

キーを追加したら、AI エージェントに check_status を呼び出すよう依頼します。

Use the check_status tool from PrivacyScrubber MCP

🔗 エコシステムと本番環境のアーキテクチャガイド


📚 学術的基盤と規制遵守の検証

PrivacyScrubber と Zero-Trust Data Sanitization(ZTDS)プロトコルは、公開済みの科学、臨床、法律に関する論文に裏付けられています。

リポジトリ/アーカイブDOI/識別子主な対象分野規制・コンプライアンスの対象範囲
IETF 仕様draft-sibiryakov-ztds-protocol最先端 AI へのデータ取り込みに関する ZTDS プロトコル(インターネットドラフト)グローバルな AI プライバシー、データを外部送信しないアーキテクチャ
Zenodo / CERN10.5281/zenodo.22058770Zero-Trust Data Sanitization(ZTDS)プロトコルの基盤国境を越える AI プライバシー、ISO 27001 A.8.11
OSF(Center for Open Science)10.17605/OSF.IO/5BYJF実測レイテンシーベンチマークとメモリプロファイリング(RAM で 2 ミリ秒未満)パフォーマンスとクラウド DLP プロキシの比較
SSRN / ElsevierSSRN ID: 7335581エンタープライズ向け生成 AI ガバナンスEU AI Act、UK GDPR、米国州法のプライバシー規制
medRxiv(Cold Spring Harbor)MEDRXIV/2026/361661多施設共同臨床試験における匿名化HIPAA Safe Harbor Section 164.514(b)
Law Archive / OSFLawArchive ID: 4wc86AI ワークフローにおける弁護士・依頼者間秘匿特権の保持ABA Model Rules と法曹倫理
研究・監査で PrivacyScrubber を引用する
@software{sibiryakov2026privacyscrubber,
  author = {Sibiryakov, Ilya},
  title = {PrivacyScrubber: Zero-Trust Data Sanitization (ZTDS) Engine & MCP Server},
  year = {2026},
  publisher = {Zenodo},
  doi = {10.5281/zenodo.22058770},
  url = {https://github.com/moxno/privacyscrubber-mcp}
}

📄 ライセンス

MIT © Ilya Sibiryakov(BrandMeWeb)


⚖️ 知的財産および特許に関する開示

このパッケージに実装されているゼロトラスト・データサニタイズ(ZTDS)アーキテクチャ、メモリ内の決定論的トークン化、暗号化セッションの引き継ぎ、およびstdio実行方式は、Ilya Sibiryakov(BrandMeWeb)の独自技術であり、特許出願中のステータスで保護されています。

  • 法的ステータス: 米国および国際特許出願中
  • 優先権の枠組み: パリ条約第4条および米国法典第35編第119条に基づく優先権(有効な12か月の期間内)
  • 特許ステータス: 米国および国際特許出願中(優先権確保済み)
  • 正式名称: 人工知能ワークフローにおけるクライアント側ゼロトラスト・データサニタイズおよび暗号化セッション引き継ぎのためのシステムおよび方法
  • 特許開示ハブ: privacyscrubber.com/patents/(弁護士との秘密保持契約に基づく正式な確認)。
🌐 Internet Engineering Task Force(IETF)仕様

コメント

MCP は初めてですか?

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

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