mcp-redact
mcp-redact
CLI y servidor MCP local-first para redactar texto sensible antes de compartir registros, configuraciones y errores con herramientas de IA.
mcp-redact te ayuda a hacer una cosa antes de pegar texto en Claude Code, Cursor u otras herramientas de IA: redactar secretos y datos sensibles primero.
Por qué existe esto
Los desarrolladores a menudo pegan registros, archivos .env, encabezados de solicitud, seguimientos de pila y fragmentos de configuración en herramientas de IA. Esos fragmentos pueden contener claves de API, tokens de portador (bearer tokens), cookies, correos electrónicos y otros valores sensibles.
mcp-redact está diseñado para hacer ese flujo más seguro:
local-first
redacción determinista basada en expresiones regulares
motor compartido tanto para CLI como para MCP
marcadores de posición legibles como
[REDACTED_EMAIL]
Related MCP server: phi-redact-mcp
Antes / Después
Antes
Authorization: Bearer abcdefghijklmnop123456
user_email=user@example.com
callback=https://example.com/callback?token=secret123&lang=en
Cookie: session=abcdef123456; theme=darkDespués
Authorization: Bearer [REDACTED_AUTHORIZATION_HEADER]
user_email=[REDACTED_EMAIL]
callback=https://example.com/callback?token=[REDACTED_SENSITIVE_URL]&lang=en
Cookie: session=[REDACTED_COOKIE_HEADER]; theme=darkInicio rápido
Requisitos:
Node.js 20+
pnpm
Instalar dependencias:
pnpm installEjecutar en un archivo de muestra:
pnpm dev -- --file ./examples/sample.logPasar texto a través de stdin:
pnpm dev -- < ./examples/sample.logArchivos de ejemplo
Este repositorio incluye entradas de muestra que puedes usar para pruebas locales y demostraciones:
examples/sample.logexamples/sample.envexamples/sample.jsonexamples/sample.yamlexamples/mcp-redact.config.json
Todos los valores de muestra son falsos.
Uso de CLI
Leer desde stdin
pnpm dev -- < ./examples/sample.logLeer desde un archivo
pnpm dev -- --file ./examples/sample.logpnpm dev -- --file ./examples/sample.envEscribir salida en un archivo
pnpm dev -- --file ./examples/sample.env --output ./sanitized.envSalida JSON
pnpm dev -- --file ./examples/sample.log --format jsonEjemplo de salida:
{
"redactedText": "Authorization: Bearer [REDACTED_AUTHORIZATION_HEADER]\nuser_email=[REDACTED_EMAIL]\ncallback=https://example.com/callback?token=[REDACTED_SENSITIVE_URL]&lang=en\nCookie: session=[REDACTED_COOKIE_HEADER]; theme=dark\n",
"summary": {
"totalMatches": 4,
"byType": {
"authorization_header": 1,
"email": 1,
"sensitive_url": 1,
"cookie_header": 1
}
}
}Salida solo de resumen
pnpm dev -- --file ./examples/sample.log --summary-onlyEjemplo de salida:
Total matches: 4
By type:
- authorization_header: 1
- cookie_header: 1
- email: 1
- sensitive_url: 1Limitar grupos habilitados
Ejecutar solo detectores personales:
pnpm dev -- --file ./examples/sample.log --only personalDeshabilitar un grupo en tiempo de ejecución:
pnpm dev -- --file ./examples/sample.log --disable httpUsar un archivo de configuración
pnpm dev -- --file ./examples/sample.log --config ./examples/mcp-redact.config.jsonLa configuración de ejemplo habilita solo los grupos personal y custom, deshabilita el detector email integrado y agrega una regla personalizada internal-ticket. Con esa configuración, sample.log se deja sin cambios porque no contiene ningún valor de ticket personalizado y la redacción de correo electrónico está deshabilitada.
Uso de MCP
Iniciar el servidor MCP
Modo de desarrollo:
pnpm mcp:devConstruir y ejecutar:
pnpm build
pnpm mcp:startHerramientas MCP
redact_text
Entrada:
{
"text": "Authorization: Bearer abcdefghijklmnop123456",
"groups": ["http"],
"configPath": "./examples/mcp-redact.config.json"
}redact_file
Entrada:
{
"filePath": "./examples/sample.log",
"groups": ["http"],
"configPath": "./examples/mcp-redact.config.json"
}Ambas herramientas devuelven la misma estructura:
{
"redactedText": "...",
"summary": {
"totalMatches": 4,
"byType": {
"authorization_header": 1,
"email": 1
}
}
}Conexión desde un cliente MCP
Usa el comando de servidor que se ajuste a tu entorno:
desarrollo:
pnpm mcp:devsalida construida:
pnpm mcp:start
Si tu cliente MCP espera un comando más argumentos, apúntalo al proyecto local y ejecuta el servidor a través de stdio. El servidor expone dos herramientas: redact_text y redact_file.
Configuración
Nombre del archivo de configuración predeterminado:
mcp-redact.config.jsonSi no se proporciona una ruta de configuración explícita, mcp-redact intentará leer ese archivo desde el directorio de trabajo actual. Si falta el archivo predeterminado, la ejecución continúa normalmente. Si pasas explícitamente una ruta de configuración inexistente, el comando fallará.
Configuración de ejemplo:
{
"enabledGroups": ["personal", "custom"],
"disabledDetectors": ["email"],
"customRules": [
{
"name": "internal-ticket",
"pattern": "TICKET-[0-9]{6}",
"placeholder": "[REDACTED_TICKET]"
}
]
}Campos de configuración
enabledGroups: restringe los detectores integrados y personalizados a los grupos enumeradosdisabledDetectors: deshabilita detectores por nombre, comoemailogithub-tokencustomRules: agrega detectores locales basados en expresiones regulares que utilizan la misma tubería que las reglas integradas
Detectores admitidos
secrets
Token de portador (Bearer token)
JWT
Token de GitHub
Clave de API estilo OpenAI
Clave de API estilo Anthropic
ID de clave de acceso de AWS
Secretos de clave-valor como
password=,token=,secret=,api_key=Bloques de clave privada
personal
Correo electrónico
Teléfono
IPv4
http
Valor de portador del encabezado de autorización
Valor sensible del encabezado de cookie
Valor sensible de consulta de URL como
token=
Desarrollo local
Comandos comunes:
pnpm install
pnpm test
pnpm lint
pnpm typecheck
pnpm build
pnpm mcp:devHoja de ruta
Más patrones de tokens y claves de API
Mejor supresión de falsos positivos
Más ejemplos de registros y configuraciones del mundo real
Más ejemplos de clientes MCP de extremo a extremo
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceA redaction engine and MCP server that scrubs sensitive identifiers (AWS keys, IPs, emails, etc.) from AI agent traces, enabling safe storage and sharing of war stories via submit, search, and retrieve tools.3Apache 2.0
- AlicenseAqualityAmaintenanceAn MCP server that redacts PII/PHI from text before it ever reaches an LLM — self-hosted, fail-closed, and HIPAA-aware.3MIT
- AlicenseAqualityBmaintenanceSanitizes text and files by removing PII, secrets, and custom patterns locally before sending to LLMs, with optional reverse-scrubbing.3114MIT
- Alicense-qualityAmaintenanceScans text and files for common secrets (AWS, GitHub, etc.) and redacts them to prevent credential leakage in AI-assisted development. Runs entirely locally with no telemetry.MIT
Related MCP Connectors
Scans MCP servers for tool poisoning, prompt injection and supply chain risks.
The WAF for agents. Pattern-based + heuristic firewall scans prompts, RAG documents, tool argume...
Deterministic trust gate for AI output: leaked-secret, prompt-injection & PII in one call.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/nine710/mcp-redact'
If you have feedback or need assistance with the MCP directory API, please join our Discord server