Hinweis: Die MCP-Integration befindet sich in einem frühen Entwicklungsstadium. Die Tools sind bereits voll funktionsfähig und können in Testumgebungen mit unterstützten KI-Agenten (Claude Desktop, Cursor, VS Code Copilot, AnythingLLM) ausprobiert werden.
Was ist MCP?
Das Model Context Protocol (MCP) ist ein offener Standard, der es KI-Systemen ermöglicht, mit externen Tools zu kommunizieren. mjEdit implementiert einen vollständigen MCP-Server mit zwei Transport-Optionen:
- STDIO – Direkte Prozess-Kommunikation (Claude Desktop, Cursor, VS Code Copilot)
- SSE – HTTP Server-Sent Events auf localhost (AnythingLLM Docker, eigene Integrationen)
88 MCP-Tools — was bedeutet das in der Praxis?
Statt nur mit einem Editor zu reden, kann eine KI mit mjEdit arbeiten: Dateien anlegen, Inhalte umbauen, OSCAL-Dokumente generieren, Validierungen ausführen, ganze Tabs steuern. Die folgenden Beispiele zeigen, wie sich das im Alltag anfühlt.
„Lege mir einen Grundschutz++-konformen Katalog an"
Sie diktieren der KI:
„Erstelle einen leeren OSCAL-Katalog mit dem Titel ‚BSI IT-Grundschutz++ Interne Basis 2026’, Version
1.0.0, Sprachede. Lege die drei Praktik-GruppenORP(Organisation und Personal),CON(Konzeption und Vorgehensweisen) undOPS(Betrieb) an, übernimm aus dem Master-Katalogkataloge/grundschutzpp-master.jsondie ControlsORP.4.A1,ORP.4.A8,CON.3.A1undOPS.1.1.5.A1mitsamt Statements, und speichere das Ganze alskataloge/internal-baseline-2026.json."
Im Hintergrund läuft eine Werkzeugkette ab, die Sie sonst von Hand zusammenklicken müssten:
oscal_create_catalog→ leerer Katalog mit Metadaten (Titel, Version,last-modified,oscal-version: 1.2.1)oscal_add_group(3×) → GruppenORP/CON/OPSmit BSI-konformen Titelnoscal_query_get_control(4×) → Controls aus dem Master-Katalog lesenoscal_add_control(4×) → Controls in die korrekte Gruppe einhängenvalidate_oscal_document→ Schema-Validierung gegen OSCAL v1.2.1file_save_as→ Speichern unter dem Wunschpfad
Sekunden später ist der Katalog im Tree-View sichtbar, im Katalog-Tab geöffnet und schema-validiert. Sie sehen nur das fertige Ergebnis – aber jedes Werkzeug ist im Tool-Log nachvollziehbar protokolliert.
„Aktualisiere alle Metadaten unserer 12 SSPs auf Version 2.1"
Eine Aufgabe, die manuell mindestens eine halbe Stunde fehleranfälliges Klicken bedeutet. Mit MCP genügt ein Satz:
„Öffne alle SSP-Dateien im Verzeichnis
030-SSP/, setze in den Metadatenversionauf2.1undlast-modifiedauf heute."
Im Hintergrund: file_list mit Glob-Pattern, je SSP oscal_update_metadata, dann file_save. Die GUI aktualisiert sich automatisch.
„Wo steht in unserem SSP etwas zu Backup?"
Statt durch 4.000 JSON-Zeilen zu scrollen:
„Suche im aktuellen SSP nach allen Erwähnungen von ‚Backup’ und ‚Datensicherung’ und zeige mir die zugehörigen Control-IDs."
oscal_search mit Regex liefert in Sekundenbruchteilen die Treffer mit Kontext, oscal_get_control ergänzt für jeden Treffer den vollständigen Control-Text. Die KI fasst zusammen: „Backup wird in AC-2, CP-9 und SI-12 erwähnt — möchten Sie eines davon im Editor öffnen?"
„Bau mir ein Prüfprotokoll als qFORM"
Sie beschreiben, was Sie brauchen — die KI baut das Formular:
„Erstelle ein qFORM-Prüfprotokoll mit den Feldern Prüfer, Datum, System-Name, einem Dropdown ‚Status’ (Offen / In Bearbeitung / Abgeschlossen) und einer Checkliste mit 10 Einträgen."
qform_create erzeugt die Struktur, qform_add_field setzt jedes Feld mit korrektem Widget-Typ, qform_render zeigt das Formular sofort im Form-Tab. Anschließend können Sie per qform_create_qc_script eine automatische Reifegrad-Berechnung einbetten lassen.
„Generiere die komplette Dokumentenkette für unseren neuen Server"
Der Klassiker — und das Paradebeispiel für execute_steps:
„Erstelle für den Server
web-prod-04ein Profil aus dem BSI-Katalog, daraus einen SSP mit unseren Standard-Komponenten, dann Assessment Plan, Assessment Results und POA&M. Speichere alles unter040-Server/web-prod-04/."
Die KI bündelt bis zu 20 Tool-Aufrufe in einem einzigen Request: dir_create, oscal_generate_profile_from_catalog, oscal_generate_ssp_from_profile, oscal_generate_ap_from_ssp, oscal_generate_ar_from_ap, oscal_generate_poam_from_ssp, gefolgt von validate_oscal_document für jede Datei. Eine Anweisung — fünf validierte, miteinander verknüpfte OSCAL-Dokumente.
„Validiere, was wir gerade haben — und repariere wenn möglich"
Vor einem Audit-Termin oder einem Commit:
„Validiere alle OSCAL-Dateien im aktuellen Projektverzeichnis gegen das offizielle Schema und prüfe alle UUID-Referenzen."
file_list sammelt alle Kandidaten, validate_oscal_document und validate_oscal_references laufen über jede Datei. Die KI berichtet: „11 von 12 Dateien sind valide. In ssp-db.json verweist eine component-uuid ins Leere — soll ich die Referenz auf die naheliegendste Komponente korrigieren?"
„Mach unseren Bericht export-fertig"
Ein typischer Berichts-Workflow ohne Tool-Wechsel:
„Generiere ein Inhaltsverzeichnis für den aktuellen Markdown-Bericht, ergänze einen Footer mit Datum und Versionsnummer, und exportiere das Ergebnis als PDF nach
berichte/."
markdown_get_toc, markdown_replace_section, markdown_export_to_pdf — und die fertige PDF erscheint im Datei-Tree.
„Befülle den SSP aus unserer ISMS-Wissensbasis (RAG mit AnythingLLM)"
Hier kommt das volle Potenzial von MCP + RAG zum Tragen: In AnythingLLM ist Ihr ISMS-Korpus eingebettet – BSI IT-Grundschutz-Kompendium, eigene Sicherheitsleitlinien, Betriebshandbücher, frühere Risikoanalysen, Netzwerkdokumentation, Audit-Berichte aus den Vorjahren. mjEdit ist als MCP-Server angebunden. Sie sagen einmal:
„Befülle den leeren SSP
ssp-web-prod-04.jsonfür unseren neuen Linux-Webserver aus dem Profilprofile-grundschutzpp-web.json. Recherchiere die Implementierungs-Beschreibungen pro Control aus unserer ISMS-Wissensbasis – speziell aus den Dokumenten ‚Betriebshandbuch Webserver v3.2’, ‚Härtungsleitlinie Linux 2025’ und ‚Patch-Management-Richtlinie’. Belege jededescriptionmit Quellenangabe und mappe alle Verantwortlichen aus dem ‚Rollen-und-Verantwortlichkeiten-Katalog’ auf dieresponsible-rolesderimplemented-requirement-Einträge."
Was passiert dabei in zwei Welten gleichzeitig?
In AnythingLLM (RAG-Schicht):
- Pro Control aus dem aufgelösten Profil (z. B.
ORP.4.A1,OPS.1.1.5.A1,SYS.1.3.A14) führt die KI eine semantische Vektorsuche über die ISMS-Wissensbasis durch. - Die relevantesten Passagen werden mit Quellenangabe (Dokumentname, Seite/Abschnitt) zurückgegeben.
- Die KI fasst pro Control die zutreffenden Implementierungs-Aussagen in einen OSCAL-tauglichen Satz zusammen – kein Halluzinieren, weil der Kontext ausschließlich aus Ihren echten ISMS-Dokumenten kommt.
In mjEdit (MCP-Schicht):
oscal_query_get_control(n×) holt für jeden Control die Soll-Anforderung aus dem Profil.oscal_add_controllegt pro Control einenimplemented-requirement-Knoten an.editor_stream_appendmitupdate_gui=trueschreibt die aus dem RAG zurückgelieferte Beschreibung live in dasdescription-Feld – Sie sehen den Text Satz für Satz im Editor erscheinen.oscal_add_propertyergänzt die Quellenangabe alsprop(name="evidence-source",value="Betriebshandbuch Webserver v3.2 §4.2") – nachvollziehbar für jeden Auditor.oscal_update_implementation_statussetzt den Status (implemented,partial,planned) anhand der RAG-Befunde.oscal_add_role+ Rollen-Zuweisung fülltresponsible-rolesaus dem Rollen-Katalog.gui_show_tabundgui_show_progresshalten Sie über den Fortschritt auf dem Laufenden.validate_oscal_documentschließt den Lauf mit einer Schema-Prüfung ab.
Warum das so wertvoll ist
- Kein Bauchgefühl, keine Halluzinationen: Jede Aussage im SSP ist über
evidence-source-Properties auf eine konkrete Stelle in einem bei Ihnen liegenden Dokument zurückführbar – Audit-fest. - Datensouveränität: AnythingLLM läuft on-premise, mjEdit läuft lokal, der MCP-Transport ist STDIO oder lokales SSE. Kein Compliance-Inhalt verlässt Ihr Haus.
- Wiederverwendbar: Für den nächsten Webserver
web-prod-05rufen Sie denselben Prompt auf – die KI nutzt dieselbe Wissensbasis und liefert in Minuten einen weiteren konsistenten SSP. - Manuell wären das Tage: Pro Control ISMS-Dokumente aufschlagen, passende Stellen finden, formulieren, Quelle eintragen, Verantwortlichen zuweisen, ins JSON tippen – die KI macht genau das, parallel, in Minuten.
Kurz: AnythingLLM liefert das Wissen, mjEdit liefert die Werkzeuge – MCP ist die Brücke, die beides zu einem auditfähigen OSCAL-Dokument zusammenführt.
Editor-Operationen — als wäre die KI ein Kollege am Tastatur
Undo, Redo, Suchen & Ersetzen, Copy & Paste — die KI kann genau das tun, was Sie auch tun würden, nur schneller und reproduzierbar. Praktisch, wenn Sie die KI bitten: „Mach das letzte Replace rückgängig — das hat zu viel ersetzt."
Wie sich diese 88 Tools gruppieren
Damit klar ist, was unter der Haube steckt: Die Werkzeuge sind in 15 Kategorien organisiert — von Datei- und JSON-Operationen über Validierung und alle OSCAL-Lebenszyklus-Phasen (Erstellung, Abfrage, Bearbeitung, Control-Verwaltung, Generierung, Pydantic-Modell-API) bis hin zu qFORM-Formularen, Markdown- und Editor-Steuerung, Template-Verwaltung und GUI-Kontrolle. Die KI wählt die richtigen Tools selbst — Sie beschreiben, was passieren soll.
22 MCP-Ressourcen
KI-Agenten können kontextuelle Informationen direkt abfragen, etwa:
mjedit://schema/oscal/catalog– OSCAL Catalog Schema v1.2.1mjedit://schema/oscal/ssp– OSCAL SSP Schema v1.2.1mjedit://oscal/controls– Controls des aktuellen Dokumentsmjedit://snippets/oscal– OSCAL-Snippets
15 MCP-Prompts für geführte Workflows
| Prompt | Beschreibung |
|---|---|
oscal_create_catalog_prompt |
Katalog-Erstellung mit Assistenz |
oscal_create_ssp_prompt |
SSP-Erstellung mit System-Definition |
oscal_validate_prompt |
Interaktive OSCAL-Validierung |
oscal_compliance_check_prompt |
Compliance-Prüfung gegen Framework |
oscal_profile_tailoring_prompt |
Geführtes Profil-Tailoring |
oscal_batch_server_chain_prompt |
Batch-Dokumentketten für Server |
qform_design_prompt |
Formular-Design per KI |
markdown_document_prompt |
Markdown-Dokument-Erstellung |
security_audit_prompt |
Sicherheitsanalyse |
AnythingLLM – KI-Agent mit RAG-Wissensbasis
Während Claude Desktop, Cursor und VS Code Copilot als Cloud-basierte KI-Agenten leistungsfähige MCP-Integration bieten, nimmt AnythingLLM eine besondere Rolle ein: Als selbst gehostete Open-Source-Plattform kombiniert AnythingLLM die Fähigkeiten eines KI-Assistenten mit einer Retrieval-Augmented Generation (RAG)-Wissensbasis – vollständig unter Ihrer Kontrolle.
Was Sie als Wissensbasis einbetten können
- BSI IT-Grundschutz-Kompendium (PDF, 800+ Seiten)
- NIST SP 800-53 Kontrollen-Katalog
- Bestehende ISMS-Richtlinien und Verfahrensanweisungen
- Audit-Berichte vergangener Jahre
- OSCAL-Dokumente (JSON) aus mjEdit
- Technische Dokumentation Ihrer IT-Infrastruktur
MCP-Integration mit AnythingLLM
{
"mcpServers": {
"mjEdit": {
"url": "http://localhost:8765/sse",
"transport": "sse"
}
}
}
Vergleich: AnythingLLM vs. Cloud-KI-Agenten
| Kriterium | Cloud-Agenten | AnythingLLM (Self-Hosted) |
|---|---|---|
| Datensouveränität | Daten verlassen das Haus | Vollständig lokal / on-premise |
| RAG-Wissensbasis | Begrenztes Kontext-Fenster | Unbegrenzt (Vektor-Datenbank) |
| Eigene Dokumente | Upload pro Konversation | Persistent eingebettet |
| MCP-Transport | STDIO | SSE (HTTP) |
| Kosten | API-Gebühren pro Token | Einmalig (Hardware) + optional API |
| Offline-Fähigkeit | Nein | Ja (mit Ollama / LM Studio) |
| Multi-User | Einzelnutzer | Team-Workspaces mit Rechten |
Anwendungsfall: 8 Webserver in einem Aufruf
„Erstelle für meine 8 Webserver eine vollständige OSCAL-Dokumentkette auf Basis des BSI-IT-Grundschutz-Katalogs."
Die KI ruft oscal_generate_batch_tailored_chain auf, der MCP-Server erstellt für jeden Server ein Unterverzeichnis und generiert die vollständige Kette Profil → Component-Definition → SSP → AP → AR → POA&M. Die Inventardaten (Hostname, FQDN, IPv4/IPv6, MAC) werden als inventory_items pro Target übergeben; alles wird gegen OSCAL v1.2.1 validiert.
Ergebnis: 48 validierte OSCAL-Dokumente in einem Aufruf.