mcpField
M
MaskFlow PII proxy

MaskFlow PII proxy

ローカル
github.com/maskflowセキュリティ22 週間前に更新

MaskFlow PII proxy について

MaskFlow PII proxy は、他の MCP サーバーをラップし、ツール呼び出しの引数に含まれる個人情報をバックエンド到達前にマスキングして、結果では対応するプレースホルダーを復元します。一般的な個人情報に加え、Aadhaar、PAN、GSTIN などのインドの識別情報も検出します。

主な機能

  1. 01ツール引数内の個人情報をマスキング
  2. 02ツール結果でプレースホルダーを復元
  3. 03インドの識別情報を検出
  4. 04接続ごとのプレースホルダーマップ
  5. 05ツールが加えた個人情報も任意でマスキング
  6. 06stdio と HTTP に対応

活用シーン

  1. 01個人情報を含む引数を外部 MCP サーバーへ送信
  2. 02ツール呼び出しで Aadhaar や PAN を処理
  3. 03ツールが結果に加えた個人情報の Agent への返却を防止
  4. 04既存の MCP バックエンドをラップ

MCP 対応

stdio または HTTP のバックエンドをラップする MCP プロキシです。`tools/call` の引数をバックエンド到達前にマスキングし、結果ではプレースホルダーを復元します。`tools/list`、プロンプト、リソースの要求は変更せずに転送します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"maskflow": {
"command": "uvx",
"args": [
"maskflow-mcp"
]
}
}
}
起動コマンドuvx maskflow-mcp

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

パッケージ
pypimaskflow-mcp0.1.2

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

maskflow-mcp

任意の MCP サーバーをラップし、エージェントのツール通信から個人識別情報(PII)を除外するModel Context Protocolプロキシです。バックエンドのツールに届く前に、送信する tools/call の引数内の PII をマスキングし、結果では元の値に戻します。プレースホルダーは、エージェントの実行全体を通じて一貫します。

エージェントは、ユーザーの PII(氏名、メールアドレス、PAN、Aadhaar、電話番号)をツール引数として、サードパーティの MCP サーバーにそのまま渡すことがよくあります。このプロキシは、境界で実際の値を遮断する、すぐに使えるシムです。MaskFlow の検出エンジンを実行するため、汎用 PII に加えて、インドの識別情報(Aadhaar、PAN、GSTIN、UPI、IFSC、ABHA、インド人の氏名/住所)にも対応します。

MIT ライセンス。利用制限なし、テレメトリなし。

インストール

pip install maskflow-mcp
# or, no install:
uvx maskflow-mcp stdio --backend "npx -y @modelcontextprotocol/server-github"

fastmcp(LLM ベンダーの SDK を同梱しない 2.x 系)を取得します。最初の検出実行時に小さな spaCy モデルをダウンロードします。--patterns-only を指定するとダウンロードをスキップできます。

使い方

stdio(Claude Desktop、ほとんどのエージェント)

エージェントの接続先を maskflow-mcp に設定し、実際のサーバーを --backend で指定します。

// claude_desktop_config.json
{
  "mcpServers": {
    "github": {
      "command": "maskflow-mcp",
      "args": ["stdio", "--backend", "npx -y @modelcontextprotocol/server-github",
               "--pass-env", "GITHUB_TOKEN"]
    }
  }
}

または、設定ファイルですでに定義されているサーバーをラップします。

maskflow-mcp stdio --config ./claude_desktop_config.json --backend-name github
HTTP
maskflow-mcp http --backend https://example.com/mcp --host 127.0.0.1 --port 9000

オプション

フラグデフォルト説明
--backend–バックエンドのコマンドライン、または URL
--config / --backend-name–Claude Desktop 形式の JSON ファイルからバックエンドを読み込みます
--pass-env VAR–環境変数を stdio バックエンドに転送します(繰り返し指定可能)
--min-confidence0.5検出しきい値
--patterns-onlyoffspaCy NER の処理をスキップします(高速になりますが、単独の氏名/住所の検出は行われません)
--mask-tool-resultsoffツールが結果に追加した PII もマスキングします。ツールが返したプレースホルダーのマスキング解除だけでなく、追加分も対象になります
--session-ttl3600接続ごとのセッションの有効期間

マスキングされる内容

tools/call の引数は、文字列と数値の値のみ(キーは対象外)を走査し、接続のセッションを通じてマスキングされます。結果のテキストと構造化コンテンツではマスキングが解除され、ツールが返したプレースホルダーが元に戻ります。デフォルトでは、ツールが結果に追加した未加工の PII はそのまま通過します。--mask-tool-results を指定すると、それもマスキングされ、エージェントに表示されなくなります。

tools/list、prompts/*、resources/* は変更せずに通過します(デフォルトではリソースのコンテンツはマスキングされません)。

PII の安全性

トークンと値のマップは接続ごとにメモリ内に保持され、ログに記録されることはありません。バックエンドに送信されるのはマスキング済みの値だけです。設計については、MaskFlow リポジトリの docs/mcp.md を参照してください。

コメント

MCP は初めてですか?

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

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