Privacyscrubber Mcp

io.github.moxnoPublished by GitHub account moxnov2.2.5Updated Oct 24, 2026

Zero-Trust PII & secrets sanitizer for AI agents with in-memory local redaction.

Overview

AI-generated overview

Locally redacts PII, secrets, and credentials from text and files before they reach a remote LLM, then restores them in the response.

What you can do
Runs as a local stdio MCP server that masks sensitive data in memory. Tools include sanitize_text and reveal_text for tokenizing and detokenizing prompts and replies, sanitize_file and guard_read_file for reading and redacting local files, guard_exec for running shell commands with masked output, guard_git_diff for sanitizing diffs, guard_apply_patch for writing restored content back to disk, create_agent_rules for scaffolding agent rule files, check_status for license and usage info, and generate_procurement_memo for compliance business cases. Detection profiles cover general, dev, medical, legal, and compliance use.
When to use it
Useful when sending source code, logs, .env files, database dumps, or customer data to a cloud LLM and you want credentials and personal data masked first. Fits developers using Cursor, Claude Desktop, Windsurf, VS Code, Cline, or Zed who need local redaction without a cloud DLP service.
Requirements
Local Node.js runtime; installed via npx @privacyscrubber/mcp-server or npm. Optional PRIVACYSCRUBBER_KEY environment variable unlocks PRO or TEAMS detection profiles. Desktop only; no remote endpoint.
Before you install
guard_exec runs shell commands and guard_apply_patch writes files to disk, so review what the assistant is allowed to execute or overwrite. The optional PRIVACYSCRUBBER_KEY is a paid license secret; keep it out of shared configs. The README also promotes paid plans and a separate SDK, so treat pricing claims as vendor marketing.

Installation

In SourceWeft

  1. Open Privacyscrubber Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

@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]

CISO-Approved Zero-Trust PII & Secrets Redaction MCP Server for Cursor, Windsurf, and Claude Desktop. Locally scrubs PII, secrets, credentials, and custom regex rules from files and text contexts before they reach remote LLM providers to prevent API leaks and ensure HIPAA/SOC 2 compliance at the developer endpoint.

Support Zero-Trust Open Source: If PrivacyScrubber protects your API keys, source code, and developer credentials from model leaks, please Star this repository on GitHub or execute gh repo star moxno/privacyscrubber-mcp.

Direct Commercial Licensing & Production Infrastructure:
Looking to automate zero-trust PII redaction inside backend microservices, ETL pipelines, or LangChain/LlamaIndex agents?

  • Developer SDK ($299/mo flat or $2,990/yr): Unlimited internal backend nodes, zero network egress, <1ms in-memory latency. Subscribe to Developer SDK | Technical Specs
  • TEAMS ($99/mo flat): Unlimited team seats across your entire domain with cryptographic P2P session handoff. Deploy TEAMS Plan
  • PRO ($15/mo or $110 Lifetime): Single-seat unlimited throughput across all 30 vertical profiles. Get PRO License

🔒 Zero-Trust Data Flow

All sensitive parameters, identifiers, and variables are intercepted locally inside your machine's RAM. They are replaced by tokens (e.g. [EMAIL_1]) before being sent to the AI. Once the AI responds, the tokens are safely swapped back to original values in your local context.

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

🚀 Installation

1. 1-Click Universal Auto-Installer (Recommended)

Automatically detects installed AI IDEs on your machine and safely configures PrivacyScrubber without corrupting existing tools:

bash
# Auto-detect and configure all installed clients (Cursor, Claude Desktop, Claude Code, Windsurf, VS Code, Cline, Zed):npx -y @privacyscrubber/mcp-server install --all
# Scaffold project-level deterministic IDE hooks (.cursor/hooks.json, .claude/settings.json) & agent rules:npx -y @privacyscrubber/mcp-server install --workspace
# Or target specific environments directly:npx -y @privacyscrubber/mcp-server install --claude-codenpx -y @privacyscrubber/mcp-server install --vscodenpx -y @privacyscrubber/mcp-server install --zednpx -y @privacyscrubber/mcp-server install --cursornpx -y @privacyscrubber/mcp-server install --claude

