SAP ADT MCP Server
SAP ADT MCP Server
MCP-Server für die SAP ABAP Development Tools (ADT) REST-API. Ermöglicht KI-Assistenten das Lesen, Erstellen und Ändern von ABAP-Quellcode, das Inspizieren von DDIC-Objekten, das Ausführen von SQL-Abfragen, das Verwalten von Transporten, das Analysieren von Traces, das Abrufen von Short Dumps, das Steuern des Debuggers und mehr – über mehrere SAP-Systeme hinweg von einer einzigen Serverinstanz aus.
Tools (66)
Quellcode & DDIC (11)
Tool | Beschreibung | Eingabe |
| ABAP-Programm/Report-Quellcode abrufen |
|
| ABAP-Klassen-Quellcode abrufen |
|
| Funktionsbaustein-Quellcode abrufen |
|
| Funktionsgruppen-Quellcode abrufen |
|
| ABAP-Include-Quellcode abrufen |
|
| ABAP-Interface-Quellcode abrufen |
|
| CDS-View-DDL-Quelle abrufen |
|
| DDIC-Strukturdefinition abrufen |
|
| ABAP-Datenbanktabellendefinition abrufen |
|
| DDIC-Datenelementdefinition abrufen |
|
| DDIC-Domänendefinition abrufen |
|
Repository & Suche (3)
Tool | Beschreibung | Eingabe |
| ABAP-Objekte nach Namensmuster suchen (Platzhalter unterstützt) |
|
| Transaktionsdetails abrufen (Paket, App-Komponente) |
|
| Paketinhalt abrufen (Objekte mit Typen/Beschreibungen) |
|
Erstellen, Ändern & Ausführen (12)
Tool | Beschreibung | Eingabe |
| Programm erstellen, Quellcode schreiben und aktivieren |
|
| Bestehendes Programm ändern (sperren, schreiben, aktivieren, entsperren) |
|
| Klasse erstellen, Quellcode schreiben und aktivieren |
|
| Bestehende Klasse ändern (sperren, schreiben, aktivieren, entsperren) |
|
| Interface erstellen, Quellcode schreiben und aktivieren |
|
| Bestehendes Interface ändern (sperren, schreiben, aktivieren, entsperren) |
|
| CDS-View erstellen, Quellcode schreiben und aktivieren |
|
| Bestehende CDS-View ändern (sperren, schreiben, aktivieren, entsperren) |
|
| Programm ausführen und WRITE-Ausgabe zurückgeben |
|
| ABAP-SQL-Abfrage ausführen und Ergebnisse als Tabelle zurückgeben |
|
| ST22-Short-Dumps für ein Datum abrufen |
|
| CSRF-Token und Session-Cookie abrufen | (keine) |
Transportverwaltung (7)
Tool | Beschreibung | Eingabe |
| Alle änderbaren Transporte für den aktuellen Benutzer auflisten | (keine) |
| Vollständige Transportdetails abrufen (Aufgaben, Objekte, Status) |
|
| Transportanforderungen für ein Objekt prüfen |
|
| Neuen Transportauftrag erstellen |
|
| Transport für Import freigeben |
|
| Transportauftrag löschen |
|
| SAP-Systembenutzer auflisten | (keine) |
SAT-Trace (7)
Tool | Beschreibung | Eingabe |
| ABAP-Laufzeittraces (SAT/SE30) auflisten |
|
| Performance-Hitlist für einen Trace abrufen |
|
| Datenbankzugriffsstatistiken für einen Trace abrufen |
|
| Aufrufbaum auf Statement-Ebene für einen Trace abrufen |
|
| Laufzeittrace löschen |
|
| Trace-Sammlungskonfiguration erstellen |
|
| Trace-Konfiguration löschen |
|
ST05 Performance-Trace (3)
Tool | Beschreibung | Eingabe |
| SQL/Buffer/RFC/Auth-Trace für einen Benutzer aktivieren |
|
| Alle aktiven Performance-Traces deaktivieren | (keine) |
| Aktive Trace-Typen, Benutzerfilter und Serverinformationen abrufen | (keine) |
Cross-Trace (5)
Tool | Beschreibung | Eingabe |
| Cross-Trace für RAP, OData, SADL, BAdI, Gateway aktivieren |
|
| Cross-Trace-Aktivierung deaktivieren |
|
| Aktive Cross-Trace-Aktivierungen auflisten | (keine) |
| Erfasste Cross-Trace-Ergebnisse auflisten |
|
| Detaillierte Datensätze für einen Cross-Trace abrufen |
|
Service-Binding (3)
Tool | Beschreibung | Eingabe |
| OData-Service-Binding-Details abrufen |
|
| OData-Service-Binding veröffentlichen |
|
| OData-Service-Binding zurückziehen |
|
Debugger (14)
Tool | Beschreibung | Eingabe |
| Debugger-Listener starten (öffnet zustandsbehaftete Sitzung) |
|
| Listener stoppen und Debug-Sitzung schließen |
|
| Prüfen, ob eine Debugger-Sitzung angehängt ist |
|
| Breakpoint an einer Quellcode-Position setzen |
|
| Breakpoint entfernen |
|
| An eine laufende ABAP-Debug-Sitzung anhängen |
|
| Aktuellen Aufrufstapel abrufen | (keine) |
| Variablenwerte abrufen |
|
| Untergeordnete/verschachtelte Variablenwerte abrufen |
|
| Variablenwert während des Debuggens setzen |
|
| Einzelschritt/Überspringen/Rückkehr/Fortsetzen/Beenden |
|
| Zu einem Stack-Frame navigieren |
|
| Watchpoint auf eine Variable setzen (Pause bei Wertänderung) |
|
| Alle aktiven Watchpoints auflisten | (keine) |
Multi-System (1)
Tool | Beschreibung | Eingabe |
| Alle konfigurierten SAP-Systeme mit IDs, Hostnamen und Mandanten auflisten | (keine) |
Alle Tools akzeptieren einen optionalen system_id-Parameter, um ein spezifisches SAP-System anzusprechen. Wenn weggelassen, wird das Standard-System (das erste konfigurierte) verwendet.
Voraussetzungen
Node.js v18 oder höher
SAP-Benutzer mit S_ADT_RES-Berechtigung für den Zugriff auf ADT-Ressourcen
ICF-Services unter
/sap/bc/adt/aktiviert (über TransaktionSICF)Rolle SAP_BC_DWB_ABAPDEVELOPER oder gleichwertig
Installation
git clone https://github.com/ethanhan2014/sap-adt-mcp.git
cd sap-adt-mcp
npm install
npm run buildKonfiguration
Option 1: Einzelnes System über .env
cp .env.example .envBearbeiten Sie .env mit Ihren SAP-Systemverbindungsdetails:
SAP_HOSTNAME=your-sap-host.example.com
SAP_SYSNR=50
SAP_USERNAME=YOUR_USER
SAP_PASSWORD=YOUR_PASSWORD
SAP_CLIENT=001
SAP_LANGUAGE=ENVariable | Beschreibung | Beispiel |
| SAP-System-Hostname |
|
| Systemnummer (Port = |
|
| SAP-Benutzer |
|
| SAP-Passwort |
|
| SAP-Mandant |
|
| Anmeldesprache (Standard: |
|
Option 2: Mehrere Systeme über systems.json
Erstellen Sie systems.json im Projektstammverzeichnis (siehe systems.json.example):
[
{
"id": "DEV",
"hostname": "dev-system.sap.com",
"sysnr": "50",
"client": "001",
"username": "YOUR_USER",
"password": "YOUR_PASSWORD",
"language": "EN"
},
{
"id": "QA",
"hostname": "qa-system.sap.com",
"sysnr": "00",
"client": "001",
"authType": "certificate",
"certThumbprint": "YOUR_CERT_THUMBPRINT",
"language": "EN"
}
]Wenn systems.json vorhanden ist, wird .env für die Systemkonfiguration ignoriert. Das erste System ist das Standard-System. Verwenden Sie system_id bei jedem Tool-Aufruf, um ein spezifisches System anzusprechen.
Unterstützte Authentifizierungstypen:
basic (Standard) — Benutzername/Passwort
certificate — X.509-Client-Zertifikat über
certThumbprint
Verwendung
Claude Code
Zu ~/.claude.json hinzufügen:
{
"mcpServers": {
"sap-adt": {
"command": "node",
"args": ["/path/to/sap-adt-mcp/dist/index.js"]
}
}
}Cline (VS Code)
Zu den Cline-MCP-Einstellungen (cline_mcp_settings.json) hinzufügen:
{
"mcpServers": {
"sap-adt": {
"command": "node",
"args": ["/path/to/sap-adt-mcp/dist/index.js"],
"disabled": false,
"autoApprove": []
}
}
}Standalone
npm startEntwicklung (mit MCP Inspector)
npx @modelcontextprotocol/inspector node dist/index.jsTech-Stack
TypeScript + Node.js
MCP SDK (
@modelcontextprotocol/sdk)Axios für HTTP
SAP ADT REST-API über HTTPS mit Basic Auth oder X.509-Zertifikat
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Appeared in Searches
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/ethanhan2014/sap-adt-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server