MCP Server für Deutsche Gesetzestexte
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"deutsche-gesetze-mcp": {
"command": "<see-readme>",
"args": []
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Dieser Server implementiert das Model Context Protocol (MCP), um deutschen Gesetzestexte für LLMs (Large Language Models) bereitzustellen. Er ermöglicht es KI-Assistenten, gezielt nach Gesetzen zu suchen und spezifische Paragraphen abzurufen.
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in legal
87 tools for Korean law — statutes, precedents, ordinances, interpretations | MCP Server · CLI · npm
Proof primitive for AI agents on MultiversX. Anchor file hashes on-chain as verifiable proofs.
AFIP — Argentine tax authority, electronic invoicing (Factura Electrónica)
956k Swiss court decisions: full-text search, citation graph, statute lookup (DE/FR/IT)
MCP Security Weekly
Get CVE alerts and security updates for Deutsche Gesetze Mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
Dieser Server implementiert das Model Context Protocol (MCP), um deutschen Gesetzestexte für LLMs (Large Language Models) bereitzustellen. Er ermöglicht es KI-Assistenten, gezielt nach Gesetzen zu suchen und spezifische Paragraphen abzurufen.
Die Gesetzestexte werden aus Markdown-Dateien geparst, die dem Format des Bundestag/gesetze Repositories entsprechen (Hinweis: Dieses Repository ist veraltet und dient nur zu Demozwecken).
Repository klonen:
git clone https://github.com/floleuerer/deutsche-gesetze-mcp.git
cd deutsche-gesetze-mcp
Abhängigkeiten installieren:
Es wird empfohlen, eine virtuelle Umgebung zu verwenden (z.B. venv oder conda).
pip install -r mcp/requirements.txt
Die Docker-Version klont automatisch das gesamte Bundestag/gesetze Repository (veraltet, nur Demo) in das Image, sodass alle Gesetze sofort lokal verfügbar sind.
Image bauen:
docker build -t deutsche-gesetze-mcp .
Container starten:
docker run -p 8001:8001 deutsche-gesetze-mcp
Das Projekt enthält im Ordner prepare_data Skripte, um aktuelle Gesetzestexte direkt von www.gesetze-im-internet.de herunterzuladen und für den Server aufzubereiten.
cd prepare_data
./prepare_gesetze_im_internet.sh
Dies lädt die Gesetze herunter, entpackt sie und konvertiert sie in das benötigte Format.Die Konfiguration erfolgt über Umgebungsvariablen oder eine .env Datei. Die Einstellungen werden in mcp/config.py definiert.
| Variable | Beschreibung | Standardwert |
|---|---|---|
LOAD_FROM_FOLDER | Pfad zu einem lokalen Ordner mit Gesetzes-Markdown-Dateien. | /app/gesetze/ |
LOAD_FROM_GITHUB | JSON-Liste von Gesetzeskürzeln, die von GitHub geladen werden sollen (überschreibt LOAD_FROM_FOLDER, wenn gesetzt). | None |
MIN_PARAGRAPHS | Minimale Anzahl an Paragraphen, damit ein Gesetz geladen wird. | 5 |
Beispiel .env Datei:
Um Gesetze direkt von GitHub zu laden (z.B. BGB und StGB):
LOAD_FROM_GITHUB='["BGB", "StGB"]'
LOAD_FROM_FOLDER=
Um lokale Dateien zu nutzen (angenommen, sie liegen in ./gesetze):
LOAD_FROM_FOLDER=./gesetze
Der Server kann direkt über Python gestartet werden. Er nutzt FastMCP und stellt standardmäßig einen HTTP-Server auf Port 8001 bereit.
python mcp/server.py
Die Tests können mit pytest ausgeführt werden. Um die Tests zu starten, muss der mcp Ordner im Python-Pfad liegen:
PYTHONPATH=mcp python3 -m pytest mcp/tests
Der Server stellt folgende MCP-Tools zur Verfügung:
get_lawlibrary(law: str | None)
law: (Optional) Suchbegriff oder Kürzel, um die Liste zu filtern (z.B. "BGB").get_paragraph(law: str, paragraph: str)
law: Das Kürzel des Gesetzes (z.B. "BGB").paragraph: Die Nummer des Paragraphen (z.B. "1", "14a").**search_laws(query: str, laws: list[str] | None)