2. Install via Smithery

To automatically configure and run with your preferred client, install using Smithery:

bash
npx -y @smithery/cli install @privacyscrubber/mcp-server --write-to-clients

3. Instant Run with NPX

Run the server directly without local installation:

bash
npx -y @privacyscrubber/mcp-server

4. Instant Run with UVX (Python / PyPI)

Run the server directly inside Python agent workflows (CrewAI, LangChain, AutoGen, LlamaIndex):

bash
uvx privacyscrubber-mcp

Or via pip:

bash
pip install privacyscrubber-mcpprivacyscrubber-mcp

5. Programmatic Node.js / TypeScript SDK (Lightweight Presidio Alternative)

Need direct, in-memory zero-trust PII sanitization in your backend microservice, Next.js app, or RAG vector pipeline rather than an MCP server? Use our official zero-dependency SDK:

bash
npm install @privacyscrubber/sdk
typescript
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);
⚡ Why @privacyscrubber/sdk vs Microsoft Presidio?

Microsoft Presidio is the Python standard, but deploying it in a Node.js / TypeScript stack requires running heavy Python microservices, Docker containers, and 500MB+ spaCy NLP models with 35–120ms latency. @privacyscrubber/sdk runs 100% in-process with zero dependencies:

Feature / Metric@privacyscrubber/sdkMicrosoft PresidioAWS Comprehend / Google Cloud DLP
Runtime & Dependencies0 dependencies (~150KB)Python + Docker + spaCy (~500MB)Heavy Cloud SDKs
Execution LatencySub-millisecond in RAM (<1ms)35–120ms HTTP/gRPC roundtrip180–400ms external cloud roundtrip
Docker / Sidecar NeededNone (Pure in-process Node/WASM)Mandatory Docker containerVPC endpoints & IAM configurations
Network Egress0 Bytes (100% Air-gapped)Local internal network hopFull unencrypted payload to cloud
Data Loss & Reversibility0 Loss (RAM-reversible via restore())Manual token vault configurationIrreversible masking / hashing
OpenAI / LangChain 1-LinerBuilt-in (wrapOpenAI, wrapAiStream)Complex custom pipeline glueCustom proxy architecture
DevOps Secrets InterceptionBuilt-in (AWS, JWT, DB URIs, GitHub PAT)Custom regex recognizers neededCloud-specific classifiers
Streaming RehydrationBuilt-in (wrapAiStream, TransformStream)Buffering / chunk split failuresNot supported in real-time streams

👉 View @privacyscrubber/sdk on NPM | Full documentation, Express middleware, LangChain transforms, and 25 compliance profiles.

🤖 AI Orchestrator Recipes: LangChain, LlamaIndex, CrewAI & AutoGPT

If you are building autonomous agents, RAG vector pipelines, or backend services rather than single-user IDE prompts, use @privacyscrubber/sdk to sanitize data in-memory:

1. LangChain.js (LCEL & RAG Document Ingestion)
typescript
import { ChatOpenAI } from '@langchain/openai';import { createLangChainTransform, createDocumentTransformer } from '@privacyscrubber/sdk';
// A. RAG Pre-Ingestion: sanitize documents before embedding into vector storesconst 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 RAMconst 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 & Universal Vector DB Ingestion (Chroma, Pinecone, Qdrant)
typescript
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 embeddingconst { query: alignedQuery } = guard.sanitizeQuery("Search user [email protected] records");
// D. Transparent Vector Store Proxy: auto-sanitizes on write, re-hydrates on queryconst guardedStore = guard.wrapVectorStore(nativeVectorStore);

