regexguard
regexguard-mcp-server
Un servidor MCP que ofrece a cualquier agente de IA una forma de comprobar una regex que acaba de generar -- tanto lo que realmente coincide como si es seguro ejecutarla contra entradas no fiables -- antes de publicarla. Totalmente local: sin clave de API, sin llamada de red, sin dependencia más allá del SDK de MCP y Zod.
Por qué
Las regex son un lugar notoriamente fácil para introducir un bug que parece correcto en todos los ejemplos que te toca probar. Dos modos de fallo en particular son comunes y fáciles de pasar por alto a simple vista:
No coincide con lo que crees que coincide.
explain_regexconvierte el patrón en un árbol sintáctico real y lo describe en inglés sencillo, de modo que «¿esto realmente exige al menos un dígito?» tiene una respuesta rápida que no depende de confiar en tu propia lectura de paréntesis anidados.Es un vector de denegación de servicio. Una regex con cuantificadores anidados (
(a+)+) o alternancia ambigua dentro de un grupo repetido ((a|a)+) puede hacer que un motor de retroceso tarde tiempo exponencial en una entrada que no coincide, creada a propósito (o incluso accidental) -- esto es ReDoS, una clase de vulnerabilidad real y explotada en repetidas ocasiones, y un defecto plausible en cualquier regex que un agente escriba sin probarla contra entradas adversarias.check_redos_riskseñala la forma estructural sin ejecutar nunca el patrón -- es seguro ejecutarla sobre código fuente de regex no fiable o deliberadamente malicioso.
Related MCP server: Regex Toolkit MCP Server
Herramientas
explain_regex
Analiza un patrón para convertirlo en un AST y devuelve una descripción en inglés sencillo de lo que coincide.
check_redos_risk
Analiza estáticamente la estructura de un patrón en busca de cuantificadores anidados y alternancia ambigua dentro de un grupo repetido -- las dos causas clásicas del retroceso catastrófico. Devuelve "safe", "high" o "critical", con un hallazgo específico para cada problema encontrado.
Ambas herramientas comparten un único analizador (src/services/parser.ts): un auténtico analizador de regex por descenso recursivo (literales, clases de caracteres, clases abreviadas, anclas, grupos de captura/no captura/nombrados, lookaround, alternancia, cuantificadores y referencias inversas), no un conjunto de heurísticas de coincidencia de cadenas contra el texto fuente bruto del patrón.
Esto es una comprobación estructural heurística, no un verificador formal -- check_redos_risk puede decirte que un patrón tiene la forma clásica de explosión exponencial; no puede demostrar que un patrón sea rápido en todas las entradas, y hay patrones ReDoS fuera de las dos formas que detecta actualmente. Trata un resultado "safe" como «no se ha encontrado nada evidente», no como una garantía.
Instalar y configurar
git clone https://github.com/wedo911/regexguard-mcp-server.git
cd regexguard-mcp-server
npm install
npm run buildAñádelo a la configuración de tu cliente MCP (p. ej. claude_desktop_config.json, o el .mcp.json de un proyecto para Claude Code):
{
"mcpServers": {
"regexguard": {
"command": "node",
"args": ["/absolute/path/to/regexguard-mcp-server/dist/index.js"]
}
}
}Ejecutar las pruebas
npm run build
node --test tests/parser.test.mjs tests/explain.test.mjs tests/redosCheck.test.mjs44 pruebas cubren la gramática del analizador, la salida de la explicación y tanto los verdaderos positivos ((a+)+, (a*)*, (a|a)+, (a|ab)+, patrones anidados dentro de grupos de no captura) como los verdaderos negativos ((cat|dog)+, un patrón realista de nombre de usuario, un patrón realista de correo electrónico, repeticiones hermanas — no anidadas —) para la comprobación de ReDoS, de modo que la tasa de falsos positivos en patrones ordinarios es una propiedad probada, no una esperanza.
Pruébalo sin un cliente
npx @modelcontextprotocol/inspector --cli node dist/index.js \
--method tools/call --tool-name check_redos_risk \
--tool-arg pattern='^(([a-zA-Z0-9])+([\.-]?([a-zA-Z0-9])+)*)$'Licencia
MIT — consulta LICENSE.
Maintenance
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceRegexForge gives AI agents a reliable way to get a regex without asking an LLM to hallucinate one. Pass in labeled examples (strings that should match, strings that shouldn't) plus an optional description; get back the regex, a proof matrix showing it handles every example, and a backtracking-risk audit flagging catastrophic-backtracking patterns. Pure symbolic synthesis over a template bank with
- FlicenseAqualityCmaintenanceEnables LLM agents to extract, validate, and mask personally identifiable information using deterministic regular expressions, reducing token usage and hallucination risks.373
- AlicenseAqualityAmaintenanceEnables AI agents to parse, validate, explain, and preview cron expressions, surfacing common silent bugs before deployment.4108MIT
- AlicenseAqualityCmaintenanceProvides tools to test regex patterns for correctness, performance (ReDoS), and memory usage, and suggests safe rewrites. Enables LLMs to iterate on regex generation with verifiable feedback.9MIT
Related MCP Connectors
The WAF for agents. Pattern-based + heuristic firewall scans prompts, RAG documents, tool argume...
Zero-config MCP security scanner for AI-generated apps. 25K+ vulnerability patterns.
Pay-per-call cybersecurity for AI agents: vuln scans, threat intel, compliance, code security.
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/wedo911/regexguard-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server