PrivacyScrubber PII Masker
Sanitización de datos de confianza cero (ZTDS) para eliminar PII y secretos localmente en pipelines seguros de LLM.
Documentación
@privacyscrubber/mcp-server
Servidor MCP de Redacción de PII y Secretos Aprobado por CISO con Confianza Cero para Cursor, Windsurf y Claude Desktop. Elimina localmente PII, secretos, credenciales y reglas regex personalizadas de archivos y contextos de texto antes de que lleguen a proveedores de LLM remotos para prevenir fugas de API y garantizar el cumplimiento de HIPAA/SOC 2 en el endpoint del desarrollador.
Apoya el Código Abierto de Confianza Cero: Si PrivacyScrubber protege tus claves de API, código fuente y credenciales de desarrollador contra fugas en modelos, por favor marca este repositorio con una estrella en GitHub o ejecuta
gh repo star moxno/privacyscrubber-mcp.
Licenciamiento Comercial Directo e Infraestructura de Producción:
¿Buscas automatizar la redacción de PII con confianza cero dentro de microservicios backend, pipelines ETL o agentes LangChain/LlamaIndex?
- SDK para Desarrolladores ($299/mes fijo o $2,990/año): Nodos backend internos ilimitados, cero salida de red, latencia en memoria <1ms. Suscríbete al SDK para Desarrolladores | Especificaciones Técnicas
- TEAMS ($99/mes fijo): Asientos de equipo ilimitados en todo tu dominio con traspaso de sesión P2P criptográfico. Implementa el Plan TEAMS
- PRO ($15/mes o $110 de por vida): Rendimiento ilimitado para un solo asiento en todos los 30 perfiles verticales. Obtén la Licencia PRO
🔒 Flujo de Datos de Confianza Cero
Todos los parámetros, identificadores y variables sensibles se interceptan localmente dentro de la RAM de tu máquina. Se reemplazan por tokens (p. ej. [EMAIL_1]) antes de enviarse a la IA. Una vez que la IA responde, los tokens se intercambian de forma segura de vuelta a los valores originales en tu contexto local.
[Raw Input / Files] ──> [MCP sanitize_text] ──> [Masked Tokens] ──> [LLM API]
│ │
(In-Memory Map) (Result)
│ │
[Original Output] <─── [MCP reveal_text] <─────────────────────────────┘
🚀 Instalación
1. Instalador Automático Universal de 1 Clic (Recomendado)
Detecta automáticamente los IDEs de IA instalados en tu máquina y configura PrivacyScrubber de forma segura sin corromper herramientas existentes:
# 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. Instalar vía Smithery
Para configurar y ejecutar automáticamente con tu cliente preferido, instala usando Smithery:
npx -y @smithery/cli install @privacyscrubber/mcp-server --write-to-clients
3. Ejecución Instantánea con NPX
Ejecuta el servidor directamente sin instalación local:
npx -y @privacyscrubber/mcp-server
4. Ejecución Instantánea con UVX (Python / PyPI)
Ejecuta el servidor directamente dentro de flujos de trabajo de agentes Python (CrewAI, LangChain, AutoGen, LlamaIndex):
uvx privacyscrubber-mcp
O vía pip:
pip install privacyscrubber-mcp
privacyscrubber-mcp
5. SDK Programático Node.js / TypeScript (Alternativa Ligera a Presidio)
¿Necesitas sanitización directa de PII con confianza cero en memoria dentro de tu microservicio backend, aplicación Next.js o pipeline vectorial RAG en lugar de un servidor MCP? Usa nuestro SDK oficial de cero dependencias:
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 alice@acme.com with AKIAIOSFODNN7EXAMPLE.' }]
});
// Incoming LLM answer is automatically rehydrated with "Alice Smith (alice@acme.com)":
console.log(completion.choices[0].message.content);
⚡ ¿Por qué @privacyscrubber/sdk vs Microsoft Presidio?
Microsoft Presidio es el estándar de Python, pero desplegarlo en una pila Node.js / TypeScript requiere ejecutar microservicios Python pesados, contenedores Docker y modelos NLP spaCy de 500MB+ con latencia de 35–120ms. @privacyscrubber/sdk se ejecuta 100% en proceso con cero dependencias:
| Característica / Métrica | @privacyscrubber/sdk | Microsoft Presidio | AWS Comprehend / Google Cloud DLP |
|---|---|---|---|
| Runtime y Dependencias | 0 dependencias (~150KB) | Python + Docker + spaCy (~500MB) | SDKs de nube pesados |
| Latencia de Ejecución | Sub-milisegundo en RAM (<1ms) | 35–120ms ida y vuelta HTTP/gRPC | 180–400ms ida y vuelta a nube externa |
| Docker / Sidecar Necesario | Ninguno (Node/WASM puro en proceso) | Contenedor Docker obligatorio | Endpoints VPC y configuraciones IAM |
| Salida de Red | 0 Bytes (100% Aislado) | Salto de red interna local | Payload completo sin cifrar a la nube |
| Pérdida y Reversibilidad de Datos | 0 Pérdida (reversible en RAM vía restore()) | Configuración manual de bóveda de tokens | Enmascaramiento / hash irreversible |
| Integración de 1 Línea OpenAI / LangChain | Integrado (wrapOpenAI, wrapAiStream) | Pegado complejo de pipelines personalizados | Arquitectura de proxy personalizada |
| Intercepción de Secretos DevOps | Integrado (AWS, JWT, URIs de BD, GitHub PAT) | Se necesitan reconocedores regex personalizados | Clasificadores específicos de nube |
| Rehidratación en Streaming | Integrado (wrapAiStream, TransformStream) | Fallos de almacenamiento en búfer / división de fragmentos | No soportado en streams en tiempo real |
👉 Ver @privacyscrubber/sdk en NPM | Documentación completa, middleware Express, transformaciones LangChain y 25 perfiles de cumplimiento.
🤖 Recetas de Orquestadores de IA: LangChain, LlamaIndex, CrewAI y AutoGPT
Si estás construyendo agentes autónomos, pipelines vectoriales RAG o servicios backend en lugar de prompts de IDE para un solo usuario, usa @privacyscrubber/sdk para sanitizar datos en memoria:
1. LangChain.js (LCEL e Ingestión de Documentos 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:SecretPass123@db.internal: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 e Ingestión Universal de Bases Vectoriales (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 john@example.com records");
// D. Transparent Vector Store Proxy: auto-sanitizes on write, re-hydrates on query
const guardedStore = guard.wrapVectorStore(nativeVectorStore);
Recetas completas ejecutables están incluidas dentro del paquete npm bajo
@privacyscrubber/sdk/examples/(o ejecutanpx @privacyscrubber/sdk).
3. CrewAI y Enjambres Multi-Agente (Modo Sidecar / Interoperabilidad 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 / Agentes Autónomos Multi-Turno
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);
Licenciamiento Empresarial y de Producción:
- SDK para Desarrolladores de Autoservicio ($299/mes fijo o $2,990/año): Nodos backend internos, microservicios y pipelines RAG ilimitados. Suscríbete al SDK para Desarrolladores | Especificaciones del SDK para Desarrolladores
- PrivacyScrubber TEAMS ($99/mes fijo): Asientos de equipo ilimitados, aplicación centralizada de políticas, traspaso de sesión cifrado. Implementa el Plan TEAMS
- Licencia Empresarial Aislada: Distribución de código fuente on-premise, modelos personalizados de cero red. Contacta a Empresas
🛡️ Análisis Profundo de Arquitectura y Seguridad (Confianza Cero vs DLP en Nube)
Cuando los IDEs de IA (Cursor, Claude Desktop, Windsurf) se conectan a proveedores de modelos, las credenciales de desarrollador, cadenas de conexión de bases de datos y PII de clientes internos están en riesgo continuo de exfiltración por prompts. El @privacyscrubber/mcp-server impone cuatro garantías arquitectónicas inmutables:
- Transporte Aislado Stdio:
El servidor MCP se comunica exclusivamente a través de entrada/salida estándar local (
stdio) procesos hijos generados por tu IDE. Abre cero puertos de escucha externos e inicia cero solicitudes de red remotas. - Mapa de Tokens Solo en RAM Volátil:
La tabla de mapeo entre tokens sintéticos (
[AWS_KEY_1],[EMAIL_1]) y texto claro sin procesar se mantiene exclusivamente en memoria de nodo efímera y se borra en el momento en que tu sesión de IDE se cierra. - Motor Local ZTDS™ en Memoria vs Sobrecarga de Proxy en Nube:
A diferencia de las puertas de enlace DLP en nube (Nightfall, Skyflow) que añaden 200–400ms de latencia y transmiten código sin cifrar a terceros,
@privacyscrubber/mcp-serverse ejecuta localmente en <2ms con cero salida de datos. - Validación Permanente de Estándares y Académica:
- Especificación IETF: draft-sibiryakov-ztds-protocol-01 — Revisión 01 · 2026-09-23 · 13 páginas
- Fundación CERN / Zenodo: DOI 10.5281/zenodo.22058770
- Centro para la Ciencia Abierta (OSF): DOI 10.17605/OSF.IO/5BYJF
- Patente Pendiente: Patentes Pendientes de EE. UU. e Internacionales (Convenio de París / Prioridad PCT)
⚙️ Integraciones de Clientes
Claude Desktop
Añade esto a tu archivo de configuración de 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
Añade al .cursor/mcp.json de tu proyecto (espacio de trabajo) o ~/.cursor/mcp.json (global):
{
"mcpServers": {
"privacyscrubber": {
"command": "npx",
"args": ["-y", "@privacyscrubber/mcp-server"],
"env": {
"PRIVACYSCRUBBER_KEY": "YOUR_PRO_OR_TEAMS_LICENSE_KEY"
}
}
}
}
O vía GUI de Cursor: Abre Configuración (Cmd/Ctrl + ,) → Funciones → MCP → + Añadir Nueva Herramienta MCP:
- Nombre:
privacyscrubber - Tipo:
command - Comando:
npx -y @privacyscrubber/mcp-server
Windsurf (Codeium)
Añade a ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"privacyscrubber": {
"command": "npx",
"args": ["-y", "@privacyscrubber/mcp-server"],
"env": {
"PRIVACYSCRUBBER_KEY": "YOUR_PRO_OR_TEAMS_LICENSE_KEY"
}
}
}
}
O vía GUI de Windsurf: Abre Configuración → Configuración MCP → añade nuevo servidor de comandos npx -y @privacyscrubber/mcp-server.
Plantillas JSON listas para copiar para todos los clientes compatibles están disponibles en
examples/configs/.
Cline / Roo Code
Añade a cline_mcp_settings.json:
{
"mcpServers": {
"privacyscrubber": {
"command": "npx",
"args": ["-y", "@privacyscrubber/mcp-server"],
"env": {
"PRIVACYSCRUBBER_KEY": "YOUR_OPTIONAL_PRO_LICENSE_KEY"
}
}
}
}
CLI de Claude Code
Añade directamente desde tu terminal:
claude mcp add privacyscrubber -- npx -y @privacyscrubber/mcp-server
MCP Nativo de VS Code (.vscode/mcp.json)
Para soporte oficial de MCP Nativo de VS Code, configura el .vscode/mcp.json de tu proyecto:
{
"servers": {
"privacyscrubber": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@privacyscrubber/mcp-server"],
"env": {
"PRIVACYSCRUBBER_KEY": "YOUR_OPTIONAL_PRO_LICENSE_KEY"
}
}
}
}
IDE Zed (settings.json)
Añade a tu configuración de Zed (~/.config/zed/settings.json o %APPDATA%\Zed\settings.json):
{
"context_servers": {
"privacyscrubber": {
"command": "npx",
"args": ["-y", "@privacyscrubber/mcp-server"],
"env": {
"PRIVACYSCRUBBER_KEY": "YOUR_OPTIONAL_PRO_LICENSE_KEY"
}
}
}
}
🛠️ Herramientas Proporcionadas y Especificaciones JSON-RPC
1. sanitize_text
Redacta PII, secretos, claves de API y credenciales de un bloque de texto y llena el mapeo de reemplazo local volátil.
- Argumentos:
text(cadena, obligatorio): El contenido crudo o registros a sanitizar.profile(cadena, opcional): Perfil de detección de industria restringido (p. ej., 'General', 'Dev', 'Medical', 'Legal', 'Compliance'). Por defecto 'General'.
- Ejemplo de Llamada JSON-RPC:
{ "method": "tools/call", "params": { "name": "sanitize_text", "arguments": { "text": "Contact me at dev-key-1234 or jane.doe@company.com", "profile": "General" } } } - Ejemplo de Respuesta:
{ "content": [ { "type": "text", "text": "Contact me at [SECRET_1] or [EMAIL_1]" } ] }
2. reveal_text
Des-tokeniza la respuesta de la IA de vuelta a los valores originales localmente.
- Argumentos:
text(cadena, obligatorio): La respuesta del LLM que contiene marcadores de posición tokenizados.
- Ejemplo de Llamada JSON-RPC:
{ "method": "tools/call", "params": { "name": "reveal_text", "arguments": { "text": "Please reach out to [EMAIL_1] regarding the update." } } } - Ejemplo de Respuesta:
{ "content": [ { "type": "text", "text": "Please reach out to jane.doe@company.com regarding the update." } ] }
3. sanitize_file
Lee un archivo local, extrae texto, lo sanitiza y devuelve la plantilla redactada para análisis del LLM.
- Formatos Soportados: Texto plano (código fuente, registros, CSV, JSON, markdown) y documentos de Microsoft Word (
.docx). - Argumentos:
filePath(cadena, obligatorio): Ruta absoluta del archivo a leer y sanitizar.profile(cadena, opcional): El perfil de detección de industria.
4. guard_exec (Firewall de Ejecución de Comandos)
Ejecuta de forma segura comandos de terminal en un proceso hijo aislado, enmascarando PII de stdout/stderr, credenciales de bases de datos y claves de API en RAM local antes de pasarlos al agente de IA. Incluye un recibo de auditoría CISO en stderr.
- Argumentos:
command(cadena, obligatorio): El comando de shell a ejecutar (p. ej.cat .env,docker logs web,git diff).cwd(cadena, opcional): Directorio de trabajo.profile(cadena, opcional): Perfil de detección (por defectoDev).timeout_ms(número, opcional): Tiempo de espera en ms (por defecto15000).
5. guard_read_file (Lector de Archivos con Enmascaramiento de Credenciales)
Lee archivos (.env, configuraciones, código fuente, volcados de bases de datos) y tokeniza todas las contraseñas, JWTs y PII en memoria volátil, devolviendo contenido redactado seguro para razonamiento de IA.
- Argumentos:
file_path(cadena, obligatorio): Ruta al archivo.profile(cadena, opcional): Perfil de detección (por defectoDev).max_lines(número, opcional): Límite de líneas para archivos grandes (por defecto500).
6. guard_git_diff (Sanitizador de Pre-Commit y Diff)
Inspecciona diffs de repositorio en etapa de preparación (--cached) o sin preparar, redactando cualquier secreto o PII recién introducido en RAM local antes de la revisión de código por IA o la generación de mensajes de commit.
- Argumentos:
staged(booleano, opcional): Sitrue, inspecciona los cambios en el área de preparación (git diff --cached). El valor predeterminado esfalse.cwd(cadena, opcional): Directorio de trabajo.profile(cadena, opcional): Perfil de detección (el valor predeterminado esDev).
7. guard_apply_patch (Aplicador de Parches Seguro)
Invierte los marcadores de posición de tokens ([API_KEY_1], [SECRET_1]) en código o texto generado por IA consultando el mapa de sesión RAM local, creando una copia de seguridad .bak y escribiendo texto claro auténtico directamente en el disco. El LLM remoto nunca ve secretos reales.
- Argumentos:
file_path(cadena, obligatorio): Ruta al archivo de destino.content(cadena, obligatorio): Contenido que contiene tokens para restaurar en el disco.create_backup(booleano, opcional): Crear una copia de seguridad del archivo existente antes de escribir (el valor predeterminado estrue).
8. create_agent_rules (Inyección de Reglas de Agente con 1 Clic)
Crea automáticamente directivas Zero-Trust de nivel CISO en .cursorrules, .windsurfrules, CLAUDE.md, .github/copilot-instructions.md o .clinerules.
- Argumentos:
agent_types(matriz, opcional):["all"],["cursor"],["windsurf"],["claude_code"],["copilot"],["cline"]. El valor predeterminado es["all"].workspace_dir(cadena, opcional): Directorio del espacio de trabajo.
9. check_status
Devuelve un panel visual que muestra su nivel actual, el número de solicitudes de sesión, los perfiles activos y las instrucciones de actualización. Úselo en cualquier momento para verificar el estado de su licencia u obtener ayuda con la configuración.
- Argumentos: (ninguno requerido)
- Ejemplo de llamada JSON-RPC:
{ "method": "tools/call", "params": { "name": "check_status", "arguments": {} } } - Ejemplo de respuesta (Nivel Gratuito):
╔══════════════════════════════════════════════════╗ ║ PrivacyScrubber MCP Server v2.3.9 ║ ╠══════════════════════════════════════════════════╣ ║ 🔓 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 (Centro de Adquisiciones para CISO y DPO)
Genera un caso de negocio institucional, un desglose de riesgos regulatorios y un memorando de adquisiciones para la aprobación del CISO, el DPO y el equipo legal. Calcula un ROI determinista frente a sanciones por incumplimiento y tarifas de salida de DLP en la nube.
- Argumentos:
targetTier(cadena, opcional): Plan de destino ("teams"a $99/mes o"sdk"a $299/mes). El valor predeterminado es"teams".teamSize(número, opcional): Número estimado de asientos de desarrollador/analista (el valor predeterminado es10).primaryFramework(cadena, opcional): Marco de cumplimiento principal ("gdpr","hipaa","soc2"o"pci_dss"). El valor predeterminado es"gdpr".
- Ejemplo de llamada JSON-RPC:
{ "method": "tools/call", "params": { "name": "generate_procurement_memo", "arguments": { "targetTier": "teams", "teamSize": 15, "primaryFramework": "gdpr" } } } - Salida: Memorando de adquisición empresarial en Markdown formateado, listo para su inserción inmediata en RFC internos, wikis de Confluence o solicitudes de compra empresariales.
🛡️ CLI Independiente: ps-guard
PrivacyScrubber incluye ps-guard para flujos de trabajo con tuberías Unix, pre-commit y agentes:
# 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
🌐 Extensión de Navegador y Cliente Web
¿Busca protección en tiempo real directamente en su navegador web?
- Extensión de Chrome: Obtenga la Extensión de Chrome de PrivacyScrubber para sanitizar indicaciones directamente en ChatGPT, Claude y Gemini en tiempo real.
- Sandbox Web: Use las herramientas de sanitización de navegador sin servidor en Página de inicio de PrivacyScrubber.
📄 Licencia y Actualización Comercial
De forma predeterminada, el servidor se ejecuta bajo el Nivel Gratuito (limitado a 15,000 caracteres por solicitud y al perfil PII básico General). Para desbloquear 30 perfiles PII especializados de ingeniería, médicos, legales y financieros, así como reglas personalizadas para todo el equipo, puede comprar una licencia comercial.
Plan Comercial y Comparación de Características
| Característica | Comunidad Gratuita | Nivel PRO | Nivel TEAMS | SDK para Desarrolladores |
|---|---|---|---|---|
| Arquitectura de Ejecución | Stdio RAM Local | Stdio RAM Local | Stdio RAM Local | Node/WASM en Proceso |
| Tokenización Volátil | Sí (solo RAM) | Sí (solo RAM) | Sí (solo RAM) | Sí (solo RAM) |
| Enmascaramiento PII Estándar | Sí | Sí | Sí | Sí |
| Rendimiento Máximo de Caracteres | 15,000 caracteres / llamada | Ilimitado | Ilimitado | Ilimitado |
| 30 Perfiles de Industria | Solo General (prueba de 5k) | Los 30 Perfiles | Los 30 Perfiles | Los 30 Perfiles |
| Reglas Regex Personalizadas | Bloqueado | Ilimitado | Ilimitado | Ilimitado |
| Sincronización de Reglas de Equipo (GPO) | No | No | Sí (Enlace Compartido) | Sí (Configurable) |
| Exportación de Microservicio / RAG | No | No | No | Sí (@privacyscrubber/sdk) |
| Responsabilidad de Subprocesador | 0 (Lado del cliente) | 0 (Lado del cliente) | 0 (Lado del cliente) | 0 (Node/WASM en Proceso) |
| Costo de Licencia | $0 | $15/mes o $110 de por vida | $99/mes tarifa plana | $299/mes o $2,990/año |
| Activación Directa | Incluida por defecto | Adquirir PRO | Implementar TEAMS | Suscribirse al SDK |
👉 Adquiera una Clave de Licencia Comercial en privacyscrubber.com/pricing
🔐 Después de la Compra: Active PRO en su Cliente MCP
Después de comprar una licencia PRO en privacyscrubber.com/pricing, recibirá una clave de licencia. Agréguela a la configuración de su cliente MCP como variable de entorno: PRIVACYSCRUBBER_KEY.
Claude Desktop
Edite ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"privacyscrubber": {
"command": "npx",
"args": ["-y", "@privacyscrubber/mcp-server"],
"env": {
"PRIVACYSCRUBBER_KEY": "YOUR_LICENSE_KEY_HERE"
}
}
}
}
Reinicie Claude Desktop después de guardar.
Cursor
- Vaya a Configuración → Funciones → Servidores MCP.
- Encuentre
privacyscrubbery haga clic en Editar. - Agregue la variable de entorno:
PRIVACYSCRUBBER_KEY=YOUR_LICENSE_KEY_HERE. - Reinicie Cursor.
Alternativamente, expórtela a nivel de sistema para que todas las herramientas la tomen:
# macOS / Linux — add to ~/.zshrc or ~/.bashrc
export PRIVACYSCRUBBER_KEY="YOUR_LICENSE_KEY_HERE"
Windsurf
Edite ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"privacyscrubber": {
"command": "npx",
"args": ["-y", "@privacyscrubber/mcp-server"],
"env": {
"PRIVACYSCRUBBER_KEY": "YOUR_LICENSE_KEY_HERE"
}
}
}
}
Verificar Activación
Después de agregar la clave, pida a su agente de IA que llame a check_status:
Use the check_status tool from PrivacyScrubber MCP
🔗 Guías de Ecosistema y Arquitectura de Producción
- 🌐 Aplicación Web: https://privacyscrubber.com
- 📦 SDK de Node.js / TypeScript: @privacyscrubber/sdk (npm)
- 🧩 Extensión de Chrome: Chrome Web Store
- 🛡️ RAG y Bases de Datos Vectoriales: Sanitización de PII Antes de la Ingestión en Bases de Datos Vectoriales (Pinecone, Chroma, Qdrant)
- 🤖 LangChain y LlamaIndex: Middleware PII en Memoria para Tuberías de Agentes de IA
- ⚡ Alternativa a AWS Comprehend: Redacción en Memoria Sin Egreso ni Sobrecarga en la Nube
📚 Fundamentos Académicos y Verificación Regulatoria
PrivacyScrubber y el protocolo Zero-Trust Data Sanitization (ZTDS) están respaldados por tratados científicos, clínicos y legales publicados:
| Repositorio / Archivo | DOI / Identificador | Área de Enfoque | Alcance Regulatorio y de Cumplimiento |
|---|---|---|---|
| Especificación IETF | draft-sibiryakov-ztds-protocol | El Protocolo ZTDS para la Ingestión de IA de Frontera (Internet-Draft) | Privacidad Global de IA, Arquitectura de Cero Egreso |
| Zenodo / CERN | 10.5281/zenodo.22058770 | Fundación del Protocolo Zero-Trust Data Sanitization (ZTDS) | Privacidad de IA Transfronteriza, ISO 27001 A.8.11 |
| OSF (Centro para la Ciencia Abierta) | 10.17605/OSF.IO/5BYJF | Benchmark Empírico de Latencia y Perfilado de Memoria (<2ms RAM) | Rendimiento vs. Proxies DLP en la Nube |
| SSRN / Elsevier | SSRN ID: 7335581 | Gobernanza Empresarial de IA Generativa | Ley de IA de la UE, RGPD del Reino Unido, Privacidad Estatal de EE. UU. |
| medRxiv (Cold Spring Harbor) | MEDRXIV/2026/361661 | Desidentificación de Ensayos Clínicos Multicéntricos | HIPAA Safe Harbor Sección 164.514(b) |
| Law Archive / OSF | LawArchive ID: 4wc86 | Preservación del Privilegio Abogado-Cliente en Flujos de Trabajo de IA | Reglas Modelo ABA y Ética Legal |
Cómo Citar PrivacyScrubber en Investigaciones y Auditorías
@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}
}
📄 Licencia
MIT © Ilya Sibiryakov (BrandMeWeb)
⚖️ Divulgaciones de Propiedad Intelectual y Patentes
La arquitectura Zero-Trust Data Sanitization (ZTDS), la tokenización determinista en memoria, la transferencia de sesión criptográfica y los métodos de ejecución stdio implementados en este paquete son tecnología propietaria de Ilya Sibiryakov (BrandMeWeb) y están protegidos bajo estado de Patente Pendiente:
- Estado Legal: Patentes Pendientes en EE. UU. e Internacionales
- Marco de Prioridad: Convenio de París Art. 4 y 35 U.S.C. § 119 Prioridad (Ventana Activa de 12 Meses)
- Estado de Patente: Patentes Pendientes en EE. UU. e Internacionales (Prioridad Bloqueada)
- Título Oficial: SISTEMA Y MÉTODO PARA SANITIZACIÓN DE DATOS ZERO-TRUST EN EL LADO DEL CLIENTE Y TRANSFERENCIA DE SESIÓN CRIPTOGRÁFICA EN FLUJOS DE TRABAJO DE INTELIGENCIA ARTIFICIAL
- Centro de Divulgación de Patentes: privacyscrubber.com/patents/ (verificación formal mediante NDA de asesoría legal).
🌐 Especificación del Grupo de Trabajo de Ingeniería de Internet (IETF)
- Título de la Especificación: El Protocolo Zero-Trust Data Sanitization (ZTDS) para la Ingestión de Inteligencia Artificial de Frontera
- Categoría del Documento: Internet-Draft de la IETF (Envío Individual)
- Rastreador de Datos de la IETF: https://datatracker.ietf.org/doc/draft-sibiryakov-ztds-protocol/
- Texto Plano del Archivo: https://www.ietf.org/archive/id/draft-sibiryakov-ztds-protocol-01.txt