Complete runnable recipes are included inside the npm package under @privacyscrubber/sdk/examples/ (or run npx @privacyscrubber/sdk).

3. CrewAI & Multi-Agent Swarms (Sidecar Mode / Python Interop)
bash
# Run lightweight zero-dependency local daemon (<1ms in-memory, 0 external network calls):npx @privacyscrubber/sdk sidecar --port 3100
python
# 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 / Multi-Turn Autonomous Agents
typescript
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);

Enterprise & Production Licensing:

  • Self-Serve Developer SDK ($299/mo flat or $2,990/yr): Unlimited internal backend nodes, microservices, and RAG pipelines. Subscribe to Developer SDK | Developer SDK Specs
  • PrivacyScrubber TEAMS ($99/mo flat): Unlimited team seats, centralized policy enforcement, encrypted session handoff. Deploy TEAMS Plan
  • Enterprise Air-Gapped License: On-premise source code distribution, zero-network custom models. Contact Enterprise
🛡️ Architecture & Security Deep-Dive (Zero-Trust vs Cloud DLP)

When AI IDEs (Cursor, Claude Desktop, Windsurf) connect to model providers, developer credentials, database connection strings, and internal customer PII are at continuous risk of prompt exfiltration. The @privacyscrubber/mcp-server enforces four immutable architectural guarantees:

  1. Stdio Air-Gapped Transport: The MCP server communicates exclusively over local standard input/output (stdio) child processes spawned by your IDE. It opens zero external listening ports and initiates zero remote network requests.
  2. Volatile RAM-Only Token Map: The mapping table between synthetic tokens ([AWS_KEY_1], [EMAIL_1]) and raw cleartext is maintained exclusively in ephemeral node memory and is wiped the moment your IDE session closes.
  3. Local ZTDS™ In-Memory Engine vs Cloud Proxy Overhead: Unlike cloud DLP gateways (Nightfall, Skyflow) that add 200–400ms latency and transmit unencrypted code to third parties, @privacyscrubber/mcp-server runs locally in <2ms with zero data egress.
  4. Permanent Standards & Academic Validation:

⚙️ Client Integrations

Claude Desktop

Add this to your Claude Desktop config file:

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

Cursor

Add to your project's .cursor/mcp.json (workspace) or ~/.cursor/mcp.json (global):

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

Or via Cursor GUI: Open Settings (Cmd/Ctrl + ,) → Features → MCP → + Add New MCP Tool:

  • Name: privacyscrubber
  • Type: command
  • Command: npx -y @privacyscrubber/mcp-server

Windsurf (Codeium)

Add to ~/.codeium/windsurf/mcp_config.json:

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

Or via Windsurf GUI: Open Settings → MCP Settings → add new command server npx -y @privacyscrubber/mcp-server.

Ready-to-copy JSON templates for all supported clients are available in examples/configs/.

Cline / Roo Code

Add to cline_mcp_settings.json:

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

Claude Code CLI

Add directly from your terminal:

bash
claude mcp add privacyscrubber -- npx -y @privacyscrubber/mcp-server

VS Code Native MCP (.vscode/mcp.json)

For official VS Code Native MCP support, configure your project's .vscode/mcp.json:

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

Zed IDE (settings.json)

Add to your Zed configuration (~/.config/zed/settings.json or %APPDATA%\Zed\settings.json):

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

🛠️ Provided Tools & JSON-RPC Specifications

1. sanitize_text

Redacts PII, secrets, API keys, and credentials from a text block and populates the volatile local replacement mapping.

  • Arguments:
    • text (string, required): The raw content or logs to sanitize.
    • profile (string, optional): Gated industry detection profile (e.g., 'General', 'Dev', 'Medical', 'Legal', 'Compliance'). Defaults to 'General'.
  • JSON-RPC Call Example:
    json
    {  "method": "tools/call",  "params": {    "name": "sanitize_text",    "arguments": {      "text": "Contact me at dev-key-1234 or [email protected]",      "profile": "General"    }  }}
  • Response Example:
    json
    {  "content": [    {      "type": "text",      "text": "Contact me at [SECRET_1] or [EMAIL_1]"    }  ]}

