regexguard
regexguard-mcp-server
Ein MCP-Server, der jedem KI-Agenten die Möglichkeit gibt, einen gerade erzeugten Regex vor der Auslieferung zu überprüfen – sowohl das, was er tatsächlich matcht, als auch die Frage, ob es sicher ist, ihn gegen nicht vertrauenswürdige Eingaben auszuführen. Vollständig lokal: kein API-Schlüssel, kein Netzwerkaufruf, keine weiteren Abhängigkeiten außer dem MCP SDK und Zod.
Warum
Reguläre Ausdrücke sind notorisch dafür bekannt, dass sich in ihnen leicht ein Bug einschleicht, der in jedem Beispiel, das Sie zufällig testen, völlig in Ordnung aussieht. Zwei Fehlermodi sind besonders häufig und mit bloßem Auge leicht zu übersehen:
Es matcht nicht das, was Sie denken, dass es matcht.
explain_regexwandelt das Muster in einen echten Syntaxbaum um und beschreibt ihn in einfachem Englisch, sodass die Frage „Erfordert das wirklich mindestens eine Ziffer?“ schnell eine Antwort erhält, die nicht davon abhängt, dass Sie Ihrer eigenen Lesart von verschachtelten Klammern vertrauen.Es ist ein Denial-of-Service-Vektor. Ein Regex mit verschachtelten Quantifizierern (
(a+)+) oder mehrdeutiger Alternation innerhalb einer wiederholten Gruppe ((a|a)+) kann eine Backtracking-Engine dazu bringen, bei einer manipulierten (oder sogar versehentlichen) nicht übereinstimmenden Eingabe exponentielle Zeit zu benötigen – das ist ReDoS, eine reale und wiederholt ausgenutzte Schwachstellenklasse und ein durchaus möglicher Fehler in jedem Regex, den ein Agent schreibt, ohne ihn gegen böswillige Eingaben zu testen.check_redos_riskkennzeichnet die strukturelle Form, ohne das Muster jemals auszuführen – es lässt sich sicher auf nicht vertrauenswürdige oder absichtlich bösartige Regex-Quelltexte anwenden.
Related MCP server: Regex Toolkit MCP Server
Werkzeuge
explain_regex
Parst ein Muster in einen AST und gibt eine Beschreibung in einfachem Englisch davon zurück, was es matcht.
check_redos_risk
Analysiert die Struktur eines Musters statisch auf verschachtelte Quantifizierer und mehrdeutige Alternation innerhalb einer wiederholten Gruppe – die beiden klassischen Ursachen für katastrophales Backtracking. Gibt "safe", "high" oder "critical" zurück, jeweils mit einem konkreten Befund für jedes gefundene Problem.
Beide Werkzeuge teilen sich einen Parser (src/services/parser.ts): einen echten rekursiv-absteigenden Regex-Parser (Literale, Zeichenklassen, Kurzzeichenklassen, Anker, erfassende/nicht erfassende/benannte Gruppen, Lookaround, Alternation, Quantifizierer, Rückverweise), keine Ansammlung von String-Matching-Heuristiken gegen den rohen Quelltext des Musters.
Dies ist eine heuristische Strukturprüfung, kein formaler Verifizierer – check_redos_risk kann Ihnen sagen, dass ein Muster die typische Form der exponentiellen Explosion hat; es kann nicht beweisen, dass ein Muster auf allen Eingaben schnell ist, und es gibt ReDoS-Muster außerhalb der beiden Formen, die es derzeit erkennt. Behandeln Sie ein "safe"-Ergebnis als „nichts Offensichtliches gefunden“, nicht als Garantie.
Installation und Konfiguration
git clone https://github.com/wedo911/regexguard-mcp-server.git
cd regexguard-mcp-server
npm install
npm run buildFügen Sie es zur Konfiguration Ihres MCP-Clients hinzu (z. B. claude_desktop_config.json oder einem .mcp.json eines Projekts für Claude Code):
{
"mcpServers": {
"regexguard": {
"command": "node",
"args": ["/absolute/path/to/regexguard-mcp-server/dist/index.js"]
}
}
}Tests ausführen
npm run build
node --test tests/parser.test.mjs tests/explain.test.mjs tests/redosCheck.test.mjs44 Tests decken die Parser-Grammatik, die Erklärungsausgabe und sowohl echte Positivfälle ((a+)+, (a*)*, (a|a)+, (a|ab)+, Muster, die in nicht erfassenden Gruppen verschachtelt sind) als auch echte Negativfälle ((cat|dog)+, ein realistisches Benutzernamen-Muster, ein realistisches E-Mail-Muster, benachbarte – nicht verschachtelte – Wiederholungen) für den ReDoS-Check ab, sodass die False-Positive-Rate bei gewöhnlichen Mustern eine getestete Eigenschaft und keine Hoffnung ist.
Ohne Client ausprobieren
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])+)*)$'Lizenz
MIT – siehe 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