Skip to main content
Glama

Verified Regex Generator

Typing SVG

Python Tests MCP FastAPI Groq

MCP → Verified Regex Generator. Der Benutzer beschreibt ein Muster in einfachem Englisch. Ein LLM generiert den regulären Ausdruck. Ein Agent erzeugt echte Beispielstrings (positive + negative Beispiele), testet den regulären Ausdruck damit mit der echten re-Engine und iteriert, falls er falsch ist. Reguläre Ausdrücke haben den schlechten Ruf, richtig auszusehen, aber subtil falsch zu sein – die Verifikation ist hier der eigentliche Wert, nicht die Generierung.

Läuft auf Groq (standardmäßig openai/gpt-oss-120b) – schnell und Free-Tier-freundlich, daher günstig, um es öffentlich zu demonstrieren.

Das ist nicht „Frag ein LLM nach einem Regex und hoffe." Es ist eine geschlossene Verifikationsschleife:

description  ──►  LLM writes a candidate regex
                        │
description  ──►  LLM writes real test strings (incl. tricky near-misses)
                        │
                        ▼
              Python's `re` engine checks the candidate
              against every test string — ground truth,
              not the model's opinion of itself
                        │
              ┌─────────┴─────────┐
          all pass             something failed
              │                     │
              ▼                     ▼
           done               feed the exact failures
                               back to the model, try again

Demo

Ein echter Durchlauf: „US-Telefonnummer" → der Agent schreibt 16 Teststrings, schlägt einen Kandidaten-Regex vor, prüft ihn mit Pythons echter re-Engine und konvergiert in 2 Iterationen zu einem verifizierten Muster.

Demo

Screenshot

Related MCP server: RegexForge

Was hier drin ist

  • regex_agent/core.py – die eigentliche Agent-Schleife (modellunabhängig vom Transport). Alles andere ist ein dünner Wrapper darum.

  • mcp_server/ – ein echter MCP-Server, der generate_verified_regex als Werkzeug bereitstellt, sodass es direkt aus Claude Desktop oder Claude Code verwendet werden kann.

  • web/ – eine FastAPI- + Vanilla-JS-Demo mit zwei Teilen:

    1. Eine Live-Animation der Denkweise des Agenten: Testfälle, jeder Kandidaten-Regex und die Bestanden/Fehlgeschlagen-Tabelle pro Iteration.

    2. Ein Live-Tester im Regex101-Stil darunter – ein bearbeitbares Musterfeld mit Flags (g/i/m/s/Volltreffer), Live-Markierung von Treffern in deinem eigenen Teststring, eine Trefferliste mit Erfassungsgruppen und eine verständliche Token-für-Token-Aufschlüsselung des regulären Ausdrucks (alles clientseitig, keine API-Aufrufe). Es wird automatisch mit dem ausgefüllt, was der Agent gerade verifiziert hat, funktioniert aber auch eigenständig für jeden Regex, den du einfügst – nützlich, auch wenn du Regex bereits kennst und nur einen testen willst.

    Kein MCP-Client erforderlich – läuft im Browser.

Einrichtung

pip install -r requirements.txt
cp .env.example .env   # then add your GROQ_API_KEY

Web-Demo ausführen

cd web
python server.py

Öffne http://127.0.0.1:8000.

MCP-Server ausführen

Füge dies zu deiner MCP-Client-Konfiguration hinzu (z. B. claude_desktop_config.json von Claude Desktop oder .claude/settings.json für Claude Code):

{
  "mcpServers": {
    "verified-regex-generator": {
      "command": "python",
      "args": ["/absolute/path/to/2 project/mcp_server/server.py"]
    }
  }
}

Bitte Claude dann z. B.: „Verwende den Verified Regex Generator, um mir einen regulären Ausdruck für eine US-Telefonnummer zu erstellen." – Es ruft das Werkzeug auf, das die vollständige Generierungs- → Test- → Verifizierungsschleife serverseitig ausführt und einen JSON-Bericht zurückgibt.

Warum das eine gute Demo ist

Die meisten „KI schreibt Code"-Demos enden bei der Generierung. Diese hier behandelt die erste Antwort des LLMs als Hypothese, nicht als Antwort – und meldet nur dann Erfolg, wenn sie gegen die Grundwahrheit (die echte Regex-Engine, mit echten Strings, einschließlich adversarischer Beinahe-Treffer, die das Modell selbst vorschlägt) geprüft wurde. Diese Schleife – generieren → verifizieren → überarbeiten – ist das Kernmuster zuverlässiger agentischer Werkzeuge, und sie ist klein genug, um in regex_agent/core.py vollständig gelesen zu werden.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables LLMs to systematically develop and validate regex patterns by defining test cases with expected matches, testing patterns against them, and iteratively refining until all requirements are satisfied.
    4
    6
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    RegexForge 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
    -
  • A
    license
    A
    quality
    D
    maintenance
    Provides 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.
    9
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Provides a tool to extract and validate regex patterns from text content, including flags, positions, and ReDoS risk assessment. Enables AI agents to identify potentially dangerous regular expressions in code or files without needing filesystem access.
    2
    MIT