2. reveal_text

Detokenizes the AI response back to the original values locally.

  • Arguments:
    • text (string, required): The response from the LLM containing tokenized placeholders.
  • JSON-RPC Call Example:
    json
    {  "method": "tools/call",  "params": {    "name": "reveal_text",    "arguments": {      "text": "Please reach out to [EMAIL_1] regarding the update."    }  }}
  • Response Example:
    json
    {  "content": [    {      "type": "text",      "text": "Please reach out to [email protected] regarding the update."    }  ]}

3. sanitize_file

Reads a local file, extracts text, sanitizes it, and returns the redacted template for LLM analysis.

  • Supported Formats: Plain text (source code, logs, CSV, JSON, markdown) and Microsoft Word (.docx) documents.
  • Arguments:
    • filePath (string, required): Absolute file path to read and sanitize.
    • profile (string, optional): The industry detection profile.

4. guard_exec (Command Execution Firewall)

Safely executes terminal commands in an isolated child process, masking stdout/stderr PII, database credentials, and API keys in local RAM before passing them to the AI agent. Includes a CISO audit receipt in stderr.

  • Arguments:
    • command (string, required): The shell command to execute (e.g. cat .env, docker logs web, git diff).
    • cwd (string, optional): Working directory.
    • profile (string, optional): Detection profile (defaults to Dev).
    • timeout_ms (number, optional): Timeout in ms (defaults to 15000).

5. guard_read_file (Credential-Masking File Reader)

Reads files (.env, configs, source code, database dumps) and tokenizes all passwords, JWTs, and PII in volatile memory, returning safe redacted content for AI reasoning.

  • Arguments:
    • file_path (string, required): Path to file.
    • profile (string, optional): Detection profile (defaults to Dev).
    • max_lines (number, optional): Line cap for large files (defaults to 500).

6. guard_git_diff (Pre-Commit & Diff Sanitizer)

Inspects staged (--cached) or unstaged repository diffs, redacting any newly introduced secrets or PII in local RAM before AI code review or commit message generation.

  • Arguments:
    • staged (boolean, optional): If true, inspects staged changes (git diff --cached). Defaults to false.
    • cwd (string, optional): Working directory.
    • profile (string, optional): Detection profile (defaults to Dev).

7. guard_apply_patch (Safe Patch Applicator)

Reverses token placeholders ([API_KEY_1], [SECRET_1]) in AI-generated code or text by looking up the local RAM session map, creating a .bak backup, and writing authentic cleartext directly to disk. The remote LLM never sees real secrets.

  • Arguments:
    • file_path (string, required): Path to target file.
    • content (string, required): Content containing tokens to restore on disk.
    • create_backup (boolean, optional): Backup existing file before write (defaults to true).

8. create_agent_rules (1-Click Agent Rule & Deterministic Hook Injection)

Automatically scaffolds CISO-grade Zero-Trust directives into .cursorrules, .windsurfrules, CLAUDE.md, .github/copilot-instructions.md, .clinerules, plus deterministic IDE lifecycle hooks in .cursor/hooks.json (beforeReadFile, beforeShellExecution) and .claude/settings.json (PreToolUse).

  • Arguments:
    • agent_types (array, optional): ["all"], ["cursor"], ["windsurf"], ["claude_code"], ["copilot"], ["cline"]. Defaults to ["all"].
    • workspace_dir (string, optional): Workspace directory.

9. check_status

