Skip to main content
Glama
mm6502

Enterprise Architect MCP Server

by mm6502

Enterprise Architect MCP Server

Ein schreibgeschützter MCP-Server für Sparx Enterprise Architect .qea-Exporte. Gibt KI-Agenten Zugriff auf EA-Analysemodelle – Elemente suchen, Pakete navigieren, Anwendungsfallszenarien lesen und Verbindungen durchlaufen – ohne eine laufende EA-Instanz.

Voraussetzungen

  • Node.js 22+ (verwendet das eingebaute node:sqlite-Modul)

  • Eine aus Sparx Enterprise Architect exportierte .qea-Datei

Installation

Fügen Sie Folgendes zu .vscode/mcp.json Ihres Projekts hinzu:

{
  "servers": {
    "enterprise-architect": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "github:DITEC-Mracka/enterprise-architect-mcp"],
      "env": {
        "EA_QEA_PATH": "<path-to-your-qea-file-or-directory>"
      }
    }
  }
}

Ersetzen Sie <path-to-your-qea-file-or-directory> durch den tatsächlichen Pfad zu Ihrer .qea-Datei.

Konfiguration

Der Server löst den .qea-Pfad über eine Fallback-Kette auf (erster Treffer gewinnt):

  1. CLI-Argumentmcp-server-ea C:\path\to\model.qea

  2. UmgebungsvariableEA_QEA_PATH (gesetzt im env-Block von mcp.json oder als Systemvariable)

  3. .env-DateiEA_QEA_PATH=... in einer .env-Datei im Arbeitsverzeichnis

Wenn der Pfad auf ein Verzeichnis zeigt, wählt der Server automatisch die neueste .qea-Datei anhand des Änderungszeitpunkts aus.

Einrichtung mit .env (für Teams empfohlen)

# Copy the template
cp .env.example .env

# Edit .env with your local path
EA_QEA_PATH=D:\EAExporty\projekt\architektura.qea

Die .env-Datei ist gitignored – jeder Entwickler setzt seinen eigenen Pfad, ohne die gemeinsame Konfiguration zu beeinflussen.

Verfügbare Tools

Tool

Beschreibung

ea_search

Volltextsuche über Elemente, Attribute, Operationen und Constraints. Groß-/Kleinschreibung wird über das slowakische Alphabet hinweg ignoriert, dekodiert entity-kodierten Text.

ea_get_element

Vollständige Elementdetails – Attribute, Operationen, Diagramme, auf denen es erscheint, Constraints (pre/post/invariant/process). Kennzeichnet, ob die Attribut-Multiplizität kontrastiv ist.

ea_list_elements

Listet Elemente in einem Paket auf, optional nach Typ gefiltert. Meldet Gesamtzahl mit Paginierung.

ea_get_connectors

Beziehungen für ein Element – einschließlich Feature-Link-Auflösung (an welches Attribut/Operation jedes Ende angehängt ist).

ea_get_diagram_elements

Elemente und Verbindungen in einem Diagramm, einschließlich impliziter Verbindungen und Feature-Links.

ea_get_scenarios

Schritte von Anwendungsfallszenarien mit allen Attributen (trigger, uses, result, link, state) und Szenario-Notizen.

ea_get_package_tree

Navigieren Sie durch die Pakethierarchie mit rekursiver Tiefe.

ea_list_diagrams

Suchen Sie Diagramme nach Name und Paket.

ea_resolve

Löst Analystenreferenzen (GUID in geschweiften Klammern oder einfacher Name) zu Modellkandidaten mit vollständigem Paketpfad auf. Fällt auf Namenspräfix-Abgleich für Analystencodes zurück; jeder Kandidat trägt einen match von guid, exact oder prefix.

ea_get_schema

Untersucht das Datenbankschema des Modells – Tabellen, Spalten, Indizes, rowid-Alias.

ea_get_model_info

Identität des geöffneten Exports – Dateiname, Größe, Änderungsdatum, Serverversion.

Antwortvertrag

Jedes Tool gibt strukturiertes JSON zurück mit:

  • _meta.sourceTables — welche Datenbanktabellen konsultiert wurden

  • totalMatched / returned / truncated — Vollständigkeitsmetadaten für jede Sammlung

  • continuation — genauer Aufruf, um den vollständigen Satz abzurufen, wenn abgeschnitten

  • isError: true + { error: "not_found" } für nicht vorhandene Subjekte (unterscheidet sich von leeren Ergebnissen)

Zwei Felder verhindern, dass eine ungenaue Antwort als bestätigt gelesen wird:

  • ea_resolvematch ist immer vorhanden; nur prefix ist ein ungenauer Treffer

  • ea_get_element_meta.attributes.multiplicityIsUniform: true bedeutet, dass die Attribute des Elements keinen Multiplizitätskontrast zeigen, also 1..1 kein Beleg für Erforderlichkeit ist

Beispiel-Prompts

Sobald verbunden, versuchen Sie Prompts wie:

  • "Suche nach Elementen, die mit 'právnická osoba' zusammenhängen"

  • "Zeig mir die Paketstruktur unter dem Root"

  • "Was sind die Anwendungsfallszenarien für UC_FEO_2027?"

  • "Welche Elemente und Verbindungen sind auf Diagramm 0103 Spracovanie eFORM?"

  • "Löse die Referenz {94291B11-C990-482e-BF3F-19EFF04FB37E} auf"

  • "Welche Spalten hat t_connector?"

  • "Auf welchen Diagrammen erscheint Element a7680?"

-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • MCP server for AI access to Swagger by SmartBear.

  • Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.

  • Official remote MCP server for Archivist AI TTRPG campaign memory: characters, sessions, and more.

View all MCP Connectors

Latest Blog Posts

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/mm6502/enterprise-architect-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server