Returns a visual dashboard showing your current tier, session request count, active profiles, and upgrade instructions. Use it at any time to check your license status or get setup help.

  • Arguments: (none required)
  • JSON-RPC Call Example:
    json
    {  "method": "tools/call",  "params": { "name": "check_status", "arguments": {} }}
  • Response Example (Free Tier):
    ╔══════════════════════════════════════════════════╗║       PrivacyScrubber MCP Server v2.4.6          ║╠══════════════════════════════════════════════════╣║  🔓 Tier: FREE                                   ║║  📊 Session requests: 5                          ║║  📁 Input size limit: 15k General / 5k Vertical  ║╠══════════════════════════════════════════════════╣║  🏷️  Profiles: 30 Specialized (5k trial)          ║║  📋 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 Procurement Hub)

Generates an institutional business case, regulatory risk breakdown, and procurement memo for CISO, DPO, and Legal sign-off. Computes deterministic ROI versus breach penalties and cloud DLP egress fees.

  • Arguments:
    • targetTier (string, optional): Target plan ("teams" at $99/mo or "sdk" at $299/mo). Defaults to "teams".
    • teamSize (number, optional): Estimated developer / analyst seat count (defaults to 10).
    • primaryFramework (string, optional): Core compliance framework ("gdpr", "hipaa", "soc2", or "pci_dss"). Defaults to "gdpr".
  • JSON-RPC Call Example:
    json
    {  "method": "tools/call",  "params": {    "name": "generate_procurement_memo",    "arguments": {      "targetTier": "teams",      "teamSize": 15,      "primaryFramework": "gdpr"    }  }}
  • Output: Formatted Markdown enterprise procurement memorandum ready for immediate insertion into internal RFCs, Confluence wikis, or enterprise purchase requisitions.

🛡️ Standalone CLI: ps-guard

PrivacyScrubber bundles ps-guard for Unix pipe, pre-commit, and agentic workflows:

bash
# 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 redactioncat .env | ps-guard --profile dev
# Execute commands through the ZTDS safety wrapperps-guard -- npm test
# Review git diff with secrets redactedps-guard --diff --staged
# Generate rules & deterministic hooks (.cursor/hooks.json, .claude/settings.json, .cursorrules, CLAUDE.md)ps-guard --rules
# Deterministic IDE Lifecycle Hook Handler (Claude Code PreToolUse & Cursor v1.7+ beforeReadFile/beforeShellExecution)# Blocks native reads of .env*, *.pem, *.key, id_rsa, *credentials*.json and redirects the agent to guard_read_file / guard_exec:npx -y @privacyscrubber/mcp-server --hook

🌐 Browser Extension & Web Client

Looking for real-time protection directly inside your web browser?

📄 License & Commercial Upgrade

By default, the server runs under the Free Tier (15,000 characters per request on the General PII profile and a 5,000-character trial quota per request across all 30 specialized industry profiles). To unlock unlimited throughput across all 30 specialized engineering, medical, legal, and financial PII profiles, as well as team-wide custom rules, you can purchase a commercial license.

Commercial Plan & Feature Comparison

FeatureCommunity FreePRO TierTEAMS TierDeveloper SDK
Execution ArchitectureLocal Stdio RAMLocal Stdio RAMLocal Stdio RAMIn-Process Node/WASM
Volatile TokenizationYes (RAM-only)Yes (RAM-only)Yes (RAM-only)Yes (RAM-only)
Standard PII MaskingYesYesYesYes
Max Character Throughput15,000 chars / callUnlimitedUnlimitedUnlimited
30 Industry ProfilesGeneral Only (5k trial)All 30 ProfilesAll 30 ProfilesAll 30 Profiles
Custom Regex RulesLockedUnlimitedUnlimitedUnlimited
Team Rules Sync (GPO)NoNoYes (Shared Link)Yes (Configurable)
Microservice / RAG ExportNoNoNoYes (@privacyscrubber/sdk)
Subprocessor Liability0 (Client-side)0 (Client-side)0 (Client-side)0 (In-Process Node/WASM)
Licensing Cost$0$15/mo or $110 Lifetime$99/mo Flat Rate$299/mo or $2,990/yr
Direct ActivationDefault includedAcquire PRODeploy TEAMSSubscribe SDK

👉 Acquire a Commercial License Key at privacyscrubber.com/pricing


🔐 After Purchase: Activate PRO in Your MCP Client

After purchasing a PRO license at privacyscrubber.com/pricing, you will receive a license key. Add it to your MCP client config as an environment variable: PRIVACYSCRUBBER_KEY.

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

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

Restart Claude Desktop after saving.

Cursor

  1. Go to Settings → Features → MCP Servers.
  2. Find privacyscrubber and click Edit.
  3. Add the environment variable: PRIVACYSCRUBBER_KEY=YOUR_LICENSE_KEY_HERE.
  4. Restart Cursor.

Alternatively, export it system-wide so all tools pick it up:

bash
# macOS / Linux — add to ~/.zshrc or ~/.bashrcexport PRIVACYSCRUBBER_KEY="YOUR_LICENSE_KEY_HERE"

Windsurf

Edit ~/.codeium/windsurf/mcp_config.json:

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

Verify Activation

After adding the key, ask your AI agent to call check_status:

Use the check_status tool from PrivacyScrubber MCP

🔗 Ecosystem & Production Architecture Guides


📚 Academic Foundations & Regulatory Verification

PrivacyScrubber and the Zero-Trust Data Sanitization (ZTDS) protocol are backed by published scientific, clinical, and legal treatises:

Repository / ArchiveDOI / IdentifierFocus AreaRegulatory & Compliance Scope
IETF Specificationdraft-sibiryakov-ztds-protocolThe ZTDS Protocol for Frontier AI Ingestion (Internet-Draft)Global AI Privacy, Zero-Egress Architecture
Zenodo / CERN10.5281/zenodo.22058770Zero-Trust Data Sanitization (ZTDS) Protocol FoundationCross-Border AI Privacy, ISO 27001 A.8.11
OSF (Center for Open Science)10.17605/OSF.IO/5BYJFEmpirical Latency Benchmark & Memory Profiling (<2ms RAM)Performance vs Cloud DLP Proxies
SSRN / ElsevierSSRN ID: 7335581Enterprise Generative AI GovernanceEU AI Act, UK GDPR, US State Privacy
medRxiv (Cold Spring Harbor)MEDRXIV/2026/361661Multi-Center Clinical Trial De-IdentificationHIPAA Safe Harbor Section 164.514(b)
Law Archive / OSFLawArchive ID: 4wc86Preserving Attorney-Client Privilege in AI WorkflowsABA Model Rules & Legal Ethics

Citing PrivacyScrubber in Research & Audits

bibtex
@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}}

📄 License

MIT © Ilya Sibiryakov (BrandMeWeb)


⚖️ Intellectual Property & Patent Disclosures

The Zero-Trust Data Sanitization (ZTDS) architecture, in-memory deterministic tokenization, cryptographic session handoff, and stdio execution methods implemented in this package are proprietary technology of Ilya Sibiryakov (BrandMeWeb) and are protected under Patent Pending status:

  • Legal Status: U.S. & International Patents Pending
  • Priority Framework: Paris Convention Art. 4 & 35 U.S.C. § 119 Priority (Active 12-Month Window)
  • Patent Status: U.S. & International Patents Pending (Priority Locked)
  • Official Title: SYSTEM AND METHOD FOR CLIENT-SIDE ZERO-TRUST DATA SANITIZATION AND CRYPTOGRAPHIC SESSION HANDOFF IN ARTIFICIAL INTELLIGENCE WORKFLOWS
  • Patent Disclosures Hub: privacyscrubber.com/patents/ (formal verification via counsel NDA).

🌐 Internet Engineering Task Force (IETF) Specification

Source: README.md at commit 63b9fa4

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

2
  1. v2.2.5LatestSep 27, 2026
  2. v1.0.2Sep 16, 2026

Score

40% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.